/**
 * Production lock layer for premium visual/UX pass.
 * Final deterministic overrides for responsive quality and consistency.
 */

:root {
  --premium-lock-gap: clamp(1rem, 2.8vw, 1.6rem);
  --premium-lock-section-gap: clamp(1.8rem, 4vw, 3rem);
  --premium-lock-heading: clamp(1.9rem, 2.9vw, 3rem);
  --premium-lock-subheading: clamp(1.25rem, 2vw, 1.9rem);
  --premium-lock-body: clamp(0.94rem, 1.65vw, 1.02rem);
  --premium-lock-touch: 44px;
}

/* 2026-07-03 visual approval correction: active PVX layout + header */
body.is-premium-portfolio .site-header .site-nav::before,
body.is-premium-portfolio .site-header .site-nav::after {
	content: none !important;
	display: none !important;
}

body.is-premium-portfolio .pvx-premium-hero {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	padding: clamp(2.25rem, 4vw, 4.25rem) 0 clamp(2.75rem, 4vw, 4.75rem) !important;
}

body.is-premium-portfolio .pvx-premium-hero > .pvx-premium-shell {
	width: min(calc(100% - clamp(1.5rem, 5vw, 7rem)), 86rem) !important;
	max-width: 86rem !important;
	margin-inline: auto !important;
	padding: 0 !important;
}

body.is-premium-portfolio .pvx-hero-layout {
	display: grid !important;
	grid-template-columns: minmax(0, 1.15fr) minmax(22rem, .85fr) !important;
	align-items: start !important;
	gap: clamp(1.5rem, 3vw, 3.5rem) !important;
	width: 100% !important;
	max-width: none !important;
}

body.is-premium-portfolio .pvx-premium-hero__copy,
body.is-premium-portfolio .pvx-premium-hero-card {
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
}

body.is-premium-portfolio .pvx-premium-cta {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: .7rem !important;
	width: 100% !important;
}

body.is-premium-portfolio .pvx-premium-cta .pvx-button {
	width: 100% !important;
	min-width: 0 !important;
	white-space: normal !important;
	text-align: center !important;
}

body.is-premium-portfolio .pvx-proof-lane-stack {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: .85rem !important;
	width: 100% !important;
}

body.is-premium-portfolio .pvx-proof-lane-stack > * {
	width: 100% !important;
	min-width: 0 !important;
}

@media (min-width: 901px) {
	body.is-premium-portfolio .site-header {
		min-height: 4.35rem !important;
		padding-block: .55rem !important;
		align-items: center !important;
	}

	body.is-premium-portfolio .site-header__inner {
		display: grid !important;
		grid-template-columns: auto minmax(0, 1fr) !important;
		align-items: center !important;
		gap: 1.25rem !important;
		width: min(75rem, calc(100% - 3rem)) !important;
		max-width: min(75rem, calc(100% - 3rem)) !important;
		min-height: 3.45rem !important;
		height: auto !important;
		margin-inline: auto !important;
		padding: .5rem .9rem !important;
		transform: none !important;
		overflow: visible !important;
	}

	body.is-premium-portfolio .site-header .nav-toggle {
		display: none !important;
	}

	body.is-premium-portfolio .site-header .site-nav {
		position: static !important;
		display: flex !important;
		align-items: center !important;
		justify-content: flex-end !important;
		flex-wrap: nowrap !important;
		gap: .2rem !important;
		width: auto !important;
		height: auto !important;
		max-height: none !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: visible !important;
		border: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		transform: none !important;
	}

	body.is-premium-portfolio .site-header .site-nav a {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		min-height: 2.1rem !important;
		padding: .45rem .62rem !important;
		border-radius: 999px !important;
		color: rgba(240, 245, 255, .86) !important;
		text-decoration: none !important;
		white-space: nowrap !important;
		line-height: 1 !important;
	}

	body.is-premium-portfolio .site-header .site-nav a.button {
		display: none !important;
	}

	body.is-premium-portfolio .site-header .site-nav a:hover,
	body.is-premium-portfolio .site-header .site-nav a:focus-visible,
	body.is-premium-portfolio .site-header .site-nav a[aria-current="page"] {
		color: #ffffff !important;
		background: rgba(138, 190, 255, .16) !important;
	}

	body.is-premium-portfolio .pvx-premium-hero__copy {
		padding: clamp(1.35rem, 2vw, 1.9rem) !important;
	}

	body.is-premium-portfolio .pvx-premium-hero__copy h1 {
		max-width: 13ch !important;
		font-size: clamp(3.55rem, 5.1vw, 5.25rem) !important;
		line-height: .94 !important;
		letter-spacing: -.075em !important;
	}

	body.is-premium-portfolio .pvx-premium-hero-card {
		margin-top: clamp(4.5rem, 8vw, 7rem) !important;
	}
}

@media (max-width: 900px) {
	body.is-premium-portfolio .pvx-premium-hero {
		display: block !important;
		padding: 1.2rem 0 1.9rem !important;
	}

	body.is-premium-portfolio .pvx-premium-hero > .pvx-premium-shell {
		width: min(calc(100% - 1.5rem), 42rem) !important;
		max-width: 42rem !important;
		margin-inline: auto !important;
	}

	body.is-premium-portfolio .pvx-hero-layout {
		grid-template-columns: 1fr !important;
		gap: 1rem !important;
	}

	body.is-premium-portfolio .pvx-premium-hero__copy {
		padding: clamp(1.1rem, 5vw, 1.6rem) !important;
	}

	body.is-premium-portfolio .pvx-premium-hero__copy h1 {
		max-width: 11ch !important;
		font-size: clamp(2.28rem, 10vw, 3.9rem) !important;
		line-height: .95 !important;
		letter-spacing: -.055em !important;
	}

	body.is-premium-portfolio .pvx-premium-hero__copy .pvx-lead {
		max-width: 34rem !important;
		font-size: clamp(.96rem, 3.6vw, 1.08rem) !important;
		line-height: 1.52 !important;
	}

	body.is-premium-portfolio .pvx-premium-cta {
		grid-template-columns: 1fr !important;
	}

	body.is-premium-portfolio .pvx-premium-trust {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}

	body.is-premium-portfolio .pvx-premium-trust p {
		min-width: 0 !important;
		padding: .72rem .58rem !important;
	}

	body.is-premium-portfolio .pvx-premium-trust strong {
		font-size: clamp(1rem, 5vw, 1.35rem) !important;
		line-height: .95 !important;
	}

	body.is-premium-portfolio .pvx-premium-trust span {
		font-size: .68rem !important;
		line-height: 1.2 !important;
	}

	body.is-premium-portfolio .pvx-commitment-ribbon,
	body.is-premium-portfolio .pvx-proof-lane-stack,
	body.is-premium-portfolio .pvx-intent-row {
		display: none !important;
	}

	body.is-premium-portfolio .pvx-premium-hero-card {
		margin: 0 !important;
		padding: clamp(1rem, 4vw, 1.3rem) !important;
	}

	body.is-premium-portfolio .pvx-route-list li {
		grid-template-columns: 2.15rem minmax(0, 1fr) !important;
	}
}

@media (max-width: 480px) {
	body.is-premium-portfolio .site-main.portfolio-premium {
		padding-inline: .75rem !important;
	}

	body.is-premium-portfolio .pvx-premium-hero > .pvx-premium-shell {
		width: 100% !important;
	}

	body.is-premium-portfolio .pvx-premium-hero__copy h1 {
		max-width: 10.5ch !important;
		font-size: clamp(2.1rem, 11.5vw, 3.05rem) !important;
	}

	body.is-premium-portfolio .pvx-premium-trust {
		gap: .5rem !important;
	}

	body.is-premium-portfolio .pvx-premium-section {
		padding-inline: 0 !important;
	}

	body.is-premium-portfolio .pvx-lane-grid,
	body.is-premium-portfolio .pvx-proof-grid {
		grid-template-columns: 1fr !important;
	}
}

@media (max-width: 340px) {
	body.is-premium-portfolio .pvx-premium-hero__copy h1 {
		font-size: 2rem !important;
	}

	body.is-premium-portfolio .pvx-premium-trust span {
		font-size: .62rem !important;
	}
}

body.is-premium-portfolio {
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  font-family: var(--premium-font-body);
  color: var(--premium-ink);
  overflow-x: clip;
}

body.is-premium-portfolio * {
  box-sizing: border-box;
}

body.is-premium-portfolio h1,
body.is-premium-portfolio h2,
body.is-premium-portfolio h3,
body.is-premium-portfolio h4,
body.is-premium-portfolio h5,
body.is-premium-portfolio h6 {
  text-wrap: balance;
  letter-spacing: 0.01em;
}

body.is-premium-portfolio h1 {
  font-size: clamp(1.82rem, 3.4vw, 3.25rem);
  line-height: 1.06;
}

body.is-premium-portfolio h2 {
  font-size: var(--premium-lock-subheading);
  line-height: 1.12;
}

body.is-premium-portfolio h3 {
  margin-bottom: 0.45rem;
}

body.is-premium-portfolio p,
body.is-premium-portfolio li,
body.is-premium-portfolio a,
body.is-premium-portfolio button,
body.is-premium-portfolio input,
body.is-premium-portfolio select,
body.is-premium-portfolio textarea,
body.is-premium-portfolio .pvx-kicker,
body.is-premium-portfolio .pvr-kicker {
  font-size: var(--premium-lock-body);
}

body.is-premium-portfolio .pvx-shell,
body.is-premium-portfolio .pvr-shell,
body.is-premium-portfolio .site-shell,
body.is-premium-portfolio .section-shell {
  width: min(1180px, calc(100% - clamp(1rem, 4vw, 2.25rem)));
  margin-inline: auto;
  padding-inline: 0;
}

body.is-premium-portfolio .site-main,
body.is-premium-portfolio .site-footer {
  position: relative;
  overflow-x: clip;
}

body.is-premium-portfolio .site-main.portfolio-premium {
  padding-top: 5.15rem;
}

/* =====================
   Header / navigation
   ===================== */

body.is-premium-portfolio .site-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 130;
  height: 4.3rem;
  background: color-mix(in srgb, var(--premium-bg-0) 92%, transparent);
  border-bottom: 1px solid var(--premium-line-soft);
  backdrop-filter: blur(11px);
}

body.is-premium-portfolio .site-header__inner {
  min-height: 100%;
  width: min(1180px, calc(100% - clamp(1rem, 4vw, 2.25rem)));
  display: flex;
  align-items: center;
  gap: var(--premium-lock-gap);
  padding-inline: 0;
}

body.is-premium-portfolio .site-header .brand {
  gap: 0.58rem;
}

body.is-premium-portfolio .site-header__actions {
  display: none;
}

body.is-premium-portfolio .site-nav {
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.52rem;
  margin-top: 0;
}

body.is-premium-portfolio .site-nav a,
body.is-premium-portfolio .site-nav button {
  min-height: var(--premium-lock-touch);
  padding: 0.54rem 0.96rem;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--premium-line) 55%, transparent);
}

body.is-premium-portfolio .site-nav a.is-active {
  border-color: color-mix(in srgb, var(--premium-accent) 72%, transparent);
  background: color-mix(in srgb, var(--premium-accent-soft) 72%, transparent);
}

body.is-premium-portfolio .site-nav .site-nav-cta {
  margin-left: 0.25rem;
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.52rem;
}

body.is-premium-portfolio .site-nav .site-nav-cta a {
  padding-inline: 0.82rem;
}

body.is-premium-portfolio .nav-toggle {
  display: none;
  width: 3rem;
  height: 2.65rem;
  margin-left: auto;
  border: 1px solid color-mix(in srgb, var(--premium-line) 68%, transparent);
  border-radius: 0.95rem;
  background: rgba(4, 14, 31, 0.72);
  color: var(--premium-ink);
  position: relative;
}

body.is-premium-portfolio .nav-toggle span:nth-child(-n+3) {
  position: absolute;
  left: 50%;
  width: 1.25rem;
  height: 2px;
  border-radius: 999px;
  background: var(--premium-ink);
  transform: translateX(-50%);
  transition: transform var(--premium-motion) var(--premium-ease), opacity var(--premium-motion) var(--premium-ease), top var(--premium-motion) var(--premium-ease);
}

body.is-premium-portfolio .nav-toggle span:nth-child(1) { top: 0.83rem; }
body.is-premium-portfolio .nav-toggle span:nth-child(2) { top: 1.3rem; }
body.is-premium-portfolio .nav-toggle span:nth-child(3) { top: 1.77rem; }
body.is-premium-portfolio .nav-toggle[aria-expanded="true"] span:nth-child(1) {
  top: 1.33rem;
  transform: translateX(-50%) rotate(45deg);
}
body.is-premium-portfolio .nav-toggle[aria-expanded="true"] span:nth-child(2),
body.is-premium-portfolio .nav-toggle[aria-expanded="true"] span:nth-child(3) {
  opacity: 0;
}
body.is-premium-portfolio .nav-toggle[aria-expanded="true"] span:nth-child(2) {
  top: 1.3rem;
  opacity: 0;
}
body.is-premium-portfolio .nav-toggle[aria-expanded="true"] span:nth-child(3) {
  top: 1.33rem;
  transform: translateX(-50%) rotate(-45deg);
}

body.is-premium-portfolio .site-nav .visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}

/* =====================
   Buttons
   ===================== */

body.is-premium-portfolio .pvx-button,
body.is-premium-portfolio .pvr-button,
body.is-premium-portfolio .button,
body.is-premium-portfolio .button--primary,
body.is-premium-portfolio .button--secondary,
body.is-premium-portfolio .button--ghost,
body.is-premium-portfolio .button--light {
  min-height: var(--premium-lock-touch);
  height: auto;
  border-radius: 999px;
  padding: 0.56rem 1.08rem;
  border: 1px solid color-mix(in srgb, var(--premium-line) 65%, transparent);
  transition:
    transform var(--premium-motion) var(--premium-ease),
    box-shadow var(--premium-motion) var(--premium-ease),
    border-color var(--premium-motion) var(--premium-ease),
    background-color var(--premium-motion) var(--premium-ease);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 0.35rem;
  font-weight: 650;
  text-transform: none;
  letter-spacing: 0.02em;
}

body.is-premium-portfolio .pvx-button:hover,
body.is-premium-portfolio .pvr-button:hover,
body.is-premium-portfolio .button:hover {
  transform: translateY(-1px);
  box-shadow: var(--premium-shadow-soft);
}

body.is-premium-portfolio .pvx-button:active,
body.is-premium-portfolio .pvr-button:active,
body.is-premium-portfolio .button:active {
  transform: translateY(0);
}

body.is-premium-portfolio .pvr-button.pvr-button--primary,
body.is-premium-portfolio .pvx-button.pvx-button--primary,
body.is-premium-portfolio .button.button--primary {
  color: #f7fbff !important;
  -webkit-text-fill-color: #f7fbff !important;
  background: linear-gradient(140deg, #102b52 0%, #4e84df 42%, #3e79cb 100%) !important;
  border-color: rgba(255, 255, 255, 0.74) !important;
  min-height: var(--premium-lock-touch);
  box-shadow:
    0 16px 34px rgba(7, 20, 33, 0.26),
    inset 0 1px 0 rgba(255, 255, 255, 0.2) !important;
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.24);
}

body.is-premium-portfolio .pvr-button.pvr-button--secondary,
body.is-premium-portfolio .pvx-button.pvx-button--secondary,
body.is-premium-portfolio .button--secondary,
body.is-premium-portfolio .button.button--secondary {
  color: #06101f !important;
  -webkit-text-fill-color: #06101f !important;
  background: #f7fbff !important;
  border-color: rgba(6, 16, 31, 0.7) !important;
}

html body.is-premium-portfolio .site-main.portfolio-premium .pvr-button.pvr-button--primary *,
html body.is-premium-portfolio .site-main.portfolio-premium .pvx-button.pvx-button--primary *,
html body.is-premium-portfolio .site-main.portfolio-premium .button.button--primary * {
  color: #f7fbff !important;
  -webkit-text-fill-color: #f7fbff !important;
}

body.is-premium-portfolio .pvr-button.pvr-button--primary[href*="/contact"],
body.is-premium-portfolio .pvx-button.pvx-button--primary[href*="/contact"],
body.is-premium-portfolio .pvr-button.pvr-button--primary[href="/contact/"],
body.is-premium-portfolio .pvx-button.pvx-button--primary[href="/contact/"],
body.is-premium-portfolio .pvx-button[href*="/contact"] ,
body.is-premium-portfolio .pvr-button[href*="/contact"] {
  color: #f7fbff !important;
  -webkit-text-fill-color: #f7fbff !important;
  background: linear-gradient(140deg, #0f2f58 0%, #3e7ef0 44%, #2c6bcc 100%) !important;
  border-color: rgba(255, 255, 255, 0.92) !important;
  box-shadow: 0 14px 30px rgba(7, 20, 33, 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.24) !important;
  text-decoration: none !important;
}

body.is-premium-portfolio .pvr-button.pvr-button--primary:hover,
body.is-premium-portfolio .pvr-button.pvr-button--primary:focus-visible,
body.is-premium-portfolio .pvx-button.pvx-button--primary:hover,
body.is-premium-portfolio .pvx-button.pvx-button--primary:focus-visible,
body.is-premium-portfolio .button.button--primary:hover,
body.is-premium-portfolio .button.button--primary:focus-visible {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: linear-gradient(140deg, #0f2f58 0%, #3e7ef0 44%, #2c6bcc 100%) !important;
  border-color: rgba(255, 255, 255, 0.86) !important;
}

body.is-premium-portfolio .pvr-button.pvr-button--primary:active,
body.is-premium-portfolio .pvx-button.pvx-button--primary:active,
body.is-premium-portfolio .button.button--primary:active {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: linear-gradient(140deg, #0d294f 0%, #2d66cb 44%, #2558a9 100%) !important;
}

/* =================================
   Hero / section composition rhythm
   ================================= */

body.is-premium-portfolio .pvx-premium-hero,
body.is-premium-portfolio .pvr-premium-hero,
body.is-premium-portfolio .pvx-section,
body.is-premium-portfolio .pvr-section,
body.is-premium-portfolio .portfolio-premium .pvr-premium-form-section {
  padding-block: var(--premium-lock-section-gap);
}

body.is-premium-portfolio .pvx-premium-hero .pvx-hero-layout,
body.is-premium-portfolio .pvr-premium-hero .pvr-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
  gap: clamp(1.2rem, 3vw, 2.2rem);
  align-items: stretch;
}

body.is-premium-portfolio .pvx-premium-hero-card,
body.is-premium-portfolio .pvr-side-grid,
body.is-premium-portfolio .pvr-form-side,
body.is-premium-portfolio .pvx-proof-card,
body.is-premium-portfolio .pvr-lane-card,
body.is-premium-portfolio .pvx-lane-card,
body.is-premium-portfolio .pvr-atlas-mini,
body.is-premium-portfolio .pvr-map-card,
body.is-premium-portfolio .pvx-contact-inline,
body.is-premium-portfolio .pvr-contact-rhythm article,
body.is-premium-portfolio .pvx-process-grid,
body.is-premium-portfolio .pvr-case-rhythm,
body.is-premium-portfolio .pvr-form-head {
  border: 1px solid color-mix(in srgb, var(--premium-line) 74%, transparent);
  border-radius: 1rem;
  background: color-mix(in srgb, var(--premium-surface-0) 82%, transparent);
  box-shadow: var(--premium-shadow-soft);
  padding: 1rem;
}

body.is-premium-portfolio .pvx-lane-grid,
body.is-premium-portfolio .pvx-proof-grid,
body.is-premium-portfolio .pvx-process-grid,
body.is-premium-portfolio .pvr-lane-grid,
body.is-premium-portfolio .pvr-lane-grid,
body.is-premium-portfolio .pvr-atlas-mini-grid,
body.is-premium-portfolio .pvr-proof-chip-row,
body.is-premium-portfolio .pvr-quick-contact .pvr-proof-chip-row,
body.is-premium-portfolio .footer-proof-strip {
  display: grid;
  gap: 1rem;
  margin-top: 1rem;
}

body.is-premium-portfolio .pvx-lane-grid,
body.is-premium-portfolio .pvx-proof-grid,
body.is-premium-portfolio .pvr-lane-grid,
body.is-premium-portfolio .pvr-atlas-mini-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.is-premium-portfolio .pvx-proof-grid article,
body.is-premium-portfolio .pvr-lane-grid article,
body.is-premium-portfolio .pvx-lane-grid article,
body.is-premium-portfolio .pvx-proof-grid article,
body.is-premium-portfolio .pvr-map-grid article,
body.is-premium-portfolio .pvr-atlas-mini {
  border: 1px solid color-mix(in srgb, var(--premium-line) 72%, transparent);
  border-radius: 0.95rem;
  padding: 1rem;
  background: color-mix(in srgb, var(--premium-surface-1) 68%, transparent);
}

body.is-premium-portfolio .pvr-proof-chip-row,
body.is-premium-portfolio .footer-chip-row,
body.is-premium-portfolio .footer-link-stack {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
}

body.is-premium-portfolio .pvr-proof-chip-row a,
body.is-premium-portfolio .footer-chip-row a,
body.is-premium-portfolio .footer-proof-strip a,
body.is-premium-portfolio .footer-link-stack a {
  display: inline-flex;
  align-items: center;
  min-height: 2.6rem;
  border-radius: 999px;
  padding-inline: 0.9rem;
  padding-block: 0.35rem;
  border: 1px solid color-mix(in srgb, var(--premium-line) 65%, transparent);
}

/* =====================
   Form quality lock
   ===================== */

body.is-premium-portfolio .pvr-form-grid,
body.is-premium-portfolio .contact-form-grid,
body.is-premium-portfolio .pvr-premium-form-shell,
body.is-premium-portfolio .pvr-quick-contact {
  display: grid;
  gap: 0.9rem;
}

body.is-premium-portfolio .contact-form {
  padding: 1.15rem;
  border-radius: 1.05rem;
  border: 1px solid color-mix(in srgb, var(--premium-line) 68%, transparent);
  background: color-mix(in srgb, var(--premium-surface-1) 75%, transparent);
}

body.is-premium-portfolio .contact-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.is-premium-portfolio .contact-form-grid label,
body.is-premium-portfolio .pvr-contact-grid label {
  display: grid;
  gap: 0.48rem;
}

body.is-premium-portfolio .contact-form-grid .full,
body.is-premium-portfolio .pvr-contact-grid .full {
  grid-column: 1 / -1;
}

body.is-premium-portfolio .contact-form-grid label :is(input, select, textarea) {
  width: 100%;
  min-height: var(--premium-lock-touch);
  border: 1px solid color-mix(in srgb, var(--premium-line) 62%, transparent);
  border-radius: 0.72rem;
  background: #090f1e;
  color: var(--premium-ink);
  padding: 0.62rem 0.75rem;
  line-height: 1.35;
  outline: none;
}

body.is-premium-portfolio .contact-form-grid label :is(input, textarea, select):focus-visible,
body.is-premium-portfolio .contact-form-grid label :is(input, textarea, select):focus,
body.is-premium-portfolio .contact-form-grid .contact-form-char-count {
  outline: 2px solid color-mix(in srgb, var(--premium-focus) 65%, transparent);
  outline-offset: 2px;
  border-radius: 0.68rem;
}

body.is-premium-portfolio .contact-form button {
  width: 100%;
  margin-top: 0.2rem;
}

body.is-premium-portfolio .contact-form-note,
body.is-premium-portfolio .contact-form-status {
  margin-top: 0.45rem;
}

/* =====================
   Footer lock
   ===================== */

body.is-premium-portfolio .site-footer {
  border-top: 1px solid var(--premium-line-soft);
  padding-block: 2rem 2.35rem;
}

body.is-premium-portfolio .footer-grid {
  width: min(1180px, calc(100% - clamp(1rem, 4vw, 2.25rem)));
  margin-inline: auto;
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: var(--premium-lock-gap);
}

body.is-premium-portfolio .footer-card,
body.is-premium-portfolio .footer-card-block {
  border: 1px solid color-mix(in srgb, var(--premium-line) 64%, transparent);
  border-radius: 1rem;
  padding: 1rem;
  background: color-mix(in srgb, var(--premium-surface-0) 78%, transparent);
}

body.is-premium-portfolio .footer-proof-strip,
body.is-premium-portfolio .footer-actions-row,
body.is-premium-portfolio .pvr-case-cta,
body.is-premium-portfolio .pvx-contact-inline__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
}

body.is-premium-portfolio .footer-proof-card,
body.is-premium-portfolio .pvr-surface-card,
body.is-premium-portfolio .pvx-proof-card,
body.is-premium-portfolio .pvr-claim-panel,
body.is-premium-portfolio .pvx-premium-hero-card {
  border: 1px solid color-mix(in srgb, var(--premium-line) 68%, transparent);
  border-radius: 0.95rem;
  padding: 0.98rem;
  background: color-mix(in srgb, var(--premium-surface-1) 66%, transparent);
  transition: transform var(--premium-motion) var(--premium-ease), border-color var(--premium-motion) var(--premium-ease);
}

body.is-premium-portfolio .footer-proof-card:hover,
body.is-premium-portfolio .pvr-surface-card:hover,
body.is-premium-portfolio .pvx-proof-card:hover,
body.is-premium-portfolio .pvr-claim-panel:hover,
body.is-premium-portfolio .pvx-premium-hero-card:hover {
  border-color: color-mix(in srgb, var(--premium-accent) 60%, transparent);
}

body.is-premium-portfolio .pvx-kicker,
body.is-premium-portfolio .pvr-kicker,
body.is-premium-portfolio .foot-kicker,
body.is-premium-portfolio .pvx-card-kicker {
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--premium-ink-soft);
  font-size: 0.68rem;
}

/* =====================
   Premium responsive lock
   ===================== */

@media (max-width: 1080px) {
  body.is-premium-portfolio .site-header__inner {
    gap: 0.55rem;
  }

  body.is-premium-portfolio .site-nav {
    position: fixed;
    inset: 4.3rem 0 auto;
    min-height: calc(100vh - 4.3rem);
    padding: 0.7rem 0.9rem 1.25rem;
    border-top: 1px solid var(--premium-line);
    background: color-mix(in srgb, var(--premium-bg-0) 97%, transparent);
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 0.52rem;
    transform: translateY(-110%);
    pointer-events: none;
    opacity: 0;
    box-shadow: 0 26px 40px rgba(2, 6, 18, 0.55);
    overflow-y: auto;
    transition:
      transform var(--premium-motion) var(--premium-ease),
      opacity var(--premium-motion) var(--premium-ease),
      visibility var(--premium-motion) var(--premium-ease);
    visibility: hidden;
  }

  body.is-premium-portfolio .site-header.is-nav-open .site-nav {
    transform: translateY(0);
    pointer-events: auto;
    opacity: 1;
    visibility: visible;
  }

  body.is-premium-portfolio .site-nav a {
    width: 100%;
    padding: 0.62rem 0.9rem;
    justify-content: flex-start;
    border-color: color-mix(in srgb, var(--premium-line) 72%, transparent);
  }

  body.is-premium-portfolio .site-nav .site-nav-cta,
  body.is-premium-portfolio .site-nav .site-nav-cta a {
    width: 100%;
    justify-content: stretch;
  }

  body.is-premium-portfolio .nav-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  body.is-premium-portfolio .site-nav a + .site-nav-cta,
  body.is-premium-portfolio .site-nav .button--primary,
  body.is-premium-portfolio .site-nav .button--ghost,
  body.is-premium-portfolio .site-nav .button--light {
    margin-top: 0.15rem;
  }

  body.is-premium-portfolio .site-main.portfolio-premium {
    padding-top: 4.95rem;
  }
}

@media (max-width: 900px) {
  body.is-premium-portfolio .pvx-premium-hero .pvx-hero-layout,
  body.is-premium-portfolio .pvr-premium-hero .pvr-hero-grid,
  body.is-premium-portfolio .pvx-lane-grid,
  body.is-premium-portfolio .pvx-proof-grid,
  body.is-premium-portfolio .pvr-lane-grid,
  body.is-premium-portfolio .pvr-atlas-mini-grid,
  body.is-premium-portfolio .pvr-case-rhythm,
  body.is-premium-portfolio .pvx-process-grid,
  body.is-premium-portfolio .footer-grid,
  body.is-premium-portfolio .contact-form-grid,
  body.is-premium-portfolio .pvr-premium-form-shell,
  body.is-premium-portfolio .pvr-form-grid {
    grid-template-columns: 1fr;
  }

  body.is-premium-portfolio .pvr-premium-form-shell {
    gap: 1rem;
  }

  body.is-premium-portfolio .contact-form-grid .full {
    grid-column: auto;
  }

  body.is-premium-portfolio .footer-proof-strip,
  body.is-premium-portfolio .pvr-cta-row,
  body.is-premium-portfolio .pvx-premium-cta,
  body.is-premium-portfolio .pvx-proof-chip-row,
  body.is-premium-portfolio .footer-chip-row,
  body.is-premium-portfolio .pvx-intent-row,
  body.is-premium-portfolio .pvr-contact-rhythm {
    gap: 0.5rem;
  }
}

@media (max-width: 480px) {
  :root {
    --premium-lock-touch: 46px;
  }

  body.is-premium-portfolio .site-header {
    height: 4.15rem;
  }

  body.is-premium-portfolio .site-header__inner {
    padding-inline: 0.2rem;
  }

  body.is-premium-portfolio .pvx-premium-hero,
  body.is-premium-portfolio .pvr-premium-hero {
    padding-top: 0.85rem;
  }

  body.is-premium-portfolio .pvx-premium-hero .pvx-hero-layout,
  body.is-premium-portfolio .pvr-premium-hero .pvr-hero-grid {
    gap: 1rem;
  }

  body.is-premium-portfolio .brand-title {
    font-size: 0.88rem;
  }

  body.is-premium-portfolio .brand-sub {
    font-size: 0.58rem;
    white-space: normal;
  }

  body.is-premium-portfolio .pvx-premium-cta,
  body.is-premium-portfolio .pvr-cta-row,
  body.is-premium-portfolio .pvx-contact-inline__actions,
  body.is-premium-portfolio .footer-actions-row,
  body.is-premium-portfolio .pvr-case-cta {
    flex-direction: column;
  }

  body.is-premium-portfolio .pvx-premium-cta > *,
  body.is-premium-portfolio .pvr-cta-row > *,
  body.is-premium-portfolio .pvx-contact-inline__actions > *,
  body.is-premium-portfolio .footer-actions-row > *,
  body.is-premium-portfolio .pvr-case-cta > *,
  body.is-premium-portfolio .pvr-proof-chip-row > *,
  body.is-premium-portfolio .pvx-proof-chip-row > *,
  body.is-premium-portfolio .footer-chip-row > * {
    width: 100%;
    justify-content: center;
  }

  body.is-premium-portfolio .site-nav .site-nav-cta {
    flex-direction: column;
  }

  body.is-premium-portfolio .site-nav .site-nav-cta a {
    width: 100%;
  }
}

@media (max-width: 320px) {
  body.is-premium-portfolio .site-header {
    height: 4rem;
  }

  body.is-premium-portfolio .brand-title {
    max-width: 5.4rem;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  body.is-premium-portfolio .brand-sub {
    display: none;
  }

  body.is-premium-portfolio .pvx-kicker,
  body.is-premium-portfolio .pvr-kicker {
    letter-spacing: 0.06em;
    font-size: 0.61rem;
  }

  body.is-premium-portfolio h1 {
    font-size: 1.56rem;
    line-height: 1.16;
  }

  body.is-premium-portfolio h2 {
    font-size: 1.22rem;
  }
}

/* ======================================================================
   2026-07-03 production approval corrections
   Purpose: hard-stop recurring visual defects seen in approval captures:
   mobile header CTA clutter, wasted desktop hero canvas, cramped hero copy,
   one-line burger close state, dense card tunnel, and outlined counters.
   ====================================================================== */

body.is-premium-portfolio {
  overflow-x: hidden;
}

body.is-premium-portfolio .site-main.portfolio-premium,
body.is-premium-portfolio .site-main.portfolio-premium * {
  min-width: 0;
}

body.is-premium-portfolio #site-header .site-header__actions,
body.is-premium-portfolio .site-header .site-header__actions,
body.is-premium-portfolio .site-header.is-nav-open .site-header__actions,
body.is-premium-portfolio .site-main .site-header__actions {
  display: none !important;
  visibility: hidden !important;
}

body.is-premium-portfolio .site-header__inner {
  min-height: 4rem;
}

body.is-premium-portfolio .nav-toggle span:nth-child(1) {
  opacity: 1;
  top: 0.95rem;
  transform: translateX(-50%) rotate(0deg);
}

body.is-premium-portfolio .nav-toggle span:nth-child(2) {
  opacity: 1;
  top: 1.33rem;
  transform: translateX(-50%) scaleX(1);
}

body.is-premium-portfolio .nav-toggle span:nth-child(3) {
  opacity: 1;
  top: 1.71rem;
  transform: translateX(-50%) rotate(0deg);
}

body.is-premium-portfolio .site-header.is-nav-open .nav-toggle span:nth-child(1),
body.is-premium-portfolio .nav-toggle[aria-expanded="true"] span:nth-child(1) {
  opacity: 1;
  top: 1.33rem;
  transform: translateX(-50%) rotate(45deg);
}

body.is-premium-portfolio .site-header.is-nav-open .nav-toggle span:nth-child(2),
body.is-premium-portfolio .nav-toggle[aria-expanded="true"] span:nth-child(2) {
  opacity: 0;
  transform: translateX(-50%) scaleX(0.1);
}

body.is-premium-portfolio .site-header.is-nav-open .nav-toggle span:nth-child(3),
body.is-premium-portfolio .nav-toggle[aria-expanded="true"] span:nth-child(3) {
  opacity: 1;
  top: 1.33rem;
  transform: translateX(-50%) rotate(-45deg);
}

body.is-premium-portfolio .contact-form-char-count {
  outline: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

body.is-premium-portfolio .site-main.portfolio-premium :is(
  .pvx-premium-hero__copy,
  .pvr-hero-copy,
  .hero-copy,
  .site-hero__copy
) {
  width: 100%;
  min-width: 0;
}

body.is-premium-portfolio .site-main.portfolio-premium :is(
  .pvx-premium-hero-title,
  .pvx-premium-hero__copy h1,
  .pvr-hero-copy h1,
  .hero-copy h1,
  .site-hero__copy h1
) {
  text-wrap: balance;
}

body.is-premium-portfolio .site-main.portfolio-premium :is(
  .pvx-premium-hero__copy > p,
  .pvr-hero-copy > p,
  .hero-copy > p,
  .site-hero__copy > p,
  .pvx-section-header p,
  .pvr-section-header p
) {
  text-wrap: pretty;
}

body.is-premium-portfolio .site-main.portfolio-premium :is(
  .pvx-premium-hero-card,
  .pvr-side-grid,
  .pvr-premium-hero-card,
  .pvr-hero-metrics,
  .pvx-proof-card,
  .pvr-surface-card
) {
  transform: translateZ(0);
}

@media (min-width: 901px) {
  body.is-premium-portfolio .site-main.portfolio-premium {
    padding-top: 4.25rem;
  }

  body.is-premium-portfolio .site-main.portfolio-premium :is(
    .pvx-premium-hero,
    .pvr-premium-hero
  ) {
    display: flex;
    align-items: center;
    min-height: calc(100vh - 4.25rem);
    padding-block: 3.25rem 2.75rem;
  }

  body.is-premium-portfolio .site-main.portfolio-premium :is(
    .pvx-premium-hero .pvx-shell,
    .pvr-premium-hero .pvr-shell
  ) {
    width: min(100%, calc(100% - 3rem));
    max-width: 78rem;
  }

  body.is-premium-portfolio .site-main.portfolio-premium :is(
    .pvx-premium-hero .pvx-hero-layout,
    .pvr-premium-hero .pvr-hero-grid
  ) {
    grid-template-columns: minmax(0, 1.08fr) minmax(22rem, 0.76fr);
    align-items: center;
    gap: 2rem;
  }

  body.is-premium-portfolio .site-main.portfolio-premium :is(
    .pvx-premium-hero__copy,
    .pvr-hero-copy,
    .hero-copy,
    .site-hero__copy
  ) {
    max-width: 48rem;
  }

  body.is-premium-portfolio .site-main.portfolio-premium :is(
    .pvx-premium-hero-title,
    .pvx-premium-hero__copy h1,
    .pvr-hero-copy h1,
    .hero-copy h1,
    .site-hero__copy h1
  ) {
    max-width: 15ch;
    font-size: 4rem;
    line-height: 0.96;
    letter-spacing: -0.055em;
  }

  body.is-premium-portfolio .site-main.portfolio-premium :is(
    .pvx-premium-hero__copy > p,
    .pvr-hero-copy > p,
    .hero-copy > p,
    .site-hero__copy > p
  ) {
    max-width: 39rem;
    font-size: 1.06rem;
    line-height: 1.62;
  }

  body.is-premium-portfolio .site-main.portfolio-premium :is(
    .pvx-premium-hero-card,
    .pvr-side-grid,
    .pvr-premium-hero-card
  ) {
    width: 100%;
    max-width: none;
    justify-self: stretch;
    align-self: center;
  }

  body.is-premium-portfolio .site-main.portfolio-premium :is(
    .pvx-proof-grid,
    .pvx-process-grid,
    .pvx-service-grid,
    .pvr-route-grid,
    .pvr-proof-grid,
    .pvr-capability-grid
  ) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
  }

  body.is-premium-portfolio .site-main.portfolio-premium :is(
    .pvx-section-header,
    .pvr-section-header
  ) {
    max-width: 50rem;
  }
}

@media (min-width: 1440px) {
  body.is-premium-portfolio .site-main.portfolio-premium :is(
    .pvx-premium-hero .pvx-shell,
    .pvr-premium-hero .pvr-shell
  ) {
    max-width: 86rem;
  }

  body.is-premium-portfolio .site-main.portfolio-premium :is(
    .pvx-premium-hero .pvx-hero-layout,
    .pvr-premium-hero .pvr-hero-grid
  ) {
    grid-template-columns: minmax(0, 1.1fr) minmax(25rem, 0.72fr);
    gap: 2.5rem;
  }

  body.is-premium-portfolio .site-main.portfolio-premium :is(
    .pvx-premium-hero-title,
    .pvx-premium-hero__copy h1,
    .pvr-hero-copy h1,
    .hero-copy h1,
    .site-hero__copy h1
  ) {
    font-size: 4.45rem;
  }
}

@media (max-width: 1080px) {
  body.is-premium-portfolio .site-header__inner {
    width: min(100%, calc(100% - 1rem));
    min-height: 3.8rem;
    padding: 0.45rem 0.6rem;
    gap: 0.75rem;
  }

  body.is-premium-portfolio .site-nav {
    max-height: calc(100svh - 5rem);
    overflow-y: auto;
  }

  body.is-premium-portfolio .site-nav a {
    min-height: 2.85rem;
  }

  body.is-premium-portfolio .site-main.portfolio-premium {
    padding-top: 4.15rem;
  }

  body.is-premium-portfolio .site-main.portfolio-premium :is(
    .pvx-premium-hero,
    .pvr-premium-hero
  ) {
    padding-block: 1.45rem 2.25rem;
  }

  body.is-premium-portfolio .site-main.portfolio-premium :is(
    .pvx-premium-hero .pvx-hero-layout,
    .pvr-premium-hero .pvr-hero-grid
  ) {
    gap: 1.05rem;
  }

  body.is-premium-portfolio .site-main.portfolio-premium :is(
    .pvx-premium-hero-title,
    .pvx-premium-hero__copy h1,
    .pvr-hero-copy h1,
    .hero-copy h1,
    .site-hero__copy h1
  ) {
    max-width: 100%;
    font-size: 2.35rem;
    line-height: 1.02;
    letter-spacing: -0.04em;
  }

  body.is-premium-portfolio .site-main.portfolio-premium :is(
    .pvx-premium-hero__copy > p,
    .pvr-hero-copy > p,
    .hero-copy > p,
    .site-hero__copy > p
  ) {
    max-width: 100%;
    font-size: 0.99rem;
    line-height: 1.6;
  }

  body.is-premium-portfolio .site-main.portfolio-premium :is(
    .pvx-premium-hero-card,
    .pvr-side-grid,
    .pvr-premium-hero-card,
    .pvr-hero-metrics,
    .pvx-proof-card,
    .pvr-surface-card
  ) {
    border-radius: 1.35rem;
  }
}

@media (max-width: 480px) {
  body.is-premium-portfolio .site-brand {
    min-width: 0;
  }

  body.is-premium-portfolio .site-brand__title {
    max-width: calc(100vw - 8rem);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  body.is-premium-portfolio .site-main.portfolio-premium :is(
    .pvx-premium-hero,
    .pvr-premium-hero
  ) {
    padding-block: 1.15rem 2rem;
  }

  body.is-premium-portfolio .site-main.portfolio-premium :is(
    .pvx-premium-hero-title,
    .pvx-premium-hero__copy h1,
    .pvr-hero-copy h1,
    .hero-copy h1,
    .site-hero__copy h1
  ) {
    font-size: 2.08rem;
    line-height: 1.03;
  }

  body.is-premium-portfolio .site-main.portfolio-premium :is(
    .pvx-button-row,
    .pvr-button-row,
    .button-row,
    .hero-actions
  ) {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.7rem;
  }

  body.is-premium-portfolio .site-main.portfolio-premium :is(
    .button,
    .pvx-button,
    .pvr-button
  ) {
    width: 100%;
    justify-content: center;
    min-height: 3rem;
  }
}

@media (max-width: 340px) {
  body.is-premium-portfolio .site-header__inner {
    width: min(100%, calc(100% - 0.6rem));
    padding-inline: 0.45rem;
  }

  body.is-premium-portfolio .site-main.portfolio-premium :is(
    .pvx-premium-hero-title,
    .pvx-premium-hero__copy h1,
    .pvr-hero-copy h1,
    .hero-copy h1,
    .site-hero__copy h1
  ) {
    font-size: 1.86rem;
  }
}

/* 2026-07-03 phone approval hard lock: no cramped two-column cards on real phones. */
@media (max-width: 480px) {
	body.is-premium-portfolio .pvx-lane-grid,
	body.is-premium-portfolio .pvx-proof-grid,
	body.is-premium-portfolio .pvx-process-grid {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		justify-items: stretch !important;
	}

	body.is-premium-portfolio .pvx-lane-grid > *,
	body.is-premium-portfolio .pvx-proof-grid > *,
	body.is-premium-portfolio .pvx-process-grid > * {
		width: 100% !important;
		max-width: none !important;
		min-width: 0 !important;
	}
}

/* 2026-07-03 final phone specificity lock: outrank legacy premium grid rules. */
@media (max-width: 480px) {
	html body.home.is-premium-portfolio .site-main.portfolio-premium .pvx-lane-grid,
	html body.home.is-premium-portfolio .site-main.portfolio-premium .pvx-proof-grid,
	html body.home.is-premium-portfolio .site-main.portfolio-premium .pvx-process-grid,
	html body.is-premium-portfolio .site-main.portfolio-premium .pvx-lane-grid,
	html body.is-premium-portfolio .site-main.portfolio-premium .pvx-proof-grid,
	html body.is-premium-portfolio .site-main.portfolio-premium .pvx-process-grid {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		grid-auto-columns: minmax(0, 1fr) !important;
		justify-items: stretch !important;
		align-items: stretch !important;
	}

	html body.home.is-premium-portfolio .site-main.portfolio-premium .pvx-lane-grid > *,
	html body.home.is-premium-portfolio .site-main.portfolio-premium .pvx-proof-grid > *,
	html body.home.is-premium-portfolio .site-main.portfolio-premium .pvx-process-grid > *,
	html body.is-premium-portfolio .site-main.portfolio-premium .pvx-lane-grid > *,
	html body.is-premium-portfolio .site-main.portfolio-premium .pvx-proof-grid > *,
	html body.is-premium-portfolio .site-main.portfolio-premium .pvx-process-grid > * {
		width: 100% !important;
		max-width: none !important;
		min-width: 0 !important;
	}
}

/* 2026-07-03 desktop approval polish: stronger first viewport, less clutter, intentional right rail. */
@media (min-width: 901px) {
	html body.is-premium-portfolio .site-main.portfolio-premium .pvx-premium-hero {
		padding-block: clamp(3.4rem, 5.4vw, 5.8rem) clamp(3rem, 4.8vw, 5.2rem) !important;
	}

	html body.is-premium-portfolio .site-main.portfolio-premium .pvx-hero-layout {
		position: relative !important;
		overflow: hidden !important;
		min-height: clamp(39rem, 56vw, 48rem) !important;
		background:
			radial-gradient(circle at 78% 20%, rgba(94, 169, 255, 0.18), transparent 26rem),
			radial-gradient(circle at 92% 72%, rgba(67, 116, 185, 0.13), transparent 21rem),
			linear-gradient(90deg, rgba(12, 20, 37, 0.06), rgba(19, 34, 56, 0.46) 57%, rgba(7, 12, 22, 0.78)) !important;
		border-radius: clamp(1.35rem, 2vw, 2rem) !important;
		box-shadow: 0 2.2rem 7rem rgba(0, 0, 0, 0.2) !important;
	}

	html body.is-premium-portfolio .site-main.portfolio-premium .pvx-hero-layout::before {
		content: "" !important;
		position: absolute !important;
		inset: 1.2rem 1.2rem 1.2rem auto !important;
		width: min(42%, 34rem) !important;
		border-radius: 1.45rem !important;
		background:
			linear-gradient(90deg, rgba(94, 169, 255, 0.18) 1px, transparent 1px),
			linear-gradient(0deg, rgba(94, 169, 255, 0.14) 1px, transparent 1px),
			radial-gradient(circle at 24% 30%, rgba(118, 188, 255, 0.46) 0 0.22rem, transparent 0.24rem),
			radial-gradient(circle at 67% 42%, rgba(118, 188, 255, 0.32) 0 0.18rem, transparent 0.2rem),
			radial-gradient(circle at 42% 70%, rgba(118, 188, 255, 0.28) 0 0.18rem, transparent 0.2rem),
			linear-gradient(145deg, rgba(12, 24, 45, 0.36), rgba(12, 18, 32, 0.1)) !important;
		background-size: 4.2rem 4.2rem, 4.2rem 4.2rem, auto, auto, auto, auto !important;
		border: 1px solid rgba(132, 184, 255, 0.13) !important;
		mask-image: linear-gradient(180deg, rgba(0,0,0,0.72), rgba(0,0,0,0.22) 72%, transparent) !important;
		pointer-events: none !important;
		z-index: 0 !important;
	}

	html body.is-premium-portfolio .site-main.portfolio-premium .pvx-hero-layout > * {
		position: relative !important;
		z-index: 1 !important;
	}

	html body.is-premium-portfolio .site-main.portfolio-premium .pvx-premium-hero__copy {
		min-height: clamp(39rem, 56vw, 48rem) !important;
		height: auto !important;
		align-content: center !important;
		padding-block: clamp(3rem, 5vw, 5rem) !important;
	}

	html body.is-premium-portfolio .site-main.portfolio-premium .pvx-premium-hero-card {
		align-self: center !important;
		margin-top: 0 !important;
		transform: translateY(0.75rem) !important;
		box-shadow: 0 1.6rem 4rem rgba(0, 0, 0, 0.22) !important;
	}

	html body.is-premium-portfolio .site-main.portfolio-premium .pvx-proof-lane-stack,
	html body.is-premium-portfolio .site-main.portfolio-premium .pvx-intent-row {
		display: none !important;
	}
}
/* Final PVR route mobile lock: prevent compressed two-column shells on contact/case pages. */
@media (max-width: 900px) {
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-premium-hero {
    display: block !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: min(calc(100% - 1.5rem), 46rem) !important;
    margin-inline: auto !important;
    padding: clamp(1rem, 4vw, 1.5rem) 0 !important;
  }

  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-premium-hero > .pvr-shell,
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-premium-shell,
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-hero-grid,
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-case-hero-grid,
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-copy,
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-hero-copy,
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-side-grid,
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-premium-side,
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-mini-proof-stack,
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-claim-panel,
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-contact-rhythm,
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-surface-card {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-hero-metrics,
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-quality-ribbon,
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-proof-chip-row,
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-cta-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
  }

  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-button {
    width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
    text-align: center !important;
  }

  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-proof-chip-row > *,
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-quality-ribbon > *,
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-hero-metrics > *,
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-proof-chip-row span {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
  }
}

@media (max-width: 480px) {
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-copy h1,
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-hero-copy h1 {
    font-size: clamp(2.25rem, 11vw, 3.25rem) !important;
    line-height: 0.96 !important;
    letter-spacing: -0.065em !important;
  }

  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-case-map-grid,
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-lane-grid,
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-atlas-mini-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-case-map-grid > *,
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-lane-grid > *,
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-atlas-mini-grid > * {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
  }
}

/* Desktop contact lock: grouped route chips must not clip inside the hero ribbon. */
@media (min-width: 901px) {
  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-quality-ribbon {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch !important;
  }

  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-quality-ribbon > p {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(8.75rem, 1fr)) !important;
    gap: 0.62rem !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
  }

  html body.is-premium-portfolio .site-main.portfolio-premium .pvr-quality-ribbon > p > * {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    justify-content: center !important;
    text-align: center !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
  }
}

/* Phone header lock: keep the brand readable at 320px without forcing truncation. */
@media (max-width: 340px) {
  html body.is-premium-portfolio .site-header__inner {
    gap: 0.45rem !important;
  }

  html body.is-premium-portfolio .brand,
  html body.is-premium-portfolio .site-brand {
    gap: 0.42rem !important;
    max-width: calc(100vw - 4.6rem) !important;
    min-width: 0 !important;
  }

  html body.is-premium-portfolio .brand-title-wrap,
  html body.is-premium-portfolio .site-brand__title {
    max-width: none !important;
    min-width: 0 !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    font-size: 0.68rem !important;
    letter-spacing: 0.02em !important;
    line-height: 1.08 !important;
  }

  html body.is-premium-portfolio .brand-title {
    max-width: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
    font-size: 0.62rem !important;
    letter-spacing: 0.015em !important;
    line-height: 1.05 !important;
  }

  html body.is-premium-portfolio .brand-mark {
    width: 1.55rem !important;
    height: 1.55rem !important;
    flex: 0 0 1.55rem !important;
  }

  html body.is-premium-portfolio .brand-sub,
  html body.is-premium-portfolio .site-brand__subtitle {
    display: none !important;
  }

  html body.is-premium-portfolio .nav-toggle {
    width: 2.05rem !important;
    height: 2.05rem !important;
    flex: 0 0 2.05rem !important;
  }
}

/* 2026-07-03 premium-hardening: explicit primary CTA visibility + legibility lock. */
body.is-premium-portfolio .pvr-button.pvr-button--primary,
body.is-premium-portfolio .pvx-button.pvx-button--primary,
body.is-premium-portfolio .button.button--primary,
body.is-premium-portfolio .pvr-button[href*="/contact/"],
body.is-premium-portfolio .pvx-button[href*="/contact/"],
body.is-premium-portfolio a.pvr-button[href="/contact/"],
body.is-premium-portfolio a.pvx-button[href="/contact/"] {
	color: #f7fbff !important;
	-webkit-text-fill-color: #f7fbff !important;
	background-image: linear-gradient(135deg, #0c3fce 0%, #173f9f 46%, #21498f 100%) !important;
	background-color: #173f9f !important;
	border: 2px solid rgba(247, 251, 255, 0.9) !important;
	min-height: clamp(44px, 3rem, 52px) !important;
	min-width: min(100%, 13.25rem) !important;
	padding: 0.82rem 1.35rem !important;
	border-radius: 999px !important;
	font-size: clamp(1rem, 1rem + .1vw, 1.12rem) !important;
	font-weight: 800 !important;
	text-shadow: 0 1px 1px rgba(0, 0, 0, 0.22) !important;
	box-shadow: 0 14px 30px rgba(11, 56, 173, 0.28) !important;
	text-decoration: none !important;
	line-height: 1.1 !important;
	gap: 0.45rem !important;
}

body.is-premium-portfolio .pvr-button.pvr-button--primary > *,
body.is-premium-portfolio .pvx-button.pvx-button--primary > *,
body.is-premium-portfolio .button.button--primary > * {
	color: inherit !important;
}

body.is-premium-portfolio .pvr-button.pvr-button--primary:hover,
body.is-premium-portfolio .pvx-button.pvx-button--primary:hover,
body.is-premium-portfolio .button.button--primary:hover {
	background-image: linear-gradient(135deg, #0f4df7 0%, #1339a5 45%, #2b57b5 100%) !important;
	border-color: #f7fbff !important;
	box-shadow: 0 17px 34px rgba(11, 56, 173, 0.33) !important;
}

body.is-premium-portfolio .pvr-button.pvr-button--primary:active,
body.is-premium-portfolio .pvx-button.pvx-button--primary:active,
body.is-premium-portfolio .button.button--primary:active {
	transform: translateY(1px);
}

body.is-premium-portfolio .pvr-button.pvr-button--primary:focus-visible,
body.is-premium-portfolio .pvx-button.pvx-button--primary:focus-visible,
body.is-premium-portfolio .button.button--primary:focus-visible {
	outline: 2px solid #9ac3ff !important;
	outline-offset: 2px !important;
	box-shadow: 0 0 0 4px rgba(154, 195, 255, 0.3) !important;
}

@media (max-width: 390px) {
	body.is-premium-portfolio .pvr-button.pvr-button--primary,
	body.is-premium-portfolio .pvx-button.pvx-button--primary,
	body.is-premium-portfolio .button.button--primary {
		width: min(100%, 100%) !important;
		min-width: 11.2rem !important;
	}
}

/* Safety net for contact CTAs in chip-like rows that may lose explicit button classes. */
body.is-premium-portfolio .pvr-proof-chip-row a[href*="/contact/"],
body.is-premium-portfolio .pvx-proof-chip-row a[href*="/contact/"],
body.is-premium-portfolio .footer-chip-row a[href*="/contact/"],
body.is-premium-portfolio .footer-link-stack a[href*="/contact/"] {
	color: #f7fbff !important;
	background-image: linear-gradient(135deg, #0c3fce 0%, #173f9f 46%, #21498f 100%) !important;
	background-color: #173f9f !important;
	border: 2px solid rgba(247, 251, 255, 0.9) !important;
	border-radius: 999px !important;
	min-height: clamp(44px, 3rem, 52px) !important;
	min-width: min(100%, 13.25rem) !important;
	padding: 0.82rem 1.35rem !important;
	font-size: 1rem !important;
	font-weight: 800 !important;
	line-height: 1.1 !important;
	text-decoration: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

body.is-premium-portfolio .pvr-proof-chip-row a[href*="/contact/"]:hover,
body.is-premium-portfolio .pvx-proof-chip-row a[href*="/contact/"]:hover,
body.is-premium-portfolio .footer-chip-row a[href*="/contact/"]:hover,
body.is-premium-portfolio .footer-link-stack a[href*="/contact/"]:hover {
	background-image: linear-gradient(135deg, #0f4df7 0%, #1339a5 45%, #2b57b5 100%) !important;
	border-color: #f7fbff !important;
	box-shadow: 0 17px 34px rgba(11, 56, 173, 0.33) !important;
}

/* 2026-07-03 premium cta contract v2.
   Canonical visibility lock for every actionable button variant.
*/
:root {
  --premium-cta-primary-bg: linear-gradient(135deg, #0c3fce 0%, #173f9f 46%, #21498f 100%);
  --premium-cta-primary-bg-hover: linear-gradient(135deg, #0f4df7 0%, #1339a5 45%, #2b57b5 100%);
  --premium-cta-primary-bg-pressed: linear-gradient(135deg, #0b38b4 0%, #143c8d 45%, #1e4385 100%);
  --premium-cta-primary-text: #f7fbff;
  --premium-cta-secondary-bg: #f7fbff;
  --premium-cta-secondary-text: #06101f;
  --premium-cta-ghost-bg: rgba(247, 251, 255, 0.09);
  --premium-cta-ghost-text: #eaf2ff;
  --premium-cta-ghost-border: rgba(234, 242, 255, 0.6);
}

body.is-premium-portfolio :is(.pvr-button, .pvx-button, .button, .button--light, .button--primary, .button--secondary, .button--ghost) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-height: 44px !important;
  min-width: 11.25rem !important;
  box-sizing: border-box !important;
  border-radius: 999px !important;
  text-decoration: none !important;
  text-align: center !important;
  white-space: normal !important;
  line-height: 1.16 !important;
  letter-spacing: 0.01em !important;
  font-weight: 800 !important;
  gap: 0.42rem !important;
  padding-inline: 1.25rem !important;
  padding-block: 0.72rem !important;
  transition:
    transform var(--premium-motion) var(--premium-ease),
    box-shadow var(--premium-motion) var(--premium-ease),
    border-color var(--premium-motion) var(--premium-ease),
    background-color var(--premium-motion) var(--premium-ease),
    background-image var(--premium-motion) var(--premium-ease) !important;
}

body.is-premium-portfolio :is(.pvr-button.pvr-button--primary, .pvx-button.pvx-button--primary, .button--primary, .button.button--primary) {
  color: var(--premium-cta-primary-text) !important;
  -webkit-text-fill-color: var(--premium-cta-primary-text) !important;
  background-image: var(--premium-cta-primary-bg) !important;
  background-color: #173f9f !important;
  border: 2px solid rgba(247, 251, 255, 0.94) !important;
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.22) !important;
  box-shadow: 0 14px 30px rgba(11, 56, 173, 0.28) !important;
}

body.is-premium-portfolio :is(.pvr-button.pvr-button--primary:hover, .pvx-button.pvx-button--primary:hover, .button--primary:hover, .button.button--primary:hover),
body.is-premium-portfolio :is(.pvr-button.pvr-button--primary:focus-visible, .pvx-button.pvx-button--primary:focus-visible, .button--primary:focus-visible, .button.button--primary:focus-visible) {
  background-image: var(--premium-cta-primary-bg-hover) !important;
  border-color: var(--premium-cta-primary-text) !important;
  box-shadow: 0 17px 34px rgba(11, 56, 173, 0.33) !important;
}

body.is-premium-portfolio :is(.pvr-button.pvr-button--primary:active, .pvx-button.pvx-button--primary:active, .button--primary:active, .button.button--primary:active) {
  background-image: var(--premium-cta-primary-bg-pressed) !important;
  transform: translateY(1px) !important;
}

body.is-premium-portfolio :is(.pvr-button[href*="/contact/"], .pvx-button[href*="/contact/"], .button[href*="/contact/"], a.pvr-button[href*="/contact/"], a.pvx-button[href*="/contact/"]) {
  color: var(--premium-cta-primary-text) !important;
  -webkit-text-fill-color: var(--premium-cta-primary-text) !important;
  background-image: var(--premium-cta-primary-bg) !important;
  background-color: #173f9f !important;
  border: 2px solid rgba(247, 251, 255, 0.94) !important;
  box-shadow: 0 14px 30px rgba(11, 56, 173, 0.28) !important;
}

body.is-premium-portfolio :is(.pvr-button.pvr-button--secondary, .pvx-button.pvx-button--secondary, .button--secondary, .button.button--secondary) {
  color: var(--premium-cta-secondary-text) !important;
  -webkit-text-fill-color: var(--premium-cta-secondary-text) !important;
  background: var(--premium-cta-secondary-bg) !important;
  border-color: rgba(6, 16, 31, 0.8) !important;
  text-shadow: none !important;
}

body.is-premium-portfolio :is(.pvr-button.pvr-button--secondary:hover, .pvx-button.pvx-button--secondary:hover, .button--secondary:hover, .button.button--secondary:hover),
body.is-premium-portfolio :is(.pvr-button.pvr-button--secondary:focus-visible, .pvx-button.pvx-button--secondary:focus-visible, .button--secondary:focus-visible, .button.button--secondary:focus-visible) {
  color: #06101f !important;
  background: #eaf2ff !important;
  border-color: rgba(6, 16, 31, 0.95) !important;
  box-shadow: 0 12px 22px rgba(11, 56, 173, 0.2) !important;
}

body.is-premium-portfolio :is(.pvr-button.pvr-button--ghost, .pvx-button.pvx-button--ghost, .button--ghost) {
  color: var(--premium-cta-ghost-text) !important;
  -webkit-text-fill-color: var(--premium-cta-ghost-text) !important;
  background: var(--premium-cta-ghost-bg) !important;
  border: 1px solid var(--premium-cta-ghost-border) !important;
  text-shadow: none !important;
}

body.is-premium-portfolio :is(.pvr-button.pvr-button--ghost:hover, .pvx-button.pvx-button--ghost:hover, .button--ghost:hover),
body.is-premium-portfolio :is(.pvr-button.pvr-button--ghost:focus-visible, .pvx-button.pvx-button--ghost:focus-visible, .button--ghost:focus-visible) {
  background: rgba(247, 251, 255, 0.17) !important;
  border-color: rgba(247, 251, 255, 0.9) !important;
  box-shadow: 0 10px 25px rgba(11, 56, 173, 0.22) !important;
}

body.is-premium-portfolio :is(.pvr-button[aria-disabled="true"], .pvx-button[aria-disabled="true"], .button[aria-disabled="true"], .pvr-button.is-disabled, .pvx-button.is-disabled, .button.is-disabled, .pvx-proof-chip-row a[aria-disabled="true"]) {
  opacity: 0.54 !important;
  cursor: not-allowed !important;
  pointer-events: none !important;
  box-shadow: none !important;
  transform: none !important;
}

body.is-premium-portfolio .pvr-proof-chip-row a[href*="/contact/"],
body.is-premium-portfolio .pvx-proof-chip-row a[href*="/contact/"],
body.is-premium-portfolio .footer-chip-row a[href*="/contact/"],
body.is-premium-portfolio .footer-link-stack a[href*="/contact/"] {
  width: fit-content !important;
  max-width: 100% !important;
  min-width: 11.25rem !important;
}

body.is-premium-portfolio :is(.pvr-button > *, .pvx-button > *, .button > *) {
  color: inherit !important;
  -webkit-text-fill-color: inherit !important;
}

/* 2026-07-03 premium reliability lock v3:
   - guaranteed contrast for ghost-like CTAs,
   - strict touch-target hygiene across nav/chips/buttons,
   - no micro-text under-accessible values.
*/
:root {
  --premium-cta-ghost-bg: linear-gradient(180deg, #f8fbff 0%, #eef5ff 100%) !important;
  --premium-cta-ghost-bg-hover: linear-gradient(180deg, #ffffff 0%, #deeeff 100%) !important;
  --premium-cta-ghost-text: #091f58 !important;
  --premium-cta-ghost-border: rgba(8, 31, 86, 0.76) !important;
}

body.is-premium-portfolio .pvr-button.pvr-button--ghost,
body.is-premium-portfolio .pvx-button.pvx-button--ghost,
body.is-premium-portfolio .button--ghost,
body.is-premium-portfolio .site-nav a.button--ghost,
body.is-premium-portfolio .pvr-proof-chip-row a[href*="/systems-case-study/"],
body.is-premium-portfolio .pvr-proof-chip-row a[href="#project-atlas"],
body.is-premium-portfolio .site-main .pvr-proof-chip-row a.pvr-button--ghost[href="/systems-case-study/"],
body.is-premium-portfolio .site-main .pvr-button.pvr-button--ghost[href="#project-atlas"],
body.is-premium-portfolio .site-main .pvx-button.pvx-button--ghost[href="/systems-case-study/"] {
  color: var(--premium-cta-ghost-text) !important;
  -webkit-text-fill-color: var(--premium-cta-ghost-text) !important;
  background: var(--premium-cta-ghost-bg) !important;
  border: 2px solid var(--premium-cta-ghost-border) !important;
  text-shadow: none !important;
  min-height: max(44px, 2.75rem) !important;
  min-width: min(100%, 11.2rem) !important;
  padding-inline: 1.06rem !important;
  padding-block: 0.72rem !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 999px !important;
  letter-spacing: 0.012em !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  line-height: 1.1 !important;
  transition:
    transform var(--premium-motion) var(--premium-ease),
    box-shadow var(--premium-motion) var(--premium-ease),
    border-color var(--premium-motion) var(--premium-ease),
    background var(--premium-motion) var(--premium-ease) !important;
}

body.is-premium-portfolio .pvr-button.pvr-button--ghost:hover,
body.is-premium-portfolio .pvx-button.pvx-button--ghost:hover,
body.is-premium-portfolio .button--ghost:hover,
body.is-premium-portfolio .site-main .pvr-proof-chip-row a[href*="/systems-case-study/"]:hover,
body.is-premium-portfolio .site-main .pvr-proof-chip-row a[href="#project-atlas"]:hover {
  background: var(--premium-cta-ghost-bg-hover) !important;
  border-color: rgba(8, 31, 86, 0.98) !important;
  box-shadow: 0 12px 24px rgba(8, 31, 86, 0.24) !important;
}

body.is-premium-portfolio .site-main .pvr-proof-chip-row a[href*="/systems-case-study/"]:focus-visible,
body.is-premium-portfolio .site-main .pvr-proof-chip-row a[href="#project-atlas"]:focus-visible,
body.is-premium-portfolio .pvr-button.pvr-button--ghost:focus-visible,
body.is-premium-portfolio .pvx-button.pvx-button--ghost:focus-visible,
body.is-premium-portfolio .button--ghost:focus-visible,
body.is-premium-portfolio .site-nav .button--ghost:focus-visible {
  outline: 2px solid #9ec7ff !important;
  outline-offset: 2px !important;
  box-shadow: 0 0 0 4px rgba(158, 199, 255, 0.28) !important;
}

body.is-premium-portfolio .site-nav,
body.is-premium-portfolio .site-header__actions,
body.is-premium-portfolio .pvr-proof-chip-row,
body.is-premium-portfolio .pvx-proof-lane-stack,
body.is-premium-portfolio .footer-chip-row,
body.is-premium-portfolio .footer-link-stack {
  gap: clamp(0.72rem, 1.8vw, 0.98rem) !important;
  row-gap: clamp(0.78rem, 2vw, 1.02rem) !important;
}

body.is-premium-portfolio .site-nav a,
body.is-premium-portfolio .site-header__actions a,
body.is-premium-portfolio .site-header__actions .button,
body.is-premium-portfolio .pvr-proof-chip-row a,
body.is-premium-portfolio .pvx-proof-lane-stack a,
body.is-premium-portfolio .footer-chip-row a,
body.is-premium-portfolio .footer-link-stack a,
body.is-premium-portfolio .contact-form-submit,
body.is-premium-portfolio .site-main .wp-block-button__link,
body.is-premium-portfolio .site-main .pvr-button,
body.is-premium-portfolio .site-main .pvx-button,
body.is-premium-portfolio .site-main .button {
  min-height: 44px !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body.is-premium-portfolio .site-main .pvr-button,
body.is-premium-portfolio .site-main .pvx-button {
  width: fit-content !important;
  max-width: 100% !important;
  min-width: min(100%, 13.25rem) !important;
}

body.is-premium-portfolio .site-nav a[href="/"],
body.is-premium-portfolio .site-nav a[href="/#systems-lanes"],
body.is-premium-portfolio .site-nav a[href="/#proof-hub"],
body.is-premium-portfolio .site-nav a[href="/#process"],
body.is-premium-portfolio .site-nav a[href="/systems-case-study/"],
body.is-premium-portfolio .site-nav a[href="/contact/"] {
  min-width: 10.25rem !important;
}

body.is-premium-portfolio .pvr-quick-note,
body.is-premium-portfolio .pvr-mini-note,
body.is-premium-portfolio .contact-form-note,
body.is-premium-portfolio .contact-form-char-count,
body.is-premium-portfolio .site-main .pvr-lead,
body.is-premium-portfolio .site-main .pvx-brief-copy,
body.is-premium-portfolio .site-main .pvr-meta-note,
body.is-premium-portfolio .site-main .pvr-caption,
 body.is-premium-portfolio .site-footer .footer-note,
 body.is-premium-portfolio .site-footer .footer-meta {
	font-size: max(1rem, clamp(1.02rem, 1rem + 0.16vw, 1.12rem)) !important;
	line-height: 1.55 !important;
	min-height: 1.25em !important;
}

body.is-premium-portfolio .site-main .pvr-contact-rhythm article p {
	font-size: max(1rem, clamp(1.02rem, 1rem + 0.16vw, 1.12rem)) !important;
	line-height: 1.55 !important;
}

@media (max-width: 1920px) and (min-width: 1366px) {
  body.is-premium-portfolio .site-nav,
  body.is-premium-portfolio .site-main .pvr-proof-chip-row,
  body.is-premium-portfolio .site-main .pvx-proof-lane-stack {
    row-gap: 0.9rem !important;
    column-gap: 1rem !important;
  }
}

@media (max-width: 768px) {
  body.is-premium-portfolio .site-nav,
  body.is-premium-portfolio .site-header__actions,
  body.is-premium-portfolio .pvr-proof-chip-row,
  body.is-premium-portfolio .pvx-proof-lane-stack,
  body.is-premium-portfolio .footer-chip-row,
  body.is-premium-portfolio .footer-link-stack {
    width: 100% !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
  }

  body.is-premium-portfolio .site-nav a,
  body.is-premium-portfolio .site-nav .button--light,
  body.is-premium-portfolio .site-nav .button--ghost,
  body.is-premium-portfolio .site-header__actions .button,
  body.is-premium-portfolio .site-header__actions .button--ghost,
  body.is-premium-portfolio .site-header__actions .button--light,
  body.is-premium-portfolio .pvr-proof-chip-row a,
  body.is-premium-portfolio .pvx-proof-lane-stack a,
  body.is-premium-portfolio .footer-chip-row a,
  body.is-premium-portfolio .footer-link-stack a {
    width: 100% !important;
    max-width: 100% !important;
    min-width: min(100%, 12.4rem) !important;
  }
}

@media (max-width: 390px) {
  body.is-premium-portfolio .site-nav,
  body.is-premium-portfolio .site-header__actions {
    column-gap: 0.54rem !important;
    row-gap: 0.78rem !important;
  }

  body.is-premium-portfolio .site-nav a,
  body.is-premium-portfolio .site-nav .button--light,
  body.is-premium-portfolio .site-nav .button--ghost,
  body.is-premium-portfolio .site-header__actions .button,
  body.is-premium-portfolio .site-main .pvr-proof-chip-row a,
  body.is-premium-portfolio .site-main .pvx-proof-lane-stack a,
  body.is-premium-portfolio .footer-chip-row a,
  body.is-premium-portfolio .footer-link-stack a {
    min-width: 100% !important;
    width: 100% !important;
    min-height: 46px !important;
    padding-inline: 0.72rem !important;
    font-size: 1rem !important;
  }

  body.is-premium-portfolio .pvr-quick-note,
  body.is-premium-portfolio .pvr-mini-note,
  body.is-premium-portfolio .contact-form-note,
  body.is-premium-portfolio .contact-form-char-count {
    font-size: 0.98rem !important;
    line-height: 1.55 !important;
  }
}

@media (max-width: 320px) {
  body.is-premium-portfolio .site-header__inner {
    gap: 0.52rem !important;
  }

  body.is-premium-portfolio .site-nav a,
  body.is-premium-portfolio .site-nav .button--light,
  body.is-premium-portfolio .site-nav .button--ghost,
  body.is-premium-portfolio .site-header__actions .button,
  body.is-premium-portfolio .site-header__actions .button--ghost,
  body.is-premium-portfolio .site-header__actions .button--light,
  body.is-premium-portfolio .pvr-proof-chip-row a,
  body.is-premium-portfolio .pvx-proof-lane-stack a,
  body.is-premium-portfolio .footer-chip-row a,
  body.is-premium-portfolio .footer-link-stack a {
    min-height: 44px !important;
    padding-inline: 0.6rem !important;
  }
}

@media (min-width: 1024px) {
  body.is-premium-portfolio .site-header .site-nav {
    gap: clamp(0.9rem, 1.6vw, 1.35rem) !important;
    row-gap: 0.75rem !important;
    column-gap: clamp(0.9rem, 1.6vw, 1.35rem) !important;
  }

  body.is-premium-portfolio .site-header .site-nav a,
  body.is-premium-portfolio .site-header .site-nav .button--ghost,
  body.is-premium-portfolio .site-header .site-nav .button--light,
  body.is-premium-portfolio .site-header .site-nav .site-nav-cta a,
  body.is-premium-portfolio .site-header .site-nav a[href="/"],
  body.is-premium-portfolio .site-header .site-nav a[href="/#systems-lanes"],
  body.is-premium-portfolio .site-header .site-nav a[href="/#proof-hub"],
  body.is-premium-portfolio .site-header .site-nav a[href="/#process"],
  body.is-premium-portfolio .site-header .site-nav a[href="/systems-case-study/"],
  body.is-premium-portfolio .site-header .site-nav a[href="/contact/"] {
    height: 42px !important;
    min-height: 42px !important;
    padding-inline: 0.72rem !important;
    padding-block: 0.58rem !important;
    line-height: 1.2 !important;
    border-radius: 0.78rem !important;
    margin: 0 !important;
  }

  body.is-premium-portfolio .pvr-button--primary,
  body.is-premium-portfolio .pvx-button--primary,
  body.is-premium-portfolio .button--primary {
    min-width: min(100%, 13.5rem) !important;
    width: fit-content !important;
  }
}

/* =============================================
   Premium CTA hard-lock (final override)
   ============================================= */
body.is-premium-portfolio .pvr-button.pvr-button--primary,
body.is-premium-portfolio .pvr-button.button--primary,
body.is-premium-portfolio .pvx-button.pvx-button--primary,
body.is-premium-portfolio .pvx-button.button--primary,
body.is-premium-portfolio .button.button--primary,
body.is-premium-portfolio .button--primary,
body.is-premium-portfolio a.pvr-button[href*="/contact"],
body.is-premium-portfolio a.pvx-button[href*="/contact"],
body.is-premium-portfolio a.button[href*="/contact"],
body.is-premium-portfolio .pvr-cta,
body.is-premium-portfolio .pvx-cta,
body.is-premium-portfolio .contact-form .button--primary,
body.is-premium-portfolio .contact-form-grid .button--primary,
body.is-premium-portfolio .contact-form-grid input.button--primary {
  color: #f7fbff !important;
  -webkit-text-fill-color: #f7fbff !important;
  background-color: #0d2c5a !important;
  background-image: linear-gradient(140deg, #102b52 0%, #4e84df 42%, #3e79cb 100%) !important;
  background-clip: padding-box !important;
  border: 1.5px solid rgba(247, 251, 255, 0.84) !important;
  text-decoration: none !important;
  box-shadow: 0 16px 34px rgba(7, 20, 33, 0.26), inset 0 1px 0 rgba(255, 255, 255, 0.18) !important;
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.18) !important;
  min-height: var(--premium-lock-touch, 44px) !important;
  line-height: 1.2 !important;
}

body.is-premium-portfolio .pvr-button.pvr-button--primary *,
body.is-premium-portfolio .pvr-button.button--primary *,
body.is-premium-portfolio .pvx-button.pvx-button--primary *,
body.is-premium-portfolio .pvx-button.button--primary *,
body.is-premium-portfolio .button.button--primary *,
body.is-premium-portfolio .button--primary * {
  color: #f7fbff !important;
  -webkit-text-fill-color: #f7fbff !important;
}

body.is-premium-portfolio .pvr-button.pvr-button--primary:focus-visible,
body.is-premium-portfolio .pvx-button.pvx-button--primary:focus-visible,
body.is-premium-portfolio .button.button--primary:focus-visible,
body.is-premium-portfolio .button--primary:focus-visible {
  outline: 3px solid #9dbeff !important;
  outline-offset: 3px !important;
}

body.is-premium-portfolio .pvr-button.pvr-button--primary:hover,
body.is-premium-portfolio .pvx-button.pvx-button--primary:hover,
body.is-premium-portfolio .button.button--primary:hover,
body.is-premium-portfolio .button--primary:hover {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background-color: #0f2f58 !important;
  background-image: linear-gradient(140deg, #0f2f58 0%, #3e7ef0 44%, #2c6bcc 100%) !important;
}

body.is-premium-portfolio .pvr-button.pvr-button--primary:active,
body.is-premium-portfolio .pvx-button.pvx-button--primary:active,
body.is-premium-portfolio .button.button--primary:active,
body.is-premium-portfolio .button--primary:active {
  background-color: #0c2c56 !important;
  background-image: linear-gradient(140deg, #0d294f 0%, #2d66cb 44%, #2558a9 100%) !important;
}

@media (max-width: 900px) {
  body.is-premium-portfolio .pvr-button.pvr-button--primary,
  body.is-premium-portfolio .pvx-button.pvx-button--primary,
  body.is-premium-portfolio .button.button--primary,
  body.is-premium-portfolio .button--primary {
    width: min(100%, 100%) !important;
    justify-self: stretch !important;
  }

body.is-premium-portfolio .pvr-button.pvr-button--primary[href*="/contact"],
body.is-premium-portfolio .pvx-button.pvx-button--primary[href*="/contact"],
body.is-premium-portfolio .button.button--primary[href*="/contact"],
body.is-premium-portfolio .button--primary[href*="/contact"] {
  text-align: center !important;
  white-space: normal !important;
  }
}

/* =============================================
   Premium production hardening (accessibility + nav CTA recovery)
   Keeps target buttons visible, touchable and high contrast across all
   viewport presets used in final approval.
   ============================================= */
body.is-premium-portfolio .site-header .site-nav,
body.is-premium-portfolio .site-header__actions,
body.is-premium-portfolio .site-nav a[href="/contact/"],
body.is-premium-portfolio .site-nav a[href*="/contact/"],
body.is-premium-portfolio .site-header .site-nav .site-nav-cta,
body.is-premium-portfolio .site-header .site-nav .site-nav-cta a,
body.is-premium-portfolio .site-header .site-header__actions a,
body.is-premium-portfolio .site-header .site-header__actions .button {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  min-height: 44px !important;
  height: auto !important;
}

body.is-premium-portfolio .site-header .site-nav .site-nav-cta,
body.is-premium-portfolio .site-header .site-header__actions {
  width: auto !important;
  min-width: max-content !important;
  max-width: none !important;
}

body.is-premium-portfolio .site-header .site-nav .site-nav-cta,
body.is-premium-portfolio .site-header .site-nav .site-nav-cta a {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

body.is-premium-portfolio .site-nav a[href="/contact/"],
body.is-premium-portfolio .site-nav a[href*="/contact/"],
body.is-premium-portfolio .site-header .site-header__actions a[href="/contact/"],
body.is-premium-portfolio .site-header .site-header__actions a[href*="/contact/"] {
  width: auto !important;
  min-width: 10.5rem !important;
  min-height: 42px !important;
  padding-inline: 0.82rem !important;
  padding-block: 0.58rem !important;
  margin: 0 !important;
  border-radius: 0.78rem !important;
  box-sizing: border-box !important;
  align-items: center !important;
  justify-content: center !important;
}

body.is-premium-portfolio .pvr-button.pvr-button--primary[href*="/contact/#contact-form"],
body.is-premium-portfolio .pvx-button.pvx-button--primary[href*="/contact/#contact-form"],
body.is-premium-portfolio .button.button--primary[href*="/contact/#contact-form"],
body.is-premium-portfolio .button--primary[href*="/contact/#contact-form"],
body.is-premium-portfolio a[href*="/contact/#contact-form"] {
  background-image: linear-gradient(140deg, #0f2f58 0%, #3e7ef0 44%, #2c6bcc 100%) !important;
  background-color: transparent !important;
  color: #f7fbff !important;
  -webkit-text-fill-color: #f7fbff !important;
  border-color: rgba(247, 251, 255, 0.84) !important;
}

body.is-premium-portfolio .pvr-button.pvr-button--primary[href*="/contact/#contact-form"] *,
body.is-premium-portfolio .pvx-button.pvx-button--primary[href*="/contact/#contact-form"] *,
body.is-premium-portfolio .button.button--primary[href*="/contact/#contact-form"] *,
body.is-premium-portfolio .button--primary[href*="/contact/#contact-form"] *,
body.is-premium-portfolio a[href*="/contact/#contact-form"] * {
  color: #f7fbff !important;
  -webkit-text-fill-color: #f7fbff !important;
  text-shadow: none !important;
}

/* ===========================================================
   Premium final CTA recovery (source-of-truth override)
   Prevents any earlier hard-lock rule from hiding contact CTAs.
   =========================================================== */
body.is-premium-portfolio .site-header,
body.is-premium-portfolio #site-header {
  overflow: visible !important;
}

body.is-premium-portfolio .site-header .site-header__actions,
body.is-premium-portfolio .site-header .site-nav .site-nav-cta,
body.is-premium-portfolio .site-header .site-nav .site-nav-cta a,
body.is-premium-portfolio .site-header .site-header__actions a,
body.is-premium-portfolio .site-header .site-header__actions .button,
body.is-premium-portfolio .site-header .site-nav a[href*="/contact/"],
body.is-premium-portfolio .site-header .pvr-button--primary,
body.is-premium-portfolio .site-header .pvx-button--primary,
body.is-premium-portfolio .site-header .button--primary {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  min-height: 44px !important;
  align-items: center !important;
  justify-content: center !important;
}

@media (min-width: 901px) {
  body.is-premium-portfolio .site-header .site-header__actions {
    display: inline-flex !important;
    width: auto !important;
    min-width: max-content !important;
    max-width: none !important;
    gap: 0.62rem !important;
    align-items: center !important;
    justify-content: flex-end !important;
  }

  body.is-premium-portfolio .site-header .site-nav .site-nav-cta,
  body.is-premium-portfolio .site-header .site-nav .site-nav-cta a {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }
}

@media (max-width: 900px) {
  body.is-premium-portfolio .site-header .site-header__actions {
    display: none !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }

  body.is-premium-portfolio .site-header .site-nav .site-nav-cta {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    justify-content: stretch !important;
  }

  body.is-premium-portfolio .site-header .site-nav .site-nav-cta a,
  body.is-premium-portfolio .site-header .site-nav .site-nav-cta .button,
  body.is-premium-portfolio .site-header .site-nav .site-nav-cta .button--primary {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    min-height: 46px !important;
    padding-inline: 0.72rem !important;
    padding-block: 0.66rem !important;
  }
}

body.is-premium-portfolio .site-header .pvr-button.pvr-button--primary[href*="/contact"],
body.is-premium-portfolio .site-header .pvx-button.pvx-button--primary[href*="/contact"],
body.is-premium-portfolio .site-header .button.button--primary[href*="/contact"],
body.is-premium-portfolio .site-header .button--primary[href*="/contact"],
body.is-premium-portfolio .site-header a[href*="/contact/#contact-form"],
body.is-premium-portfolio .site-header a[href="/contact/"] {
  color: #fefefe !important;
  -webkit-text-fill-color: #fefefe !important;
  background-color: #0f2f58 !important;
  background-image: linear-gradient(140deg, #0f2f58 0%, #3e7ef0 44%, #2c6bcc 100%) !important;
  border-color: rgba(247, 251, 255, 0.95) !important;
  text-shadow: none !important;
  text-decoration: none !important;
}

body.is-premium-portfolio .site-header .pvr-button.pvr-button--primary[href*="/contact"] *,
body.is-premium-portfolio .site-header .pvx-button.pvx-button--primary[href*="/contact"] *,
body.is-premium-portfolio .site-header .button.button--primary[href*="/contact"] *,
body.is-premium-portfolio .site-header .button--primary[href*="/contact"] *,
body.is-premium-portfolio .site-header a[href*="/contact/#contact-form"] *,
body.is-premium-portfolio .site-header a[href="/contact/"] * {
  color: #fefefe !important;
  -webkit-text-fill-color: #fefefe !important;
}

body.is-premium-portfolio .site-header .pvr-button.pvr-button--primary[href*="/contact"]:hover,
body.is-premium-portfolio .site-header .pvx-button.pvx-button--primary[href*="/contact"]:hover,
body.is-premium-portfolio .site-header .button.button--primary[href*="/contact"]:hover,
body.is-premium-portfolio .site-header .button--primary[href*="/contact"]:hover,
body.is-premium-portfolio .site-header .pvr-button.pvr-button--primary[href*="/contact"]:focus-visible,
body.is-premium-portfolio .site-header .pvx-button.pvx-button--primary[href*="/contact"]:focus-visible,
body.is-premium-portfolio .site-header .button.button--primary[href*="/contact"]:focus-visible,
body.is-premium-portfolio .site-header .button--primary[href*="/contact"]:focus-visible {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background-color: #0d2c5a !important;
  background-image: linear-gradient(140deg, #0d2c5a 0%, #4f87e6 44%, #3a75c9 100%) !important;
}

/* =========================================================
   Premium CTA final hard-stop layer
   ========================================================= */
body.is-premium-portfolio .site-header :is(
  a[href="/contact/"],
  a[href*="/contact/"],
  .site-header__actions a[href="/contact/"],
  .site-header__actions a[href*="/contact/"],
  .site-nav a[href="/contact/"],
  .site-nav a[href*="/contact/"],
  .site-nav .site-nav-cta a,
  .pvr-button.pvr-button--primary[href*="/contact"],
  .pvx-button.pvx-button--primary[href*="/contact"],
  .button.button--primary[href*="/contact"],
  .button--primary[href*="/contact"]
) {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  min-height: 44px !important;
  min-width: min(100%, 11.5rem) !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  width: auto !important;
  height: auto !important;
  color: #fcfdff !important;
  -webkit-text-fill-color: #fcfdff !important;
  border-color: #e7eeff !important;
  border-style: solid !important;
  border-width: 2px !important;
  background-color: #1540ab !important;
  background-image: linear-gradient(132deg, #0b4af6 0%, #1540ab 56%, #2052c8 100%) !important;
  box-shadow: 0 14px 34px rgba(12, 74, 205, 0.3) !important;
  text-decoration: none !important;
  text-shadow: none !important;
}

body.is-premium-portfolio .site-header :is(
  a[href="/contact/"] *,
  a[href*="/contact/"] *,
  .site-header__actions a[href="/contact/"] *,
  .site-header__actions a[href*="/contact/"] *,
  .site-nav a[href="/contact/"] *,
  .site-nav a[href*="/contact/"] *,
  .site-nav .site-nav-cta a *,
  .pvr-button.pvr-button--primary[href*="/contact"] *,
  .pvx-button.pvx-button--primary[href*="/contact"] *,
  .button.button--primary[href*="/contact"] *,
  .button--primary[href*="/contact"] *
) {
  color: #fcfdff !important;
  -webkit-text-fill-color: #fcfdff !important;
}

body.is-premium-portfolio .site-header :is(
  a[href="/contact/"]:hover,
  a[href*="/contact/"]:hover,
  .site-header__actions a[href="/contact/"]:hover,
  .site-header__actions a[href*="/contact/"]:hover,
  .site-nav a[href="/contact/"]:hover,
  .site-nav a[href*="/contact/"]:hover,
  .pvr-button.pvr-button--primary[href*="/contact"]:hover,
  .pvx-button.pvx-button--primary[href*="/contact"]:hover,
  .button.button--primary[href*="/contact"]:hover,
  .button--primary[href*="/contact"]:hover,
  a[href="/contact/"]:focus-visible,
  a[href*="/contact/"]:focus-visible,
  .site-header__actions a[href="/contact/"]:focus-visible,
  .site-header__actions a[href*="/contact/"]:focus-visible,
  .site-nav a[href="/contact/"]:focus-visible,
  .site-nav a[href*="/contact/"]:focus-visible,
  .pvr-button.pvr-button--primary[href*="/contact"]:focus-visible,
  .pvx-button.pvx-button--primary[href*="/contact"]:focus-visible,
  .button.button--primary[href*="/contact"]:focus-visible,
  .button--primary[href*="/contact"]:focus-visible,
  a[href="/contact/"]:active,
  a[href*="/contact/"]:active,
  .site-header__actions a[href="/contact/"]:active,
  .site-header__actions a[href*="/contact/"]:active,
  .site-nav a[href="/contact/"]:active,
  .site-nav a[href*="/contact/"]:active,
  .pvr-button.pvr-button--primary[href*="/contact"]:active,
  .pvx-button.pvx-button--primary[href*="/contact"]:active,
  .button.button--primary[href*="/contact"]:active,
  .button--primary[href*="/contact"]:active
) {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background-color: #0d2c5a !important;
  background-image: linear-gradient(140deg, #0d2c5a 0%, #4f87e6 44%, #3a75c9 100%) !important;
}

body.is-premium-portfolio .site-header .site-nav a[href*="/contact/"] {
  pointer-events: auto !important;
}

body.is-premium-portfolio .site-header .site-nav .site-nav-cta a[href*="/contact/"] {
  width: auto !important;
  min-width: 10.5rem !important;
  min-height: 44px !important;
  padding-inline: 0.8rem !important;
  padding-block: 0.6rem !important;
  border-radius: 0.78rem !important;
  box-sizing: border-box !important;
}
