/* Salim Distro redesign: About, Contact, Wholesale Catalog, Foger Wholesale (Wave 3-F, 2026-09-23).
   No mockup screen exists for these pages. Built from the shipped components (sdx-components.css) and
   the Wave 2-D legal pattern (forest page hero, reading column, hairline h2 rules), reskinning LIVE markup:
   Kadence's page template, salim-contact-form ([salim_contact_page]), salim-talk-to-team (meeting +
   WhatsApp cards in page 504's content) and the markup inc/sdx-pages.php adds.
   Loaded only on those four pages (inc/sdx-pages.php matches id + slug).
   Rules for this sheet:
   - Every selector starts with .sdx-root and carries .sdx-page (added only on these four pages) or an
     sdx- class that only this area prints. Contact rules are scoped .sdx-root.page-id-504.sdx-page--contact
     so they outrank the plugin's body.page-id-504 / .sd-contact-* rules by specificity, not by order.
   - !important appears only where the rule it beats is itself !important (child style.css hero band and
     button[type=submit], salim-contact-form's hero) or an inline style in page content (Foger tables).
   - No page content is hidden. On Contact the plugin's own contact list is hidden only when the rail that
     repeats it is present (:has), so a missing rail can never leave the page without contact details.
   - Breakpoints: 980 (--sdx-bp-lg) and 640 (--sdx-bp-sm), as the shell. */

:root {
  --sdx-page-bg: #f8f5ed;                        /* = Wave 2-D page ground (mockup blog.css body) */
  --sdx-page-copy: #34493f;                      /* body copy, as the legal pages */
  --sdx-page-on-dark: #b9c9c0;                   /* hero lede on forest */
  --sdx-page-on-dark-soft: #cfdcd5;              /* breadcrumb links on forest */
  --sdx-page-on-dark-muted: #9fb3a8;             /* breadcrumb, meta labels on forest */
  --sdx-page-cta-text: #ffe4da;                  /* copy on the orange CTA band */
  --sdx-page-row-alt: #f0ece2;                   /* table zebra rows */
  --sdx-page-display: clamp(44px, 7vw, 96px);    /* hero h1, = the legal hero */
  --sdx-page-display-cta: clamp(36px, 4vw, 59px);/* CTA band title */
  --sdx-page-h2: 34px;                           /* content h2 */
  --sdx-page-h2-sm: 28px;                        /* content h2 <=640px, catalog group h2 */
  --sdx-page-h3: 20px;                           /* content h3 */
  --sdx-page-measure: 760px;                     /* reading column */
  --sdx-page-hero-pad: 74px;                     /* hero top padding */
  --sdx-page-lede-w: 62ch;
  --sdx-page-label-w: 250px;                     /* About: section heading column */
  --sdx-page-rail-w: 340px;                      /* Contact: rail column */
  --sdx-page-jump-top: calc(var(--wp-admin--admin-bar--height, 0px) + var(--sdx-header-h));
  --sdx-page-jump-h: 64px;                       /* sticky jump bar height, for anchor offsets */
  --sdx-page-anchor-offset: calc(var(--sdx-page-jump-top) + var(--sdx-page-jump-h) + 16px);
  --sdx-page-z-jump: 20;                         /* under the header (25) and utility bar (30) */
}

/* =============================================================================================
   Shared frame: page ground, Kadence content box flattened, reading column
   ============================================================================================= */
.sdx-root.sdx-page { background: var(--sdx-page-bg); }
.sdx-root.sdx-page .content-area { margin: 0; background: transparent; }
.sdx-root.sdx-page .site-main { padding: 0; }
.sdx-root.sdx-page .single-entry {
  margin: 0;
  overflow: visible;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.sdx-root.sdx-page:not(.sdx-page--contact) .content-area > .content-container.site-container {
  box-sizing: border-box;
  width: min(var(--sdx-shell-max), calc(100% - var(--sdx-shell-gutter)));
  max-width: none;
  margin-inline: auto;
  padding-inline: 0;
}
.sdx-root.sdx-page:not(.sdx-page--contact) .single-entry > .entry-content-wrap { padding: var(--sdx-space-55) 0 var(--sdx-space-72); }

/* =============================================================================================
   Page hero: Kadence's own entry header on forest (crumbs + the one h1 + lede / facts)
   ============================================================================================= */
.sdx-root.sdx-page .entry-hero,
.sdx-root.sdx-page .entry-hero .entry-hero-container-inner { background: var(--sdx-forest) !important; }
.sdx-root.sdx-page .entry-hero .entry-hero-container-inner {
  min-height: 0 !important;
  padding: var(--sdx-page-hero-pad) 0 var(--sdx-space-55) !important;
}
.sdx-root.sdx-page .entry-hero .hero-section-overlay { display: none; }
.sdx-root.sdx-page .entry-hero .hero-container.site-container {
  box-sizing: border-box;
  width: min(var(--sdx-shell-max), calc(100% - var(--sdx-shell-gutter)));
  max-width: none;
  margin-inline: auto;
  padding-inline: 0;
}
.sdx-root.sdx-page .entry-hero .entry-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: end !important;
  justify-content: stretch !important;
  min-height: 0 !important;
  margin: 0;
  text-align: left !important;
}
.sdx-root.sdx-page .entry-hero h1.entry-title {
  max-width: none;
  margin: var(--sdx-space-10) 0 0;
  padding: 0;
  color: var(--sdx-on-accent);
  font: 400 var(--sdx-page-display)/.92 var(--sdx-display);
  letter-spacing: -.05em;
  text-align: left !important;
  overflow-wrap: break-word;
}
.sdx-root.sdx-page .entry-hero h1.entry-title::after { display: none; }

.sdx-root .sdx-page-crumbs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--sdx-space-9);
  margin: 0 0 var(--sdx-space-20);
  color: var(--sdx-page-on-dark-muted);
  font: 600 var(--sdx-text-10)/1.3 var(--sdx-mono);
  letter-spacing: var(--sdx-track-label-sm);
  text-transform: uppercase;
}
.sdx-root .sdx-page-crumbs a { color: var(--sdx-page-on-dark-soft); text-decoration: none; }
.sdx-root .sdx-page-crumbs a:hover { color: var(--sdx-on-accent); text-decoration: underline; }
.sdx-root .sdx-page-crumbs a:focus-visible { outline: var(--sdx-focus-ring); outline-offset: var(--sdx-focus-offset-sm); }
.sdx-root .sdx-page-crumbs__sep { color: var(--sdx-orange); }

.sdx-root .sdx-page-hero__lede {
  max-width: var(--sdx-page-lede-w);
  margin: var(--sdx-space-24) 0 0;
  color: var(--sdx-page-on-dark);
  font: 400 var(--sdx-text-18)/1.6 var(--sdx-sans);
}

.sdx-root .sdx-page-meta {
  margin: var(--sdx-space-28) 0 0;
  padding: 0;
  border-top: 1px solid var(--sdx-rule-on-dark);
}
.sdx-root .sdx-page-meta > div { padding: var(--sdx-space-14) 0; border-bottom: 1px solid var(--sdx-rule-on-dark); }
.sdx-root .sdx-page-meta dt {
  margin: 0;
  color: var(--sdx-page-on-dark-muted);
  font: 600 var(--sdx-text-9)/1.3 var(--sdx-mono);
  letter-spacing: var(--sdx-track-control);
  text-transform: uppercase;
}
.sdx-root .sdx-page-meta dd {
  margin: var(--sdx-space-5) 0 0;
  color: var(--sdx-on-accent);
  font: 700 var(--sdx-text-14)/1.4 var(--sdx-sans);
}
@media (min-width: 981px) {
  .sdx-root.sdx-page--catalog .entry-hero .entry-header {
    grid-template-columns: minmax(0, 1fr) 240px;
    column-gap: var(--sdx-space-64);
  }
  .sdx-root.sdx-page--catalog .entry-hero .entry-header > * { grid-column: 1; }
  .sdx-root.sdx-page--catalog .entry-hero .entry-header > .sdx-page-meta {
    grid-column: 2;
    grid-row: 1 / span 4;
    align-self: end;
    margin: 0;
  }
}

/* =============================================================================================
   Article typography (About, Foger, the catalog intro). Content itself is untouched.
   ============================================================================================= */
.sdx-root.sdx-page:not(.sdx-page--contact) .single-entry .entry-content {
  color: var(--sdx-page-copy);
  font: 400 var(--sdx-text-16)/1.78 var(--sdx-sans);
}
.sdx-root.sdx-page:not(.sdx-page--contact) .single-entry .entry-content h2,
.sdx-root.sdx-page:not(.sdx-page--contact) .single-entry .entry-content h3 { scroll-margin-top: var(--sdx-page-anchor-offset); }
.sdx-root.sdx-page:not(.sdx-page--contact) .single-entry .entry-content > h2 {
  margin: var(--sdx-space-55) 0 var(--sdx-space-24);
  padding-top: var(--sdx-space-34);
  border-top: 1px solid var(--sdx-line);
  color: var(--sdx-ink);
  font: 400 var(--sdx-page-h2)/1.08 var(--sdx-display);
  letter-spacing: var(--sdx-track-drawer);
}
.sdx-root.sdx-page:not(.sdx-page--contact) .single-entry .entry-content > h3 {
  margin: var(--sdx-space-38) 0 var(--sdx-space-13);
  color: var(--sdx-ink);
  font: 700 var(--sdx-page-h3)/1.25 var(--sdx-sans);
  letter-spacing: -.01em;
}
.sdx-root.sdx-page:not(.sdx-page--contact) .single-entry .entry-content > p { margin-top: 0; margin-bottom: var(--sdx-space-22); }
.sdx-root.sdx-page:not(.sdx-page--contact) .single-entry .entry-content li { margin: var(--sdx-space-10) 0; line-height: 1.68; }
.sdx-root.sdx-page:not(.sdx-page--contact) .single-entry .entry-content li::marker { color: var(--sdx-orange); font-weight: 700; }
.sdx-root.sdx-page:not(.sdx-page--contact) .single-entry .entry-content strong { color: var(--sdx-ink); }
.sdx-root.sdx-page:not(.sdx-page--contact) .single-entry .entry-content a {
  color: var(--sdx-ink);
  font-weight: 600;
  text-decoration: underline;
  text-decoration-color: var(--sdx-orange);
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
.sdx-root.sdx-page:not(.sdx-page--contact) .single-entry .entry-content a:hover { color: var(--sdx-orange-dark); }
.sdx-root.sdx-page:not(.sdx-page--contact) .single-entry .entry-content a:focus-visible { outline: var(--sdx-focus-ring); outline-offset: var(--sdx-focus-offset-sm); }

/* Foger + catalog: one reading column */
.sdx-root.sdx-page--foger .single-entry .entry-content,
.sdx-root.sdx-page--catalog .single-entry .entry-content > p {
  box-sizing: border-box;
  max-width: var(--sdx-page-measure);
  margin-left: auto;
  margin-right: auto;
}
.sdx-root.sdx-page--foger .single-entry .entry-content > p:first-child,
.sdx-root.sdx-page--catalog .single-entry .entry-content > p:first-child {
  color: var(--sdx-ink);
  font-size: var(--sdx-text-19);
  line-height: 1.6;
}

/* =============================================================================================
   About: the content's h2 sections become the site's section rhythm (numbered heading column
   beside the text at 981px+, stacked below). Pure CSS on the live markup: no element is moved.
   ============================================================================================= */
.sdx-root.sdx-page--about .single-entry .entry-content { counter-reset: sdx-page-section; }
.sdx-root.sdx-page--about .single-entry .entry-content > p:first-child {
  max-width: var(--sdx-page-measure);
  margin-bottom: var(--sdx-space-40);
  color: var(--sdx-ink);
  font: 500 var(--sdx-text-22)/1.5 var(--sdx-sans);
}
.sdx-root.sdx-page--about .single-entry .entry-content > h2 { counter-increment: sdx-page-section; }
.sdx-root.sdx-page--about .single-entry .entry-content > h2::before {
  content: counter(sdx-page-section, decimal-leading-zero);
  display: block;
  margin-bottom: var(--sdx-space-12);
  color: var(--sdx-orange);
  font: 600 var(--sdx-text-11)/1.2 var(--sdx-mono);
  letter-spacing: var(--sdx-track-kicker);
}
.sdx-root.sdx-page--about .single-entry .entry-content > ul {
  margin: 0 0 var(--sdx-space-22);
  padding: 0;
  list-style: none;
  border-top: 1px solid var(--sdx-line);
}
.sdx-root.sdx-page--about .single-entry .entry-content > ul > li {
  margin: 0;
  padding: var(--sdx-space-16) 0 var(--sdx-space-16) var(--sdx-space-28);
  border-bottom: 1px solid var(--sdx-line);
  position: relative;
}
.sdx-root.sdx-page--about .single-entry .entry-content > ul > li::before {
  content: "";
  position: absolute;
  top: calc(var(--sdx-space-16) + .7em);
  left: var(--sdx-space-4);
  width: 8px;
  height: 8px;
  background: var(--sdx-orange);
}
.sdx-root.sdx-page--about .single-entry .entry-content > ul > li strong { display: block; }
@media (min-width: 981px) {
  .sdx-root.sdx-page.sdx-page--about:not(.sdx-page--contact) .single-entry .entry-content {
    display: grid;
    grid-template-columns: var(--sdx-page-label-w) minmax(0, var(--sdx-page-measure));
    column-gap: var(--sdx-space-64);
    justify-content: start;
    align-items: start;
  }
  .sdx-root.sdx-page.sdx-page--about:not(.sdx-page--contact) .single-entry .entry-content > * { grid-column: 2; }
  .sdx-root.sdx-page.sdx-page--about:not(.sdx-page--contact) .single-entry .entry-content > p:first-child { grid-column: 1 / -1; }
  .sdx-root.sdx-page.sdx-page--about:not(.sdx-page--contact) .single-entry .entry-content > h2 {
    grid-column: 1;
    margin: var(--sdx-space-55) 0 0; /* same top as the block beside it (CEO 09-23) */
    padding: var(--sdx-space-34) 0 var(--sdx-space-24);
    font-size: var(--sdx-page-h2-sm);
  }
  /* the first block after each heading starts on the heading's row and carries the same rule */
  .sdx-root.sdx-page.sdx-page--about:not(.sdx-page--contact) .single-entry .entry-content > h2 + * {
    margin-top: var(--sdx-space-55); /* CEO 2026-09-23 "not straight": match the h2 (55px from .sdx-page:not(contact) > h2) so both columns start on one line */
    padding-top: var(--sdx-space-34);
    border-top: 1px solid var(--sdx-line);
  }
  .sdx-root.sdx-page.sdx-page--about:not(.sdx-page--contact) .single-entry .entry-content > h2 + ul { padding-top: 0; }
  .sdx-root.sdx-page.sdx-page--about:not(.sdx-page--contact) .single-entry .entry-content > h2 + ul > li:first-child { padding-top: var(--sdx-space-34); }
  .sdx-root.sdx-page.sdx-page--about:not(.sdx-page--contact) .single-entry .entry-content > h2 + ul > li:first-child::before { top: calc(var(--sdx-space-34) + .7em); }
}

/* CTA band after the About article (printed by inc/sdx-pages.php; X1/X2 decided server-side) */
.sdx-root .sdx-page-cta { box-sizing: border-box; margin: 0 0 var(--sdx-space-72); }
.sdx-root .sdx-page-cta__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--sdx-space-40);
  padding: var(--sdx-space-42);
  background: var(--sdx-orange);
  color: var(--sdx-on-accent);
}
.sdx-root .sdx-page-cta__title {
  margin: 0;
  color: var(--sdx-on-accent);
  font: 400 var(--sdx-page-display-cta)/.96 var(--sdx-display);
  letter-spacing: -.05em;
}
.sdx-root .sdx-page-cta__text {
  max-width: 650px;
  margin: var(--sdx-space-13) 0 0;
  color: var(--sdx-page-cta-text);
  font: 400 var(--sdx-text-16)/1.6 var(--sdx-sans);
}
.sdx-root .sdx-page-cta__actions { display: flex; flex-wrap: wrap; gap: var(--sdx-space-12); }
.sdx-root .sdx-page-cta__actions .sdx-btn { min-width: 205px; }

/* =============================================================================================
   Foger: tables (inline styles in the page content, so their colours need !important) and the
   FAQ as a visible Q/A list. The FAQ is the page's last h2 section; every answer stays in the DOM.
   ============================================================================================= */
.sdx-root.sdx-page--foger .single-entry .entry-content > div[style*="overflow"] {
  border-color: var(--sdx-ink) !important;
  border-radius: 0 !important;
  background: var(--sdx-white);
}
.sdx-root.sdx-page--foger .single-entry .entry-content table { margin: 0; }
.sdx-root.sdx-page--foger .single-entry .entry-content table th {
  width: 34%;
  background: var(--sdx-paper);
  color: var(--sdx-ink);
  border-bottom-color: var(--sdx-line) !important;
  font-family: var(--sdx-mono);
  font-size: var(--sdx-text-12);
  letter-spacing: var(--sdx-track-control);
  text-align: left;
  text-transform: uppercase;
}
.sdx-root.sdx-page--foger .single-entry .entry-content table td {
  border-bottom-color: var(--sdx-line) !important;
  color: var(--sdx-ink);
}
.sdx-root.sdx-page--foger .single-entry .entry-content table tbody tr:nth-child(even) td { background: var(--sdx-page-row-alt); }

.sdx-root.sdx-page--foger .single-entry .entry-content > h2:last-of-type ~ h3 {
  margin: 0;
  padding: var(--sdx-space-24) 0 var(--sdx-space-8) var(--sdx-space-40);
  border-top: 1px solid var(--sdx-line);
  position: relative;
}
.sdx-root.sdx-page--foger .single-entry .entry-content > h2:last-of-type ~ h3::before {
  content: "Q";
  position: absolute;
  top: var(--sdx-space-24);
  left: 0;
  color: var(--sdx-orange);
  font: 400 var(--sdx-page-h3)/1.25 var(--sdx-display);
}
.sdx-root.sdx-page--foger .single-entry .entry-content > h2:last-of-type ~ h3 + p {
  margin: 0;
  padding: 0 0 var(--sdx-space-24) var(--sdx-space-40);
  color: var(--sdx-page-copy);
}
.sdx-root.sdx-page--foger .single-entry .entry-content > h2:last-of-type ~ p:not(h3 + p) {
  margin-top: var(--sdx-space-24);
  padding-top: var(--sdx-space-24);
  border-top: 1px solid var(--sdx-line);
}
/* the FAQPage JSON-LD sits in a <p> of its own: it keeps its script, and the empty box takes no space */
.sdx-root.sdx-page--foger .single-entry .entry-content > p:has(> script:only-child),
.sdx-root.sdx-page--foger .single-entry .entry-content > h2:last-of-type ~ p:has(> script:only-child) {
  margin: 0;
  padding: 0;
  border: 0;
}

/* =============================================================================================
   Wholesale Catalog: jump bar + generated groups (inc/sdx-pages.php). No prices, no stock.
   ============================================================================================= */
.sdx-root .sdx-cat-jump {
  position: sticky;
  z-index: var(--sdx-page-z-jump);
  top: var(--sdx-page-jump-top);
  box-sizing: border-box;
  min-height: var(--sdx-page-jump-h);
  margin: var(--sdx-space-40) 0 var(--sdx-space-12);
  padding: var(--sdx-space-12) 0;
  border-top: 1px solid var(--sdx-ink);
  border-bottom: 1px solid var(--sdx-line);
  background: var(--sdx-page-bg);
}
.sdx-root .sdx-cat-jump__list {
  flex-wrap: nowrap;
  margin: 0;
  padding: 0 0 var(--sdx-space-3);
  overflow-x: auto;
  list-style: none;
  scrollbar-width: thin;
  overscroll-behavior-x: contain;
}
.sdx-root .sdx-cat-jump__list > li { flex: 0 0 auto; margin: 0; padding: 0; }
.sdx-root .sdx-cat-jump .sdx-chip { white-space: nowrap; }
.sdx-root .sdx-cat-jump .sdx-chip[aria-current] { border-color: var(--sdx-forest); background: var(--sdx-forest); color: var(--sdx-on-accent); }

.sdx-root .sdx-cat-list { display: grid; gap: 0; }
.sdx-root .sdx-cat-group { padding: var(--sdx-space-34) 0 var(--sdx-space-28); border-bottom: 1px solid var(--sdx-line); }
.sdx-root.sdx-page--catalog .single-entry .entry-content .sdx-cat-group > h2 {
  margin: 0 0 var(--sdx-space-20);
  padding: 0;
  border: 0;
  color: var(--sdx-ink);
  font: 400 var(--sdx-page-h2-sm)/1.1 var(--sdx-display);
  letter-spacing: var(--sdx-track-drawer);
}
.sdx-root .sdx-cat-group__count {
  color: var(--sdx-orange);
  font: 600 var(--sdx-text-14)/1 var(--sdx-mono);
  letter-spacing: 0;
  vertical-align: middle;
}
.sdx-root .sdx-cat-group__list {
  margin: 0;
  padding: 0;
  list-style: none;
  column-gap: var(--sdx-space-40);
}
.sdx-root.sdx-page--catalog .single-entry .entry-content .sdx-cat-group__list > li {
  margin: 0;
  padding: var(--sdx-space-8) 0;
  border-bottom: 1px solid var(--sdx-line);
  break-inside: avoid;
  line-height: 1.4;
}
.sdx-root.sdx-page--catalog .single-entry .entry-content .sdx-cat-group__list a {
  font-weight: 500;
  text-decoration: none;
}
.sdx-root.sdx-page--catalog .single-entry .entry-content .sdx-cat-group__list a:hover {
  color: var(--sdx-orange-dark);
  text-decoration: underline;
  text-decoration-color: var(--sdx-orange);
}
@media (min-width: 641px) { .sdx-root .sdx-cat-group__list { columns: 2; } }
@media (min-width: 981px) { .sdx-root .sdx-cat-group__list { columns: 3; } }

/* =============================================================================================
   Contact (page 504): salim-contact-form + salim-talk-to-team markup, reskinned. Every field, the
   nonce, the honeypot and the status box are the plugin's; only their look changes here.
   ============================================================================================= */
.sdx-root.page-id-504.sdx-page--contact { background: var(--sdx-page-bg); }
.sdx-root.page-id-504.sdx-page--contact .entry-hero.page-hero-section,
.sdx-root.page-id-504.sdx-page--contact .entry-hero .entry-hero-container-inner { background: var(--sdx-forest) !important; }
.sdx-root.page-id-504.sdx-page--contact .entry-hero.page-hero-section::before,
.sdx-root.page-id-504.sdx-page--contact .entry-hero.page-hero-section::after { display: none; }
.sdx-root.page-id-504.sdx-page--contact .entry-hero .entry-hero-container-inner {
  padding: var(--sdx-page-hero-pad) 0 var(--sdx-space-55) !important;
}
.sdx-root.page-id-504.sdx-page--contact .entry-hero .entry-title { max-width: none; }
/* the plugin's "MERCHANT CONCIERGE" label on the h1 becomes the kicker */
.sdx-root.page-id-504.sdx-page--contact .entry-hero .entry-title::before {
  margin-bottom: var(--sdx-space-18);
  color: var(--sdx-kicker-light);
  font: 600 var(--sdx-text-11)/1.2 var(--sdx-mono);
  letter-spacing: var(--sdx-track-kicker);
}

.sdx-root.page-id-504.sdx-page--contact .sd-contact-shell { color: var(--sdx-ink); font-family: var(--sdx-sans); }
.sdx-root.page-id-504.sdx-page--contact .sd-contact-main {
  box-sizing: border-box;
  width: min(var(--sdx-shell-max), calc(100% - var(--sdx-shell-gutter)));
  max-width: none;
  margin: 0 auto;
  padding: var(--sdx-space-72) 0;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--sdx-space-40);
}
.sdx-root.page-id-504.sdx-page--contact .sd-contact-intro { max-width: var(--sdx-page-measure); }
.sdx-root.page-id-504.sdx-page--contact .sd-contact-kicker {
  margin: 0 0 var(--sdx-space-18);
  color: var(--sdx-orange);
  font: 600 var(--sdx-text-11)/1.2 var(--sdx-mono);
  letter-spacing: var(--sdx-track-kicker);
}
.sdx-root.page-id-504.sdx-page--contact .sd-contact-kicker::before { display: none; }
.sdx-root.page-id-504.sdx-page--contact .sd-contact-intro h2 {
  margin: 0 0 var(--sdx-space-20);
  color: var(--sdx-ink);
  font: 400 var(--sdx-text-display-sm)/1 var(--sdx-display);
  letter-spacing: -.04em;
}
.sdx-root.page-id-504.sdx-page--contact .sd-contact-lede {
  margin: 0 0 var(--sdx-space-24);
  color: var(--sdx-page-copy);
  font: 400 var(--sdx-text-18)/1.6 var(--sdx-sans);
}
.sdx-root.page-id-504.sdx-page--contact .sd-contact-promise {
  margin: 0;
  padding: var(--sdx-space-16) 0;
  border-color: var(--sdx-line);
}
.sdx-root.page-id-504.sdx-page--contact .sd-contact-promise strong { color: var(--sdx-ink); font-weight: 700; }
.sdx-root.page-id-504.sdx-page--contact .sd-contact-promise span { color: var(--sdx-muted); font-size: var(--sdx-text-14); }
/* the rail repeats these five lines with their sources; the plugin's own list shows only if the rail is absent */
.sdx-root.page-id-504.sdx-page--contact .sd-contact-methods { margin-top: var(--sdx-space-24); }
.sdx-root.page-id-504.sdx-page--contact .sd-contact-main:has(> .sdx-contact-rail) .sd-contact-methods { display: none; }

/* form card */
.sdx-root.page-id-504.sdx-page--contact .sd-contact-card {
  padding: var(--sdx-space-40);
  border: 1px solid var(--sdx-ink);
  border-radius: 0;
  background: var(--sdx-white);
  box-shadow: none;
}
.sdx-root.page-id-504.sdx-page--contact .sd-contact-card::before { height: 4px; background: var(--sdx-orange); }
.sdx-root.page-id-504.sdx-page--contact .sd-contact-card-head { margin-bottom: var(--sdx-space-28); }
.sdx-root.page-id-504.sdx-page--contact .sd-contact-card h3 {
  margin: 0 0 var(--sdx-space-7);
  color: var(--sdx-ink);
  font: 400 var(--sdx-text-30)/1.1 var(--sdx-display);
  letter-spacing: -.03em;
}
.sdx-root.page-id-504.sdx-page--contact .sd-contact-card-head p { color: var(--sdx-muted); font-size: var(--sdx-text-14); }
.sdx-root.page-id-504.sdx-page--contact .sd-contact-step {
  color: var(--sdx-orange);
  font: 600 var(--sdx-text-10)/1.2 var(--sdx-mono);
  letter-spacing: var(--sdx-track-label);
}
.sdx-root.page-id-504.sdx-page--contact .sd-contact-field label {
  color: var(--sdx-ink);
  font: 700 var(--sdx-text-12)/1.3 var(--sdx-sans);
}
.sdx-root.page-id-504.sdx-page--contact .sd-contact-required { color: var(--sdx-orange); }
.sdx-root.page-id-504.sdx-page--contact .sd-contact-field input,
.sdx-root.page-id-504.sdx-page--contact .sd-contact-field select,
.sdx-root.page-id-504.sdx-page--contact .sd-contact-field textarea {
  border: 1px solid var(--sdx-field-border);
  border-radius: 0;
  background: var(--sdx-white);
  color: var(--sdx-ink);
  font: 400 var(--sdx-text-16)/1.4 var(--sdx-sans);
}
.sdx-root.page-id-504.sdx-page--contact .sd-contact-field input,
.sdx-root.page-id-504.sdx-page--contact .sd-contact-field select { min-height: var(--sdx-field-h); }
.sdx-root.page-id-504.sdx-page--contact .sd-contact-field input:focus,
.sdx-root.page-id-504.sdx-page--contact .sd-contact-field select:focus,
.sdx-root.page-id-504.sdx-page--contact .sd-contact-field textarea:focus {
  border-color: var(--sdx-orange);
  box-shadow: var(--sdx-field-focus);
  outline: 2px solid transparent;
}
.sdx-root.page-id-504.sdx-page--contact .sd-contact-field input:focus-visible,
.sdx-root.page-id-504.sdx-page--contact .sd-contact-field select:focus-visible,
.sdx-root.page-id-504.sdx-page--contact .sd-contact-field textarea:focus-visible { outline: var(--sdx-focus-ring); outline-offset: 0; }
/* child style.css paints every button[type=submit] orange with !important; match the redesign orange */
.sdx-root.page-id-504.sdx-page--contact .sd-contact-submit {
  min-height: var(--sdx-control-h);
  padding: 0 var(--sdx-space-24);
  border-radius: var(--sdx-radius-crisp);
  background-color: var(--sdx-orange-btn) !important;
  color: var(--sdx-on-accent) !important;
  font: 700 var(--sdx-text-16)/1.2 var(--sdx-sans);
  letter-spacing: var(--sdx-track-button);
  text-transform: none;
  transition: transform var(--sdx-dur-fast) ease, background-color var(--sdx-dur-fast) ease;
}
.sdx-root.page-id-504.sdx-page--contact .sd-contact-submit::after { color: var(--sdx-on-accent); }
.sdx-root.page-id-504.sdx-page--contact .sd-contact-submit:hover {
  background-color: var(--sdx-orange-btn-hover) !important;
  box-shadow: none;
  transform: var(--sdx-btn-lift);
}
.sdx-root.page-id-504.sdx-page--contact .sd-contact-submit:focus-visible { outline: var(--sdx-focus-ring); outline-offset: var(--sdx-focus-offset); }
.sdx-root.page-id-504.sdx-page--contact .sd-contact-submit:disabled { transform: none; }
.sdx-root.page-id-504.sdx-page--contact .sd-contact-privacy { color: var(--sdx-muted); font-size: var(--sdx-text-12); }
.sdx-root.page-id-504.sdx-page--contact .sd-contact-status { border-radius: 0; }

/* contact rail (inc/sdx-pages.php, inserted as the last child of .sd-contact-main) */
.sdx-root .sdx-contact-rail { box-sizing: border-box; align-self: start; }
.sdx-root .sdx-contact-rail .sdx-kicker { margin-bottom: var(--sdx-space-12); }
.sdx-root .sdx-contact-rail__list { margin: 0; }
.sdx-root .sdx-contact-rail__row { padding: var(--sdx-space-14) 0; border-bottom: 1px solid var(--sdx-line); }
.sdx-root .sdx-contact-rail__row:last-child { border-bottom: 0; padding-bottom: 0; }
.sdx-root .sdx-contact-rail__row dt {
  margin: 0;
  color: var(--sdx-muted);
  font: 600 var(--sdx-text-10)/1.3 var(--sdx-mono);
  letter-spacing: var(--sdx-track-control);
  text-transform: uppercase;
}
.sdx-root .sdx-contact-rail__row dd {
  margin: var(--sdx-space-5) 0 0;
  color: var(--sdx-ink);
  font: 600 var(--sdx-text-15)/1.45 var(--sdx-sans);
  overflow-wrap: anywhere;
}
.sdx-root .sdx-contact-rail__row a {
  color: var(--sdx-ink);
  text-decoration: underline;
  text-decoration-color: var(--sdx-orange);
  text-underline-offset: 3px;
}
.sdx-root .sdx-contact-rail__row a:hover { color: var(--sdx-orange-dark); }
.sdx-root .sdx-contact-rail__row a:focus-visible { outline: var(--sdx-focus-ring); outline-offset: var(--sdx-focus-offset-sm); }

@media (min-width: 981px) {
  .sdx-root.page-id-504.sdx-page--contact .sd-contact-main:has(> .sdx-contact-rail) {
    grid-template-columns: minmax(0, 1fr) var(--sdx-page-rail-w);
    column-gap: var(--sdx-space-48);
  }
  .sdx-root.page-id-504.sdx-page--contact .sd-contact-main > .sd-contact-intro { grid-column: 1 / -1; }
  .sdx-root.page-id-504.sdx-page--contact .sd-contact-main > .sdx-contact-rail {
    position: sticky;
    top: calc(var(--wp-admin--admin-bar--height, 0px) + var(--sdx-header-h) + 24px);
  }
}

/* "Already know your next move?" band: forest, full width, sdx buttons */
.sdx-root.page-id-504.sdx-page--contact .sd-contact-links { background: var(--sdx-forest); }
.sdx-root.page-id-504.sdx-page--contact .sd-contact-links-inner {
  box-sizing: border-box;
  width: min(var(--sdx-shell-max), calc(100% - var(--sdx-shell-gutter)));
  max-width: none;
  padding: var(--sdx-space-34) 0;
}
.sdx-root.page-id-504.sdx-page--contact .sd-contact-links p { color: var(--sdx-page-on-dark); font-family: var(--sdx-sans); }
.sdx-root.page-id-504.sdx-page--contact .sd-contact-links strong { color: var(--sdx-on-accent); font: 400 var(--sdx-text-22)/1.2 var(--sdx-display); }
.sdx-root.page-id-504.sdx-page--contact .sd-contact-link {
  min-height: var(--sdx-control-h);
  padding: 0 var(--sdx-space-24);
  border: 1px solid var(--sdx-rule-on-dark-strong);
  border-radius: var(--sdx-radius-crisp);
  color: var(--sdx-on-accent);
  font: 700 var(--sdx-text-15)/1.2 var(--sdx-sans);
  transition: transform var(--sdx-dur-fast) ease, background var(--sdx-dur-fast) ease;
}
.sdx-root.page-id-504.sdx-page--contact .sd-contact-link:hover { background: var(--sdx-on-accent); color: var(--sdx-forest); transform: var(--sdx-btn-lift); }
.sdx-root.page-id-504.sdx-page--contact .sd-contact-link--accent { border-color: var(--sdx-orange-btn); background: var(--sdx-orange-btn); }
.sdx-root.page-id-504.sdx-page--contact .sd-contact-link--accent:hover { border-color: var(--sdx-orange-btn-hover); background: var(--sdx-orange-btn-hover); color: var(--sdx-on-accent); }
.sdx-root.page-id-504.sdx-page--contact .sd-contact-link:focus-visible { outline: var(--sdx-focus-ring); outline-offset: var(--sdx-focus-offset); }
.sdx-root.page-id-504.sdx-page--contact .sd-contact-legal {
  color: var(--sdx-muted);
  font: 500 var(--sdx-text-10)/1.5 var(--sdx-mono);
  letter-spacing: var(--sdx-track-label-sm);
  text-transform: uppercase;
}

/* salim-talk-to-team cards (meeting + WhatsApp) in the page content. Links, numbers and copy are the plugin's. */
.sdx-root.page-id-504.sdx-page--contact .sd-ttt { background: var(--sdx-paper); color: var(--sdx-ink); }
.sdx-root.page-id-504.sdx-page--contact .sd-ttt-inner {
  box-sizing: border-box;
  width: min(var(--sdx-shell-max), calc(100% - var(--sdx-shell-gutter)));
  max-width: none;
  padding: var(--sdx-space-72) 0;
}
.sdx-root.page-id-504.sdx-page--contact .sd-ttt-kicker {
  color: var(--sdx-orange);
  font: 600 var(--sdx-text-11)/1.2 var(--sdx-mono);
  letter-spacing: var(--sdx-track-kicker);
}
.sdx-root.page-id-504.sdx-page--contact .sd-ttt-head h2 {
  color: var(--sdx-ink);
  font: 400 var(--sdx-text-display-sm)/1 var(--sdx-display);
  letter-spacing: -.04em;
}
.sdx-root.page-id-504.sdx-page--contact .sd-ttt-lede { color: var(--sdx-page-copy); font-family: var(--sdx-sans); }
.sdx-root.page-id-504.sdx-page--contact .sd-ttt-lede strong { color: var(--sdx-ink); }
.sdx-root.page-id-504.sdx-page--contact .sd-ttt-card {
  border: 1px solid var(--sdx-ink);
  border-radius: 0;
  background: var(--sdx-white);
  box-shadow: none;
  transition: transform var(--sdx-dur) ease, box-shadow var(--sdx-dur) ease;
}
.sdx-root.page-id-504.sdx-page--contact .sd-ttt-card:hover {
  border-color: var(--sdx-ink);
  box-shadow: var(--sdx-shadow-card-hover);
  transform: var(--sdx-card-lift);
}
.sdx-root.page-id-504.sdx-page--contact .sd-ttt-card h3 { color: var(--sdx-ink); font: 400 var(--sdx-text-22)/1.15 var(--sdx-display); letter-spacing: -.02em; }
.sdx-root.page-id-504.sdx-page--contact .sd-ttt-card--meet .sd-ttt-icon { background: var(--sdx-forest); }
.sdx-root.page-id-504.sdx-page--contact .sd-ttt-copy { color: var(--sdx-muted); font-family: var(--sdx-sans); }
.sdx-root.page-id-504.sdx-page--contact .sd-ttt-btn {
  min-height: var(--sdx-control-h);
  padding: 0 var(--sdx-space-24);
  border-radius: var(--sdx-radius-crisp);
  font: 700 var(--sdx-text-16)/1.2 var(--sdx-sans);
}
.sdx-root.page-id-504.sdx-page--contact .sd-ttt-card--meet .sd-ttt-btn { background: var(--sdx-orange-btn); }
.sdx-root.page-id-504.sdx-page--contact .sd-ttt-btn:focus-visible { outline: var(--sdx-focus-ring); outline-offset: var(--sdx-focus-offset); }
.sdx-root.page-id-504.sdx-page--contact .sd-ttt-note,
.sdx-root.page-id-504.sdx-page--contact .sd-ttt-foot { color: var(--sdx-muted); }
.sdx-root.page-id-504.sdx-page--contact .sd-ttt-foot a { color: var(--sdx-ink); text-decoration-color: var(--sdx-orange); }

/* =============================================================================================
   Responsive
   ============================================================================================= */
@media (max-width: 820px) {
  .sdx-root .sdx-page-cta__inner { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
  .sdx-root.sdx-page .entry-hero .entry-hero-container-inner,
  .sdx-root.page-id-504.sdx-page--contact .entry-hero .entry-hero-container-inner { padding: var(--sdx-space-48) 0 var(--sdx-space-40) !important; }
  .sdx-root.sdx-page .entry-hero .hero-container.site-container,
  .sdx-root.sdx-page:not(.sdx-page--contact) .content-area > .content-container.site-container,
  .sdx-root.page-id-504.sdx-page--contact .sd-contact-main,
  .sdx-root.page-id-504.sdx-page--contact .sd-contact-links-inner,
  .sdx-root.page-id-504.sdx-page--contact .sd-ttt-inner { width: calc(100% - var(--sdx-shell-gutter-sm)); }
  .sdx-root.sdx-page .single-entry .entry-content { font-size: var(--sdx-text-15); }
  .sdx-root.sdx-page:not(.sdx-page--contact) .single-entry .entry-content > h2 { margin-top: var(--sdx-space-40); font-size: var(--sdx-page-h2-sm); }
  .sdx-root.sdx-page--about .single-entry .entry-content > p:first-child { font-size: var(--sdx-text-19); }
  .sdx-root .sdx-page-hero__lede { font-size: var(--sdx-text-16); }
  .sdx-root .sdx-page-cta__inner { padding: var(--sdx-space-30) var(--sdx-space-24); }
  .sdx-root .sdx-page-cta__actions .sdx-btn { width: 100%; min-width: 0; white-space: normal; }
  .sdx-root.sdx-page {
    --sdx-page-jump-top: calc(var(--wp-admin--admin-bar--height, 0px) + var(--sdx-header-h-sm));
    --sdx-page-anchor-offset: calc(var(--sdx-page-jump-top) + var(--sdx-page-jump-h) + 16px);
  }
  .sdx-root.sdx-page--foger .single-entry .entry-content > h2:last-of-type ~ h3,
  .sdx-root.sdx-page--foger .single-entry .entry-content > h2:last-of-type ~ h3 + p { padding-left: var(--sdx-space-28); }
  .sdx-root.page-id-504.sdx-page--contact .sd-contact-main { padding: var(--sdx-space-48) 0; }
  .sdx-root.page-id-504.sdx-page--contact .sd-contact-card { margin: 0; padding: var(--sdx-space-28) var(--sdx-space-20); border-radius: 0; }
  .sdx-root.page-id-504.sdx-page--contact .sd-contact-links-inner { padding: var(--sdx-space-30) 0; }
  .sdx-root.page-id-504.sdx-page--contact .sd-ttt-inner { padding: var(--sdx-space-48) 0; }
}

@media (prefers-reduced-motion: reduce) {
  .sdx-root.page-id-504.sdx-page--contact .sd-contact-submit,
  .sdx-root.page-id-504.sdx-page--contact .sd-contact-link,
  .sdx-root.page-id-504.sdx-page--contact .sd-ttt-card { transition: none; }
  .sdx-root.page-id-504.sdx-page--contact .sd-contact-submit:hover,
  .sdx-root.page-id-504.sdx-page--contact .sd-contact-link:hover,
  .sdx-root.page-id-504.sdx-page--contact .sd-ttt-card:hover { transform: none; }
}
