/* "Conoce el SIGI" — presentación visual del Sistema de Gestión Integrado.
   Estructura y animaciones adaptadas de un paquete de infografía entregado por el usuario;
   recoloreado con los tokens reales de marca de site.css (nada de paletas nuevas) y con
   todo el contenido reemplazado por datos verificados del sitio real — sin cifras demostrativas. */

:root{
  --pz-primary:#086AA6;      /* = --teal en site.css */
  --pz-accent:#0C9CF4;       /* = --navy en site.css (azul de acción) */
  --pz-dark:#04324E;         /* = --navy-deep en site.css */
  --pz-success:#1E7D34;
  --pz-warning:#B8790A;
  --pz-ink:#1A2433;
  --pz-muted:#5B6B7C;
  --pz-bg:#F5F8FB;
  --pz-card:#fff;
  --pz-line:#DCEAF3;
  --pz-shadow:0 24px 60px rgba(4,50,78,.12);
}
[data-theme="dark"]{
  --pz-ink:#EAF3FB; --pz-muted:#9DB0C2; --pz-bg:#071421; --pz-card:#0E2133;
  --pz-line:#20394F; --pz-dark:#030C14; --pz-shadow:0 24px 60px rgba(0,0,0,.32);
}

.pz-body{ margin:0; font-family:'Inter',system-ui,sans-serif; color:var(--pz-ink); background:var(--pz-bg); line-height:1.55; }
.pz-body *{ box-sizing:border-box; }
.pz-body button, .pz-body a{ font:inherit; }
.pz-body button{ color:inherit; }
html:has(.pz-body){ scroll-behavior:smooth; }

.pz-skip{ position:fixed; top:-60px; left:16px; background:#fff; color:#111; padding:10px 16px; z-index:9999; border-radius:8px; }
.pz-skip:focus{ top:12px; }

/* ---------- boot ---------- */
.pz-boot{ position:fixed; inset:0; background:var(--pz-dark); color:#fff; z-index:1000; display:grid; place-content:center; text-align:center; transition:opacity .6s, visibility .6s; }
.pz-boot.done{ opacity:0; visibility:hidden; }
.pz-boot-mark{ margin:auto; width:96px; height:96px; padding:14px; border-radius:28px; background:#fff; display:grid; place-items:center; position:relative; }
.pz-boot-mark img{ width:100%; height:100%; object-fit:contain; }
.pz-boot-mark i{ position:absolute; inset:-10px; border:2px solid transparent; border-top-color:var(--pz-success); border-radius:38px; animation:pzSpin 1.4s linear infinite; }
.pz-boot p{ font-size:13px; letter-spacing:.08em; color:#b8cbe0; margin:26px 0 12px; }
.pz-boot-line{ height:3px; background:rgba(255,255,255,.12); width:280px; border-radius:9px; overflow:hidden; margin:0 auto; }
.pz-boot-line b{ display:block; width:100%; height:100%; background:linear-gradient(90deg,var(--pz-accent),var(--pz-success)); animation:pzLoad 1.8s ease; }

/* ---------- topbar ---------- */
.pz-topbar{ height:76px; padding:0 5vw; display:flex; align-items:center; justify-content:space-between; gap:24px;
  background:rgba(255,255,255,.86); backdrop-filter:blur(16px); border-bottom:1px solid var(--pz-line); position:sticky; top:0; z-index:100; }
[data-theme="dark"] .pz-topbar{ background:rgba(14,33,51,.86); }
.pz-brand{ display:flex; align-items:center; gap:12px; color:var(--pz-ink); text-decoration:none; }
.pz-brand img{ height:38px; width:auto; }
.pz-brand b{ font-size:13px; display:block; }
.pz-brand small{ font-size:10.5px; color:var(--pz-muted); }
.pz-nav{ display:flex; gap:24px; }
.pz-nav a{ color:var(--pz-muted); font-size:12.5px; font-weight:700; text-decoration:none; }
.pz-nav a:hover{ color:var(--pz-primary); }
.pz-theme-toggle{ width:40px; height:40px; border:1px solid var(--pz-line); background:var(--pz-card); border-radius:12px; cursor:pointer; font-size:15px; }
@media (max-width:900px){ .pz-nav{ display:none; } }

/* ---------- hero ---------- */
.pz-hero{ min-height:calc(100vh - 76px); padding:8vw 6vw; display:grid; grid-template-columns:1.05fr .95fr; align-items:center; gap:6vw;
  background:radial-gradient(1200px 700px at 78% 20%, rgba(12,156,244,.10), transparent 55%), linear-gradient(150deg,var(--pz-card),var(--pz-bg)); }
.pz-eyebrow{ font-size:12px; text-transform:uppercase; letter-spacing:.1em; font-weight:800; color:var(--pz-primary); }
.pz-eyebrow i{ display:inline-block; width:7px; height:7px; border-radius:50%; background:var(--pz-success); box-shadow:0 0 0 5px rgba(30,125,52,.16); margin-right:8px; }
.pz-hero h1{ font-size:clamp(38px,5.6vw,72px); line-height:1.02; letter-spacing:-.03em; margin:20px 0 24px; color:var(--pz-dark); font-weight:800; }
[data-theme="dark"] .pz-hero h1{ color:var(--pz-ink); }
.pz-hero h1 em{ font-style:normal; color:var(--pz-primary); }
.pz-hero-copy > p{ font-size:clamp(15px,1.4vw,18px); color:var(--pz-muted); max-width:600px; }
.pz-hero-actions{ display:flex; gap:12px; margin:30px 0; flex-wrap:wrap; }
.pz-btn{ border-radius:13px; padding:13px 20px; text-decoration:none; border:1px solid var(--pz-line); font-size:13.5px; font-weight:800; cursor:pointer; display:inline-flex; align-items:center; gap:8px; }
.pz-btn-primary{ background:var(--pz-accent); color:#fff; border-color:var(--pz-accent); box-shadow:0 12px 26px rgba(12,156,244,.28); }
.pz-btn-secondary{ background:var(--pz-card); }
.pz-hero-meta{ display:flex; gap:24px; padding-top:22px; border-top:1px solid var(--pz-line); flex-wrap:wrap; }
.pz-hero-meta span{ font-size:11px; color:var(--pz-muted); }
.pz-hero-meta b{ display:block; font-size:19px; color:var(--pz-ink); }

.pz-orbit{ aspect-ratio:1; position:relative; display:grid; place-items:center; }
.pz-ring{ position:absolute; border:1px solid rgba(12,156,244,.22); border-radius:50%; }
.pz-ring-a{ inset:10%; animation:pzSpin 32s linear infinite; }
.pz-ring-b{ inset:24%; border-style:dashed; animation:pzSpin 22s linear reverse infinite; }
.pz-orbit-core{ width:142px; height:142px; border-radius:40px; background:linear-gradient(145deg,var(--pz-accent),var(--pz-primary)); color:#fff;
  display:flex; flex-direction:column; align-items:center; justify-content:center; box-shadow:0 28px 60px rgba(8,106,166,.35); z-index:2; text-align:center; }
.pz-orbit-core small, .pz-orbit-core span{ font-size:10px; text-transform:uppercase; letter-spacing:.1em; }
.pz-orbit-core strong{ font-size:42px; line-height:1; }
.pz-satellite{ position:absolute; background:var(--pz-card); border:1px solid var(--pz-line); box-shadow:var(--pz-shadow); border-radius:12px; padding:9px 13px; font-size:11px; font-weight:800; animation:pzFloat 4s ease-in-out infinite; }
.sat-1{ top:4%; left:40%; } .sat-2{ right:2%; top:30%; animation-delay:-1s; } .sat-3{ right:6%; bottom:14%; animation-delay:-2s; }
.sat-4{ bottom:4%; left:37%; animation-delay:-.5s; } .sat-5{ left:0; bottom:24%; animation-delay:-1.5s; } .sat-6{ left:2%; top:24%; animation-delay:-2.5s; }

/* ---------- generic section heading ---------- */
.pz-panel{ padding:100px 6vw; }
.pz-map-bg, .pz-sst, .pz-emergency, .pz-venues{ background:var(--pz-dark); color:#fff; }
.pz-heading{ max-width:740px; margin-bottom:52px; }
.pz-heading span{ font-size:11px; color:#7FC4F2; text-transform:uppercase; letter-spacing:.14em; font-weight:800; }
.pz-heading.pz-light span{ color:#5fe3aa; }
.pz-heading h2{ font-size:clamp(28px,3.6vw,48px); line-height:1.08; letter-spacing:-.035em; margin:12px 0; color:var(--pz-dark); }
.pz-heading.pz-light h2{ color:#fff; }
.pz-heading p{ color:var(--pz-muted); font-size:15.5px; }
.pz-heading.pz-light p{ color:#cfe3f4; }

/* ---------- reveal on scroll ---------- */
.pz-reveal{ opacity:0; transform:translateY(22px); transition:opacity .7s ease, transform .7s ease; }
.pz-reveal.pz-visible{ opacity:1; transform:none; }

/* ---------- benefits ---------- */
.pz-benefits{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.pz-benefit{ background:var(--pz-card); border:1px solid var(--pz-line); border-radius:20px; padding:26px; min-height:210px; transition:.3s; }
.pz-benefit:hover{ transform:translateY(-6px); box-shadow:var(--pz-shadow); }
.pz-benefit > span{ font-size:11px; color:var(--pz-primary); font-weight:800; }
.pz-benefit h3{ font-size:22px; margin:38px 0 8px; }
.pz-benefit p{ font-size:12.5px; color:var(--pz-muted); }

/* ---------- process map ---------- */
.pz-process-map{ height:620px; position:relative; max-width:1140px; margin:auto; border:1px solid rgba(255,255,255,.1); border-radius:36px;
  background:radial-gradient(circle,#0d3a63 0,var(--pz-dark) 58%); overflow:hidden; }
.pz-map-lines{ position:absolute; inset:0; background:repeating-radial-gradient(circle at 50% 50%, transparent 0 80px, rgba(255,255,255,.05) 81px 82px); }
.pz-map-core{ position:absolute; inset:50% auto auto 50%; transform:translate(-50%,-50%); width:168px; height:168px; border:1px solid rgba(255,255,255,.25);
  border-radius:50%; background:linear-gradient(145deg,var(--pz-accent),var(--pz-dark)); color:#fff; display:flex; flex-direction:column; align-items:center;
  justify-content:center; z-index:4; cursor:pointer; box-shadow:0 0 0 20px rgba(12,156,244,.08), 0 0 70px rgba(12,156,244,.3); text-align:center; }
.pz-map-core strong{ font-size:46px; }
.pz-map-core small, .pz-map-core span{ font-size:9px; max-width:118px; }
.pz-process-cloud{ position:absolute; inset:0; }
.pz-process-node{ position:absolute; transform:translate(-50%,-50%); border:1px solid rgba(255,255,255,.18); background:rgba(255,255,255,.05);
  color:#dcecff; border-radius:999px; padding:9px 14px; font-size:10.5px; font-weight:700; cursor:pointer; transition:.25s; white-space:nowrap; }
.pz-process-node:hover, .pz-process-node:focus{ background:#fff; color:var(--pz-primary); transform:translate(-50%,-50%) scale(1.08); }

/* ---------- document showcase ---------- */
.pz-doc-showcase{ display:grid; grid-template-columns:.8fr 1.2fr; gap:6vw; align-items:center; }
.pz-doc-stack{ height:370px; position:relative; }
.pz-sheet{ position:absolute; width:260px; height:325px; border-radius:20px; left:50%; top:50%; border:1px solid var(--pz-line); }
.pz-sheet-3{ background:var(--pz-bg); transform:translate(-60%,-52%) rotate(-12deg); }
.pz-sheet-2{ background:#e9f4ed; transform:translate(-40%,-50%) rotate(10deg); }
.pz-sheet-1{ background:var(--pz-card); box-shadow:var(--pz-shadow); padding:28px; display:flex; flex-direction:column; transform:translate(-50%,-50%); }
.pz-sheet-1 span{ font-size:10px; color:var(--pz-primary); font-weight:800; }
.pz-sheet-1 b{ font-size:20px; line-height:1.2; margin:22px 0 32px; }
.pz-sheet-1 i{ height:7px; border-radius:8px; background:var(--pz-line); margin:6px 0; display:block; }
.pz-sheet-1 i:nth-of-type(2){ width:75%; }
.pz-sheet-1 small{ font-size:9px; color:var(--pz-success); margin-top:auto; }
.pz-tag-cloud{ display:flex; flex-wrap:wrap; gap:10px; }
.pz-doc-tag{ padding:11px 15px; background:var(--pz-card); border:1px solid var(--pz-line); border-radius:12px; font-size:12.5px; font-weight:700; transition:.25s; }
.pz-doc-tag b{ color:var(--pz-primary); }
.pz-doc-tag:hover{ color:#fff; background:var(--pz-primary); }
.pz-doc-tag:hover b{ color:#fff; }

/* ---------- SST worker scene ---------- */
.pz-sst-layout{ display:grid; grid-template-columns:1fr 1fr; gap:6vw; align-items:center; }
.pz-worker-scene{ height:500px; position:relative; border-radius:36px; background:radial-gradient(circle,#12466f,#0b2946 60%); overflow:hidden; }
.pz-worker{ position:absolute; width:150px; height:350px; left:50%; top:50%; transform:translate(-50%,-45%); }
.pz-worker i{ position:absolute; display:block; }
.pz-w-head{ width:56px; height:66px; background:#c78964; border-radius:45%; left:47px; top:40px; }
.pz-w-helmet{ width:78px; height:30px; background:#f4b73b; border-radius:50px 50px 8px 8px; left:36px; top:22px; z-index:2; }
.pz-w-body{ width:104px; height:155px; background:var(--pz-primary); border-radius:33px 33px 14px 14px; left:23px; top:104px; }
.pz-w-vest{ width:104px; height:94px; background:#f2a72d; clip-path:polygon(18% 0,38% 20%,62% 20%,82% 0,100% 100%,0 100%); left:23px; top:104px; }
.pz-w-leg{ width:40px; height:130px; background:#12304b; top:240px; }
.pz-w-leg.left{ left:30px; transform:rotate(3deg); } .pz-w-leg.right{ right:30px; transform:rotate(-3deg); }
.pz-callout{ position:absolute; border:1px solid rgba(255,255,255,.2); background:rgba(255,255,255,.07); backdrop-filter:blur(6px); border-radius:999px; padding:8px 12px; font-size:9.5px; }
.pz-c1{ left:12%; top:17%; } .pz-c2{ right:14%; top:26%; } .pz-c3{ left:8%; bottom:23%; } .pz-c4{ right:7%; bottom:14%; }
.pz-standards{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.pz-standard{ border:1px solid rgba(255,255,255,.14); background:rgba(255,255,255,.04); border-radius:16px; padding:17px; }
.pz-standard b{ display:block; font-size:12.5px; margin-bottom:4px; }
.pz-standard span{ font-size:9.5px; color:#a9c0d7; }

/* ---------- committees ---------- */
.pz-committee-grid{ display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.pz-committee{ background:linear-gradient(145deg,var(--pz-accent),var(--pz-primary)); color:#fff; border-radius:26px; padding:32px;
  display:grid; grid-template-columns:auto 1fr auto; gap:20px; align-items:start; }
.pz-committee.pz-green{ background:linear-gradient(145deg,#1E7D34,#0f4d22); }
.pz-committee-icon{ width:54px; height:54px; border:1px solid rgba(255,255,255,.25); border-radius:16px; display:grid; place-items:center; font-weight:800; }
.pz-committee small{ font-size:9px; text-transform:uppercase; letter-spacing:.1em; color:#d0e7ff; }
.pz-committee h3{ font-size:23px; margin:8px 0; }
.pz-committee p{ font-size:11.5px; color:#e2effb; }
.pz-committee button{ border:1px solid rgba(255,255,255,.22); color:#fff; background:rgba(255,255,255,.07); border-radius:50%; width:40px; height:40px; cursor:pointer; }

/* ---------- emergency ---------- */
.pz-emergency-flow{ display:grid; grid-template-columns:repeat(7,1fr); gap:10px; }
.pz-em-step{ text-align:center; position:relative; }
.pz-em-step:not(:last-child):after{ content:"→"; position:absolute; right:-10px; top:21px; color:#5fe3aa; }
.pz-em-icon{ width:54px; height:54px; margin:auto; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.16); border-radius:16px; display:grid; place-items:center; font-size:20px; }
.pz-em-step b{ display:block; font-size:9.5px; margin-top:11px; }

/* ---------- dashboard ---------- */
.pz-kpi-grid{ display:grid; grid-template-columns:1.2fr 1fr 1fr 1fr; gap:15px; }
.pz-kpi{ background:var(--pz-card); border:1px solid var(--pz-line); border-radius:20px; padding:23px; min-height:220px; display:flex; flex-direction:column; }
.pz-kpi small{ font-weight:700; color:var(--pz-muted); font-size:12px; }
.pz-kpi-big{ font-size:38px; margin:20px 0; font-weight:800; }
.pz-warning-text{ color:var(--pz-warning); }
.pz-gauge{ width:120px; height:120px; border-radius:50%; margin:16px auto; background:conic-gradient(var(--pz-success) calc(var(--value)*1%), var(--pz-line) 0); display:grid; place-items:center; position:relative; }
.pz-gauge:after{ content:""; position:absolute; inset:12px; background:var(--pz-card); border-radius:50%; }
.pz-gauge b{ z-index:2; font-size:24px; }
.pz-kpi-trend{ font-size:10px; margin-top:auto; }
.pz-up{ color:var(--pz-success); }
.pz-bars{ height:80px; display:flex; gap:6px; align-items:end; margin:18px 0; }
.pz-bars i{ height:var(--h); background:linear-gradient(var(--pz-primary),var(--pz-accent)); flex:1; border-radius:6px 6px 2px 2px; display:block; }
.pz-kpi > span:last-child{ font-size:10px; color:var(--pz-muted); margin-top:auto; }
.pz-progress-track{ height:8px; background:var(--pz-line); border-radius:10px; overflow:hidden; }
.pz-progress-track i{ display:block; height:100%; background:var(--pz-warning); }
.pz-split{ display:flex; gap:6px; }
.pz-split i{ font-style:normal; font-size:9px; padding:6px 8px; border-radius:8px; background:var(--pz-bg); }

/* ---------- venues ---------- */
.pz-venue-layout{ display:grid; grid-template-columns:1.35fr .65fr; gap:24px; }
.pz-venue-map{ height:490px; background:#0d2a46; border:1px solid rgba(255,255,255,.1); border-radius:30px; position:relative; overflow:hidden; }
.pz-map-grid{ position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px), linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px); background-size:40px 40px; transform:rotate(-8deg) scale(1.2); }
.pz-pin{ position:absolute; transform:translate(-50%,-50%); border:0; background:transparent; color:#fff; cursor:pointer; text-align:center; }
.pz-pin i{ display:block; width:24px; height:24px; background:var(--pz-success); border:5px solid #fff; border-radius:50% 50% 50% 0; transform:rotate(-45deg); box-shadow:0 0 0 7px rgba(30,125,52,.16); margin:auto; }
.pz-pin span{ display:block; background:var(--pz-dark); border:1px solid rgba(255,255,255,.16); border-radius:8px; padding:5px 8px; font-size:8px; margin-top:6px; white-space:nowrap; }
.pz-pin.active i{ background:var(--pz-warning); transform:rotate(-45deg) scale(1.22); }
.pz-venue-card{ background:#fff; color:var(--pz-ink); border-radius:30px; padding:34px; align-self:stretch; display:flex; flex-direction:column; justify-content:center; }
.pz-venue-card small{ color:var(--pz-primary); font-weight:800; text-transform:uppercase; letter-spacing:.1em; font-size:10px; }
.pz-venue-card h3{ font-size:26px; line-height:1.15; }
.pz-venue-card p{ color:var(--pz-muted); font-size:12.5px; }
.pz-venue-tags{ display:flex; flex-wrap:wrap; gap:7px; margin-top:18px; }
.pz-venue-tags span{ font-size:9px; background:var(--pz-bg); padding:7px 9px; border-radius:8px; }
.pz-venue-link{ margin-top:16px; font-size:12px; font-weight:700; color:var(--pz-primary); text-decoration:none; }

/* ---------- PDCA ---------- */
.pz-pdca-wheel{ max-width:1000px; height:580px; margin:auto; position:relative; }
.pz-pdca-center{ position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:176px; height:176px; border-radius:50%;
  background:var(--pz-dark); color:#fff; display:flex; flex-direction:column; align-items:center; justify-content:center; box-shadow:var(--pz-shadow); }
.pz-pdca-center strong{ font-size:38px; } .pz-pdca-center small, .pz-pdca-center span{ font-size:9px; }
.pz-p{ position:absolute; width:230px; text-align:left; border:1px solid var(--pz-line); background:var(--pz-card); border-radius:18px; padding:20px; cursor:pointer; transition:.3s; }
.pz-p b{ color:var(--pz-primary); font-size:10px; } .pz-p strong{ display:block; font-size:18px; margin:6px 0; } .pz-p span{ font-size:10px; color:var(--pz-muted); }
.pz-p.pz-active{ border-color:var(--pz-success); box-shadow:0 15px 36px rgba(30,125,52,.14); transform:scale(1.04); }
.pz-plan{ top:2%; left:50%; transform:translateX(-50%); } .pz-plan.pz-active{ transform:translateX(-50%) scale(1.04); }
.pz-do{ right:1%; top:50%; transform:translateY(-50%); }
.pz-check{ bottom:2%; left:50%; transform:translateX(-50%); }
.pz-act{ left:1%; top:50%; transform:translateY(-50%); }

/* ---------- closing ---------- */
.pz-closing{ padding:110px 6vw; text-align:center; background:var(--pz-card); }
.pz-closing-logo{ width:110px; height:110px; margin:0 auto 28px; padding:18px; border-radius:26px; background:#fff; box-shadow:var(--pz-shadow); display:flex; align-items:center; justify-content:center; }
.pz-closing-logo img{ width:100%; height:100%; object-fit:contain; }
.pz-closing h2{ font-size:clamp(26px,4vw,42px); color:var(--pz-dark); font-weight:800; margin-bottom:16px; }
.pz-closing p{ color:var(--pz-muted); max-width:540px; margin:0 auto 32px; }

/* ---------- footer ---------- */
.pz-footer{ background:var(--pz-dark); color:#b8c8d8; padding:32px 6vw; display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
.pz-footer img{ height:26px; }
.pz-footer p{ font-size:11px; margin:0; }
.pz-footer a{ margin-left:auto; color:#fff; font-size:11px; text-decoration:none; }

/* ---------- dialog ---------- */
.pz-dialog{ border:0; border-radius:24px; background:var(--pz-card); color:var(--pz-ink); padding:36px; max-width:540px; width:calc(100% - 32px); box-shadow:0 30px 100px rgba(0,0,0,.4); }
.pz-dialog::backdrop{ background:rgba(3,16,29,.8); backdrop-filter:blur(6px); }
.pz-dialog-close{ position:absolute; right:16px; top:14px; border:0; background:var(--pz-bg); border-radius:50%; width:34px; height:34px; cursor:pointer; }
.pz-dialog > span{ font-size:10px; text-transform:uppercase; color:var(--pz-primary); font-weight:800; letter-spacing:.1em; }
.pz-dialog h2{ font-size:27px; margin:12px 0; }
.pz-dialog p{ color:var(--pz-muted); font-size:14px; }
.pz-dialog-items{ display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; }
.pz-dialog-items span{ font-size:10px; padding:8px 10px; border-radius:9px; background:var(--pz-bg); }
.pz-dialog-link{ display:inline-block; margin-top:20px; font-size:13px; font-weight:800; color:#fff; background:var(--pz-accent); padding:10px 18px; border-radius:11px; text-decoration:none; }

@keyframes pzSpin{ to{ transform:rotate(360deg); } }
@keyframes pzLoad{ from{ width:0; } }
@keyframes pzFloat{ 50%{ transform:translateY(-8px); } }

@media (max-width:900px){
  .pz-hero{ grid-template-columns:1fr; padding-top:60px; }
  .pz-orbit{ max-width:520px; width:100%; margin:auto; }
  .pz-benefits, .pz-kpi-grid{ grid-template-columns:1fr 1fr; }
  .pz-doc-showcase, .pz-sst-layout, .pz-venue-layout{ grid-template-columns:1fr; }
  .pz-committee-grid{ grid-template-columns:1fr; }
  .pz-emergency-flow{ grid-template-columns:repeat(4,1fr); row-gap:26px; }
  .pz-em-step:after{ display:none; }
  .pz-process-map{ height:720px; }
}
@media (max-width:620px){
  .pz-topbar{ padding:0 18px; }
  .pz-hero, .pz-panel{ padding:70px 20px; }
  .pz-hero-meta{ gap:12px; }
  .pz-hero-actions{ flex-direction:column; align-items:stretch; }
  .pz-benefits, .pz-kpi-grid{ grid-template-columns:1fr; }
  .pz-standards{ grid-template-columns:1fr; }
  .pz-committee{ grid-template-columns:auto 1fr; padding:22px; }
  .pz-committee button{ display:none; }
  .pz-emergency-flow{ grid-template-columns:repeat(2,1fr); }
  .pz-venue-map{ height:400px; }
  .pz-pdca-wheel{ height:auto; display:grid; gap:12px; }
  .pz-pdca-center{ position:static; transform:none; margin:0 auto 14px; }
  .pz-p, .pz-plan, .pz-do, .pz-check, .pz-act{ position:static; transform:none; width:100%; }
  .pz-p.pz-active, .pz-plan.pz-active{ transform:none; }
  .pz-footer{ align-items:flex-start; }
}
@media (prefers-reduced-motion: reduce){
  .pz-body *{ scroll-behavior:auto !important; animation:none !important; transition:none !important; }
  .pz-reveal{ opacity:1; transform:none; }
  .pz-boot{ display:none; }
}
