/* VD: subscrição digital integrada v0.3. Prefixo vd- para evitar colisões. */
.vd-prototype-bar{
  background:#7b1f1f;color:#fff;text-align:center;padding:8px 16px;
  font-size:.75rem;font-weight:900;letter-spacing:.055em
}
.vd-choice-note{margin:15px 0 0;color:var(--texto2);font-size:.94rem}
.vd-digital-trigger{cursor:pointer}
.vd-digital{
  margin-top:26px;border:1px solid rgba(214,169,75,.42);
  border-radius:24px;background:#f6f7f9;color:#172033;overflow:hidden;
  box-shadow:0 18px 50px rgba(0,0,0,.18)
}
.vd-digital[hidden]{display:none}
.vd-digital-head{
  display:flex;align-items:flex-start;justify-content:space-between;gap:20px;
  padding:28px;background:linear-gradient(135deg,#061a33,#0a274b);color:#fff
}
.vd-digital-head h3{
  margin:4px 0 8px;font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(1.7rem,3vw,2.35rem)
}
.vd-digital-head p{margin:0;color:#d9d2c4;max-width:760px}
.vd-close{
  flex:0 0 auto;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.08);
  color:#fff;border-radius:999px;padding:10px 14px;font-weight:800;cursor:pointer
}
.vd-stepper{
  list-style:none;display:flex;gap:8px;flex-wrap:wrap;margin:0;padding:18px 28px;
  background:#fff;border-bottom:1px solid #dfe4ea
}
.vd-stepper li{
  padding:7px 10px;border-radius:999px;border:1px solid #d7dce3;
  background:#fff;color:#697486;font-size:.78rem;font-weight:800
}
.vd-stepper li.active{background:#061a33;border-color:#061a33;color:#fff}
.vd-panel{display:none;padding:30px}
.vd-panel.active{display:block}
.vd-panel-inner{max-width:940px;margin:0 auto}
.vd-number{
  display:grid;place-items:center;width:42px;height:42px;border-radius:50%;
  background:#061a33;color:#f0d083;font-weight:900
}
.vd-panel h4{
  margin:15px 0 8px;font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(1.55rem,3vw,2.2rem);color:#061a33
}
.vd-muted{color:#606b7b}
.vd-requirements{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:23px 0
}
.vd-requirements div{
  background:#fff;border:1px solid #dfe4ea;border-radius:15px;padding:17px
}
.vd-requirements strong,.vd-requirements span{display:block}
.vd-requirements span{color:#606b7b;font-size:.9rem;margin-top:3px}
.vd-warning{
  border-left:5px solid #d6a94b;background:#fff8e9;border-radius:11px;
  padding:16px 18px;margin:22px 0
}
.vd-warning strong,.vd-warning span{display:block}
.vd-warning span{color:#665d4e;margin-top:3px}
.vd-form label{display:block;font-weight:780;margin:15px 0}
.vd-form input[type=text],.vd-form input[type=email],
.vd-form input[type=tel],.vd-form input[type=date]{
  display:block;width:100%;margin-top:7px;border:1px solid #bdc6d1;
  border-radius:12px;padding:12px 13px;background:#fff;color:#172033
}
.vd-form input:focus{outline:3px solid rgba(214,169,75,.25);border-color:#b6892c}
.vd-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.vd-optional{font-size:.84rem;color:#6c7582;font-weight:500}
.vd-fieldset{
  border:1px solid #d9dfe7;border-radius:15px;padding:8px 16px 12px;margin-top:22px
}
.vd-fieldset legend{font-weight:850;color:#061a33;padding:0 6px}
.vd-check{display:flex!important;gap:10px;align-items:flex-start;font-weight:600!important}
.vd-check input{margin-top:5px;flex:0 0 auto}
.vd-demo-check{color:#7b1f1f}
.vd-message{min-height:24px;color:#8f2020;font-weight:750}
.vd-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:24px}
.vd-button{
  display:inline-flex;align-items:center;justify-content:center;min-height:47px;
  border-radius:999px;padding:12px 19px;border:1px solid transparent;
  font-weight:850;text-decoration:none;cursor:pointer
}
.vd-button.primary{
  background:linear-gradient(135deg,#f0d083,#d6a94b);color:#111827;
  box-shadow:0 10px 24px rgba(214,169,75,.22)
}
.vd-button.secondary{background:#061a33;color:#fff}
.vd-button.ghost{background:#fff;border-color:#cfd6df;color:#172033}
.vd-button:disabled{opacity:.45;cursor:not-allowed}
.vd-review,.vd-declaration{
  position:relative;background:#fffdf8;border:1px solid #c9c1b3;
  border-radius:8px;padding:30px;margin-top:23px;overflow:hidden
}
.vd-recipient{text-align:center;margin:18px 0 26px}
.vd-review dl,.vd-declaration dl{
  display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:23px 0
}
.vd-review dl div,.vd-declaration dl div{border:1px solid #ded7cb;padding:10px}
.vd-review dt,.vd-declaration dt{
  font-size:.78rem;font-weight:850;color:#596273
}
.vd-review dd,.vd-declaration dd{margin:4px 0 0;min-height:23px}
.vd-version{
  border:1px dashed #9a8e7b;border-radius:8px;padding:12px 15px;background:#fff
}
.vd-version p{margin:5px 0}
.vd-sign-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:23px 0}
.vd-sign-card{background:#fff;border:1px solid #dfe4ea;border-radius:16px;padding:21px}
.vd-sign-card>span{
  display:grid;place-items:center;width:34px;height:34px;border-radius:50%;
  background:#061a33;color:#f0d083;font-weight:900
}
.vd-sign-card h5{font-size:1.12rem;margin:12px 0 5px;color:#061a33}
.vd-official-link{display:block;color:#795716;font-weight:850;margin:10px 0}
.vd-declaration{
  max-width:820px;margin:28px auto;min-height:980px;border-radius:0;padding:36px
}
.vd-declaration header{
  display:flex;align-items:center;gap:14px;border-bottom:2px solid #061a33;
  padding-bottom:14px
}
.vd-declaration header img{width:58px;height:58px;object-fit:contain}
.vd-declaration header strong,.vd-declaration header span{display:block}
.vd-declaration header span{color:#606b7b}
.vd-watermark{
  position:absolute;top:47%;left:4%;transform:rotate(-31deg);
  font-size:3rem;font-weight:900;color:rgba(143,32,32,.10);white-space:nowrap
}
.vd-demo-warning{
  border:2px solid #8f2020;color:#8f2020;font-weight:900;
  text-align:center;padding:10px;margin-top:38px
}
.vd-upload{
  border:2px dashed #bdc6d1;border-radius:17px;padding:22px;text-align:center;
  background:#fff;margin:22px 0
}
.vd-upload label{display:flex;flex-direction:column;align-items:center;cursor:pointer}
.vd-upload-icon{
  display:grid;place-items:center;width:58px;height:58px;border-radius:14px;
  background:#ffe7e7;color:#8f2020;font-weight:900;margin-bottom:10px
}
.vd-file-info{margin-top:12px;color:#606b7b}
.vd-privacy-summary{
  border-left:5px solid #0a274b;background:#eef3f8;border-radius:11px;
  padding:17px;margin-top:20px
}
.vd-privacy-summary h5{margin:0 0 6px;color:#061a33}
.vd-privacy-summary p{margin:0}
.vd-confirmation{
  text-align:center;padding:38px 30px;background:#fff;border-top:1px solid #dfe4ea
}
.vd-confirmation[hidden]{display:none}
.vd-checkmark{
  display:grid;place-items:center;width:64px;height:64px;border-radius:50%;
  margin:0 auto;background:#dff3e9;color:#1f6b4f;font-size:2rem;font-weight:900
}
.vd-confirmation h4{
  font-size:2rem;color:#061a33;font-family:Georgia,"Times New Roman",serif;
  margin:17px 0 8px
}
.vd-reference{
  display:inline-flex;flex-direction:column;background:#f2f4f7;border-radius:13px;
  padding:12px 24px;margin:18px 0
}
.vd-reference span{font-size:.78rem;color:#606b7b}
.vd-reference strong{font-size:1.2rem}
.vd-statuses{
  display:grid;grid-template-columns:repeat(3,1fr);gap:12px;
  max-width:850px;margin:22px auto
}
.vd-statuses div{background:#f7f8fa;border:1px solid #dfe4ea;border-radius:13px;padding:14px}
.vd-statuses strong,.vd-statuses span{display:block}
.vd-statuses span{font-size:.86rem;color:#606b7b}
.vd-statuses .current{background:#edf8f3;border-color:#5a947e}
@media(max-width:900px){
  .vd-digital-head{flex-direction:column}
  .vd-requirements,.vd-form-grid,.vd-sign-grid,.vd-statuses{grid-template-columns:1fr}
  .vd-review dl,.vd-declaration dl{grid-template-columns:1fr}
  .vd-declaration{min-height:auto;padding:24px}
  .vd-watermark{font-size:1.9rem}
}
@media(max-width:600px){
  .vd-prototype-bar{font-size:.64rem}
  .vd-panel{padding:23px 15px}
  .vd-digital-head{padding:23px 17px}
  .vd-stepper{padding:15px 17px}
}
@media print{
  body *{visibility:hidden!important}
  #vdPrintableDeclaration,#vdPrintableDeclaration *{visibility:visible!important}
  #vdPrintableDeclaration{
    position:absolute;left:0;top:0;width:100%;margin:0;border:0;
    min-height:auto;padding:18mm
  }
  @page{size:A4;margin:0}
}
