/**
 * V7 Obsidian Cyber shell — styles native Elementor Obsidian marketing pages to match /v7/.
 * Content stays in Elementor widgets; this file is atmosphere + chrome polish only.
 * Created: 2026-07-16
 * Updated: 2026-07-16 — G07 light hero ambient + console cohesion (1.3.1)
 * Updated: 2026-07-16 — concept-v2 pointer spotlight hover on cards (1.3.2)
 * Updated: 2026-07-16 — FAQ G08 glass-card facelift (1.3.3)
 * Updated: 2026-07-16 — FAQ rethink: real stacked accordion (1.3.4)
 * Updated: 2026-07-16 — FAQ accordion cache-bust (1.3.5)
 * Updated: 2026-07-16 — shell broaden to all Elementor marketing pages (1.3.6)
 */

:root {
  --logo-text-color: #ffffff;
  --bg-dark: #010305;
  --bg-darker: #000000;
  --accent-emerald: #05ff72;
  --accent-emerald-rgb: 5, 255, 114;
  --accent-cyan: #00e5ff;
  --accent-cyan-rgb: 0, 229, 255;
  --text-white: #f5f8f7;
  --text-silver: #cbdcd3;
  --text-muted: #7b9487;
  --ambient-opacity-emerald: 0.15;
  --ambient-opacity-cyan: 0.13;
  --ambient-opacity-emerald-dim: 0.08;
  --grid-opacity: 0.05;
  --grid-color-rgb: 255, 255, 255;
  --pwc-hero-h1-mid: #e6fff0;
  --pwc-matrix-opacity: 0.22;
}

/* Elegant V6 Cyber-Light Mode Overrides (match /v7/) */
html.light {
  --logo-text-color: #0f172a;
  --bg-dark: #f8fafc;
  --bg-darker: #ffffff;
  --accent-emerald: #00a854;
  --accent-emerald-rgb: 0, 168, 84;
  --accent-cyan: #0097a7;
  --accent-cyan-rgb: 0, 151, 167;
  --text-white: #0f172a;
  --text-silver: #334155;
  --text-muted: #64748b;
  --ambient-opacity-emerald: 0.06;
  --ambient-opacity-cyan: 0.05;
  --ambient-opacity-emerald-dim: 0.03;
  --grid-opacity: 0.04;
  --grid-color-rgb: 15, 23, 42;
  --pwc-hero-h1-mid: #0f172a;
  --pwc-matrix-opacity: 0.1;
}

html {
  background-color: var(--bg-darker);
  transition: background-color 0.5s ease;
}

body.pwc-v7-shell {
  background: transparent !important;
  color: var(--text-silver);
  font-family: "Plus Jakarta Sans", sans-serif;
  overflow-x: hidden;
  position: relative;
  transition: color 0.5s ease;
}

/* Atmosphere stack — NON-NEGATIVE z-index.
   Concept V7 uses -3/-2/-1, but WP `html { background }` paints ABOVE
   negative-z descendants, so rain was invisible. Positive stack:
   ambient (0) → matrix (1) → grid (2) → content (3+) */
body.pwc-v7-shell::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 15% 20%, rgba(var(--accent-emerald-rgb), var(--ambient-opacity-emerald)), transparent 45rem),
    radial-gradient(circle at 85% 15%, rgba(var(--accent-cyan-rgb), var(--ambient-opacity-cyan)), transparent 45rem),
    radial-gradient(circle at 50% 85%, rgba(var(--accent-emerald-rgb), var(--ambient-opacity-emerald-dim)), transparent 40rem),
    linear-gradient(180deg, var(--bg-dark) 0%, var(--bg-darker) 100%);
  background-size: 100% 100%;
  transition: background 0.5s ease;
}

body.pwc-v7-shell::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  opacity: var(--grid-opacity);
  background-image:
    linear-gradient(rgba(var(--grid-color-rgb), 0.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(var(--grid-color-rgb), 0.08) 1px, transparent 1px);
  background-size: 64px 64px;
  mask-image: linear-gradient(to bottom, #000 0%, rgba(0, 0, 0, 0.6) 50%, rgba(0, 0, 0, 0.1) 100%);
  -webkit-mask-image: linear-gradient(to bottom, #000 0%, rgba(0, 0, 0, 0.6) 50%, rgba(0, 0, 0, 0.1) 100%);
  transition: opacity 0.5s ease;
}

body.pwc-v7-shell .site-header:not(.elementor-location-header) {
  display: none !important;
}

/* Matrix canvas — between ambient (0) and grid (2) */
#pwc-matrix-bg {
  position: fixed;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  pointer-events: none;
  opacity: var(--pwc-matrix-opacity);
  transition: opacity 0.5s ease;
  display: block;
}

html.light #pwc-matrix-bg {
  display: none !important;
  opacity: 0 !important;
}

/* Hero H1 accent line — V7 sweep gradient (tokens flip for light) */
body.pwc-v7-shell #hero .elementor-heading-title em,
body.pwc-v7-shell #hero .elementor-heading-title span {
  display: block;
  font-style: normal;
  color: transparent !important;
  background: linear-gradient(
    110deg,
    var(--accent-emerald) 0%,
    var(--pwc-hero-h1-mid) 40%,
    var(--accent-cyan) 100%
  );
  background-size: 200% auto;
  -webkit-background-clip: text;
  background-clip: text;
  animation: pwcSweepGradient 8s linear infinite alternate;
  text-shadow: none;
}

@keyframes pwcSweepGradient {
  0% {
    background-position: 0% 50%;
  }
  100% {
    background-position: 100% 50%;
  }
}

body.pwc-v7-shell .elementor-location-header,
body.pwc-v7-shell .elementor,
body.pwc-v7-shell .elementor-location-footer {
  position: relative;
  z-index: 3;
}

/* —— Floating pill header —— */
body.pwc-v7-shell .elementor-location-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: transparent !important;
  pointer-events: none;
}

body.pwc-v7-shell .elementor-location-header #pwc-header,
body.pwc-v7-shell .elementor-location-header > .e-con {
  padding: 16px 16px 0 !important;
  max-width: none !important;
}

/* Pill chrome ONLY on #pwc-nav-bar (do not style nested .e-con) */
body.pwc-v7-shell .elementor-location-header #pwc-nav-bar {
  pointer-events: auto;
  max-width: 1240px !important;
  width: 100% !important;
  margin: 0 auto !important;
  height: 72px !important;
  min-height: 72px !important;
  max-height: 72px !important;
  border-radius: 9999px !important;
  background: rgba(1, 3, 5, 0.82) !important;
  border: 1px solid rgba(5, 255, 114, 0.14) !important;
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.75), inset 0 0 20px rgba(5, 255, 114, 0.03) !important;
  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);
  padding: 0 !important;
  overflow: visible !important;
}

/* Row layout lives on Elementor's inner — keeps height from stacking nested cons */
body.pwc-v7-shell .elementor-location-header #pwc-nav-bar > .e-con-inner {
  pointer-events: auto;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  height: 72px !important;
  min-height: 72px !important;
  max-height: 72px !important;
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 16px 0 24px !important;
}

/* —— Brand: SVG shield + Matrix* (shell injects .pwc-brand-link) —— */
/* e-con-full defaults to width:100% — that collapses the center nav to 0 */
body.pwc-v7-shell .elementor-location-header #pwc-brand,
body.pwc-v7-shell .elementor-location-header #pwc-brand > .e-con-inner {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 10px !important;
  flex: 0 0 auto !important;
  flex-grow: 0 !important;
  flex-shrink: 0 !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
}

body.pwc-v7-shell .elementor-location-header .pwc-brand-link {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  line-height: 0;
}

body.pwc-v7-shell .elementor-location-header .prowebcare-logo,
body.pwc-v7-shell .elementor-location-header .pwc-brand-logo {
  display: block;
  width: min(180px, 42vw);
  height: auto;
  max-height: 36px;
}

body.pwc-v7-shell .elementor-location-header .operator-shield {
  fill: #00ff66;
}

body.pwc-v7-shell .elementor-location-header .matrix-text {
  fill: var(--logo-text-color);
  transition: fill 0.3s ease;
}

/* When SVG logo is mounted, hide Elementor “Matrix*” heading (SVG already wordmarks) */
body.pwc-v7-shell .elementor-location-header #pwc-brand.pwc-brand--has-logo #pwc-brand-label,
body.pwc-v7-shell .elementor-location-header #pwc-brand.pwc-brand--has-logo .pwc-brand-label,
body.pwc-v7-shell .elementor-location-header #pwc-brand.pwc-brand--has-logo .pwc-brand-label--logo,
body.pwc-v7-shell .elementor-location-header #pwc-brand.pwc-brand--has-logo .elementor-widget-heading {
  display: none !important;
}

/* Text-only fallback (logo fetch failed) */
body.pwc-v7-shell .elementor-location-header #pwc-brand.pwc-brand--text-only .elementor-heading-title {
  font-family: Outfit, sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #fff !important;
  margin: 0 !important;
  white-space: nowrap;
}

/* Nav actions: theme toggle + CTA */
body.pwc-v7-shell .elementor-location-header #pwc-nav-actions,
body.pwc-v7-shell .elementor-location-header #pwc-nav-actions > .e-con-inner {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 12px !important;
  flex: 0 0 auto !important;
  flex-grow: 0 !important;
  flex-shrink: 0 !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
}

body.pwc-v7-shell .elementor-location-header #pwc-theme-toggle-slot,
body.pwc-v7-shell .elementor-location-header #pwc-theme-toggle-slot > .e-con-inner {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
  min-width: 56px !important;
  min-height: 32px !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.pwc-v7-shell .elementor-location-header .elementor-nav-menu--main {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 4px !important;
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: 9999px;
  padding: 4px !important;
  margin: 0 !important;
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: none !important;
}

/* Elementor UL/LI often stack (block LIs) — force V7 horizontal strip */
body.pwc-v7-shell .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 4px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  width: auto !important;
  max-width: none !important;
}

body.pwc-v7-shell .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  position: relative !important;
}

body.pwc-v7-shell .elementor-location-header .elementor-nav-menu--main .elementor-item {
  font-family: "Plus Jakarta Sans", sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #7b9487 !important;
  padding: 8px 14px !important;
  border-radius: 9999px !important;
  line-height: 1.2 !important;
  white-space: nowrap;
  display: inline-flex !important;
  align-items: center !important;
  width: auto !important;
}

body.pwc-v7-shell .elementor-location-header .elementor-nav-menu--main .elementor-item:hover {
  color: #f5f8f7 !important;
  background: rgba(255, 255, 255, 0.06) !important;
}

body.pwc-v7-shell .elementor-location-header .elementor-button {
  border-radius: 9999px !important;
  background: #05ff72 !important;
  color: #010305 !important;
  font-family: Outfit, sans-serif !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  padding: 12px 22px !important;
  box-shadow: 0 16px 36px rgba(5, 255, 114, 0.24) !important;
  white-space: nowrap;
}

/* Nav widget: claim remaining row space between brand and actions */
body.pwc-v7-shell .elementor-location-header #pwc-nav {
  flex: 1 1 auto !important;
  flex-grow: 1 !important;
  flex-shrink: 1 !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: 100% !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  overflow: visible !important;
}

body.pwc-v7-shell .elementor-location-header #pwc-nav .elementor-widget-container {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  max-width: 100% !important;
}

/* Override Elementor --dropdown-tablet: keep horizontal pill through tablet (match V7 ≤768 hide) */
body.pwc-v7-shell .elementor-location-header .elementor-nav-menu--main {
  display: flex !important;
}

body.pwc-v7-shell .elementor-location-header .elementor-menu-toggle,
body.pwc-v7-shell .elementor-location-header .elementor-nav-menu--dropdown {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
  height: 0 !important;
  width: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

/* Tablet: compact readable horizontal pill (V7 keeps links until 768) */
@media (max-width: 1024px) and (min-width: 769px) {
  body.pwc-v7-shell .elementor-location-header #pwc-nav-bar,
  body.pwc-v7-shell .elementor-location-header #pwc-nav-bar > .e-con-inner {
    height: 64px !important;
    min-height: 64px !important;
    max-height: 64px !important;
  }

  body.pwc-v7-shell .elementor-location-header #pwc-nav-bar > .e-con-inner {
    padding: 0 12px 0 16px !important;
    gap: 8px !important;
  }

  body.pwc-v7-shell .elementor-location-header .elementor-nav-menu--main {
    display: flex !important;
    gap: 2px !important;
    padding: 2px !important;
  }

  body.pwc-v7-shell .elementor-location-header .elementor-nav-menu--main .elementor-item {
    font-size: 12px !important;
    padding: 6px 10px !important;
  }

  body.pwc-v7-shell .elementor-location-header .elementor-button {
    padding: 10px 16px !important;
    font-size: 13px !important;
  }

  body.pwc-v7-shell .elementor-location-header .prowebcare-logo,
  body.pwc-v7-shell .elementor-location-header .pwc-brand-logo {
    width: min(150px, 28vw);
    max-height: 32px;
  }

  body.pwc-v7-shell .elementor-location-header .elementor-menu-toggle,
  body.pwc-v7-shell .elementor-location-header .elementor-nav-menu--dropdown {
    display: none !important;
  }
}

/* Mobile: V7 hides link strip; keep clean brand + toggle + CTA pill (no burger dump) */
@media (max-width: 768px) {
  body.pwc-v7-shell .elementor-location-header #pwc-nav-bar,
  body.pwc-v7-shell .elementor-location-header #pwc-nav-bar > .e-con-inner {
    height: 64px !important;
    min-height: 64px !important;
    max-height: 64px !important;
  }

  body.pwc-v7-shell .elementor-location-header #pwc-nav-bar > .e-con-inner {
    padding: 0 12px 0 16px !important;
  }

  body.pwc-v7-shell .elementor-location-header #pwc-nav,
  body.pwc-v7-shell .elementor-location-header .elementor-nav-menu--main,
  body.pwc-v7-shell .elementor-location-header .elementor-menu-toggle,
  body.pwc-v7-shell .elementor-location-header .elementor-nav-menu--dropdown {
    display: none !important;
  }

  body.pwc-v7-shell .elementor-location-header .prowebcare-logo,
  body.pwc-v7-shell .elementor-location-header .pwc-brand-logo {
    width: min(144px, 40vw);
    max-height: 30px;
  }

  body.pwc-v7-shell .elementor-location-header .elementor-button {
    padding: 10px 14px !important;
    font-size: 13px !important;
  }
}

/* —— Heading scale (V7 fluid, restrained — some Elementor sizes were oversized) —— */
/* Home display H1 only — inner pages also use #hero as section id */
body.pwc-v7-shell.home #hero h1.elementor-heading-title,
body.pwc-v7-shell.elementor-page-669 #hero h1.elementor-heading-title {
  font-size: clamp(2.125rem, 3.8vw, 3rem) !important; /* 34–48 */
  line-height: 1.12 !important;
  letter-spacing: -0.02em;
}

/* Inner-page titles (incl. #hero bands on Contact/Services/etc.) */
body.pwc-v7-shell.page:not(.home):not(.elementor-page-669) .elementor h1.elementor-heading-title,
body.pwc-v7-shell.page:not(.home):not(.elementor-page-669) #hero h1.elementor-heading-title {
  font-size: clamp(1.75rem, 3.2vw, 2.375rem) !important; /* 28–38 */
  line-height: 1.15 !important;
  letter-spacing: -0.02em;
}

body.pwc-v7-shell .elementor h2.elementor-heading-title {
  font-size: clamp(1.5rem, 2.5vw, 2rem) !important; /* 24–32 */
  line-height: 1.18 !important;
  letter-spacing: -0.02em;
}

body.pwc-v7-shell #rescue h2.elementor-heading-title {
  font-size: clamp(1.5rem, 2.8vw, 2.125rem) !important; /* 24–34 */
}

/* —— Hero typography —— */
body.pwc-v7-shell #hero .elementor-heading-title {
  font-family: Outfit, sans-serif !important;
  letter-spacing: -0.02em;
}

body.pwc-v7-shell #hero .elementor-button {
  border-radius: 9999px !important;
}

body.pwc-v7-shell #hero .elementor-button-link[href*="pricing"],
body.pwc-v7-shell .elementor-element .elementor-button {
  transition:
    transform 0.35s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.35s cubic-bezier(0.22, 1, 0.36, 1),
    background-color 0.3s ease,
    border-color 0.3s ease,
    color 0.3s ease;
}

body.pwc-v7-shell .elementor-button:hover {
  transform: translateY(-2px);
}

/* —— Cards / glass —— */
body.pwc-v7-shell #agitation .e-con.e-con-full.e-flex,
body.pwc-v7-shell #philosophy .e-con.e-con-full.e-flex,
body.pwc-v7-shell #pricing .e-con.e-con-full.e-flex {
  backdrop-filter: blur(12px);
}

/* —— Theme toggle (in-nav, V7 glass switch) —— */
.theme-toggle-switch,
#pwc-theme-toggle {
  position: relative;
  display: flex;
  align-items: center;
  height: 32px;
  width: 56px;
  border-radius: 9999px;
  background: #e5e7eb;
  border: 1px solid #d1d5db;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  padding: 0;
  outline: none;
  flex-shrink: 0;
  z-index: 2;
}

.theme-toggle-switch:hover,
#pwc-theme-toggle:hover {
  border-color: rgba(5, 255, 114, 0.5);
  box-shadow: 0 0 10px rgba(5, 255, 114, 0.2);
}

html.light .theme-toggle-switch:hover,
html.light #pwc-theme-toggle:hover {
  border-color: rgba(0, 168, 84, 0.5);
  box-shadow: 0 0 10px rgba(0, 168, 84, 0.2);
}

html:not(.light) .theme-toggle-switch,
html:not(.light) #pwc-theme-toggle {
  background: rgba(17, 24, 39, 0.5);
  border-color: rgba(5, 255, 114, 0.2);
}

.theme-toggle-thumb {
  position: absolute;
  left: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 9999px;
  background: transparent;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

html:not(.light) .theme-toggle-thumb {
  transform: translateX(24px);
}

.theme-toggle-icon-light,
.theme-toggle-icon-dark {
  width: 16px;
  height: 16px;
  line-height: 1;
}

.theme-toggle-icon-light {
  color: #f59e0b;
}

.theme-toggle-icon-dark {
  color: #05ff72;
}

html.light .theme-toggle-icon-light { display: block; }
html.light .theme-toggle-icon-dark { display: none; }
html:not(.light) .theme-toggle-icon-light { display: none; }
html:not(.light) .theme-toggle-icon-dark { display: block; }

/* FAB fallback only if header mount failed */
#pwc-theme-toggle.pwc-theme-toggle--fab {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 1001;
}

/* Light mode soft overrides */
html.light body.pwc-v7-shell {
  background: transparent !important;
  color: var(--text-silver);
}

html.light body.pwc-v7-shell .elementor-location-header #pwc-nav-bar {
  background: rgba(255, 255, 255, 0.88) !important;
  border-color: rgba(0, 168, 84, 0.15) !important;
  box-shadow: 0 16px 48px rgba(15, 23, 42, 0.08), inset 0 0 20px rgba(0, 168, 84, 0.02) !important;
}

html.light body.pwc-v7-shell .elementor-location-header #pwc-brand.pwc-brand--text-only .elementor-heading-title {
  color: #0f172a !important;
}

html.light body.pwc-v7-shell .elementor-location-header .operator-shield {
  fill: #00a854;
}

/*
 * G10 — Matrix everywhere: clear opaque Elementor parent fills on ALL shell pages
 * (home, inner pages, blog archive/single). Cards/panels keep their own glass tints.
 * Intentional solids (#ops-feed terminal, #pwc-footer) re-assert later.
 */
body.pwc-v7-shell .elementor > .e-con.e-parent,
body.pwc-v7-shell .elementor-location-single .elementor > .e-con.e-parent,
body.pwc-v7-shell .elementor-location-archive .elementor > .e-con.e-parent,
body.pwc-v7-shell #hero.pwc-hero,
body.pwc-v7-shell #hero,
body.pwc-v7-shell #agitation,
body.pwc-v7-shell #philosophy,
body.pwc-v7-shell #differentiator,
body.pwc-v7-shell #protocol,
body.pwc-v7-shell #rescue,
body.pwc-v7-shell #pricing,
body.pwc-v7-shell #faq,
body.pwc-v7-shell #final-cta {
  background-color: transparent !important;
  background-image: none !important;
}

/* Rescue — concept .rescue-section + .rescue-card (boxed; matrix around it) */
body.pwc-v7-shell #rescue {
  position: relative;
  padding-top: 60px !important;
  padding-bottom: 60px !important;
}

body.pwc-v7-shell #rescue > .e-con-boxed,
body.pwc-v7-shell #rescue > .e-con-inner > .e-con-boxed {
  width: 100% !important;
  max-width: 1240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  background: linear-gradient(135deg, rgba(20, 10, 10, 0.88), rgba(6, 4, 4, 0.96)) !important;
  border: 1px solid rgba(255, 45, 85, 0.4) !important;
  border-radius: 22px !important;
  box-shadow:
    0 30px 80px rgba(255, 45, 85, 0.08),
    inset 0 0 32px rgba(255, 45, 85, 0.04) !important;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
}

html.light body.pwc-v7-shell #rescue > .e-con-boxed,
html.light body.pwc-v7-shell #rescue > .e-con-inner > .e-con-boxed {
  background: linear-gradient(135deg, rgba(255, 245, 245, 0.92), rgba(255, 255, 255, 0.88)) !important;
  border-color: rgba(255, 45, 85, 0.28) !important;
  box-shadow:
    0 24px 64px rgba(15, 23, 42, 0.1),
    0 0 32px rgba(255, 45, 85, 0.06) !important;
}

/* Concept .rescue-card grid: copy | timeline */
body.pwc-v7-shell #rescue > .e-con-boxed > .e-con-inner {
  display: grid !important;
  grid-template-columns: 1.1fr 0.9fr !important;
  gap: 48px !important;
  align-items: center !important;
}

body.pwc-v7-shell #rescue > .e-con-boxed > .e-con-inner > .e-con {
  width: 100% !important;
  max-width: none !important;
}

@media (max-width: 1024px) {
  body.pwc-v7-shell #rescue > .e-con-boxed > .e-con-inner {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }
}

/* Light hero copy + chrome (console stays dark glass, V7 pattern) */
html.light body.pwc-v7-shell #hero {
  color: var(--text-silver);
}

html.light body.pwc-v7-shell #hero .elementor-heading-title {
  color: var(--text-white) !important;
}

html.light body.pwc-v7-shell #hero .pwc-hero-lead,
html.light body.pwc-v7-shell #hero .pwc-hero-lead p,
html.light body.pwc-v7-shell #hero .pwc-hero-lead .elementor-widget-container {
  color: var(--text-silver) !important;
}

html.light body.pwc-v7-shell #hero .pwc-status-badge .elementor-heading-title {
  border-color: rgba(0, 168, 84, 0.22) !important;
  background: rgba(0, 168, 84, 0.06) !important;
  color: var(--accent-emerald) !important;
  box-shadow: 0 0 20px rgba(0, 168, 84, 0.06);
}

html.light body.pwc-v7-shell #hero .pwc-status-badge .elementor-heading-title::before {
  background: var(--accent-emerald);
}

html.light body.pwc-v7-shell #hero .pwc-hero-benefit-item .elementor-widget-container,
html.light body.pwc-v7-shell #hero .pwc-hero-benefit-item {
  border-color: rgba(15, 23, 42, 0.08) !important;
  background: rgba(255, 255, 255, 0.55) !important;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}

html.light body.pwc-v7-shell #hero .pwc-hero-benefit-item:hover {
  border-color: rgba(0, 168, 84, 0.28) !important;
  background: rgba(0, 168, 84, 0.05) !important;
}

html.light body.pwc-v7-shell #hero .pwc-hero-benefits strong {
  color: var(--text-white);
}

html.light body.pwc-v7-shell #hero .pwc-hero-benefits span {
  color: var(--text-muted);
}

html.light body.pwc-v7-shell #hero .pwc-console-orbit {
  border-color: rgba(0, 168, 84, 0.18);
}

html.light body.pwc-v7-shell #hero .pwc-console-orbit::after {
  background: var(--accent-cyan);
  box-shadow: 0 0 14px rgba(0, 151, 167, 0.55);
}

/* Console remains dark glass (V7) — soften shadow so it sits in light wash */
html.light body.pwc-v7-shell #hero .pwc-console-screen,
html.light body.pwc-v7-shell #hero #interactive-console {
  border-color: rgba(0, 151, 167, 0.28) !important;
  background: linear-gradient(180deg, rgba(8, 17, 22, 0.94), rgba(4, 9, 11, 0.98)) !important;
  box-shadow:
    0 28px 64px rgba(15, 23, 42, 0.18),
    0 0 36px rgba(0, 151, 167, 0.08) !important;
  color: #cbdcd3;
}

html.light body.pwc-v7-shell #hero .pwc-console-screen:hover,
html.light body.pwc-v7-shell #hero #interactive-console:hover {
  border-color: #0097a7 !important;
  box-shadow:
    0 32px 72px rgba(15, 23, 42, 0.22),
    0 0 48px rgba(0, 151, 167, 0.14) !important;
}

html.light body.pwc-v7-shell #hero .pwc-console-title .elementor-heading-title,
html.light body.pwc-v7-shell #hero .pwc-console-stat-meta p,
html.light body.pwc-v7-shell #hero .pwc-console-stat-label {
  color: #f5f8f7 !important;
}

html.light body.pwc-v7-shell #hero .pwc-console-version .elementor-heading-title,
html.light body.pwc-v7-shell #hero .pwc-console-stat-value {
  color: #00e5ff !important;
}

html.light body.pwc-v7-shell #hero .pwc-console-tag {
  border-color: rgba(5, 255, 114, 0.14) !important;
  background: rgba(5, 255, 114, 0.04) !important;
}

html.light body.pwc-v7-shell #hero .pwc-console-tag .elementor-heading-title {
  color: #05ff72 !important;
}

/* Secondary ghost CTA — readable on light wash */
html.light body.pwc-v7-shell #hero a.elementor-button[href*="agitation"] {
  border-color: rgba(15, 23, 42, 0.14) !important;
  color: var(--text-white) !important;
  background: rgba(15, 23, 42, 0.04) !important;
}

/* Ops feed — concept .terminal-container (boxed on matrix, not full-bleed black) */
body.pwc-v7-shell #ops-feed,
body.pwc-v7-shell #pwc-ops-feed {
  font-family: "Share Tech Mono", monospace !important;
  max-width: 1240px !important;
  width: calc(100% - 48px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 22px !important;
  background-color: #020508 !important;
  background-image: none !important;
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.7) !important;
  overflow: hidden;
  padding: 0 !important;
}

body.pwc-v7-shell #ops-feed > .e-con-inner,
body.pwc-v7-shell #ops-feed > .e-con-boxed,
body.pwc-v7-shell #ops-feed > .e-con-inner > .e-con-boxed {
  background: transparent !important;
  max-width: none !important;
  width: 100% !important;
}

/* —— Hero layout + ops console (atmosphere; content stays in Elementor) —— */
/* display:contents on .e-con-inner is OK only if THIS grid is width-capped */
body.pwc-v7-shell #hero .pwc-hero-grid {
  width: 100% !important;
  max-width: 1240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: grid !important;
  grid-template-columns: 1.15fr 0.85fr !important;
  gap: 56px !important;
  align-items: center !important;
  box-sizing: border-box !important;
}

/* Let Elementor inner wrap not collapse the CSS grid children */
body.pwc-v7-shell #hero .pwc-hero-grid > .e-con-inner {
  display: contents !important;
}

body.pwc-v7-shell #hero .pwc-hero-copy {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

body.pwc-v7-shell #hero .pwc-console-theater {
  width: 100% !important;
  max-width: 480px !important;
  min-width: 0 !important;
  justify-self: end !important;
}

body.pwc-v7-shell #hero .pwc-status-badge .elementor-heading-title {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 8px 14px !important;
  margin: 0 0 8px !important;
  border: 1px solid rgba(5, 255, 114, 0.18) !important;
  border-radius: 9999px !important;
  background: rgba(5, 255, 114, 0.06) !important;
  color: #05ff72 !important;
  font-family: "Share Tech Mono", monospace !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  box-shadow: 0 0 24px rgba(5, 255, 114, 0.05);
}

body.pwc-v7-shell #hero .pwc-status-badge .elementor-heading-title::before {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 9999px;
  background: #05ff72;
  flex-shrink: 0;
  animation: pwcLivePing 2s infinite ease-out;
}

@keyframes pwcLivePing {
  0% {
    box-shadow: 0 0 0 0 rgba(5, 255, 114, 0.55);
  }
  70% {
    box-shadow: 0 0 0 10px rgba(5, 255, 114, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(5, 255, 114, 0);
  }
}

body.pwc-v7-shell #hero .pwc-hero-lead {
  max-width: 660px;
}

body.pwc-v7-shell #hero .pwc-hero-benefits {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 16px !important;
  max-width: 660px;
  width: 100% !important;
}

body.pwc-v7-shell #hero .pwc-hero-benefits > .e-con-inner {
  display: contents !important;
}

body.pwc-v7-shell #hero .pwc-hero-benefit-item .elementor-widget-container,
body.pwc-v7-shell #hero .pwc-hero-benefit-item {
  padding: 16px !important;
  border: 1px solid rgba(255, 255, 255, 0.04) !important;
  border-radius: 14px !important;
  background: rgba(255, 255, 255, 0.02) !important;
  height: 100%;
  box-sizing: border-box;
  transition: border-color 0.3s ease, background 0.3s ease;
}

body.pwc-v7-shell #hero .pwc-hero-benefit-item:hover {
  border-color: rgba(5, 255, 114, 0.22) !important;
  background: rgba(5, 255, 114, 0.04) !important;
}

body.pwc-v7-shell #hero .pwc-hero-benefits strong {
  display: block;
  color: #f5f8f7;
  font-family: "Share Tech Mono", monospace;
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 6px;
}

body.pwc-v7-shell #hero .pwc-hero-benefits span {
  font-size: 11px;
  color: #7b9487;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

/* Theater = orbit stage only; glass chrome lives on .pwc-console-screen */
body.pwc-v7-shell #hero .pwc-console-theater {
  position: relative !important;
  min-height: 520px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  max-width: none;
  margin: 0;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
  padding: 0 !important;
}

body.pwc-v7-shell #hero .pwc-console-orbit {
  position: absolute;
  /* ~15% larger than theater so the ring peeks past the console card */
  inset: -7.5%;
  border-radius: 50%;
  border: 1.5px dashed rgba(5, 255, 114, 0.12);
  animation: pwcOrbitSpin 30s linear infinite;
  pointer-events: none;
  z-index: 0;
}

body.pwc-v7-shell #hero .pwc-console-orbit::after {
  content: "";
  position: absolute;
  top: -6px;
  left: 50%;
  width: 12px;
  height: 12px;
  margin-left: -6px;
  border-radius: 9999px;
  background: #00e5ff;
  box-shadow: 0 0 15px #00e5ff;
}

@keyframes pwcOrbitSpin {
  to {
    transform: rotate(360deg);
  }
}

body.pwc-v7-shell #hero .pwc-console-screen,
body.pwc-v7-shell #hero #interactive-console {
  position: relative !important;
  z-index: 1;
  width: 100% !important;
  max-width: 440px;
  margin: 0 auto;
  padding: 0 !important;
  border: 1px solid rgba(0, 229, 255, 0.28) !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, rgba(8, 17, 22, 0.94), rgba(4, 9, 11, 0.98)) !important;
  box-shadow: 0 40px 96px rgba(0, 0, 0, 0.8), 0 0 40px rgba(0, 229, 255, 0.06) !important;
  overflow: hidden;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  transition: border-color 0.3s ease, box-shadow 0.3s ease, transform 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);
}

body.pwc-v7-shell #hero .pwc-console-screen:hover,
body.pwc-v7-shell #hero #interactive-console:hover {
  border-color: #00e5ff !important;
  box-shadow: 0 40px 96px rgba(0, 0, 0, 0.9), 0 0 50px rgba(0, 229, 255, 0.14) !important;
}

body.pwc-v7-shell #hero #interactive-console > .e-con-inner {
  padding: 0 !important;
  gap: 0 !important;
}

body.pwc-v7-shell #hero .pwc-console-header {
  padding: 16px 20px !important;
  border-bottom: 1px solid rgba(0, 229, 255, 0.1) !important;
  background: rgba(0, 229, 255, 0.02) !important;
  width: 100% !important;
}

body.pwc-v7-shell #hero .pwc-console-title .elementor-heading-title {
  font-family: "Share Tech Mono", monospace !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #f5f8f7 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 !important;
}

body.pwc-v7-shell #hero .pwc-console-title .elementor-heading-title::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 9999px;
  background: #00e5ff;
  box-shadow: 0 0 8px #00e5ff;
  animation: pwcPulseGlow 1.5s infinite alternate;
  flex-shrink: 0;
}

@keyframes pwcPulseGlow {
  from {
    opacity: 0.4;
  }
  to {
    opacity: 1;
  }
}

body.pwc-v7-shell #hero .pwc-console-version .elementor-heading-title {
  font-family: "Share Tech Mono", monospace !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  color: #00e5ff !important;
  letter-spacing: 0.06em !important;
  margin: 0 !important;
}

body.pwc-v7-shell #hero .pwc-console-body {
  padding: 24px !important;
  width: 100% !important;
  gap: 20px !important;
}

body.pwc-v7-shell #hero .pwc-console-stat {
  background: rgba(255, 255, 255, 0.02) !important;
  border: 1px solid rgba(255, 255, 255, 0.04) !important;
  border-radius: 12px !important;
  padding: 14px 16px !important;
  width: 100% !important;
  transition: transform 0.2s ease, background 0.2s ease, border-color 0.2s ease;
}

body.pwc-v7-shell #hero .pwc-console-stat:hover {
  transform: translateX(6px);
  background: rgba(0, 229, 255, 0.04) !important;
  border-color: rgba(0, 229, 255, 0.25) !important;
}

/* Skelementor omits .elementor-widget-container — target widget roots / inner p */
body.pwc-v7-shell #hero .pwc-console-stat-meta p {
  margin: 0 !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: baseline !important;
  gap: 12px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #cbdcd3 !important;
  line-height: 1.3 !important;
}

body.pwc-v7-shell #hero .pwc-console-stat-label {
  color: #cbdcd3;
}

body.pwc-v7-shell #hero .pwc-console-stat-value {
  font-family: "Share Tech Mono", monospace !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #00e5ff !important;
  letter-spacing: 0.04em !important;
  white-space: nowrap;
  margin-left: auto;
}

body.pwc-v7-shell #hero .pwc-console-bar {
  display: block !important;
  height: 6px !important;
  min-height: 6px !important;
  max-height: 6px !important;
  width: 100% !important;
  background: rgba(255, 255, 255, 0.06) !important;
  border-radius: 9999px !important;
  overflow: hidden !important;
  padding: 0 !important;
  margin: 0 !important;
  position: relative !important;
}

body.pwc-v7-shell #hero .pwc-console-bar > .e-con-inner {
  display: none !important;
}

/* No-JS / first-paint fallback via background size from pwc-fill-* class */
body.pwc-v7-shell #hero .pwc-console-bar.pwc-fill-94 {
  background: linear-gradient(90deg, #00e5ff, #05ff72) left / 94% 100% no-repeat,
    rgba(255, 255, 255, 0.06) !important;
}
body.pwc-v7-shell #hero .pwc-console-bar.pwc-fill-98 {
  background: linear-gradient(90deg, #00e5ff, #05ff72) left / 98% 100% no-repeat,
    rgba(255, 255, 255, 0.06) !important;
}
body.pwc-v7-shell #hero .pwc-console-bar.pwc-fill-100 {
  background: linear-gradient(90deg, #00e5ff, #05ff72) left / 100% 100% no-repeat,
    rgba(255, 255, 255, 0.06) !important;
}

/* Fill span injected by shell JS for animated drift */
body.pwc-v7-shell #hero .pwc-console-bar .pwc-console-fill-el {
  display: block;
  height: 100%;
  width: 0;
  max-width: 100%;
  border-radius: 9999px;
  background: linear-gradient(90deg, #00e5ff, #05ff72);
  transition: width 1.5s cubic-bezier(0.1, 0.8, 0.1, 1);
}

/* When JS fill is present and growing, hide static fallback bg */
body.pwc-v7-shell #hero .pwc-console-bar:has(.pwc-console-fill-el) {
  background: rgba(255, 255, 255, 0.06) !important;
}

body.pwc-v7-shell #hero .pwc-console-tags {
  width: 100% !important;
}

body.pwc-v7-shell #hero .pwc-console-tag {
  width: 100% !important;
  padding: 10px !important;
  border: 1px solid rgba(5, 255, 114, 0.12) !important;
  border-radius: 12px !important;
  background: rgba(5, 255, 114, 0.03) !important;
  text-align: center !important;
  transition: border-color 0.2s ease, background 0.2s ease, transform 0.2s ease;
  box-sizing: border-box;
}

body.pwc-v7-shell #hero .pwc-console-tag:hover {
  border-color: #05ff72 !important;
  background: rgba(5, 255, 114, 0.08) !important;
  transform: translateY(-2px);
}

body.pwc-v7-shell #hero .pwc-console-tag .elementor-heading-title {
  font-family: "Share Tech Mono", monospace !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #05ff72 !important;
  margin: 0 !important;
  text-align: center !important;
}

@media (max-width: 1100px) {
  body.pwc-v7-shell #hero .pwc-hero-grid {
    grid-template-columns: 1fr !important;
    gap: 40px !important;
  }

  body.pwc-v7-shell #hero .pwc-console-theater {
    min-height: 420px !important;
    max-width: 480px;
    margin: 0 auto;
  }
}

@media (max-width: 640px) {
  body.pwc-v7-shell #hero .pwc-hero-benefits {
    grid-template-columns: 1fr !important;
  }

  body.pwc-v7-shell #hero .pwc-console-theater {
    min-height: 0 !important;
    max-width: 100%;
  }
}

body.admin-bar .elementor-location-header {
  top: 32px;
}
@media (max-width: 782px) {
  body.admin-bar .elementor-location-header {
    top: 46px;
  }
}

/* —— G06: V7 asymmetric services bento (#differentiator) —— */
body.pwc-v7-shell #differentiator .v7-bento-grid {
  width: 100% !important;
  max-width: 1240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 48px !important;
  display: grid !important;
  grid-template-columns: repeat(12, 1fr) !important;
  grid-auto-rows: minmax(180px, auto) !important;
  gap: 24px !important;
  box-sizing: border-box !important;
}

/* Elementor wraps children in .e-con-inner — punch through for CSS grid spans */
body.pwc-v7-shell #differentiator .v7-bento-grid > .e-con-inner {
  display: contents !important;
}

body.pwc-v7-shell #differentiator .bento-card {
  position: relative;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  background: rgba(1, 3, 5, 0.6) !important;
  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);
  border: 1px solid rgba(255, 255, 255, 0.05) !important;
  border-radius: 24px !important;
  padding: 40px !important;
  overflow: hidden;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  box-sizing: border-box !important;
  transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275), box-shadow 0.4s ease,
    border-color 0.4s ease;
}

body.pwc-v7-shell #differentiator .bento-card > .e-con-inner {
  display: flex !important;
  flex-direction: inherit !important;
  justify-content: inherit !important;
  align-items: inherit !important;
  gap: inherit;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}

body.pwc-v7-shell #differentiator .v7-bento-grid .bento-card:hover {
  transform: translateY(-8px) scale(1.02);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4), 0 0 20px rgba(5, 255, 114, 0.1);
  border-color: rgba(5, 255, 114, 0.3) !important;
  z-index: 10;
}

html.light body.pwc-v7-shell #differentiator .bento-card {
  background: rgba(255, 255, 255, 0.7) !important;
  border-color: rgba(0, 0, 0, 0.05) !important;
}

html.light body.pwc-v7-shell #differentiator .v7-bento-grid .bento-card:hover {
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1), 0 0 20px rgba(0, 168, 84, 0.1);
  border-color: rgba(0, 168, 84, 0.3) !important;
}

body.pwc-v7-shell #differentiator .bento-dev {
  grid-column: span 8;
  grid-row: span 2;
}

body.pwc-v7-shell #differentiator .bento-seo {
  grid-column: span 4;
  grid-row: span 2;
  background: linear-gradient(135deg, rgba(1, 3, 5, 0.6), rgba(1, 3, 5, 0.6)),
    linear-gradient(135deg, rgba(5, 255, 114, 0.05), rgba(0, 229, 255, 0.05)) !important;
}

html.light body.pwc-v7-shell #differentiator .bento-seo {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.7)),
    linear-gradient(135deg, rgba(0, 168, 84, 0.05), rgba(0, 229, 255, 0.05)) !important;
}

body.pwc-v7-shell #differentiator .bento-ops {
  grid-column: span 12;
  grid-row: span 1;
  flex-direction: row !important;
  align-items: center !important;
}

body.pwc-v7-shell #differentiator .bento-card .elementor-heading-title {
  letter-spacing: -0.5px;
  margin-bottom: 0 !important;
}

body.pwc-v7-shell #differentiator .bento-dev .elementor-heading-title {
  font-size: 36px !important;
  line-height: 1.15 !important;
}

body.pwc-v7-shell #differentiator .bento-seo .elementor-heading-title,
body.pwc-v7-shell #differentiator .bento-ops .elementor-heading-title {
  font-size: 28px !important;
  line-height: 1.2 !important;
}

body.pwc-v7-shell #differentiator .bento-card .elementor-widget-text-editor p {
  color: #cbdcd3;
  font-size: 16px;
  margin-bottom: 0;
  max-width: 90%;
}

html.light body.pwc-v7-shell #differentiator .bento-card .elementor-widget-text-editor p {
  color: #334155;
}

body.pwc-v7-shell #differentiator .bento-ops .elementor-widget-text-editor p {
  margin-bottom: 0;
  max-width: none;
}

@media (max-width: 992px) {
  body.pwc-v7-shell #differentiator .bento-dev,
  body.pwc-v7-shell #differentiator .bento-seo,
  body.pwc-v7-shell #differentiator .bento-ops {
    grid-column: span 12;
    grid-row: span 1;
  }

  body.pwc-v7-shell #differentiator .bento-ops {
    flex-direction: column !important;
    align-items: flex-start !important;
  }
}

@media (max-width: 768px) {
  body.pwc-v7-shell #differentiator .v7-bento-grid {
    grid-template-columns: 1fr !important;
  }

  body.pwc-v7-shell #differentiator .bento-dev,
  body.pwc-v7-shell #differentiator .bento-seo,
  body.pwc-v7-shell #differentiator .bento-ops {
    grid-column: auto;
  }

  body.pwc-v7-shell #differentiator .bento-card {
    padding: 28px !important;
  }

  body.pwc-v7-shell #differentiator .bento-dev .elementor-heading-title {
    font-size: 28px !important;
  }
}

/* —— Glass spotlight hover (/v7/ glass-card) — sitewide via .pwc-glass-card ——
   JS lerps --mx/--my in px (150px circle). Section selectors = FOUC fallback. */
body.pwc-v7-shell .pwc-glass-card,
body.pwc-v7-shell #agitation [id^="card-"],
body.pwc-v7-shell #philosophy .e-grid > .e-con-inner > .e-con.e-child,
body.pwc-v7-shell #differentiator .bento-card,
body.pwc-v7-shell #protocol .e-grid > .e-con-inner > .e-con.e-child,
body.pwc-v7-shell #pricing .e-grid > .e-con-inner > .e-con.e-child,
body.pwc-v7-shell #rescue .e-con-boxed.e-con.e-child .e-con-boxed.e-con.e-child {
  position: relative;
  overflow: hidden;
  transform: translateZ(0);
  backface-visibility: hidden;
  transition:
    transform 0.45s cubic-bezier(0.22, 1, 0.36, 1),
    border-color 0.35s ease,
    box-shadow 0.45s cubic-bezier(0.22, 1, 0.36, 1),
    background 0.35s ease;
}

body.pwc-v7-shell .pwc-glass-card > .e-con-inner,
body.pwc-v7-shell #agitation [id^="card-"] > .e-con-inner,
body.pwc-v7-shell #philosophy .e-grid > .e-con-inner > .e-con.e-child > .e-con-inner,
body.pwc-v7-shell #differentiator .bento-card > .e-con-inner,
body.pwc-v7-shell #protocol .e-grid > .e-con-inner > .e-con.e-child > .e-con-inner,
body.pwc-v7-shell #pricing .e-grid > .e-con-inner > .e-con.e-child > .e-con-inner,
body.pwc-v7-shell #rescue .e-con-boxed.e-con.e-child .e-con-boxed.e-con.e-child > .e-con-inner {
  position: relative;
  z-index: 2;
}

body.pwc-v7-shell .pwc-glass-card::after,
body.pwc-v7-shell #agitation [id^="card-"]::after,
body.pwc-v7-shell #philosophy .e-grid > .e-con-inner > .e-con.e-child::after,
body.pwc-v7-shell #differentiator .bento-card::after,
body.pwc-v7-shell #protocol .e-grid > .e-con-inner > .e-con.e-child::after,
body.pwc-v7-shell #pricing .e-grid > .e-con-inner > .e-con.e-child::after,
body.pwc-v7-shell #rescue .e-con-boxed.e-con.e-child .e-con-boxed.e-con.e-child::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  opacity: 0;
  background: radial-gradient(
    150px circle at var(--mx, 50%) var(--my, 50%),
    rgba(var(--accent-emerald-rgb), 0.15),
    transparent 80%
  );
  transition: opacity 0.35s ease;
  will-change: opacity;
}

body.pwc-v7-shell .pwc-glass-card:hover,
body.pwc-v7-shell #agitation [id^="card-"]:hover,
body.pwc-v7-shell #philosophy .e-grid > .e-con-inner > .e-con.e-child:hover,
body.pwc-v7-shell #protocol .e-grid > .e-con-inner > .e-con.e-child:hover,
body.pwc-v7-shell #pricing .e-grid > .e-con-inner > .e-con.e-child:hover,
body.pwc-v7-shell #rescue .e-con-boxed.e-con.e-child .e-con-boxed.e-con.e-child:hover {
  transform: translateY(-4px);
  border-color: rgba(var(--accent-emerald-rgb), 0.4) !important;
  box-shadow:
    0 24px 48px rgba(0, 0, 0, 0.45),
    0 0 32px rgba(var(--accent-emerald-rgb), 0.1);
  z-index: 10;
}

/* Bento keeps V7 spring (more presence than generic glass) */
body.pwc-v7-shell #differentiator .v7-bento-grid .bento-card:hover {
  transform: translateY(-8px) scale(1.02);
  border-color: rgba(5, 255, 114, 0.3) !important;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4), 0 0 20px rgba(5, 255, 114, 0.1);
  z-index: 10;
}

body.pwc-v7-shell .pwc-glass-card:hover::after,
body.pwc-v7-shell #agitation [id^="card-"]:hover::after,
body.pwc-v7-shell #philosophy .e-grid > .e-con-inner > .e-con.e-child:hover::after,
body.pwc-v7-shell #differentiator .bento-card:hover::after,
body.pwc-v7-shell #protocol .e-grid > .e-con-inner > .e-con.e-child:hover::after,
body.pwc-v7-shell #pricing .e-grid > .e-con-inner > .e-con.e-child:hover::after,
body.pwc-v7-shell #rescue .e-con-boxed.e-con.e-child .e-con-boxed.e-con.e-child:hover::after {
  opacity: 1;
}

html.light body.pwc-v7-shell .pwc-glass-card:hover,
html.light body.pwc-v7-shell #agitation [id^="card-"]:hover,
html.light body.pwc-v7-shell #philosophy .e-grid > .e-con-inner > .e-con.e-child:hover,
html.light body.pwc-v7-shell #protocol .e-grid > .e-con-inner > .e-con.e-child:hover,
html.light body.pwc-v7-shell #pricing .e-grid > .e-con-inner > .e-con.e-child:hover,
html.light body.pwc-v7-shell #rescue .e-con-boxed.e-con.e-child .e-con-boxed.e-con.e-child:hover {
  box-shadow:
    0 22px 48px rgba(15, 23, 42, 0.1),
    0 0 28px rgba(var(--accent-emerald-rgb), 0.12);
}

html.light body.pwc-v7-shell #differentiator .v7-bento-grid .bento-card:hover {
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1), 0 0 20px rgba(0, 168, 84, 0.1);
  border-color: rgba(0, 168, 84, 0.3) !important;
}

html.light body.pwc-v7-shell .pwc-glass-card::after,
html.light body.pwc-v7-shell #agitation [id^="card-"]::after,
html.light body.pwc-v7-shell #philosophy .e-grid > .e-con-inner > .e-con.e-child::after,
html.light body.pwc-v7-shell #differentiator .bento-card::after,
html.light body.pwc-v7-shell #protocol .e-grid > .e-con-inner > .e-con.e-child::after,
html.light body.pwc-v7-shell #pricing .e-grid > .e-con-inner > .e-con.e-child::after,
html.light body.pwc-v7-shell #rescue .e-con-boxed.e-con.e-child .e-con-boxed.e-con.e-child::after {
  background: radial-gradient(
    150px circle at var(--mx, 50%) var(--my, 50%),
    rgba(var(--accent-emerald-rgb), 0.16),
    transparent 80%
  );
}

@media (prefers-reduced-motion: reduce) {
  body.pwc-v7-shell .pwc-glass-card,
  body.pwc-v7-shell #agitation [id^="card-"],
  body.pwc-v7-shell #philosophy .e-grid > .e-con-inner > .e-con.e-child,
  body.pwc-v7-shell #differentiator .bento-card,
  body.pwc-v7-shell #protocol .e-grid > .e-con-inner > .e-con.e-child,
  body.pwc-v7-shell #pricing .e-grid > .e-con-inner > .e-con.e-child,
  body.pwc-v7-shell #rescue .e-con-boxed.e-con.e-child .e-con-boxed.e-con.e-child {
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
  }

  body.pwc-v7-shell .pwc-glass-card:hover,
  body.pwc-v7-shell #agitation [id^="card-"]:hover,
  body.pwc-v7-shell #philosophy .e-grid > .e-con-inner > .e-con.e-child:hover,
  body.pwc-v7-shell #differentiator .v7-bento-grid .bento-card:hover,
  body.pwc-v7-shell #protocol .e-grid > .e-con-inner > .e-con.e-child:hover,
  body.pwc-v7-shell #pricing .e-grid > .e-con-inner > .e-con.e-child:hover,
  body.pwc-v7-shell #rescue .e-con-boxed.e-con.e-child .e-con-boxed.e-con.e-child:hover {
    transform: none;
  }
}

/* —— G08 FAQ rethink — real stacked accordion (not feature cards) —— */
body.pwc-v7-shell #faq {
  background: transparent !important;
  position: relative;
  overflow: hidden;
}

body.pwc-v7-shell #faq::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background: radial-gradient(
    circle at 50% 0%,
    rgba(var(--accent-emerald-rgb), 0.06),
    transparent 36rem
  );
}

body.pwc-v7-shell #faq > .e-con-inner,
body.pwc-v7-shell #faq > .e-con {
  position: relative;
  z-index: 1;
}

/* Intro: centered FAQ reading column */
body.pwc-v7-shell #faq .elementor-element-0469a363 {
  max-width: 760px !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 32px !important;
  text-align: center !important;
  align-items: center !important;
}

body.pwc-v7-shell #faq .elementor-element-523935d3 .elementor-widget-container,
body.pwc-v7-shell #faq .elementor-element-523935d3 p {
  margin: 0 0 10px !important;
  font-family: "Share Tech Mono", monospace !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  color: var(--accent-cyan) !important;
}

body.pwc-v7-shell #faq .elementor-element-3c6eaf3a .elementor-heading-title {
  margin: 0 0 12px !important;
  font-size: clamp(1.5rem, 2.5vw, 2rem) !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em !important;
  color: var(--text-white) !important;
  max-width: none;
}

body.pwc-v7-shell #faq .elementor-element-7bf17b85 {
  max-width: 540px;
}

body.pwc-v7-shell #faq .elementor-element-7bf17b85 p {
  margin: 0 !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
  color: var(--text-muted) !important;
}

/* One glass panel. Stacked Q rows. Expand for A. */
body.pwc-v7-shell #faq .elementor-element-5cc06d43 {
  max-width: 760px !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.pwc-v7-shell #faq .e-n-accordion {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  width: 100%;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 18px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.02)),
    rgba(1, 3, 5, 0.78);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.32);
  overflow: hidden;
  counter-reset: pwc-faq;
}

body.pwc-v7-shell #faq .e-n-accordion-item {
  position: relative;
  display: block !important;
  margin: 0 !important;
  min-height: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible;
  transform: none !important;
  filter: none !important;
  transition: background 0.3s ease;
}

body.pwc-v7-shell #faq .e-n-accordion-item:last-child {
  border-bottom: 0 !important;
}

body.pwc-v7-shell #faq .e-n-accordion-item::after {
  display: none !important;
}

body.pwc-v7-shell #faq .e-n-accordion-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 2px;
  background: transparent;
  transition: background 0.3s ease;
  z-index: 2;
}

body.pwc-v7-shell #faq .e-n-accordion-item:hover {
  background: rgba(255, 255, 255, 0.03) !important;
}

body.pwc-v7-shell #faq .e-n-accordion-item[open] {
  background: rgba(var(--accent-emerald-rgb), 0.04) !important;
}

body.pwc-v7-shell #faq .e-n-accordion-item[open]::before {
  background: var(--accent-emerald);
}

body.pwc-v7-shell #faq .e-n-accordion-item-title {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px;
  padding: 20px 22px !important;
  margin: 0 !important;
  list-style: none;
  cursor: pointer;
  background: transparent !important;
  border: 0 !important;
}

body.pwc-v7-shell #faq .e-n-accordion-item-title::-webkit-details-marker {
  display: none;
}

body.pwc-v7-shell #faq .e-n-accordion-item-title-header {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  align-items: flex-start;
  gap: 14px;
}

body.pwc-v7-shell #faq .e-n-accordion-item-title-header::before {
  counter-increment: pwc-faq;
  content: counter(pwc-faq, decimal-leading-zero);
  flex: 0 0 auto;
  margin-top: 2px;
  font-family: "Share Tech Mono", monospace !important;
  font-size: 12px !important;
  letter-spacing: 0.06em;
  color: var(--accent-emerald);
  opacity: 0.9;
}

body.pwc-v7-shell #faq .e-n-accordion-item-title-text {
  display: block !important;
  margin: 0 !important;
  font-family: Outfit, sans-serif !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  letter-spacing: -0.015em !important;
  color: var(--text-white) !important;
  text-align: left;
}

body.pwc-v7-shell #faq .e-n-accordion-item-title-text::before {
  content: none !important;
}

body.pwc-v7-shell #faq .e-n-accordion-item-title-icon {
  flex: 0 0 auto;
  width: 32px;
  height: 32px;
  display: grid !important;
  place-items: center;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.04);
  color: var(--text-silver) !important;
  transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease;
}

body.pwc-v7-shell #faq .e-n-accordion-item:hover .e-n-accordion-item-title-icon,
body.pwc-v7-shell #faq .e-n-accordion-item[open] .e-n-accordion-item-title-icon {
  border-color: rgba(var(--accent-emerald-rgb), 0.45);
  background: rgba(var(--accent-emerald-rgb), 0.12);
  color: var(--accent-emerald) !important;
}

body.pwc-v7-shell #faq .e-n-accordion-item-title-icon svg {
  width: 12px;
  height: 12px;
  fill: currentColor;
}

/* Answer — indented under the question row */
body.pwc-v7-shell #faq .e-n-accordion-item > .e-con {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 22px 22px 54px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.pwc-v7-shell #faq .e-n-accordion-item > .e-con > .e-con-inner {
  padding: 0 !important;
}

body.pwc-v7-shell #faq .e-n-accordion-item .elementor-widget-text-editor p {
  margin: 0 !important;
  padding-top: 2px;
  font-size: 15px !important;
  line-height: 1.65 !important;
  color: var(--text-silver) !important;
}

/* Light mode */
html.light body.pwc-v7-shell #faq .e-n-accordion {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 252, 0.94)),
    #fff;
  border-color: rgba(15, 23, 42, 0.1);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
}

html.light body.pwc-v7-shell #faq .e-n-accordion-item {
  border-bottom-color: rgba(15, 23, 42, 0.08) !important;
}

html.light body.pwc-v7-shell #faq .e-n-accordion-item:hover {
  background: rgba(15, 23, 42, 0.03) !important;
}

html.light body.pwc-v7-shell #faq .e-n-accordion-item[open] {
  background: rgba(var(--accent-emerald-rgb), 0.05) !important;
}

html.light body.pwc-v7-shell #faq .e-n-accordion-item-title-text {
  color: #0f172a !important;
}

html.light body.pwc-v7-shell #faq .e-n-accordion-item .elementor-widget-text-editor p {
  color: #334155 !important;
}

html.light body.pwc-v7-shell #faq .e-n-accordion-item-title-icon {
  border-color: rgba(15, 23, 42, 0.12);
  background: rgba(15, 23, 42, 0.03);
  color: #64748b !important;
}

@media (max-width: 640px) {
  body.pwc-v7-shell #faq .e-n-accordion-item-title {
    padding: 16px 16px !important;
  }

  body.pwc-v7-shell #faq .e-n-accordion-item > .e-con {
    padding: 0 16px 18px 16px !important;
  }

  body.pwc-v7-shell #faq .e-n-accordion-item-title-header::before {
    display: none;
  }
}

/* —— Blog post-card CTA icon (v7-icons.js injects pwc-i-arrow into
   .elementor-post__read-more, replacing the plain-text "→" glyph) —— */
body.pwc-v7-shell .elementor-post__read-more {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px;
}

body.pwc-v7-shell .elementor-post__read-more .pwc-icon {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

body.pwc-v7-shell .elementor-post__read-more:hover .pwc-icon {
  transform: translateX(3px);
}

/* —— Obsidian front-page glyph headings + Font Awesome swaps (mountIcons) ——
   Both replacements size to 1em / currentColor so the widget's own
   font-size and color rules keep controlling the box — no layout shift. */
body.pwc-v7-shell .elementor-heading-title.pwc-glyph-icon-host {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

body.pwc-v7-shell .elementor-heading-title .pwc-icon {
  width: 1em;
  height: 1em;
  fill: currentColor;
  color: inherit;
  flex-shrink: 0;
}

body.pwc-v7-shell .elementor-icon-list-icon .pwc-fa-swap,
body.pwc-v7-shell .elementor-icon .pwc-fa-swap,
body.pwc-v7-shell .elementor-icon-box-icon .pwc-fa-swap,
body.pwc-v7-shell .elementor-button-icon .pwc-fa-swap {
  width: 1em;
  height: 1em;
  fill: currentColor;
  color: inherit;
  flex-shrink: 0;
}

/* —— Mobile overflow fix: risk-card / feature-card CSS-grid sections ——
   Elementor core (frontend.css) puts the real N-column grid on the
   `.e-con-inner` child, not on the `.elementor-element-XXXX` wrapper:
     .e-con.e-grid, .e-con.e-grid > .e-con-inner {
       grid-template-columns: var(--e-con-grid-template-columns); ... }
     .e-con-boxed.e-grid { grid-template-columns: 1fr; }  <- outer forced 1fr
   The outer wrapper is always hard-coded to a single 1fr track (it's just
   the boxed width clamp); the actual card columns render on its
   `.e-con-inner`, which inherits --e-con-grid-template-columns from the
   wrapper via CSS custom-property inheritance. post-669.css does set
   --e-con-grid-template-columns: repeat(1, 1fr) on the wrapper at
   @media(max-width:767px), Elementor's own mobile breakpoint — but grid
   items default to min-width:auto, so a nominally "1fr" track still
   cannot shrink below the max-content width of its children. If any
   card's own flex children (icon glyph, heading, padding/border box)
   have a larger intrinsic width than the phone viewport, the whole
   `.e-con-inner` grid row is stretched wider than the screen and the
   boxed/centered container gets clipped off the left edge at ~360-430px.
   .pwc-icon glyph sizing (width/height: 1em / 14px, both relative or
   small fixed values, see rules above) is NOT the source — those are far
   too small to force this. The intrinsic-min-width grid behavior is.
   Fix: re-affirm a single column on the real grid host (`.e-con-inner`)
   and neutralize min-width through it and its card children, so tracks
   are free to shrink to the viewport. Belt-and-braces overflow-x guard
   on the wrapper itself.
   Selectors target the exact Elementor element IDs from the live DOM
   (post 669) — not a blanket .e-grid rule — so no other Elementor
   section is restyled. The #section-id ancestor gives these rules ID-level
   specificity, which outranks Elementor core's `.e-con-boxed.e-grid`
   two-class selector regardless of load order; this stylesheet also
   loads after post-669.css and elementor's frontend.css in <head>.
   Containers fixed:
     - #agitation  .elementor-element-1f79ae84 ("The Ghosted Developer
       Trap" / "Update Roulette" / "The False Security of Silent
       Backups" — the reported risk cards, crimson alert/bolt/target
       icons)
     - #philosophy .elementor-element-4cb98560 (2-col feature grid)
     - #protocol   .elementor-element-81bb756d (4-col feature grid)
     - #pricing    .elementor-element-f55a9a5e (3-col feature grid)
     - #pricing    .elementor-element-0c71fd4e (2-col feature grid)
   All five share the identical DOM shape (wrapper > .e-con-inner >
   N card .e-con children) and the identical repeat(N,1fr) →
   repeat(1,1fr) pattern in post-669.css with no min-width guard, so all
   five get the same defensive treatment. */
@media (max-width: 767px) {
  body.pwc-v7-shell #agitation .elementor-element-1f79ae84,
  body.pwc-v7-shell #philosophy .elementor-element-4cb98560,
  body.pwc-v7-shell #protocol .elementor-element-81bb756d,
  body.pwc-v7-shell #pricing .elementor-element-f55a9a5e,
  body.pwc-v7-shell #pricing .elementor-element-0c71fd4e {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden;
  }

  body.pwc-v7-shell #agitation .elementor-element-1f79ae84 > .e-con-inner,
  body.pwc-v7-shell #philosophy .elementor-element-4cb98560 > .e-con-inner,
  body.pwc-v7-shell #protocol .elementor-element-81bb756d > .e-con-inner,
  body.pwc-v7-shell #pricing .elementor-element-f55a9a5e > .e-con-inner,
  body.pwc-v7-shell #pricing .elementor-element-0c71fd4e > .e-con-inner {
    grid-template-columns: 1fr !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    row-gap: 16px !important;
    column-gap: 0 !important;
  }

  body.pwc-v7-shell #agitation .elementor-element-1f79ae84 > .e-con-inner > .e-con,
  body.pwc-v7-shell #philosophy .elementor-element-4cb98560 > .e-con-inner > .e-con,
  body.pwc-v7-shell #protocol .elementor-element-81bb756d > .e-con-inner > .e-con,
  body.pwc-v7-shell #pricing .elementor-element-f55a9a5e > .e-con-inner > .e-con,
  body.pwc-v7-shell #pricing .elementor-element-0c71fd4e > .e-con-inner > .e-con {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  body.pwc-v7-shell #agitation .elementor-element-1f79ae84 > .e-con-inner > .e-con *,
  body.pwc-v7-shell #philosophy .elementor-element-4cb98560 > .e-con-inner > .e-con *,
  body.pwc-v7-shell #protocol .elementor-element-81bb756d > .e-con-inner > .e-con *,
  body.pwc-v7-shell #pricing .elementor-element-f55a9a5e > .e-con-inner > .e-con *,
  body.pwc-v7-shell #pricing .elementor-element-0c71fd4e > .e-con-inner > .e-con * {
    min-width: 0;
    max-width: 100%;
  }
}

/* ================================================================
   PWC RHYTHM LAYER — vertical rhythm parity with /v7/ (v7-home.css)
   Added: 2026-07-21.
   Problem: Elementor writes per-element custom props (--padding-top,
   --padding-bottom, --min-height) inline in post-13.css / post-669.css
   (etc. for every shell page) with NO responsive override at any
   breakpoint — Elementor core's own frontend.css only ever *consumes*
   these vars, it never re-scales them for mobile/tablet. Verified
   consumption chain in wp-content/plugins/elementor/assets/css/
   frontend.css:
     .e-con { min-height: var(--min-height); ... }                (:1467)
     .e-con { --padding-block-start: var(--padding-top);
               --padding-block-end: var(--padding-bottom); }      (:1484-85)
     .e-con-full, .e-con > .e-con-inner {
       padding-block-start: var(--padding-block-start);
       padding-block-end: var(--padding-block-end); }             (:1514-1517)
   So the element that actually PAINTS top/bottom padding is either
   the section itself when it carries .e-con-full (e.g. #hero, #agitation,
   #differentiator — full-bleed sections), or that section's direct
   .e-con-inner child when the section is .e-con-boxed (e.g. #rescue's
   inner grid, boxed card wrappers). Both are covered below. Overriding
   the *physical* padding-top/padding-bottom (not the custom prop) wins
   over the non-important logical padding-block-start/end declaration
   per the CSS Logical Properties cascade (same physical slot, !important
   breaks the tie). min(var(--padding-top, Npx), Npx) preserves any
   section that was ALREADY authored smaller than the cap (e.g. #rescue's
   own 60px, or card padding already at 28px) while clamping the 120-160px
   / 70-100vh outliers found across figma-to-joomla, fix-my-website,
   maintenance-plans, services, about-us (post-13.css, post-669.css).
   Scoped to body.pwc-v7-shell only — v7 canvas home doesn't load this
   file and is unaffected. */

/* —— Footer separation tokens (v7-home.css --footer-border, replicated —
   shell file doesn't define this var, so both modes are declared here) —— */
body.pwc-v7-shell {
  --pwc-footer-border: rgba(255, 255, 255, 0.04);
}
html.light body.pwc-v7-shell {
  --pwc-footer-border: rgba(15, 23, 42, 0.06);
}

/* —— 1. Mobile (≤767px): kill 70-100vh min-height stretch + cap section padding —— */
@media (max-width: 767px) {
  body.pwc-v7-shell .elementor > .e-con.e-parent,
  body.pwc-v7-shell .elementor > .e-con.e-parent > .e-con-inner {
    min-height: auto !important;
  }

  body.pwc-v7-shell .elementor > .e-con.e-parent,
  body.pwc-v7-shell .elementor > .e-con.e-parent > .e-con-inner {
    padding-top: min(var(--padding-top, 64px), 64px) !important;
    padding-bottom: min(var(--padding-bottom, 64px), 64px) !important;
  }

  /* Hero exception — first section keeps clearance under the floating nav pill */
  body.pwc-v7-shell .elementor > .e-con.e-parent:first-of-type,
  body.pwc-v7-shell .elementor > .e-con.e-parent:first-of-type > .e-con-inner,
  body.pwc-v7-shell .elementor > .e-con.e-parent#hero,
  body.pwc-v7-shell .elementor > .e-con.e-parent#hero > .e-con-inner {
    padding-top: min(var(--padding-top, 96px), 96px) !important;
  }
}

/* —— 2. Tablet (768-1024px): cap both top/bottom at 96px —— */
@media (min-width: 768px) and (max-width: 1024px) {
  body.pwc-v7-shell .elementor > .e-con.e-parent,
  body.pwc-v7-shell .elementor > .e-con.e-parent > .e-con-inner {
    padding-top: min(var(--padding-top, 96px), 96px) !important;
    padding-bottom: min(var(--padding-bottom, 96px), 96px) !important;
  }
}

/* —— 3. Mobile card interior: cap glass/bento/boxed card padding to 28px —— */
@media (max-width: 767px) {
  body.pwc-v7-shell .pwc-glass-card > .e-con-inner,
  body.pwc-v7-shell #agitation [id^="card-"] > .e-con-inner,
  body.pwc-v7-shell #philosophy .e-grid > .e-con-inner > .e-con.e-child > .e-con-inner,
  body.pwc-v7-shell #protocol .e-grid > .e-con-inner > .e-con.e-child > .e-con-inner,
  body.pwc-v7-shell #pricing .e-grid > .e-con-inner > .e-con.e-child > .e-con-inner,
  body.pwc-v7-shell #rescue .e-con-boxed.e-con.e-child .e-con-boxed.e-con.e-child > .e-con-inner {
    padding-top: min(var(--padding-top, 28px), 28px) !important;
    padding-bottom: min(var(--padding-bottom, 28px), 28px) !important;
    padding-left: min(var(--padding-left, 28px), 28px) !important;
    padding-right: min(var(--padding-right, 28px), 28px) !important;
  }
}

/* —— 4. Footer separation (all widths) — double hairline like /v7/ —— */
body.pwc-v7-shell [data-elementor-type="footer"] {
  border-top: 1px solid var(--pwc-footer-border);
}

body.pwc-v7-shell #pwc-footer-bottom {
  border-top: 1px solid var(--pwc-footer-border);
  padding-top: 24px !important;
}

/* —— 4b. Scroll-separator canvas seams — between page sections / before footer —— */
body.pwc-v7-shell canvas.scroll-separator {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 80px;
  margin: 0;
}

/* —— 5. Heading rhythm at mobile — harmonize h2 margin to v7 (10px/18px) —— */
@media (max-width: 767px) {
  body.pwc-v7-shell .elementor h2.elementor-heading-title {
    margin-top: 10px !important;
    margin-bottom: 18px !important;
  }
}
