/* Versão 3 — visita guiada, arquitetura animada, simulador de nível e setores. Complementa /css/site.css */
:root{--lv-b:#2E63BE;--lv-s:#C99A3F;--lv-e:#0B2263;--link:#1F4FA0}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--lv-b:#6F98E6;--lv-e:#AFC3EE;--link:#8FB2F0}}
:root[data-theme="dark"]{--lv-b:#6F98E6;--lv-e:#AFC3EE;--link:#8FB2F0}

/* visita guiada (hero) */
.tour{background:#F5F7FB;border-radius:16px;overflow:hidden;box-shadow:0 40px 80px -30px rgba(3,10,35,.6),0 0 0 1px rgba(255,255,255,.08);color:#0B1A3F;min-width:0;align-self:center}
.tour .chrome{display:flex;align-items:center;gap:.45rem;background:#E7ECF4;padding:.55rem .8rem;border-bottom:1px solid #D5DDEA}
.tour .chrome i{width:10px;height:10px;border-radius:50%;background:#C9D2E1;display:block}
.tour .chrome .url{flex:1;margin-left:.5rem;background:#fff;border-radius:6px;padding:.2rem .6rem;font-size:.74rem;color:#5F6A86;max-width:340px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tour .stage{position:relative;aspect-ratio:1200/680;max-width:100%;overflow:hidden;background:#F5F7FB}
.tour .stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top left;opacity:0;transition:opacity .6s ease}
.tour .stage img.on{opacity:1;animation:tour-pan 6s ease-out both}
@keyframes tour-pan{from{transform:scale(1.04)}to{transform:scale(1)}}
.tour .cap{position:absolute;left:12px;bottom:12px;right:12px}
.tour .cap span{display:inline-block;background:rgba(11,34,99,.92);color:#fff;font-size:.82rem;font-weight:600;padding:.45rem .75rem;border-radius:8px}
.tour .cap b{color:#E4B356;margin-right:.35rem}
.tour .ctrl{display:flex;align-items:center;gap:.8rem;padding:.6rem .8rem;background:#fff;border-top:1px solid #E1E7F0}
.tour .pp{all:unset;cursor:pointer;width:30px;height:30px;border-radius:50%;background:#0B2263;color:#fff;display:grid;place-items:center;flex:none}
.tour .pp:focus-visible,.tour .dots button:focus-visible{outline:2px solid #E4B356;outline-offset:2px}
.tour .dots{display:flex;gap:6px;flex:1;min-width:0}
.tour .dots button{all:unset;cursor:pointer;flex:1;height:5px;border-radius:99px;background:#DCE3EE;position:relative;overflow:hidden}
.tour .dots button::after{content:"";position:absolute;inset:0;width:var(--p,0%);background:#C99A3F}
.tour .lbl{font-size:.76rem;color:#5F6A86;white-space:nowrap;font-variant-numeric:tabular-nums}
@media (max-width:900px){.tour{margin-top:2rem}}

/* arquitetura animada */
.arch-ctrl{display:flex;flex-wrap:wrap;gap:1.2rem;align-items:center;margin-top:1rem;color:#C9D5EE;font-size:.85rem}
.arch-ctrl span{display:inline-flex;align-items:center;gap:.45rem}
.arch-ctrl i{width:10px;height:10px;border-radius:50%;display:block}
.arch-ctrl button{all:unset;cursor:pointer;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:8px;padding:.35rem .7rem;font-weight:600}
.arch-ctrl button:focus-visible{outline:2px solid #E4B356}

/* simulador */
.sim{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:1.6rem;align-items:start}
@media (max-width:900px){.sim{grid-template-columns:minmax(0,1fr)}}
.sim .pnl{border:1px solid var(--line);border-radius:16px;background:var(--card);padding:1.5rem;display:grid;gap:1.1rem;min-width:0}
.sim .f{display:grid;gap:.4rem;font-size:.88rem;font-weight:600}
.sim .f small{font-weight:500;color:var(--ink-3)}
.sim .scorebox{display:flex;gap:.8rem;align-items:center}
.sim input[type=range]{flex:1;accent-color:var(--gold);padding:0;border:0;background:none}
.sim input[type=number]{width:6.5rem;font-variant-numeric:tabular-nums}
.sim .scale{display:grid;grid-template-columns:99fr 100fr 1001fr;height:10px;border-radius:99px;overflow:hidden}
.sim .scale i{display:block}
.sim .scale-l{display:flex;flex-wrap:wrap;gap:.3rem 1rem;font-size:.76rem;color:var(--ink-3);margin-top:.5rem}
.sim .scale-l span{display:inline-flex;align-items:center;gap:.35rem}
.sim .scale-l i{width:9px;height:9px;border-radius:2px;display:block}
.sim .presets{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}
.sim .presets button{all:unset;cursor:pointer;border:1px solid var(--line);border-radius:999px;padding:.3rem .7rem;font-size:.8rem;font-weight:600;color:var(--ink-2)}
.sim .presets button:hover{border-color:var(--royal);color:var(--ink)}
.sim .presets button:focus-visible{outline:2px solid var(--gold-2)}
.sim .result{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.2rem;align-items:center}
.sim .lvl{width:116px;height:116px;border-radius:50%;display:grid;place-items:center;text-align:center;color:#fff;font-family:var(--font-d);transition:background .3s}
.sim .lvl b{display:block;font-size:2.1rem;font-weight:600;line-height:1;font-variant-numeric:tabular-nums}
.sim .lvl small{font-size:.72rem;opacity:.85}
.sim .result h3{font-size:1.45rem}
.sim .result p{color:var(--ink-2);font-size:.92rem}
.sim .k{display:block;font:700 .74rem var(--font-d);letter-spacing:.08em;text-transform:uppercase;color:var(--gold-ink)}
.sim .chart svg{width:100%;height:auto;display:block}
.sim .smp{border-left:3px solid var(--gold);padding:.15rem 0 .15rem .8rem;font-size:.88rem;color:var(--ink-2)}
.sim .smp b{display:block;color:var(--ink);font-size:.8rem;font-family:ui-monospace,Menlo,monospace;font-weight:500}
.sim .samples{display:grid;gap:.6rem}
.sim .fine{font-size:.82rem;color:var(--ink-3)}
.sim .acts{display:flex;flex-wrap:wrap;gap:.6rem}
@media (max-width:520px){.sim .result{grid-template-columns:minmax(0,1fr)}}

/* setores */
.sectors{background:var(--bg-2)}
.sgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
@media (max-width:900px){.sgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.sgrid{grid-template-columns:minmax(0,1fr)}}
.sc{display:grid;grid-template-rows:auto 1fr;border:1px solid var(--line);border-radius:16px;background:var(--card);overflow:hidden;text-decoration:none;color:var(--ink)}
.sc:hover{border-color:var(--royal)}
.sc .ill{height:120px;background:linear-gradient(135deg,#0B2263,#163A86);position:relative;overflow:hidden}
.sc .ill svg{position:absolute;inset:0;width:100%;height:100%}
.sc .tx{padding:1.1rem 1.2rem 1.3rem;display:grid;gap:.4rem;align-content:start}
.sc h3{font-size:1.05rem;font-weight:600}
.sc p{color:var(--ink-2);font-size:.9rem}
.sc .go{font-weight:600;font-size:.86rem;color:var(--link)}
