/* Large screens, stable frames and the official accent of each module. */
.module-page{--module:#0040b0;--module-text:#00e0f0;--module-ink:#001840;background:#001840;color:#fafafa}
.module-page[data-front=licitacoes]{--module:#0040b0;--module-text:#c1cbd6;--module-ink:#fff}
.module-page[data-front=telemetria]{--module:#0040b0;--module-text:#00e0f0;--module-ink:#001840}
.module-page[data-front=sob-medida]{--module:#00e0f0;--module-text:#c1cbd6;--module-ink:#001840}
.module-page[data-front=relatorios]{--module:#0040b0;--module-text:#00e0f0;--module-ink:#fff}
.module-page .wrap{width:min(1360px,calc(100% - 80px));max-width:1360px}
.module-page main{background:#001840}
.module-page .eyebrow{color:var(--module-text);font-size:12px;letter-spacing:.13em}
.module-intro{padding:68px 0 26px}
.module-intro h1{font-size:clamp(34px,4.6vw,64px);font-weight:800;letter-spacing:-.045em;line-height:1.08;max-width:1000px;margin:16px 0 20px;text-wrap:balance}
.module-intro p{font-size:clamp(16px,1.7vw,20px);color:#b4b4bd;max-width:800px;margin:0;line-height:1.6}
.module-scope{display:flex;flex-wrap:wrap;gap:10px 28px;list-style:none;padding:0;margin:26px 0 0;color:var(--module-text);font-size:13px}
.module-scope li::before{content:'•';margin-right:10px}
.module-gallery-section{padding:8px 0 60px}
.module-stage{border:1px solid #08264a;border-radius:20px;overflow:hidden;background:#08264a}
.module-slide{margin:0}
.module-slide[hidden]{display:none}
.module-image{display:block;position:relative;width:100%;padding:0;border:0;background:#08264a;border-radius:0;overflow:hidden;cursor:zoom-in}
.module-image img{display:block;width:100%;height:auto;aspect-ratio:16/8;object-fit:cover;object-position:left top;transition:opacity .3s ease}
.module-zoom{position:absolute;bottom:18px;right:18px;display:grid;place-items:center;width:44px;height:44px;border:1px solid #52525b;border-radius:50%;background:#001840ea;color:#fafafa;font-size:24px;box-shadow:0 4px 20px #00184033}
.module-image:hover .module-zoom{border-color:var(--module-text);color:var(--module-text)}
.module-slide figcaption{display:flex;align-items:center;min-height:52px;padding:12px 20px;border-top:1px solid #08264a;font-size:14px;font-weight:600;color:#e4e4e7}
.module-controls{display:flex;justify-content:center;align-items:center;gap:16px;padding:16px 0 4px}
.module-controls button{border:1px solid #303038;border-radius:9px;background:#08264a;color:#e4e4e7;min-width:40px;min-height:40px;cursor:pointer;transition:background .3s,border-color .3s}
.module-controls button:hover{border-color:var(--module-text);background:#08264a}
.module-dots{display:flex;gap:2px}
.module-dots button{border:0;background:none;min-width:28px;padding:8px}
.module-dots span{display:block;width:7px;height:7px;margin:auto;background:#71717a;border-radius:50%}
.module-dots [aria-pressed=true] span{background:var(--module-text);box-shadow:0 0 0 3px color-mix(in srgb,var(--module) 22%,transparent)}
.module-controls .module-pause{font-size:12px;padding:0 12px;margin-left:12px}
.module-caption{text-align:center;font-size:12px;color:#a1a1aa;margin:14px 0 0}
.module-summary{padding:54px 0 72px;border-top:1px solid #08264a}
.module-summary .wrap{display:flex;align-items:center;justify-content:space-between;gap:40px}
.module-summary h2{font-size:clamp(22px,2.4vw,32px);line-height:1.3;max-width:800px;letter-spacing:-.025em;margin:14px 0 0}
.module-page .btn.primary{background:var(--module);color:var(--module-ink);border:1px solid var(--module);box-shadow:none;white-space:nowrap;transition:transform .3s,filter .3s}
.module-page .btn.primary:hover{transform:translateY(-2px);filter:brightness(1.1)}
.module-page :focus-visible{outline:2px solid var(--module-text);outline-offset:4px}
@media(max-width:820px){.module-page .wrap{width:calc(100% - 40px)}.module-intro{padding-top:40px}.module-summary .wrap{align-items:flex-start;flex-direction:column;gap:28px}.module-stage{border-radius:14px}.module-image img{aspect-ratio:4/3}.module-zoom{bottom:10px;right:10px;width:36px;height:36px}.module-gallery-section{padding-bottom:40px}.module-caption{line-height:1.6}.module-controls{gap:8px}.module-controls .module-pause{margin-left:0}.module-dots{gap:0}.module-dots button{min-width:25px}.module-summary{padding:40px 0 56px}}
@media(prefers-reduced-motion:reduce){.module-page *{transition:none!important}}
