/* Shared product presentation. Existing institutional pages do not load this file. */
.product-page {
  --product-accent: #ffbf00;
  --harness-accent: #2d7ff9;
}
.product-page[data-product="pos"] { --product-accent: #e12120; }
.product-page[data-product="signage"] { --product-accent: #02f0cc; }
.product-page[data-product="harness"] { --product-accent: #2d7ff9; }
.product-page [hidden] { display: none !important; }
.product-page main { overflow: clip; }
.product-page .product-eyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 26px;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}
.product-page .product-mark,
.product-page .harness-mark {
  display: inline-block;
  flex: 0 0 5px;
  width: 5px;
  height: 22px;
  border-radius: 3px;
  background: var(--product-accent);
}
.product-page .harness-mark { background: var(--harness-accent); }
.product-page .product-hero {
  position: relative;
  padding: 28px 0 88px;
  background: linear-gradient(145deg, #fff 50%, #f5f8fa);
}
.product-page .breadcrumb { margin-bottom: 48px; }
.product-page .product-hero-layout {
  display: grid;
  grid-template-columns: 1.06fr 1fr;
  gap: 64px;
  align-items: center;
}
.product-page .product-hero-copy h1 {
  font-size: clamp(2.7rem, 4.35vw, 4.15rem);
  line-height: 1.13;
  max-width: 650px;
}
.product-page .product-hero-copy h1 > span { display: inline; }
.product-page .product-lead { max-width: 520px; color: var(--muted); font-size: 1.06rem; }
.product-page .hero-actions { flex-wrap: wrap; gap: 22px; margin-top: 30px; }
.product-page .hero-actions a { min-height: 48px; }
.product-page .product-primary { color: #fff; background: var(--navy); }
.product-page[data-product="church"] .product-primary { color: var(--navy); background: var(--product-accent); }
.product-page .product-primary:hover { color: #fff; background: var(--navy); }
.product-page[data-product="church"] .product-primary:hover { color: #fff; background: var(--navy); }
.product-page .product-explore { display: inline-flex; align-items: center; gap: 16px; font-weight: 700; font-size: 0.94rem; }
.product-page .product-hero-note { margin-top: 24px; font-size: 0.84rem; color: var(--muted); }
.product-page .church-map {
  position: relative;
  margin: 0;
  padding: 30px;
  border-radius: 6px 6px 36px 6px;
  background: var(--navy);
  color: #fff;
  border-top: 4px solid var(--product-accent);
  box-shadow: 0 28px 60px -38px #02244488;
}
.product-page .church-map-top { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 26px; font-size: 0.64rem; letter-spacing: 0.13em; }
.product-page .church-map-index { color: var(--product-accent); font-family: var(--heading); font-size: 1rem; }
.product-page .church-map > p { font-family: var(--heading); font-size: clamp(1.3rem, 2vw, 1.7rem); line-height: 1.45; letter-spacing: -0.025em; }
.product-page .church-map-core {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 14px;
  width: 182px;
  height: 182px;
  margin: 30px auto 36px;
  border: 1px solid #698399;
  border-radius: 50%;
  background: radial-gradient(circle, #113e60, #022444);
}
.product-page .church-map-core::before { position: absolute; inset: -10px; border: 1px dashed #698399; border-radius: 50%; content: ""; }
.product-page .church-map-core::after { position: absolute; top: 100%; left: 50%; height: 36px; width: 1px; background: var(--product-accent); content: ""; }
.product-page .church-map-core svg { width: 70px; height: 56px; color: var(--product-accent); }
.product-page .church-map-core > span { font-weight: 700; font-size: 0.9rem; }
.product-page .church-map-nodes { position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); list-style: none; border-top: 1px solid #698399; padding-top: 20px; gap: 12px; }
.product-page .church-map-nodes li { position: relative; display: flex; flex-direction: column; }
.product-page .church-map-nodes li::before { position: absolute; top: -24px; left: 2px; width: 7px; height: 7px; border-radius: 50%; background: var(--product-accent); content: ""; }
.product-page .church-map-nodes li > span { color: #bed0dd; font-size: 0.66rem; margin-bottom: 8px; }
.product-page .church-map-nodes strong { font-family: var(--heading); font-weight: 500; font-size: 0.94rem; }
.product-page .church-map-nodes small { color: #d0dce6; font-size: 0.76rem; line-height: 1.6; margin-top: 6px; }
.product-page .church-map figcaption { color: #d0dce6; font-size: 0.74rem; line-height: 1.7; border-top: 1px solid #45657d; padding-top: 16px; margin-top: 24px; }
.product-page .product-section-intro { max-width: 650px; }
.product-page .product-section-intro > p:not(.section-label) { color: var(--muted); }
.product-page .product-section-intro h2,
.product-page .product-split h2 { font-size: clamp(1.9rem, 3.2vw, 2.8rem); line-height: 1.23; }
.product-page .product-process { list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 34px; margin-top: 46px; }
.product-page .product-process li { border-top: 1px solid var(--line); padding-top: 22px; }
.product-page .product-step { display: block; color: var(--muted); font-size: 0.68rem; font-weight: 800; letter-spacing: 0.09em; margin-bottom: 18px; }
.product-page .product-process h3 { font-size: 1.15rem; line-height: 1.4; margin-bottom: 12px; }
.product-page .product-process p { color: var(--muted); font-size: 0.98rem; }
.product-page .product-split { display: grid; grid-template-columns: 1fr 1fr; gap: 88px; align-items: start; }
.product-page .church-areas { background: var(--surface); }
.product-page .product-area-list { margin: 0; }
.product-page .product-area-list > div { padding: 24px 0; border-top: 1px solid #cbd7e0; }
.product-page .product-area-list > div:first-child { padding-top: 0; border-top: 0; }
.product-page .product-area-list dt { display: flex; align-items: baseline; gap: 20px; font-family: var(--heading); font-weight: 500; font-size: 1.13rem; line-height: 1.5; }
.product-page .product-area-list dt > span { color: var(--muted); font-family: Manrope, system-ui, sans-serif; font-size: 0.72rem; font-weight: 400; }
.product-page .product-area-list dd { margin: 10px 0 0 36px; color: var(--muted); font-size: 0.96rem; }
.product-page .product-harness-section { background: var(--navy); color: #fff; border-top: 4px solid var(--harness-accent); }
.product-page .product-harness-section p:not(.product-eyebrow) { color: #d0dce6; }
.product-page .product-harness-section .text-link { color: #fff; }
.product-page .product-harness-model { text-align: center; border: 1px solid #698399; padding: 30px 24px; border-radius: 8px; }
.product-page .product-model-label { display: block; color: #d0dce6; font-size: 0.65rem; letter-spacing: 0.08em; }
.product-page .product-harness-model strong { display: block; margin-top: 10px; font-family: var(--heading); font-weight: 500; font-size: 1.4rem; }
.product-page .product-model-bridge { display: block; font-size: 1.8rem; margin: 15px 0; }
.product-page .product-harness-model p { font-size: 0.84rem; margin-top: 25px; }
.product-page .product-harness-pillars { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); list-style: none; margin-top: 54px; gap: 24px; }
.product-page .product-harness-pillars li { border-top: 1px solid #698399; padding-top: 18px; font-size: 0.9rem; }
.product-page .product-deployment { border-bottom: 1px solid var(--line); }
.product-page .product-deployment p:not(.section-label) { color: var(--muted); }
.product-page .product-questions details { border-top: 1px solid var(--line); padding: 23px 0; }
.product-page .product-questions details:last-child { border-bottom: 1px solid var(--line); }
.product-page .product-questions summary { cursor: pointer; font-size: 1rem; font-weight: 700; padding-right: 8px; }
.product-page .product-questions p { color: var(--muted); margin-top: 18px; font-size: 0.95rem; }
.product-page .product-contact { background: var(--surface); }
.product-page .product-contact .product-split > div > p:not(.section-label) { color: var(--muted); }
.product-page .product-email { display: inline-block; margin-top: 12px; font-weight: 700; overflow-wrap: anywhere; }
.product-page .contact-form { padding: 30px; background: #fff; border: 1px solid var(--line); border-radius: 8px; }
.product-page .product-form-interest { display: flex; align-items: center; gap: 10px; font-weight: 700; margin-bottom: 26px; font-size: 0.92rem; }
.product-page .product-form-interest .product-mark { height: 17px; }
.product-page .contact-form input,
.product-page .contact-form textarea { max-width: 100%; }
.product-page .form-row { min-width: 0; }
.product-page .form-row > * { min-width: 0; }
.product-page .product-ecosystem { border-bottom: 1px solid var(--line); background: var(--surface); }
.product-page .product-ecosystem > div { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-block: 14px; }
.product-page .product-ecosystem > div > span { font-size: 0.6rem; letter-spacing: 0.12em; color: var(--muted); }
.product-page .product-ecosystem > div > div { display: flex; gap: 24px; flex-wrap: wrap; }
.product-page .product-ecosystem a { font-size: 0.82rem; text-decoration: none; min-height: 32px; display: inline-flex; align-items: center; border-bottom: 2px solid transparent; }
.product-page .product-ecosystem a:hover { text-decoration: underline; }
.product-page .product-ecosystem a[aria-current] { border-bottom-color: var(--product-accent); font-weight: 800; }
.product-page .nav-cta { font-size: 0.94rem; min-height: 44px; }
.product-page .solution-visual { margin: 0; padding: 30px; background: var(--navy); color: #fff; border-top: 4px solid var(--product-accent); border-radius: 6px 6px 36px 6px; }
.product-page .solution-visual-top { display: flex; justify-content: space-between; gap: 20px; font-size: 0.64rem; letter-spacing: 0.12em; margin-bottom: 28px; }
.product-page .solution-visual > p { font: 500 clamp(1.25rem, 2vw, 1.7rem)/1.45 var(--heading); letter-spacing: -0.025em; }
.product-page .solution-visual figcaption { margin-top: 24px; padding-top: 16px; border-top: 1px solid #698399; color: #d0dce6; font-size: 0.75rem; line-height: 1.7; }
.product-page .visual-flow { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; list-style: none; font-size: 0.84rem; font-weight: 700; margin-top: 24px; }
.product-page .visual-flow li { border-top: 2px solid var(--product-accent); padding-top: 12px; }
.product-page .pos-terminal { max-width: 355px; margin: 32px auto 16px; }
.product-page .pos-terminal-screen { position: relative; padding: 22px; border: 8px solid #dbe4eb; border-radius: 15px; background: #fff; color: var(--navy); box-shadow: 12px 13px 0 #176ca840; }
.product-page .pos-terminal-screen > span { display: block; font-size: 0.63rem; letter-spacing: 0.07em; }
.product-page .pos-terminal-screen svg { color: #e12120; width: 100%; margin-block: 10px; }
.product-page .pos-terminal-screen strong { display: block; font: 500 1.1rem/1.5 var(--heading); }
.product-page .terminal-status { display: flex; flex-wrap: wrap; gap: 8px 16px; border-top: 1px solid var(--line); padding-top: 16px; margin-top: 16px; font-size: 0.65rem; }
.product-page .terminal-stand { width: 100px; height: 32px; background: #dbe4eb; margin: 0 auto; clip-path: polygon(30% 0,70% 0,82% 82%,100% 82%,100% 100%,0 100%,0 82%,18% 82%); }
.product-page[data-product="pos"] .product-primary { background: #e12120; color: #fff; }
.product-page[data-product="pos"] .product-primary:hover { background: var(--navy); }
.product-page[data-product="signage"] .product-primary { background: #02f0cc; color: var(--navy); }
.product-page[data-product="signage"] .product-primary:hover { background: var(--navy); color: #fff; }
.product-page .signage-scene { position: relative; min-height: 245px; margin: 38px 0 28px; display: flex; align-items: center; }
.product-page .signage-display { width: 83%; border: 8px solid #dbe4eb; border-radius: 6px; padding: 20px; color: #02f0cc; background: #093452; }
.product-page .screen-composition > span { font: 600 clamp(1.1rem,2vw,1.65rem)/1.28 var(--heading); }
.product-page .screen-composition svg { display: block; width: 65%; height: 70px; margin-block: 8px; }
.product-page .screen-composition small { font-size: 0.65rem; color: #fff; }
.product-page .signage-totem { position: absolute; width: 29%; min-height: 225px; right: 0; bottom: -12px; border: 6px solid #dbe4eb; border-bottom-width: 24px; border-radius: 5px; background: #02f0cc; color: var(--navy); padding: 18px 12px; box-shadow: 0 12px 25px #0003; }
.product-page .signage-totem > span { font: 600 clamp(0.7rem,1.3vw,1rem)/1.4 var(--heading); }
.product-page .totem-ring { width: 52px; height: 52px; border: 1px solid var(--navy); border-radius: 50%; margin-top: 25px; }
.product-page .harness-hero { background: var(--navy); color: #fff; }
.product-page .harness-hero .breadcrumb,
.product-page .harness-hero .product-lead { color: #d0dce6; }
.product-page .harness-hero .product-primary { color: var(--navy); background: #fff; }
.product-page .harness-hero .product-primary:hover { background: #dbe4eb; }
.product-page .harness-visual { border: 1px solid #698399; border-top: 4px solid #2d7ff9; background: #0a304f; }
.product-page .harness-diagram { margin-top: 32px; text-align: center; }
.product-page .harness-diagram-node { padding: 18px; border: 1px solid #698399; border-radius: 6px; }
.product-page .harness-diagram-node > span { display: block; font-size: 0.61rem; letter-spacing: 0.08em; color: #d0dce6; margin-bottom: 8px; }
.product-page .harness-diagram-node strong { font-family: var(--heading); font-size: 1rem; font-weight: 500; }
.product-page .harness-policy { border-left: 4px solid #2d7ff9; background: #123e60; }
.product-page .diagram-connector { display: block; padding-block: 6px; font-size: 1.5rem; }
.product-page .harness-diagram-result { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; font-size: 0.8rem; }
.product-page .harness-diagram-result > span { padding: 14px 8px; border: 1px solid #698399; border-radius: 5px; }
.product-page .harness-example { background: var(--navy); color: #fff; }
.product-page .harness-example p { color: #d0dce6; }
.product-page .harness-example .section-label { color: #d0dce6; }
.product-page .harness-example .text-link { color: #fff; }
.product-page[data-product="harness"] .section-label::before { background: #2d7ff9; }
.product-page[data-product="pos"] .section-label::before { background: #e12120; }
.product-page[data-product="signage"] .section-label::before { background: #02f0cc; }
.product-page .context-ledger > div { display: grid; grid-template-columns: 35px 1fr; padding-block: 24px; border-top: 1px solid var(--line); }
.product-page .context-ledger > div > span { color: var(--muted); font-size: 0.72rem; }
.product-page .context-ledger h3 { font-size: 1.15rem; }
.product-page .context-ledger p { grid-column: 2; color: var(--muted); font-size: 0.95rem; }
.product-page .environment-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; margin-top: 40px; }
.product-page .environment-list article { padding: 28px 0; border-top: 3px solid #02f0cc; }
.product-page .environment-list article > span { font-size: 0.66rem; letter-spacing: 0.07em; color: var(--muted); }
.product-page .environment-list h3 { margin-top: 25px; font-size: 1.4rem; line-height: 1.4; }
.product-page .environment-list p { color: var(--muted); font-size: 0.95rem; }
.product-page .aegis-section { background: #fff9e9; }
.product-page .aegis-section .product-split { align-items: center; }
.product-page .aegis-illustration { position: relative; max-width: 440px; width: 100%; padding: 28px; text-align: center; border: 1px solid #b5a77d; border-radius: 6px 6px 50px 6px; background: #fff; }
.product-page .aegis-illustration > span { display: block; text-align: left; font-size: 0.7rem; font-weight: 800; letter-spacing: 0.16em; }
.product-page .aegis-illustration svg { width: min(100%,300px); display: block; margin: 20px auto; color: #022444; }
.product-page .aegis-illustration small { display: block; font-size: 0.8rem; color: var(--muted); }
.product-page .aegis-journey { margin-top: 64px; }
.product-page .family-app { margin-top: 60px; padding: 40px; background: var(--navy); color: #fff; border-radius: 6px 6px 36px 6px; align-items: center; }
.product-page .family-app h3,
.product-page .remote-controls h3 { font: 500 clamp(1.5rem,2.4vw,2rem)/1.4 var(--heading); letter-spacing: -0.035em; }
.product-page .family-app .section-label,
.product-page .family-app p { color: #d0dce6; }
.product-page .app-status-example { margin: 0; padding: 24px; background: #fff; color: var(--navy); border-top: 4px solid #ffbf00; border-radius: 5px; }
.product-page .app-status-example figcaption,
.product-page .schedule-board figcaption,
.product-page .example-label { font-size: 0.66rem; letter-spacing: 0.07em; line-height: 1.8; color: var(--muted); }
.product-page .app-status-example .app-status { color: var(--navy); font-weight: 800; margin-block: 18px; }
.product-page .app-status > span { display: inline-grid; place-items: center; width: 26px; height: 26px; background: #ffbf00; border-radius: 50%; margin-right: 7px; }
.product-page .app-status-example dl > div { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; padding-block: 12px; border-top: 1px solid var(--line); font-size: 0.78rem; }
.product-page .app-status-example dt { color: var(--muted); }
.product-page .app-status-example dd { margin: 0; font-weight: 700; }
.product-page .team-color-section { border-bottom: 1px solid var(--line); }
.product-page .team-color-example { padding: 32px; background: #f6f8fa; border-left: 4px solid #ffbf00; }
.product-page .team-color-heading { display: flex; align-items: center; gap: 16px; margin-block: 22px; }
.product-page .team-color-heading h3 { font-size: 1.4rem; margin: 0; }
.product-page .team-color-symbol { width: 24px; height: 24px; border: 6px solid #ffbf00; border-radius: 50%; flex-shrink: 0; }
.product-page .responsibility-fields > div { padding-block: 15px; border-top: 1px solid var(--line); }
.product-page .responsibility-fields dt { color: var(--muted); font-size: 0.75rem; }
.product-page .responsibility-fields dd { margin: 5px 0 0; font-size: 0.92rem; font-weight: 700; }
.product-page .church-scales { background: var(--surface); }
.product-page .schedule-example { padding: 30px; background: #fff; border-top: 4px solid #ffbf00; }
.product-page .schedule-example ol { list-style: none; margin-top: 22px; }
.product-page .schedule-example li { display: flex; align-items: center; gap: 18px; padding-block: 16px; border-bottom: 1px solid var(--line); font-size: 0.9rem; }
.product-page .schedule-example li span { color: var(--muted); font-size: 0.7rem; }
.product-page .schedule-example > p:last-child { color: var(--muted); font-size: 0.73rem; }
.product-page .scale-responsibilities { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 36px; margin-top: 48px; }
.product-page .scale-responsibilities dt { font-size: 1.1rem; }
.product-page .church-scales > .container > .text-link,
.product-page .harness-coordination .text-link { margin-top: 30px; }
.product-page .harness-coordination { border-bottom: 1px solid var(--line); }
.product-page .pos-niches { background: var(--surface); }
.product-page .niche-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; margin-top: 44px; }
.product-page .niche-list article { position: relative; border-top: 3px solid #e12120; padding: 28px 0; }
.product-page .niche-number { position: absolute; right: 0; top: 23px; font: 500 1.7rem/1 var(--heading); color: #b42428; }
.product-page .niche-list .example-label { padding-right: 42px; }
.product-page .niche-list h3 { font-size: 1.55rem; margin-top: 24px; }
.product-page .niche-list p:not(.example-label),
.product-page .product-note { color: var(--muted); font-size: 0.92rem; }
.product-page .niche-list ul { list-style: none; margin-top: 26px; }
.product-page .niche-list li { padding-block: 12px; border-top: 1px solid var(--line); font-size: 0.82rem; font-weight: 700; }
.product-page .signage-operation { background: #eefbf8; }
.product-page .schedule-board { margin: 0; padding: 30px; background: var(--navy); color: #fff; border-top: 4px solid #02f0cc; border-radius: 6px 6px 36px 6px; }
.product-page .schedule-board figcaption { color: #d0dce6; }
.product-page .schedule-mode { display: flex; align-items: center; gap: 22px; padding-block: 28px; }
.product-page .schedule-mode strong { font: 500 3rem/1 var(--heading); color: #02f0cc; }
.product-page .schedule-mode span { font-size: 0.8rem; }
.product-page .schedule-board ol { list-style: none; }
.product-page .schedule-board li { display: grid; grid-template-columns: 65px minmax(0,1fr); gap: 15px; padding-block: 17px; border-top: 1px solid #698399; font-size: 0.81rem; }
.product-page .schedule-board li > span { color: #02f0cc; }
.product-page .schedule-board > p { color: #d0dce6; font-size: 0.75rem; margin-top: 24px; }
.product-page .remote-controls { display: grid; grid-template-columns: 1fr 1.15fr; gap: 64px; margin-top: 65px; padding-top: 40px; border-top: 1px solid #accbc5; }
.product-page .remote-controls .product-area-list dt { font-size: 1.08rem; }
@media (hover: hover) and (pointer: fine) {
  .product-page .product-area-list > div { transition: transform 180ms ease; }
  .product-page .product-area-list > div:hover { transform: translateX(3px); }
}
@media (max-width: 1100px) {
  .product-page .product-hero-layout { gap: 34px; }
  .product-page .product-split { gap: 42px; }
  .product-page .product-hero-copy h1 { font-size: clamp(2.4rem, 4.3vw, 3.4rem); }
  .product-page .church-map { padding: 25px; }
}
@media (max-width: 800px) {
  .product-page .niche-list,
  .product-page .remote-controls { grid-template-columns: minmax(0,1fr); gap: 24px; }
  .product-page .niche-list article { padding-bottom: 8px; }
  .product-page .scale-responsibilities { grid-template-columns: minmax(0,1fr); gap: 0; }
  .product-page .product-ecosystem > div { align-items: flex-start; flex-direction: column; gap: 4px; }
  .product-page .product-ecosystem > div > div { gap: 18px; }
  .product-page .environment-list { grid-template-columns: minmax(0,1fr); gap: 12px; }
  .product-page .solution-visual { max-width: 580px; width: 100%; }
  .product-page .signage-totem > span { font-size: 0.9rem; }
  .product-page .product-hero-layout,
  .product-page .product-split { grid-template-columns: minmax(0, 1fr); gap: 38px; }
  .product-page .product-hero-copy h1 { font-size: clamp(2.7rem, 7vw, 3.8rem); }
  .product-page .product-hero-copy,
  .product-page .product-section-intro { max-width: 650px; }
  .product-page .church-map { max-width: 580px; width: 100%; }
  .product-page .product-process { gap: 24px; }
  .product-page .product-process h3 { font-size: 1.02rem; }
  .product-page .product-harness-model { max-width: 580px; }
  .product-page .product-harness-pillars { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 38px; }
}
@media (max-width: 640px) {
  .product-page .family-app { padding: 28px 18px; margin-top: 38px; }
  .product-page .app-status-example { padding: 20px 16px; }
  .product-page .app-status-example dl > div { grid-template-columns: minmax(0,1fr); gap: 3px; }
  .product-page .team-color-example,
  .product-page .schedule-example,
  .product-page .schedule-board { padding: 24px 20px; }
  .product-page .team-color-heading h3 { font-size: 1.2rem; }
  .product-page .schedule-mode { align-items: flex-start; flex-direction: column; gap: 12px; }
  .product-page .schedule-board li { grid-template-columns: minmax(0,1fr); gap: 5px; }
  .product-page .remote-controls { margin-top: 40px; padding-top: 30px; }
  .product-page .solution-visual { padding: 24px 20px; }
  .product-page .product-ecosystem > div > span { display: none; }
  .product-page .product-ecosystem > div > div { gap: 7px 18px; }
  .product-page .product-ecosystem a { font-size: 0.78rem; }
  .product-page .solution-visual > p { font-size: 1.26rem; }
  .product-page .pos-terminal-screen { padding: 16px; border-width: 6px; }
  .product-page .terminal-status { gap: 8px; }
  .product-page .visual-flow { font-size: 0.76rem; }
  .product-page .signage-scene { display: grid; grid-template-columns: minmax(0,1fr); gap: 18px; min-height: 0; }
  .product-page .signage-display { width: 100%; padding: 17px 12px; border-width: 5px; }
  .product-page .signage-totem { position: relative; right: auto; bottom: auto; justify-self: end; width: 112px; min-height: 190px; padding: 16px 12px; border-width: 4px; border-bottom-width: 20px; }
  .product-page .signage-totem > span { font-size: 0.68rem; }
  .product-page .totem-ring { width: 38px; height: 38px; }
  .product-page .harness-diagram-result { font-size: 0.75rem; gap: 10px; }
  .product-page .product-hero { padding-top: 22px; padding-bottom: 58px; }
  .product-page .breadcrumb { margin-bottom: 30px; }
  .product-page .product-hero-copy h1 { font-size: clamp(2.3rem, 9.6vw, 3.4rem); }
  .product-page .product-eyebrow { font-size: 0.74rem; margin-bottom: 22px; }
  .product-page .product-lead { font-size: 1rem; }
  .product-page .hero-actions { gap: 14px; align-items: flex-start; flex-direction: column; }
  .product-page .church-map { padding: 23px 20px; border-bottom-right-radius: 25px; }
  .product-page .church-map > p { font-size: 1.26rem; }
  .product-page .church-map-core { width: 148px; height: 148px; }
  .product-page .church-map-nodes { grid-template-columns: minmax(0,1fr); gap: 16px; border-top: 0; padding-top: 0; }
  .product-page .church-map-nodes li { display: grid; grid-template-columns: 22px minmax(0,1fr); gap: 0 8px; }
  .product-page .church-map-nodes li::before { display: none; }
  .product-page .church-map-nodes li > span { grid-column: 1; grid-row: 1 / 3; align-self: center; margin: 0; }
  .product-page .church-map-nodes strong,
  .product-page .church-map-nodes small { grid-column: 2; }
  .product-page .church-map-nodes strong { font-size: 0.81rem; }
  .product-page .church-map-nodes small { font-size: 0.72rem; }
  .product-page .product-process { grid-template-columns: minmax(0, 1fr); margin-top: 28px; gap: 28px; }
  .product-page .product-process h3 { font-size: 1.12rem; }
  .product-page .product-step { margin-bottom: 12px; }
  .product-page .product-section-intro h2,
  .product-page .product-split h2 { font-size: clamp(1.8rem, 7.4vw, 2.3rem); }
  .product-page .product-area-list dt { font-size: 1.06rem; gap: 14px; }
  .product-page .product-area-list dd { margin-left: 0; }
  .product-page .product-harness-pillars { gap: 24px 18px; }
  .product-page .product-harness-pillars li { font-size: 0.86rem; }
  .product-page .contact-form { padding: 24px 18px; }
  .product-page .form-row { grid-template-columns: minmax(0, 1fr); }
  .product-page .form-submit { width: 100%; }
}
@media (max-width: 380px) {
  .product-page .visual-flow { grid-template-columns: minmax(0,1fr); gap: 8px; }
  .product-page .visual-flow li { border-top: 0; border-left: 2px solid var(--product-accent); padding: 4px 0 4px 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .product-page .product-area-list > div { transition: none; }
  .product-page .product-area-list > div:hover { transform: none; }
}
@media print {
  .product-page .product-hero-layout,
  .product-page .product-split { grid-template-columns: 1fr; }
  .product-page .product-contact { break-before: page; }
  .product-page .church-map,
  .product-page .product-harness-model { break-inside: avoid; }
}
