/* PMI-techria inner pages v3.0 — warm dark-orange system, matches homepage v2.4.
   Legacy variable names (--pmi-green-*) are kept so pmi-woo.css needs no edits;
   values are now the warm palette. */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(fonts/inter-latin.woff2) format('woff2');
}
@font-face {
  font-family: 'Antique Legacy';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(fonts/antique-legacy-light.woff2) format('woff2');
}
@font-face {
  font-family: 'Antique Legacy';
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url(fonts/antique-legacy-thin.woff2) format('woff2');
}

:root {
  --pmi-green-1: #ffe7d1;  /* light orange tint — light text on dark surfaces */
  --pmi-green-2: #ff7800;  /* brand accent */
  --pmi-green-3: #ff8c1a;  /* bright accent */
  --pmi-green-5: #2b1f14;  /* warm near-black body text */
  --pmi-green-6: #241a10;  /* dark surface, level 2 */
  --pmi-green-7: #1c130c;  /* dark surface (nav block, table head, active states) */
  --pmi-green-8: #120d09;  /* darkest — hero / footer / CTA base */
  --pmi-white-2: #faf6f0;  /* warm paper */
  --pmi-white-3: #ece3d6;  /* warm border */
  --pmi-white-4: #b3a48f;  /* warm muted */
  --pmi-blue: #ff7800;
  --pmi-font-body: 'Inter', -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  --pmi-font-display: 'Antique Legacy', Georgia, 'Times New Roman', serif;
  --pmi-font-mono: ui-monospace, 'SFMono-Regular', 'Cascadia Mono', Consolas, 'Liberation Mono', Menlo, monospace;
}

body.pmi-page {
  margin: 0;
  background: var(--pmi-white-2);
  color: var(--pmi-green-5);
  font-family: var(--pmi-font-body);
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
body.pmi-page *, body.pmi-page *::before, body.pmi-page *::after { box-sizing: border-box; }
body.pmi-page img { max-width: 100%; height: auto; }
body.pmi-page a { color: inherit; }
body.pmi-page ::selection { background: #ff7800; color: #fff; }

/* ---------- header ---------- */
.pmi-nav {
  position: sticky; top: 0; z-index: 100;
  display: flex; align-items: center; gap: 24px;
  padding: 10px 24px;
  background: rgba(250,246,240,.92);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--pmi-white-3);
}
.pmi-nav-logo {
  display: flex; align-items: center; gap: 8px;
  background: var(--pmi-green-7);
  border-radius: 6px; padding: 8px 14px;
  text-decoration: none; flex-shrink: 0;
}
.pmi-nav-logo img { display: block; object-fit: contain; }
.pmi-nav-logo .sym { height: 28px; width: auto; }
.pmi-nav-logo .txt { height: 22px; width: auto; }
.pmi-nav-links { display: flex; align-items: center; gap: 4px; flex: 1; }
.pmi-nav-links a {
  text-decoration: none; font-size: 14px; font-weight: 500;
  padding: 10px 16px; border-radius: 6px;
  transition: color .25s ease;
}
.pmi-nav-links a:hover, .pmi-nav-links a.active { color: var(--pmi-green-2); }
.pmi-nav-cart { position: relative; }
.pmi-nav-cart .cart-count, .pmi-nav .cart-count {
  display: inline-block; min-width: 18px; text-align: center;
  background: var(--pmi-green-2); color: #fff;
  border-radius: 999px; font-size: 11px; font-weight: 700; padding: 1px 5px;
}
.pmi-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  background: var(--brand-orange, #FF7800); color: #fff;
  font-weight: 600; font-size: 14px; text-decoration: none;
  padding: 12px 24px; border-radius: 999px; border: none; cursor: pointer;
  transition: transform .2s ease, box-shadow .2s ease;
}
.pmi-btn:hover { transform: translateY(-1px); box-shadow: 0 6px 20px rgba(255,120,0,.35); background: var(--brand-orange-hover, #ff8c1a); }
.pmi-btn--ghost {
  background: transparent; color: var(--pmi-green-5);
  border: 1.5px solid var(--pmi-green-5);
}
.pmi-btn--ghost:hover { box-shadow: none; border-color: var(--pmi-green-2); color: var(--pmi-green-2); }
@media (max-width: 900px) {
  .pmi-nav-links { display: none; }
}

/* ---------- content ---------- */
.pmi-main { min-height: 60vh; }
.pmi-wrap { max-width: 1120px; margin: 0 auto; padding: 0 24px; }

/* Hero: full-bleed dark band with PMI flow-line imagery, one image per page.
   The section carries .pmi-wrap in the page content, so we neutralise the
   max-width and re-centre with max() padding instead. */
.pmi-hero.pmi-wrap {
  max-width: none;
  padding: 112px max(24px, calc((100% - 1120px)/2)) 76px;
  background-color: var(--pmi-green-8);
  background-image:
    linear-gradient(90deg, rgba(18,13,9,.94) 0%, rgba(18,13,9,.78) 45%, rgba(18,13,9,.38) 100%),
    url('/images/pmi-flow-band.webp');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
body.pmi-products .pmi-hero {
  background-image:
    linear-gradient(90deg, rgba(18,13,9,.94) 0%, rgba(18,13,9,.78) 45%, rgba(18,13,9,.38) 100%),
    url('/images/pmi-flow-machinetool.webp');
}
body.pmi-solutions .pmi-hero {
  background-image:
    linear-gradient(90deg, rgba(18,13,9,.94) 0%, rgba(18,13,9,.78) 45%, rgba(18,13,9,.38) 100%),
    url('/images/pmi-flow-robotics.webp');
}
body.pmi-platform .pmi-hero {
  background-image:
    linear-gradient(90deg, rgba(18,13,9,.94) 0%, rgba(18,13,9,.78) 45%, rgba(18,13,9,.38) 100%),
    url('/images/pmi-flow-band.webp');
}
body.pmi-resources .pmi-hero,
body.pmi-faqs .pmi-hero {
  background-image:
    linear-gradient(90deg, rgba(18,13,9,.94) 0%, rgba(18,13,9,.78) 45%, rgba(18,13,9,.38) 100%),
    url('/images/pmi-flow-automotive.webp');
}

.pmi-kicker {
  display: inline-flex; align-items: center; gap: 12px;
  font-family: var(--pmi-font-mono);
  font-size: 12px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase;
  color: var(--pmi-green-2); margin: 0 0 18px;
}
.pmi-kicker::before {
  content: ''; width: 28px; height: 2px; flex-shrink: 0;
  background: var(--pmi-green-2);
}
.pmi-hero .pmi-kicker { color: #ffa04d; }
.pmi-hero .pmi-kicker::before { background: #ffa04d; }
.pmi-h1 {
  font-family: var(--pmi-font-display); font-weight: 300;
  font-size: clamp(40px, 6vw, 68px); line-height: 1.08;
  letter-spacing: -.01em; margin: 0 0 24px; color: var(--pmi-green-8);
}
.pmi-hero .pmi-h1 { color: #faf6f0; max-width: 760px; }
.pmi-lede { font-size: 19px; line-height: 1.65; color: #6b5b47; max-width: 720px; margin: 0; }
.pmi-hero .pmi-lede { color: #c9bba6; max-width: 620px; }

.pmi-section { padding: 56px 0; }
.pmi-section--tint { background: #f4ede1; }
.pmi-h2 {
  font-family: var(--pmi-font-display); font-weight: 300;
  font-size: clamp(30px, 4vw, 44px); line-height: 1.15;
  margin: 0 0 16px; color: var(--pmi-green-8);
}
.pmi-h3 { font-size: 20px; font-weight: 700; margin: 0 0 10px; color: var(--pmi-green-8); }
.pmi-sub { color: #6b5b47; max-width: 680px; margin: 0 0 32px; }

.pmi-grid { display: grid; gap: 24px; }
.pmi-grid--2 { grid-template-columns: repeat(2, 1fr); }
.pmi-grid--3 { grid-template-columns: repeat(3, 1fr); }
.pmi-grid--4 { grid-template-columns: repeat(4, 1fr); }
@media (max-width: 900px) {
  .pmi-grid--3, .pmi-grid--4 { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .pmi-grid--2, .pmi-grid--3, .pmi-grid--4 { grid-template-columns: 1fr; }
}

.pmi-card {
  border: 1px solid var(--pmi-white-3); border-radius: 12px;
  padding: 28px; background: #fff;
  transition: border-color .25s ease, transform .25s ease, box-shadow .25s ease;
}
.pmi-card:hover {
  border-color: var(--pmi-green-2);
  transform: translateY(-3px);
  box-shadow: 0 14px 34px rgba(43,31,20,.10);
}
.pmi-card p { margin: 0 0 8px; color: #6b5b47; font-size: 15px; }
.pmi-card .tag {
  display: inline-block;
  font-family: var(--pmi-font-mono);
  font-size: 11px; font-weight: 600; letter-spacing: .12em;
  text-transform: uppercase; color: var(--pmi-green-2); margin-bottom: 12px;
}
.pmi-card img { border-radius: 8px; margin-bottom: 18px; aspect-ratio: 3/2; object-fit: cover; width: 100%; }
.pmi-card a.more { font-weight: 600; font-size: 14px; color: var(--pmi-green-5); text-decoration: none; }
.pmi-card a.more:hover { color: var(--pmi-green-2); }

.pmi-spec {
  width: 100%; border-collapse: collapse; font-size: 15px;
  border: 1px solid var(--pmi-white-3); border-radius: 12px; overflow: hidden;
  background: #fff;
}
.pmi-spec th, .pmi-spec td { padding: 14px 18px; text-align: left; border-bottom: 1px solid var(--pmi-white-3); }
.pmi-spec th {
  background: var(--pmi-green-7); color: var(--pmi-green-1);
  font-family: var(--pmi-font-mono);
  font-weight: 600; font-size: 12px; letter-spacing: .1em; text-transform: uppercase;
}
.pmi-spec tr:last-child td { border-bottom: none; }
.pmi-spec td:first-child { font-weight: 600; white-space: nowrap; }

.pmi-steps { counter-reset: step; display: grid; gap: 0; }
.pmi-step {
  display: grid; grid-template-columns: 56px 1fr; gap: 20px;
  padding: 24px 0; border-bottom: 1px solid var(--pmi-white-3);
}
.pmi-step:last-child { border-bottom: none; }
.pmi-step::before {
  counter-increment: step; content: counter(step, decimal-leading-zero);
  font-family: var(--pmi-font-display); font-size: 34px; font-weight: 200;
  color: var(--pmi-green-2); line-height: 1;
}
.pmi-step p { margin: 6px 0 0; color: #6b5b47; }

.pmi-details { border-top: 1px solid var(--pmi-white-3); }
.pmi-details details { border-bottom: 1px solid var(--pmi-white-3); }
.pmi-details summary {
  cursor: pointer; list-style: none; padding: 22px 8px;
  font-size: 17px; font-weight: 600; color: var(--pmi-green-8);
  display: flex; justify-content: space-between; align-items: center; gap: 16px;
}
.pmi-details summary::-webkit-details-marker { display: none; }
.pmi-details summary::after {
  content: '+'; font-family: var(--pmi-font-display); font-size: 26px;
  color: var(--pmi-green-2); transition: transform .25s ease; flex-shrink: 0;
}
.pmi-details details[open] summary::after { transform: rotate(45deg); }
.pmi-details details p { padding: 0 8px 22px; margin: 0; color: #6b5b47; max-width: 760px; }

.pmi-cta {
  background-color: var(--pmi-green-8);
  background-image:
    linear-gradient(90deg, rgba(18,13,9,.92) 0%, rgba(18,13,9,.62) 100%),
    url('/images/pmi-flow-band.webp');
  background-size: cover; background-position: center; background-repeat: no-repeat;
  color: #fff;
  border-radius: 16px; padding: 64px 48px; margin: 56px 0;
  display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap;
}
.pmi-cta h2 {
  font-family: var(--pmi-font-display); font-weight: 300;
  font-size: clamp(26px, 3.4vw, 38px); margin: 0; max-width: 560px; line-height: 1.2;
  color: #faf6f0;
}
.pmi-cta p { color: #c9bba6; margin: 12px 0 0; max-width: 520px; }

.pmi-anchor { scroll-margin-top: 96px; }

/* ---------- footer ---------- */
.pmi-footer { background: var(--pmi-green-8); color: var(--pmi-white-4); margin-top: 64px; }
.pmi-footer-in { max-width: 1120px; margin: 0 auto; padding: 64px 24px 40px; }
.pmi-footer-grid { display: flex; flex-wrap: wrap; gap: 48px; justify-content: space-between; }
.pmi-footer h4 {
  font-family: var(--pmi-font-mono);
  font-size: 12px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase;
  color: #ffa04d; margin: 0 0 18px;
}
.pmi-footer ul { list-style: none; margin: 0; padding: 0; }
.pmi-footer li { margin-bottom: 10px; }
.pmi-footer a { color: #d8cdbd; text-decoration: none; font-size: 15px; transition: color .25s ease; }
.pmi-footer a:hover { color: #ffa04d; }
.pmi-footer-bottom {
  border-top: 1px solid var(--pmi-green-6);
  margin-top: 48px; padding-top: 24px;
  display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap;
  font-size: 13px;
}
.pmi-footer-logo { display: flex; align-items: center; gap: 10px; }
.pmi-footer-logo img { height: 28px; width: auto; object-fit: contain; }

/* ---------- legal pages (v3.2) ---------- */
body.pmi-privacy-policy .pmi-hero {
  background-image:
    linear-gradient(90deg, rgba(18,13,9,.94) 0%, rgba(18,13,9,.78) 45%, rgba(18,13,9,.38) 100%),
    url('/images/pmi-flow-automotive.webp');
}
body.pmi-refund-return-policy .pmi-hero {
  background-image:
    linear-gradient(90deg, rgba(18,13,9,.94) 0%, rgba(18,13,9,.78) 45%, rgba(18,13,9,.38) 100%),
    url('/images/pmi-flow-machinetool.webp');
}
body.pmi-contact .pmi-hero {
  background-image:
    linear-gradient(90deg, rgba(18,13,9,.94) 0%, rgba(18,13,9,.78) 45%, rgba(18,13,9,.38) 100%),
    url('/images/pmi-flow-robotics.webp');
}
body.pmi-about .pmi-hero {
  background-image:
    linear-gradient(90deg, rgba(18,13,9,.94) 0%, rgba(18,13,9,.78) 45%, rgba(18,13,9,.38) 100%),
    url('/images/pmi-flow-band.webp');
}
.pmi-legal { max-width: 780px; }
.pmi-legal .effective {
  font-family: var(--pmi-font-mono); font-size: 12px; font-weight: 600;
  letter-spacing: .12em; text-transform: uppercase; color: var(--pmi-green-2);
  margin: 0 0 24px;
}
.pmi-legal h2 {
  font-family: var(--pmi-font-display); font-weight: 300;
  font-size: 28px; line-height: 1.25; color: #241a10; margin: 44px 0 14px;
}
.pmi-legal p, .pmi-legal li { font-size: 16px; line-height: 1.75; color: #4a3d2c; }
.pmi-legal p { margin: 0 0 16px; }
.pmi-legal ul { padding-left: 22px; margin: 0 0 16px; }
.pmi-legal li { margin-bottom: 8px; }
.pmi-legal strong { color: #1c130c; }
.pmi-legal a { color: #ff7800; text-decoration: none; border-bottom: 1px solid rgba(255,120,0,.35); }
.pmi-legal a:hover { border-bottom-color: #ff7800; }

/* contact page cards */
.pmi-contact-grid {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 24px; margin-top: 28px;
}
.pmi-contact-card {
  background: #fff; border: 1px solid #ece3d6; border-radius: 16px; padding: 28px;
  transition: border-color .25s ease, box-shadow .25s ease;
}
.pmi-contact-card:hover { border-color: #ff7800; box-shadow: 0 14px 34px rgba(43,31,20,.10); }
.pmi-contact-card h3 {
  font-family: var(--pmi-font-mono); font-size: 12px; font-weight: 600;
  letter-spacing: .12em; text-transform: uppercase; color: var(--pmi-green-2); margin: 0 0 14px;
}
.pmi-contact-card p { font-size: 15px; line-height: 1.7; color: #4a3d2c; margin: 0 0 12px; }
.pmi-contact-card .pmi-contact-line { margin: 0; }
.pmi-contact-card .pmi-contact-line a {
  font-family: var(--pmi-font-mono); font-size: 13px; font-weight: 600;
  letter-spacing: .06em; color: #2b1f14; text-decoration: none;
}
.pmi-contact-card .pmi-contact-line a:hover { color: #ff7800; }

/* legal link row in minimal footers (404 / blog / single) */
.pmi-footer-legal { display: flex; gap: 22px; flex-wrap: wrap; }
.pmi-footer-legal a {
  font-family: var(--pmi-font-mono); font-size: 11px; font-weight: 600;
  letter-spacing: .12em; text-transform: uppercase; color: #b3a48f; text-decoration: none;
  transition: color .25s ease;
}
.pmi-footer-legal a:hover { color: #ffa04d; }
