/* ===========================================================
   PRESSURE & PATINA — Site A token system + scoped components
   Scoped under [data-design="pressure-and-patina"]
   =========================================================== */

[data-design="pressure-and-patina"] {
  --pp-primary:   #7a4a1e;
  --pp-secondary: #0d3b66;
  --pp-accent:    #b8421c;
  --pp-surface:   #f4ead7;
  --pp-sheet:     #fbf6e8;
  --pp-ink:       #1f1a14;
  --pp-muted:     #7a6e58;
  --pp-critical:  #9a2418;
  --pp-success:   #3b6e3a;
  --pp-brass:     #b08a3a;
  --pp-patina:    #5a7d5a;

  --pp-font-display:  "Trade Gothic Next", "League Gothic", "Oswald", "Impact", sans-serif;
  --pp-font-headline: "Sentinel", "Roboto Slab", "Source Serif Pro", Georgia, serif;
  --pp-font-body:     "Source Sans 3", "Inter", -apple-system, system-ui, sans-serif;
  --pp-font-mono:     "JetBrains Mono", "IBM Plex Mono", "Courier Prime", ui-monospace, monospace;

  --pp-thread:   4px;
  --pp-coupling: 8px;
  --pp-elbow:    12px;
  --pp-tee:      16px;
  --pp-stub:     24px;
  --pp-riser:    32px;
  --pp-trunk:    48px;
  --pp-bay:      80px;
  --pp-floor:    120px;

  --pp-ease-hydraulic: cubic-bezier(0.22, 1, 0.36, 1);
  --pp-ease-stamp:     cubic-bezier(0.5, 0, 0.2, 1);
  --pp-quick:   180ms;
  --pp-settle:  320ms;
  --pp-charge:  640ms;

  --pp-r-thread: 2px;
  --pp-r-flange: 6px;
  --pp-r-valve: 14px;
  --pp-r-pipe:  999px;

  --pp-elev-flat:     none;
  --pp-elev-hairline: inset 0 0 0 1px color-mix(in oklab, var(--pp-ink), transparent 78%);
  --pp-elev-brass:    inset 0 1px 0 color-mix(in oklab, white, transparent 70%), 0 1px 0 color-mix(in oklab, var(--pp-ink), transparent 88%);
  --pp-elev-stamp:    0 1px 0 color-mix(in oklab, var(--pp-ink), transparent 75%), inset 0 -1px 0 color-mix(in oklab, var(--pp-ink), transparent 86%);

  --design-a-primary: #b08a3a; /* brass — exposed to the bar */
}

/* Scope root */
[data-design="pressure-and-patina"].dq-design,
[data-design="pressure-and-patina"] .dq-design {
  max-width: 100%;
  overflow-x: clip;
  background: var(--pp-surface);
  color: var(--pp-ink);
  font-family: var(--pp-font-body);
  font-size: 17px;
  line-height: 1.6;
}
[data-design="pressure-and-patina"] * { min-width: 0; box-sizing: border-box; }
[data-design="pressure-and-patina"] img,
[data-design="pressure-and-patina"] svg:not([data-keep-size]) {
  max-width: 100%;
  height: auto;
}

/* ============== ELEMENT 1: Header ============== */
[data-design="pressure-and-patina"] .rf-header { position: sticky; top: 0; z-index: 50; background: var(--pp-surface); }
[data-design="pressure-and-patina"] .rf-header__bar { display: flex; align-items: center; justify-content: space-between; padding: var(--pp-stub) clamp(var(--pp-stub), 4vw, var(--pp-trunk)); }
[data-design="pressure-and-patina"] .rf-logo { text-decoration: none; color: var(--pp-primary); }
[data-design="pressure-and-patina"] .rf-logo__mark { font-family: var(--pp-font-display); font-size: clamp(18px, 2.2vw, 26px); font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; }
[data-design="pressure-and-patina"] .rf-hamburger { background: transparent; border: 1px solid color-mix(in oklab, var(--pp-ink), transparent 70%); border-radius: var(--pp-r-thread); padding: 10px 12px; display: flex; flex-direction: column; gap: 4px; cursor: pointer; min-height: 44px; min-width: 44px; }
[data-design="pressure-and-patina"] .rf-hamburger__line { width: 18px; height: 1.5px; background: var(--pp-ink); transition: transform var(--pp-quick) var(--pp-ease-stamp); }
[data-design="pressure-and-patina"] .rf-hamburger[aria-expanded="true"] .rf-hamburger__line:nth-child(1) { transform: translateY(5.5px) rotate(45deg); }
[data-design="pressure-and-patina"] .rf-hamburger[aria-expanded="true"] .rf-hamburger__line:nth-child(2) { opacity: 0; }
[data-design="pressure-and-patina"] .rf-hamburger[aria-expanded="true"] .rf-hamburger__line:nth-child(3) { transform: translateY(-5.5px) rotate(-45deg); }
[data-design="pressure-and-patina"] .rf-header__rule { height: 6px; overflow: hidden; }
[data-design="pressure-and-patina"] .rf-gauge-trace { width: 100%; height: 6px; display: block; }
[data-design="pressure-and-patina"] .rf-gauge-trace__baseline { stroke: color-mix(in oklab, var(--pp-secondary), transparent 60%); stroke-width: 1; stroke-dasharray: 2 3; }
[data-design="pressure-and-patina"] .rf-gauge-trace__needle { fill: var(--pp-accent); filter: drop-shadow(0 0 4px color-mix(in oklab, var(--pp-accent), transparent 40%)); animation: pp-gauge-sweep 22s var(--pp-ease-hydraulic) infinite; }
@keyframes pp-gauge-sweep {
  0%   { transform: translateX(2%); opacity: 0.5; }
  15%  { transform: translateX(28%); opacity: 0.9; }
  45%  { transform: translateX(62%); opacity: 1; }
  72%  { transform: translateX(88%); opacity: 0.85; }
  100% { transform: translateX(2%); opacity: 0.5; }
}
[data-design="pressure-and-patina"] .rf-drawer { position: fixed; inset: 0 0 0 auto; width: min(420px, 92vw); background: var(--pp-sheet); box-shadow: -1px 0 0 color-mix(in oklab, var(--pp-ink), transparent 80%); transform: translateX(100%); transition: transform var(--pp-charge) var(--pp-ease-hydraulic); padding: var(--pp-trunk) var(--pp-stub); clip-path: polygon(24px 0, 100% 0, 100% 100%, 0 100%, 0 24px); z-index: 60; }
[data-design="pressure-and-patina"] .rf-drawer[data-open="true"] { transform: translateX(0); }
[data-design="pressure-and-patina"] .rf-drawer__sheet-no { font-family: var(--pp-font-mono); font-size: 11px; letter-spacing: 0.12em; color: var(--pp-muted); margin: 0 0 var(--pp-stub); text-transform: uppercase; }
[data-design="pressure-and-patina"] .rf-drawer a { display: block; padding: var(--pp-elbow) 0; font-family: var(--pp-font-headline); font-size: 22px; color: var(--pp-ink); text-decoration: none; border-bottom: 1px dashed color-mix(in oklab, var(--pp-secondary), transparent 60%); }
[data-design="pressure-and-patina"] .rf-drawer a:hover { color: var(--pp-primary); border-bottom-style: solid; border-bottom-color: var(--pp-secondary); }
[data-design="pressure-and-patina"] .rf-drawer__phone { color: var(--pp-primary); font-weight: 700; margin-top: var(--pp-stub); }

/* ============== HERO ============== */
[data-design="pressure-and-patina"] .pp-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  gap: clamp(var(--pp-stub), 5vw, var(--pp-trunk));
  align-items: center;
  padding: clamp(var(--pp-trunk), 8vw, var(--pp-floor)) clamp(var(--pp-stub), 5vw, var(--pp-trunk)) var(--pp-bay);
  background: var(--pp-surface);
  overflow: clip;
}
[data-design="pressure-and-patina"] .pp-hero::after {
  content: "";
  position: absolute; left: 0; right: 0; bottom: 0;
  height: 1px;
  background: repeating-linear-gradient(to right, color-mix(in oklab, var(--pp-secondary), transparent 60%) 0 6px, transparent 6px 12px);
}
[data-design="pressure-and-patina"] .pp-hero__copy { display: flex; flex-direction: column; gap: var(--pp-tee); }
[data-design="pressure-and-patina"] .pp-hero__headline {
  font-family: var(--pp-font-headline);
  font-size: clamp(34px, 6vw, 72px);
  line-height: 1.04;
  letter-spacing: -0.015em;
  color: var(--pp-primary);
  margin: 0;
  max-width: 18ch;
}
[data-design="pressure-and-patina"] .pp-hero__subtitle {
  font-family: var(--pp-font-body);
  font-size: clamp(17px, 1.6vw, 20px);
  line-height: 1.5;
  color: var(--pp-ink);
  margin: 0;
  max-width: 42ch;
}
[data-design="pressure-and-patina"] .pp-hero__proof {
  font-family: var(--pp-font-mono);
  font-size: 13px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--pp-secondary);
  margin: 0;
}
[data-design="pressure-and-patina"] .pp-hero__chip {
  align-self: flex-start;
  font-family: var(--pp-font-mono);
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--pp-muted);
  padding: 6px 10px;
  border: 1px solid color-mix(in oklab, var(--pp-patina), transparent 50%);
  border-radius: var(--pp-r-thread);
  margin-top: var(--pp-coupling);
}
[data-design="pressure-and-patina"] .pp-hero__backdrop {
  position: relative;
  width: 100%;
  max-width: 100%;
}
[data-design="pressure-and-patina"] .pp-hero__backdrop .rf-schematic { width: 100%; height: auto; color: var(--pp-secondary); }
@keyframes pp-pipe-shine {
  0%, 100% { opacity: 0.85; }
  50%      { opacity: 1; }
}
[data-design="pressure-and-patina"] .pp-hero__backdrop .rf-schematic__pipe { animation: pp-pipe-shine 14s ease-in-out infinite; }
@media (prefers-reduced-motion: reduce) {
  [data-design="pressure-and-patina"] .pp-hero__backdrop .rf-schematic__pipe { animation: none; }
}
@media (max-width: 860px) {
  [data-design="pressure-and-patina"] .pp-hero { grid-template-columns: 1fr; gap: var(--pp-stub); padding-top: var(--pp-trunk); padding-bottom: var(--pp-trunk); }
  [data-design="pressure-and-patina"] .pp-hero__backdrop { order: -1; max-width: 480px; margin-inline: auto; }
}

/* ============== ELEMENT 2: CTA (used as phone CTA in hero) ============== */
[data-design="pressure-and-patina"] .rf-cta { position: relative; display: inline-flex; align-items: center; gap: var(--pp-elbow); padding: 16px 24px 16px 28px; font-family: var(--pp-font-display); font-size: 16px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--pp-ink); text-decoration: none; background: linear-gradient(180deg, color-mix(in oklab, var(--pp-brass), white 14%), var(--pp-brass)); border-radius: var(--pp-r-valve); box-shadow: var(--pp-elev-brass); transition: transform var(--pp-quick) var(--pp-ease-stamp), box-shadow var(--pp-quick) var(--pp-ease-stamp); will-change: transform; animation: pp-cta-breath 4.8s ease-in-out infinite; isolation: isolate; min-height: 56px; }
[data-design="pressure-and-patina"] .rf-cta::before { content: ""; position: absolute; inset: 4px; border-radius: calc(var(--pp-r-valve) - 4px); border: 1px solid color-mix(in oklab, var(--pp-primary), transparent 55%); pointer-events: none; }
[data-design="pressure-and-patina"] .rf-cta__arrow { display: inline-flex; color: var(--pp-primary); transition: transform var(--pp-settle) var(--pp-ease-hydraulic); }
[data-design="pressure-and-patina"] .rf-cta:hover,
[data-design="pressure-and-patina"] .rf-cta:focus-visible { box-shadow: var(--pp-elev-brass), 0 0 0 2px color-mix(in oklab, var(--pp-patina), transparent 50%); }
[data-design="pressure-and-patina"] .rf-cta:hover .rf-cta__arrow { transform: translateX(8px); }
[data-design="pressure-and-patina"] .rf-cta:focus-visible { outline: none; }
[data-design="pressure-and-patina"] .rf-cta:active { transform: translateY(1px); box-shadow: inset 0 1px 0 color-mix(in oklab, var(--pp-ink), transparent 70%); }
[data-design="pressure-and-patina"] .rf-cta__stamp { position: absolute; left: 50%; bottom: -22px; transform: translateX(-50%) scale(0.9); opacity: 0; font-family: var(--pp-font-mono); font-size: 10px; letter-spacing: 0.18em; color: var(--pp-accent); pointer-events: none; transition: opacity var(--pp-quick) var(--pp-ease-stamp), transform var(--pp-quick) var(--pp-ease-stamp); }
[data-design="pressure-and-patina"] .rf-cta[data-stamped="true"] .rf-cta__stamp { opacity: 1; transform: translateX(-50%) scale(1); }
[data-design="pressure-and-patina"] .pp-cta--phone { align-self: flex-start; }
[data-design="pressure-and-patina"] .pp-cta--final { margin-top: var(--pp-stub); }
@keyframes pp-cta-breath {
  0%, 100% { box-shadow: var(--pp-elev-brass); }
  50%      { box-shadow: var(--pp-elev-brass), 0 0 24px color-mix(in oklab, var(--pp-brass), transparent 70%); }
}
@media (prefers-reduced-motion: reduce) {
  [data-design="pressure-and-patina"] .rf-cta { animation: none; }
  [data-design="pressure-and-patina"] .rf-cta:hover .rf-cta__arrow { transform: translateX(4px); }
}

/* ============== ELEMENT 6: pointer ============== */
[data-design="pressure-and-patina"] .pp-pointer {
  display: flex;
  justify-content: center;
  padding: clamp(40px, 8vw, 80px) 16px clamp(40px, 8vw, 80px);
  color: var(--pp-primary);
}
[data-design="pressure-and-patina"] .pp-pointer__hit {
  position: relative; display: inline-block; width: 2px; height: 96px; text-decoration: none;
}
[data-design="pressure-and-patina"] .pp-pointer__pipe {
  position: absolute; inset: 0;
  background: linear-gradient(to bottom, transparent 0%, currentColor 100%);
  transform-origin: top center;
  animation: pp-pointer-fill 5s ease-in-out infinite;
  opacity: 0.7;
}
[data-design="pressure-and-patina"] .pp-pointer__drop {
  position: absolute; left: 50%; bottom: -4px; width: 8px; height: 8px; margin-left: -4px;
  background: currentColor; border-radius: 50% 50% 50% 50% / 60% 60% 40% 40%;
  transform: translateY(-72px) scale(0.4); opacity: 0;
  animation: pp-pointer-drip 5s ease-in infinite;
}
@keyframes pp-pointer-fill {
  0%, 100% { transform: scaleY(0.4); opacity: 0.45; }
  60%      { transform: scaleY(1);   opacity: 0.85; }
}
@keyframes pp-pointer-drip {
  0%, 55%  { transform: translateY(-72px) scale(0.4); opacity: 0; }
  70%      { transform: translateY(-72px) scale(1);   opacity: 1; }
  92%      { transform: translateY(0)     scale(1);   opacity: 1; }
  100%     { transform: translateY(0)     scale(0.2); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
  [data-design="pressure-and-patina"] .pp-pointer__pipe,
  [data-design="pressure-and-patina"] .pp-pointer__drop { animation: none; opacity: 0.5; }
}

/* ============== ELEMENT 5: triage console ============== */
[data-design="pressure-and-patina"] .rf-interactive { padding: var(--pp-floor) clamp(var(--pp-stub), 5vw, var(--pp-trunk)); background: var(--pp-surface); position: relative; }
[data-design="pressure-and-patina"] .rf-triage__head { max-width: 64ch; margin: 0 auto var(--pp-trunk); text-align: center; }
[data-design="pressure-and-patina"] .rf-triage__kicker { font-family: var(--pp-font-mono); font-size: 11px; letter-spacing: 0.18em; color: var(--pp-muted); text-transform: uppercase; margin: 0 0 var(--pp-tee); }
[data-design="pressure-and-patina"] .rf-triage__head h2 { font-family: var(--pp-font-headline); font-size: clamp(28px, 4vw, 48px); color: var(--pp-primary); margin: 0 0 var(--pp-elbow); line-height: 1.1; }
[data-design="pressure-and-patina"] .rf-triage__sub { font-size: 17px; color: var(--pp-ink); line-height: 1.5; margin: 0; }
[data-design="pressure-and-patina"] .rf-triage__steps { list-style: none; margin: 0 auto; padding: 0; max-width: 720px; position: relative; min-height: 420px; }
[data-design="pressure-and-patina"] .rf-step { position: absolute; inset: 0; opacity: 0; transform: translateX(28px); pointer-events: none; transition: opacity var(--pp-charge) var(--pp-ease-hydraulic), transform var(--pp-charge) var(--pp-ease-hydraulic); background: var(--pp-sheet); padding: var(--pp-trunk) var(--pp-stub); border: 1px solid color-mix(in oklab, var(--pp-ink), transparent 82%); border-radius: var(--pp-r-flange); box-shadow: var(--pp-elev-hairline); }
[data-design="pressure-and-patina"] .rf-step[data-active="true"] { opacity: 1; transform: translateX(0); pointer-events: auto; }
[data-design="pressure-and-patina"] .rf-step__no { font-family: var(--pp-font-mono); font-size: 11px; letter-spacing: 0.16em; color: var(--pp-secondary); margin: 0 0 var(--pp-elbow); text-transform: uppercase; }
[data-design="pressure-and-patina"] .rf-step__q { font-family: var(--pp-font-headline); font-size: clamp(20px, 2.4vw, 28px); color: var(--pp-ink); margin: 0 0 var(--pp-stub); line-height: 1.25; }
[data-design="pressure-and-patina"] .rf-step__choices { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: var(--pp-elbow); }
[data-design="pressure-and-patina"] .rf-choice { font-family: var(--pp-font-body); font-size: 15px; color: var(--pp-ink); background: var(--pp-surface); border: 1px solid color-mix(in oklab, var(--pp-ink), transparent 72%); border-radius: var(--pp-r-flange); padding: var(--pp-tee) var(--pp-stub); text-align: left; cursor: pointer; transition: transform var(--pp-quick) var(--pp-ease-stamp), border-color var(--pp-quick), background var(--pp-quick); position: relative; min-height: 56px; }
[data-design="pressure-and-patina"] .rf-choice::before { content: "○"; position: absolute; right: var(--pp-tee); top: 50%; transform: translateY(-50%); color: var(--pp-muted); font-size: 18px; transition: color var(--pp-quick); }
[data-design="pressure-and-patina"] .rf-choice:hover,
[data-design="pressure-and-patina"] .rf-choice:focus-visible { border-color: var(--pp-secondary); background: color-mix(in oklab, var(--pp-secondary), transparent 92%); outline: none; }
[data-design="pressure-and-patina"] .rf-choice:active { transform: translateY(1px); }
[data-design="pressure-and-patina"] .rf-choice[data-picked="true"] { border-color: var(--pp-accent); background: color-mix(in oklab, var(--pp-accent), transparent 90%); }
[data-design="pressure-and-patina"] .rf-choice[data-picked="true"]::before { content: "●"; color: var(--pp-accent); }
[data-design="pressure-and-patina"] .rf-back { background: transparent; border: 0; font-family: var(--pp-font-mono); font-size: 12px; letter-spacing: 0.08em; color: var(--pp-muted); margin-top: var(--pp-stub); cursor: pointer; padding: 8px 0; min-height: 44px; }
[data-design="pressure-and-patina"] .rf-back:hover { color: var(--pp-secondary); }
[data-design="pressure-and-patina"] .rf-final__head { font-family: var(--pp-font-headline); font-size: clamp(22px, 2.6vw, 30px); color: var(--pp-primary); margin: 0 0 var(--pp-stub); line-height: 1.2; }
[data-design="pressure-and-patina"] .rf-final__card { background: var(--pp-surface); border: 1px solid var(--pp-secondary); border-radius: var(--pp-r-flange); padding: var(--pp-stub); margin-bottom: var(--pp-stub); }
[data-design="pressure-and-patina"] .rf-final__row { display: flex; justify-content: space-between; gap: var(--pp-stub); padding: var(--pp-elbow) 0; border-bottom: 1px dashed color-mix(in oklab, var(--pp-ink), transparent 78%); font-family: var(--pp-font-mono); font-size: 13px; }
[data-design="pressure-and-patina"] .rf-final__row:last-child { border-bottom: 0; }
[data-design="pressure-and-patina"] .rf-final__row span { color: var(--pp-muted); letter-spacing: 0.12em; }
[data-design="pressure-and-patina"] .rf-final__row strong { color: var(--pp-ink); font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; text-align: right; overflow-wrap: anywhere; }
[data-design="pressure-and-patina"] .rf-final__row--eta strong { color: var(--pp-accent); }
[data-design="pressure-and-patina"] .rf-progress { height: 2px; background: color-mix(in oklab, var(--pp-ink), transparent 88%); margin-top: var(--pp-trunk); max-width: 720px; margin-inline: auto; overflow: hidden; }
[data-design="pressure-and-patina"] .rf-progress__bar { display: block; height: 100%; width: 33%; background: var(--pp-secondary); transition: width var(--pp-charge) var(--pp-ease-hydraulic); }
[data-design="pressure-and-patina"] .rf-interactive[data-step="2"] .rf-progress__bar { width: 66%; }
[data-design="pressure-and-patina"] .rf-interactive[data-step="3"] .rf-progress__bar { width: 90%; }
[data-design="pressure-and-patina"] .rf-interactive[data-step="final"] .rf-progress__bar { width: 100%; background: var(--pp-accent); }
@media (prefers-reduced-motion: reduce) {
  [data-design="pressure-and-patina"] .rf-step { transition: opacity 0ms; transform: none; }
  [data-design="pressure-and-patina"] .rf-step[data-active="true"] { transform: none; }
  [data-design="pressure-and-patina"] .rf-progress__bar { transition: none; }
}
@media (max-width: 560px) {
  [data-design="pressure-and-patina"] .rf-triage__steps { min-height: 520px; }
  [data-design="pressure-and-patina"] .rf-step { padding: var(--pp-stub) var(--pp-tee); }
  [data-design="pressure-and-patina"] .rf-step__choices { grid-template-columns: 1fr; }
}

/* ============== Services ============== */
[data-design="pressure-and-patina"] .pp-services { padding: var(--pp-floor) clamp(var(--pp-stub), 5vw, var(--pp-trunk)); background: var(--pp-sheet); }
[data-design="pressure-and-patina"] .pp-services__head { max-width: 60ch; margin: 0 0 var(--pp-trunk); }
[data-design="pressure-and-patina"] .pp-services__kicker { font-family: var(--pp-font-mono); font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--pp-muted); margin: 0 0 var(--pp-tee); }
[data-design="pressure-and-patina"] .pp-services__head h2 { font-family: var(--pp-font-headline); font-size: clamp(28px, 4vw, 44px); line-height: 1.1; color: var(--pp-primary); margin: 0; }
[data-design="pressure-and-patina"] .pp-services__list { list-style: none; margin: 0; padding: 0; }
[data-design="pressure-and-patina"] .pp-service { display: grid; grid-template-columns: 80px 1fr auto; gap: var(--pp-stub); align-items: start; padding: var(--pp-stub) 0; border-top: 1px solid color-mix(in oklab, var(--pp-ink), transparent 82%); position: relative; }
[data-design="pressure-and-patina"] .pp-service:last-child { border-bottom: 1px solid color-mix(in oklab, var(--pp-ink), transparent 82%); }
[data-design="pressure-and-patina"] .pp-service::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 1px; background: var(--pp-secondary); transform: scaleX(0); transform-origin: left; transition: transform var(--pp-settle) var(--pp-ease-hydraulic); }
[data-design="pressure-and-patina"] .pp-service:hover::after { transform: scaleX(1); }
[data-design="pressure-and-patina"] .pp-service__no { font-family: var(--pp-font-display); font-size: clamp(40px, 6vw, 64px); color: var(--pp-brass); line-height: 1; letter-spacing: -0.02em; }
[data-design="pressure-and-patina"] .pp-service__name { font-family: var(--pp-font-headline); font-size: clamp(20px, 2.6vw, 28px); color: var(--pp-ink); margin: 0 0 var(--pp-coupling); line-height: 1.2; }
[data-design="pressure-and-patina"] .pp-service__desc { font-family: var(--pp-font-body); font-size: 16px; line-height: 1.55; color: var(--pp-ink); margin: 0; max-width: 56ch; }
[data-design="pressure-and-patina"] .pp-service__rated { font-family: var(--pp-font-mono); font-size: 10px; letter-spacing: 0.18em; color: var(--pp-success); border: 1px solid var(--pp-success); padding: 4px 8px; border-radius: var(--pp-r-thread); white-space: nowrap; align-self: start; }
[data-design="pressure-and-patina"] .pp-services__phone { display: inline-block; margin-top: var(--pp-trunk); font-family: var(--pp-font-mono); font-size: 14px; letter-spacing: 0.06em; color: var(--pp-primary); text-decoration: none; border-bottom: 1px dashed currentColor; padding-bottom: 2px; }
[data-design="pressure-and-patina"] .pp-services__phone:hover { border-bottom-style: solid; color: var(--pp-accent); }
@media (max-width: 640px) {
  [data-design="pressure-and-patina"] .pp-service { grid-template-columns: 48px 1fr; }
  [data-design="pressure-and-patina"] .pp-service__rated { grid-column: 2 / 3; justify-self: start; margin-top: var(--pp-coupling); }
}

/* ============== ELEMENT 4: Gauge wall ============== */
[data-design="pressure-and-patina"] .rf-ambient-b { padding: var(--pp-bay) clamp(var(--pp-stub), 5vw, var(--pp-trunk)); background: var(--pp-surface); }
[data-design="pressure-and-patina"] .rf-ambient-b__head { max-width: 72ch; margin: 0 auto var(--pp-trunk); text-align: center; }
[data-design="pressure-and-patina"] .rf-ambient-b__kicker { font-family: var(--pp-font-mono); font-size: 11px; letter-spacing: 0.16em; color: var(--pp-muted); text-transform: uppercase; margin: 0 0 var(--pp-elbow); }
[data-design="pressure-and-patina"] .rf-ambient-b__title { font-family: var(--pp-font-headline); font-size: clamp(24px, 3.4vw, 40px); color: var(--pp-primary); margin: 0; line-height: 1.15; }
[data-design="pressure-and-patina"] .rf-ambient-b__wall { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--pp-stub); max-width: 920px; margin: 0 auto; }
[data-design="pressure-and-patina"] .rf-gauge { margin: 0; display: flex; flex-direction: column; align-items: center; gap: var(--pp-elbow); }
[data-design="pressure-and-patina"] .rf-gauge__svg { width: clamp(140px, 22vw, 200px); height: auto; }
[data-design="pressure-and-patina"] .rf-gauge__bezel { fill: var(--pp-brass); stroke: color-mix(in oklab, var(--pp-primary), black 12%); stroke-width: 1.5; }
[data-design="pressure-and-patina"] .rf-gauge__face { fill: var(--pp-surface); stroke: color-mix(in oklab, var(--pp-ink), transparent 80%); stroke-width: 0.5; }
[data-design="pressure-and-patina"] .rf-gauge__ticks line { stroke: var(--pp-ink); stroke-width: 1.5; }
[data-design="pressure-and-patina"] .rf-gauge__needle { transform-origin: 60px 60px; animation: pp-needle-drift var(--pp-gauge-dur) ease-in-out infinite; }
[data-design="pressure-and-patina"] .rf-gauge__needle line { stroke: var(--pp-accent); stroke-width: 2; stroke-linecap: round; filter: drop-shadow(0 0 3px color-mix(in oklab, var(--pp-accent), transparent 60%)); }
[data-design="pressure-and-patina"] .rf-gauge__hub { fill: var(--pp-primary); }
[data-design="pressure-and-patina"] .rf-gauge__label { fill: var(--pp-muted); font-family: var(--pp-font-mono); font-size: 7px; letter-spacing: 0.16em; text-anchor: middle; }
[data-design="pressure-and-patina"] .rf-gauge figcaption { font-family: var(--pp-font-mono); font-size: 12px; color: var(--pp-ink); letter-spacing: 0.08em; text-transform: uppercase; }
[data-design="pressure-and-patina"] .rf-gauge__psi { color: var(--pp-secondary); margin-left: var(--pp-coupling); }
[data-design="pressure-and-patina"] .pp-gauges__caption { font-family: var(--pp-font-body); font-size: 14px; color: var(--pp-muted); max-width: 60ch; margin: var(--pp-trunk) auto 0; text-align: center; line-height: 1.55; font-style: italic; }
@keyframes pp-needle-drift {
  0%   { transform: rotate(-28deg); }
  25%  { transform: rotate(12deg); }
  50%  { transform: rotate(-6deg); }
  75%  { transform: rotate(20deg); }
  100% { transform: rotate(-28deg); }
}
@media (prefers-reduced-motion: reduce) {
  [data-design="pressure-and-patina"] .rf-gauge__needle { animation: none; transform: rotate(0deg); }
}
@media (max-width: 640px) {
  [data-design="pressure-and-patina"] .rf-ambient-b__wall { grid-template-columns: 1fr; gap: var(--pp-trunk); }
}

/* ============== About ============== */
[data-design="pressure-and-patina"] .pp-about { padding: var(--pp-floor) clamp(var(--pp-stub), 5vw, var(--pp-trunk)); background: var(--pp-sheet); }
[data-design="pressure-and-patina"] .pp-about__head { max-width: 60ch; margin: 0 0 var(--pp-trunk); }
[data-design="pressure-and-patina"] .pp-about__kicker { font-family: var(--pp-font-mono); font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--pp-muted); margin: 0 0 var(--pp-tee); }
[data-design="pressure-and-patina"] .pp-about__head h2 { font-family: var(--pp-font-headline); font-size: clamp(26px, 3.8vw, 40px); line-height: 1.15; color: var(--pp-primary); margin: 0; }
[data-design="pressure-and-patina"] .pp-about__copy { display: grid; gap: var(--pp-stub); max-width: 64ch; }
[data-design="pressure-and-patina"] .pp-about__copy p { margin: 0; font-size: 17px; line-height: 1.7; color: var(--pp-ink); }
[data-design="pressure-and-patina"] .pp-about__specs { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: var(--pp-stub); margin: var(--pp-trunk) 0 0; padding: var(--pp-stub) 0; border-top: 1px solid color-mix(in oklab, var(--pp-secondary), transparent 60%); border-bottom: 1px solid color-mix(in oklab, var(--pp-secondary), transparent 60%); }
[data-design="pressure-and-patina"] .pp-about__specs > div { display: flex; flex-direction: column; gap: 4px; }
[data-design="pressure-and-patina"] .pp-about__specs dt { font-family: var(--pp-font-mono); font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--pp-muted); margin: 0; }
[data-design="pressure-and-patina"] .pp-about__specs dd { font-family: var(--pp-font-headline); font-size: 22px; color: var(--pp-primary); margin: 0; }

/* ============== Footer ============== */
[data-design="pressure-and-patina"] .pp-footer { padding: var(--pp-bay) clamp(var(--pp-stub), 5vw, var(--pp-trunk)) var(--pp-trunk); background: var(--pp-surface); border-top: 2px solid color-mix(in oklab, var(--pp-secondary), transparent 50%); }
[data-design="pressure-and-patina"] .pp-footer__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: var(--pp-trunk); max-width: 1100px; margin: 0 auto; }
[data-design="pressure-and-patina"] .pp-footer__head { font-family: var(--pp-font-mono); font-size: 10px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--pp-secondary); margin: 0 0 var(--pp-elbow); }
[data-design="pressure-and-patina"] .pp-footer__firm { font-family: var(--pp-font-display); font-size: 18px; letter-spacing: 0.06em; text-transform: uppercase; color: var(--pp-primary); margin: 0 0 var(--pp-coupling); }
[data-design="pressure-and-patina"] .pp-footer__line { font-family: var(--pp-font-body); font-size: 14px; color: var(--pp-ink); margin: 0 0 4px; line-height: 1.5; }
[data-design="pressure-and-patina"] .pp-footer__line a { color: var(--pp-primary); text-decoration: none; border-bottom: 1px dashed currentColor; }
[data-design="pressure-and-patina"] .pp-footer__line a:hover { border-bottom-style: solid; color: var(--pp-accent); }
[data-design="pressure-and-patina"] .pp-footer__baseline { font-family: var(--pp-font-mono); font-size: 11px; letter-spacing: 0.12em; color: var(--pp-muted); margin: var(--pp-trunk) auto 0; max-width: 1100px; text-align: center; padding-top: var(--pp-stub); border-top: 1px dashed color-mix(in oklab, var(--pp-secondary), transparent 60%); }

/* ============== Mobile overflow defense ============== */
[data-design="pressure-and-patina"] table,
[data-design="pressure-and-patina"] pre,
[data-design="pressure-and-patina"] code { overflow-wrap: anywhere; }
