:root{--cx-ink:#102a43;--cx-teal:#087f78;--cx-soft:#eef7f5;--cx-line:#d8e3e0;--cx-shadow:0 14px 34px rgba(16,42,67,.1)}
.content{max-width:1680px}.content h1{font-size:clamp(2rem,3.4vw,3.35rem);line-height:1.02}.content h2{font-size:clamp(1.35rem,2vw,2rem)}
.campaign-lifecycle{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:repeat(4,1fr);gap:.35rem;margin:-.25rem 0 1rem;padding:.5rem;background:rgba(255,255,255,.94);border:1px solid var(--cx-line);border-radius:14px;box-shadow:0 6px 22px rgba(16,42,67,.07);backdrop-filter:blur(12px)}
.campaign-lifecycle a{display:flex;align-items:center;gap:.55rem;min-height:42px;padding:.55rem .7rem;border-radius:10px;color:#52636f;text-decoration:none;font-weight:750;font-size:.88rem}.campaign-lifecycle a b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e8efed;color:#40545f}.campaign-lifecycle a[aria-current=step]{background:var(--cx-soft);color:var(--cx-ink)}.campaign-lifecycle a[aria-current=step] b{background:var(--cx-teal);color:#fff}
.guided-workflow{max-width:1600px!important}.qr-designer-grid{grid-template-columns:1fr!important}.qr-surface-designer{display:grid!important;grid-template-columns:minmax(0,1.8fr) minmax(280px,.55fr);column-gap:1rem;align-items:start}.qr-surface-designer>:not(.qr-surface-controls){grid-column:1}.qr-surface-designer>.qr-surface-controls{grid-column:2;grid-row:1/span 12;position:sticky;top:64px;max-height:calc(100vh - 84px);overflow:auto;padding:.85rem!important;font-size:.9rem}.qr-design-canvas{min-height:min(72vh,820px)!important}.qr-surface-controls label{margin-bottom:.55rem!important}.qr-surface-controls input,.qr-surface-controls select{min-height:40px!important;padding:.5rem!important}
.is-planning-map .scan-map-panel{padding:.75rem!important}.is-planning-map .scan-map-panel>.panel-heading,.is-planning-map .production-map-toolbar{position:relative;z-index:4}.is-planning-map .privacy-scan-map{min-height:clamp(560px,72vh,920px)!important;border-radius:12px}.is-planning-map .visual-audience-summary .cards article{padding:.8rem}.is-planning-map .visual-audience-summary .cards b{font-size:1.5rem}.is-planning-map .production-map-toolbar{position:sticky;top:60px;background:rgba(255,255,255,.96);border-radius:10px;box-shadow:0 4px 16px rgba(16,42,67,.08)}
.response-now{display:flex;justify-content:space-between;gap:1.25rem;align-items:center;margin:1rem 0;padding:1.25rem 1.4rem;border:1px solid #a8d9d1;border-left:6px solid var(--cx-teal);border-radius:14px;background:linear-gradient(115deg,#effaf7,#fff);box-shadow:var(--cx-shadow)}.response-now h2{margin:.15rem 0}.response-now p{margin:.25rem 0;max-width:760px}.has-responses .analytics-decision-layer{margin-top:.75rem}.has-responses .stakeholder-decision-package{opacity:.94}.campaign-follow-up-summary{border-color:#b7ddd7!important;background:linear-gradient(135deg,#f4fbf9,#fff)!important}
.upload-progress{position:fixed;z-index:10000;inset:0;display:grid;place-items:center;padding:1rem;background:rgba(7,25,39,.52);backdrop-filter:blur(4px)}.upload-progress[hidden]{display:none}.upload-progress-card{width:min(460px,100%);padding:1.5rem;border-radius:16px;background:#fff;box-shadow:0 24px 60px rgba(0,0,0,.25)}.upload-progress-card strong,.upload-progress-card span{display:block}.upload-progress-card strong{font-size:1.25rem;color:var(--cx-ink)}.upload-progress-card progress{width:100%;height:16px;margin:1rem 0}.upload-progress-card small{color:#5e6e78}
.btn,button,input,select,textarea,a{scroll-margin-top:110px}:focus-visible{outline:3px solid #f59e0b!important;outline-offset:3px!important}
/* Sitewide form focus standard: no halo; use a clean teal field edge. */
body :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),select,textarea,[contenteditable="true"]):focus-visible{outline:none!important;outline-offset:0!important;box-shadow:none!important;border-color:var(--cx-teal,#0b8f89)!important}
.hero-outcomes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;width:min(680px,53%);margin:1.2rem 0}.hero-outcomes span{display:grid;grid-template-columns:28px 1fr;padding:.65rem;border:1px solid rgba(16,42,67,.12);border-radius:10px;background:rgba(255,255,255,.75);backdrop-filter:blur(5px)}.hero-outcomes b{grid-row:1/3;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#087f78;color:#fff}.hero-outcomes strong{font-size:.84rem}.hero-outcomes small{font-size:.7rem;color:#52636f}.story-hero>.eyebrow{max-width:52%;margin-bottom:.7rem}.story-hero>.actions{justify-content:flex-start;max-width:52%;margin-top:.3rem}
@media(max-width:900px){.campaign-lifecycle{position:relative;top:auto;grid-template-columns:repeat(2,1fr)}.qr-surface-designer{grid-template-columns:1fr}.qr-surface-designer>:not(.qr-surface-controls),.qr-surface-designer>.qr-surface-controls{grid-column:1}.qr-surface-designer>.qr-surface-controls{grid-row:auto;position:static;max-height:none}.qr-design-canvas{min-height:480px!important}.response-now{align-items:flex-start;flex-direction:column}.hero-outcomes{width:60%}}
@media(max-width:620px){.campaign-lifecycle a{font-size:.78rem;padding:.45rem}.is-planning-map .privacy-scan-map{min-height:68vh!important}.hero-outcomes{width:100%;grid-template-columns:1fr}.story-hero>.eyebrow,.story-hero>.actions{max-width:100%}.story-hero{padding-bottom:20rem!important}.story-hero>.actions{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
