
    :root{
      --petrol:#082f33;
      --petrol-2:#0e4247;
      --petrol-3:#15545a;
      --ink:#0c1718;
      --cream:#f7f3ea;
      --cream-2:#eee7da;
      --paper:#fffdf9;
      --gold:#c8a46a;
      --gold-2:#e3c58f;
      --muted:#687477;
      --line:rgba(12,23,24,.12);
      --shadow:0 26px 80px rgba(5,26,28,.14);
      --radius:28px;
      --ease:cubic-bezier(.2,.8,.2,1);
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;color:var(--ink);background:var(--cream);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-x:hidden}
    a{color:inherit;text-decoration:none}
    button,a{-webkit-tap-highlight-color:transparent}
    img{max-width:100%;display:block}
    .wrap{width:min(1180px,calc(100% - 40px));margin-inline:auto}
    .serif{font-family:Georgia,"Times New Roman",serif}
    .eyebrow{font-size:.73rem;letter-spacing:.24em;text-transform:uppercase;font-weight:800;color:var(--gold)}
    .section{padding:110px 0;position:relative}
    .section-title{font-size:clamp(2.2rem,5vw,4.4rem);line-height:.98;letter-spacing:-.045em;margin:.35rem 0 1.1rem;font-weight:720}
    .section-copy{font-size:1.06rem;line-height:1.72;color:#536164;max-width:680px}
    .btn{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;border:1px solid transparent;border-radius:999px;padding:14px 21px;font-weight:800;font-size:.94rem;transition:.35s var(--ease);cursor:pointer;position:relative;overflow:hidden}
    .btn::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 20%,rgba(255,255,255,.35),transparent 80%);transform:translateX(-130%);transition:.7s var(--ease)}
    .btn:hover::before{transform:translateX(130%)}
    .btn-primary{background:var(--gold-2);color:#142224;box-shadow:0 12px 32px rgba(200,164,106,.25)}
    .btn-primary:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(200,164,106,.35)}
    .btn-ghost{border-color:rgba(255,255,255,.28);color:white;background:rgba(255,255,255,.06);backdrop-filter:blur(12px)}
    .btn-dark{border-color:rgba(8,47,51,.16);color:var(--petrol);background:white}
    .arrow{font-size:1.08em;transition:.3s var(--ease)}
    .btn:hover .arrow{transform:translateX(4px)}

    /* mapa de risco */
    .risk-section{background:linear-gradient(180deg,#071f22 0%,#082f33 100%);color:white;overflow:hidden}
    .risk-section::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 84% 18%,rgba(227,197,143,.14),transparent 28%),radial-gradient(circle at 12% 78%,rgba(21,84,90,.55),transparent 34%);pointer-events:none}
    .risk-head{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:end;position:relative;z-index:1}
    .risk-head .section-copy{color:rgba(255,255,255,.69)}
    .risk-badges{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px}
    .risk-badge{padding:8px 11px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.055);font-size:.76rem;color:rgba(255,255,255,.74)}
    .risk-flow{position:relative;z-index:1;max-width:1080px;margin:44px auto 0}
    .risk-intro{display:grid;grid-template-columns:1.04fr .96fr;gap:30px;align-items:center;padding:26px 28px;margin-bottom:18px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.035));border-radius:26px;backdrop-filter:blur(12px)}
    .risk-intro h3{font-size:1.5rem;line-height:1.12;margin:10px 0 10px}
    .risk-intro p{color:rgba(255,255,255,.66);line-height:1.62;font-size:.92rem;margin:0}
    .risk-intro ul{padding:0;margin:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}
    .risk-intro li{display:flex;gap:10px;align-items:flex-start;padding:11px 12px;border-radius:16px;background:rgba(255,255,255,.045);font-size:.83rem;color:rgba(255,255,255,.78)}
    .risk-intro li::before{content:"✓";color:var(--gold-2);font-weight:900}
    .risk-form{background:var(--paper);color:var(--ink);padding:32px;border-radius:30px;box-shadow:0 30px 90px rgba(0,0,0,.22);width:100%}
    .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
    .field{display:grid;gap:7px}
    .field.full{grid-column:1/-1}
    .field label{font-size:.78rem;font-weight:800;color:#435053}
    .field input,.field select,.field textarea{width:100%;border:1px solid rgba(8,47,51,.14);border-radius:14px;background:#fbfaf6;padding:13px 14px;font:inherit;color:var(--ink);outline:none;transition:.25s}
    .field input:focus,.field select:focus,.field textarea:focus{border-color:var(--gold);box-shadow:0 0 0 4px rgba(200,164,106,.12);background:white}
    .risk-questions{margin-top:26px;display:grid;grid-template-columns:1fr 1fr;gap:13px}
    .q-card{border:1px solid rgba(8,47,51,.12);border-radius:18px;padding:18px;background:#fff;transition:border-color .3s var(--ease),box-shadow .3s var(--ease),transform .3s var(--ease)}
    .q-card:hover{border-color:rgba(200,164,106,.48);box-shadow:0 14px 30px rgba(8,47,51,.06);transform:translateY(-2px)}
    .q-card strong{display:block;font-size:.93rem;line-height:1.4;margin-bottom:12px}
    .q-options{display:flex;gap:8px;flex-wrap:wrap}
    .q-options label{cursor:pointer;position:relative}
    .q-options input{position:absolute;opacity:0;pointer-events:none}
    .q-options span{display:block;padding:9px 12px;border-radius:999px;border:1px solid rgba(8,47,51,.15);font-size:.78rem;font-weight:800;color:#526063;transition:.2s;background:#faf8f2}
    .q-options input:checked+span{background:var(--petrol);color:white;border-color:var(--petrol);box-shadow:0 8px 20px rgba(8,47,51,.18)}
    .consent{display:flex;align-items:flex-start;gap:10px;margin:20px 0 4px;font-size:.76rem;line-height:1.5;color:#657174}
    .consent input{margin-top:3px;accent-color:var(--petrol)}
    .form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:20px}
    .form-note{font-size:.72rem;color:#7a8587;line-height:1.5;margin-top:12px}
    .risk-result{display:none;margin-top:24px;padding:24px;border-radius:22px;background:linear-gradient(145deg,#0b383d,#06282c);color:white}
    .risk-result.show{display:block;animation:resultIn .55s var(--ease)}
    .risk-result .score{font-family:Georgia,serif;font-size:3rem;color:var(--gold-2);line-height:1}
    .risk-result h3{font-size:1.45rem;margin:8px 0 8px}
    .risk-result p{color:rgba(255,255,255,.68);line-height:1.6;margin:0 0 18px}
    .risk-result-actions{display:flex;gap:10px;flex-wrap:wrap}
    @keyframes resultIn{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}

/* reveal / movimento no scroll */
    .reveal{opacity:0;transform:translate3d(0,46px,0) scale(.985);filter:blur(7px);transition:opacity .9s var(--ease),transform .95s var(--ease),filter .9s var(--ease);will-change:opacity,transform,filter}
    .reveal.reveal-left{transform:translate3d(-48px,18px,0) scale(.99)}
    .reveal.reveal-right{transform:translate3d(48px,18px,0) scale(.99)}
    .reveal.reveal-scale{transform:translate3d(0,28px,0) scale(.955)}
    .reveal.visible{opacity:1;transform:none;filter:none}
    .reveal.delay-1{transition-delay:.08s} .reveal.delay-2{transition-delay:.16s} .reveal.delay-3{transition-delay:.24s}

/* Página independente: somente Mapa de Risco, sem site institucional */
body{background:var(--petrol)}
.rz-map-bar{background:#06272b;color:#fff;border-bottom:1px solid rgba(255,255,255,.10)}
.rz-map-bar-inner{width:min(1080px,calc(100% - 32px));min-height:87px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}
.rz-map-id{display:flex;align-items:center;gap:13px;text-decoration:none;color:#fff;min-width:0}
.rz-map-mark{width:45px;height:45px;border:1px solid rgba(212,178,118,.65);border-radius:50%;display:grid;place-items:center;font-family:Georgia,serif;color:#ead0a2;font-size:1.03rem;flex-shrink:0}
.rz-map-name{font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;line-height:1.45}
.rz-map-name small{display:block;font-size:.62rem;font-weight:600;letter-spacing:.11em;color:#b6c6c5}
.rz-back{padding:11px 16px;font-size:.8rem;font-weight:750;border:1px solid rgba(212,178,118,.38);color:#e9d2ab;border-radius:999px;text-decoration:none;white-space:nowrap;transition:.2s}
.rz-back:hover{border-color:rgba(212,178,118,.8);background:rgba(212,178,118,.10)}
.risk-section{padding:72px 0 90px;min-height:calc(100vh - 175px)}
.risk-head{gap:44px}
.risk-questions{margin-top:27px}
.q-options input:focus-visible + span,.btn:focus-visible,.rz-back:focus-visible,.rz-map-id:focus-visible{outline:3px solid var(--gold-2);outline-offset:3px}
.risk-form .btn-ghost{background:#f1ede4;color:#183f42;border-color:rgba(8,47,51,.18)}
.risk-form .btn-ghost:hover{background:#fff;border-color:var(--gold)}
.risk-result .btn-ghost{background:rgba(255,255,255,.09);color:#fff;border-color:rgba(255,255,255,.25)}
.risk-result .btn-ghost:hover{background:rgba(255,255,255,.17)}
#formStatus{max-width:100%;overflow-wrap:anywhere}
.rz-map-footer{background:#f5efe6;color:#617073;text-align:center;font-size:.72rem;line-height:1.6;padding:25px 12px 30px}
@media(max-width:980px){.risk-head{grid-template-columns:1fr;gap:26px}.risk-intro{grid-template-columns:1fr}.risk-questions{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.wrap{width:min(100% - 28px,1180px)}.risk-section{padding:45px 0 65px}.form-grid,.risk-questions,.risk-intro ul{grid-template-columns:1fr}.risk-intro,.risk-form{padding:22px}.risk-flow{margin-top:28px}.section-title{font-size:clamp(2.1rem,9vw,3.4rem)}.risk-result-actions .btn{width:100%}}
@media(max-width:470px){.rz-map-bar-inner{min-height:75px}.rz-map-name{font-size:.69rem}.rz-back{font-size:.75rem;padding:10px 12px}.rz-map-mark{width:38px;height:38px}.risk-intro,.risk-form{padding:18px}.risk-badge{font-size:.7rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;filter:none;transition:none}*{animation:none!important}}
