/* D'Ascola Teck — revisão visual incremental / 2026-11-01.
   Alvo: experiência institucional pública. Não altera o painel do cliente.
   Efeitos em CSS/JS nativos, respeitando preferência por menos movimento. */

/* HOME: ritmo dos passos e cards SEM line-clamp/truncamento. */
.dt-unified-public .dt-refresh-hero .nx-hero-index {
  display:flex;gap:clamp(9px,1.8vw,22px);flex-wrap:wrap;align-items:center;
  color:#d7ecff;font-size:clamp(9px,.77vw,12px);letter-spacing:.065em;
}
.dt-unified-public .dt-refresh-hero .nx-hero-index span {
  display:inline-flex;align-items:center;min-height:36px;
  border:1px solid rgba(114,196,255,.27);border-radius:9px;
  padding:9px 11px;background:rgba(18,72,132,.24);
  white-space:nowrap;
}
.dt-unified-public .dt-refresh-service-card {
  height:auto;min-height:305px;overflow:visible;isolation:isolate;
  padding:27px clamp(18px,1.65vw,25px) 29px;
}
.dt-unified-public .dt-refresh-service-card p,
html[data-theme="dark"] .dt-unified-public .dt-refresh-service-card p {
  display:block;overflow:visible;max-height:none;-webkit-line-clamp:unset;
  line-clamp:unset;white-space:normal;text-overflow:clip;
  font-size:clamp(12px,.93vw,14px);line-height:1.72;
  overflow-wrap:break-word;word-break:normal;
}
.dt-unified-public .dt-refresh-service-card h3 {overflow-wrap:break-word;hyphens:auto}
.dt-unified-public .dt-refresh-services-grid {align-items:stretch;row-gap:25px}

/* HOME: editor ilustrativo da Área do Cliente; abas de verdade e código PHP legível. */
.dt-unified-public .dt-refresh-editor {width:100%;min-width:0;transform:none;border:1px solid rgba(111,204,255,.44);border-radius:20px;box-shadow:0 23px 66px #0006,0 0 0 6px #4bc7ff09}
.dt-unified-public .dt-refresh-editor:hover {transform:translateY(-3px)}
.dt-unified-public .dt-refresh-editor-tabs {display:flex;gap:3px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#31628e transparent;padding:7px 8px 0}
.dt-unified-public .dt-refresh-editor-tabs button {
  appearance:none;border:0;border-bottom:2px solid transparent;border-radius:9px 9px 0 0;
  background:transparent;color:#99b7d3;min-width:max-content;
  padding:10px clamp(10px,1.1vw,18px);min-height:44px;font:650 11px/1.2 ui-monospace,Consolas,monospace;
  cursor:pointer;transition:background .18s,color .18s,border .18s;
}
.dt-unified-public .dt-refresh-editor-tabs button[aria-selected="true"] {
  color:#e4f7ff;background:#15375c;border-bottom-color:#59ccff;
}
.dt-unified-public .dt-refresh-editor-tabs button:hover {color:#fff;background:#173456}
.dt-unified-public .dt-refresh-editor-tabs button:focus-visible {outline:2px solid #60d8ff;outline-offset:-3px}
.dt-unified-public .dt-refresh-editor-body {
  display:grid;grid-template-columns:minmax(0,1fr);min-height:0;max-height:480px;overflow:auto;
  padding:18px clamp(15px,2vw,27px) 17px;
  scrollbar-color:#31628e #0a192e;scrollbar-width:thin;
}
.dt-unified-public .dt-refresh-editor-body [role="tabpanel"] {width:100%;min-width:0;outline:none;grid-area:1 / 1}
.dt-unified-public .dt-refresh-editor-body [role="tabpanel"][hidden] {display:block!important;visibility:hidden;pointer-events:none}
.dt-unified-public .dt-refresh-editor-code {
  display:block;max-width:none;width:100%;min-width:100%;margin:0;
  overflow:visible;white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal;
  color:#d8ecff;font:500 clamp(11px,.94vw,13px)/1.79 ui-monospace,SFMono-Regular,Consolas,monospace;
  tab-size:4;
}
.dt-unified-public .dt-refresh-editor-code code {font:inherit;counter-reset:code-line}
.dt-unified-public .dt-code-token--keyword {color:#f9a8cf}
.dt-unified-public .dt-code-token--var {color:#83d9ff}
.dt-unified-public .dt-code-token--string {color:#fbd38d}
.dt-unified-public .dt-code-token--comment {color:#7f98b1}
.dt-unified-public .dt-refresh-editor-note {display:block;background:#091d33;color:#7398b7;font:10px/1.4 ui-monospace,Consolas,monospace;padding:8px 18px;border-top:1px solid #27425e}
.dt-unified-public .dt-refresh-editor-bottom {gap:8px 16px}

/* Experience Lab: reserva a altura da maior mensagem e evita saltos a cada troca. */
.dt-unified-public .dt-refresh-lab-messages {display:grid;grid-template-columns:minmax(0,1fr)}
.dt-unified-public .dt-refresh-lab-message {display:flex;flex-direction:column;align-items:flex-start;grid-area:1 / 1;min-width:0}
.dt-unified-public .dt-refresh-lab-message .btn {margin-top:auto;white-space:normal;text-align:left}
.dt-unified-public .dt-refresh-lab-message[hidden] {display:flex!important;visibility:hidden;pointer-events:none}
.dt-unified-public .dt-refresh-lab-message:not([hidden]),
.dt-unified-public .dt-refresh-editor-body [role="tabpanel"]:not([hidden]) {animation:dt-lab-enter .5s ease both}
.dt-unified-public .dt-refresh-lab-copy {min-width:0;overflow-wrap:break-word}
.dt-unified-public .dt-refresh-lab-nav {
  margin-left:auto;display:inline-flex;align-items:center;gap:6px;
  padding:5px;border:1px solid rgba(95,152,197,.42);border-radius:14px;
  background:#102845;color:#e5f7ff;box-shadow:0 10px 24px rgba(1,10,24,.22);
}
.dt-unified-public .dt-refresh-lab-nav-btn {
  appearance:none;border:1px solid rgba(95,152,197,.36);background:#183757;color:#eaf9ff;
  width:36px;height:36px;flex:none;border-radius:10px;display:grid;place-items:center;
  font:800 18px/1 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease,color .18s ease;
}
.dt-unified-public .dt-refresh-lab-nav-btn--pause {font-size:12px;letter-spacing:.02em}
.dt-unified-public .dt-refresh-lab-nav-btn:hover {background:#2462ab;border-color:#5fb1ed;transform:translateY(-1px)}
.dt-unified-public .dt-refresh-lab-nav-btn:focus-visible {outline:2px solid #60d8ff;outline-offset:2px}
.dt-unified-public .dt-refresh-lab-nav-count {
  min-width:72px;display:inline-flex;align-items:center;justify-content:center;gap:2px;
  color:#dff5ff;font:800 13px/1.1 ui-monospace,Consolas,monospace;letter-spacing:.04em;font-variant-numeric:tabular-nums;
}
.dt-unified-public .dt-refresh-lab-nav-count strong,
.dt-unified-public .dt-refresh-lab-nav-count span {font:inherit;color:inherit}
.dt-unified-public .dt-refresh-editor-bottom {align-items:center}
.dt-unified-public .dt-refresh-editor-body [role="tabpanel"]:focus-visible {outline:2px solid var(--dt4-accent);outline-offset:-2px}
@keyframes dt-lab-enter {from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){
  .dt-unified-public .dt-refresh-lab-message,
  .dt-unified-public .dt-refresh-editor-body [role="tabpanel"] {animation:none!important}
}
@media (max-width: 640px){
  .dt-unified-public .dt-refresh-editor-bottom {gap:10px 12px}
  .dt-unified-public .dt-refresh-lab-nav {order:99;margin-left:0;width:100%;justify-content:flex-end}
  .dt-unified-public .dt-refresh-lab-nav-count {min-width:64px}
}

/* SOLUÇÕES: profundidade, órbita, botões acessíveis e estados reais de filtro. */
.dt-unified-public .dt-v11-sol-hero-grid {grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr);gap:clamp(25px,4vw,68px)}
.dt-unified-public .dt-v11-sol-stage {--dt-parallax-x:0px;--dt-parallax-y:0px;isolation:isolate;padding:26px 12px 64px}
.dt-unified-public .dt-v11-sol-orbit {
  inset:-8% -4%;pointer-events:none;border-color:rgba(83,201,255,.29);
  box-shadow:0 0 0 38px rgba(48,146,238,.035),0 0 0 84px rgba(48,146,238,.028);
  animation:dt-sol-orbit 32s linear infinite;
}
.dt-unified-public .dt-v11-sol-orbit::before,
.dt-unified-public .dt-v11-sol-orbit::after {
  content:"";display:block;position:absolute;border-radius:50%;pointer-events:none;
}
.dt-unified-public .dt-v11-sol-orbit::before {inset:11%;border:1px dashed rgba(96,208,255,.34)}
.dt-unified-public .dt-v11-sol-orbit::after {top:8%;left:28%;height:10px;width:10px;background:#5fe8ff;box-shadow:0 0 20px 6px #38adff77}
.dt-unified-public .dt-v11-sol-console {
  border:1px solid rgba(121,210,255,.60);
  box-shadow:0 27px 70px #0007,0 0 42px rgba(35,174,255,.17),inset 0 0 32px rgba(29,125,221,.11);
  transform:rotate(-1.4deg) translate3d(var(--dt-parallax-x),var(--dt-parallax-y),0);
  transition:transform .32s ease-out,box-shadow .3s ease;
}
.dt-unified-public .dt-v11-sol-stage:hover .dt-v11-sol-console {box-shadow:0 32px 75px #0008,0 0 52px rgba(53,194,255,.22)}
.dt-unified-public .dt-v11-sol-emblem {position:relative;animation:dt-sol-breathe 5.8s ease-in-out infinite}
.dt-unified-public .dt-v11-sol-emblem::before {
  content:"";position:absolute;inset:-17px;border:1px dashed rgba(109,209,255,.33);border-radius:50%;pointer-events:none;
}
.dt-unified-public .dt-v11-sol-interactive {
  z-index:3;position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;margin:22px 6px 0;
}
.dt-unified-public .dt-v11-sol-chip {
  appearance:none;display:flex;align-items:center;justify-content:center;gap:9px;
  border:1px solid rgba(112,203,255,.40);border-radius:12px;
  color:#e1f6ff;background:rgba(10,38,76,.92);
  box-shadow:inset 0 1px rgba(255,255,255,.07),0 8px 22px #0003;
  padding:12px 10px;min-height:43px;
  font:700 11px/1.3 Inter,system-ui,sans-serif;
  cursor:pointer;transition:transform .2s,border-color .2s,background .2s;
}
.dt-unified-public .dt-v11-sol-chip:hover,
.dt-unified-public .dt-v11-sol-chip.is-active {transform:translateY(-2px);border-color:#5edbff;background:#164e8b}
.dt-unified-public .dt-v11-sol-chip:focus-visible {outline:3px solid #76d9ff;outline-offset:3px}
.dt-unified-public .dt-v11-sol-proof span::before {background:rgba(27,220,186,.2)}

/* Rodapé: faixa de conversão integrada + feixe azul/ciano de luz. */
body.dt-unified-public .dt-footer-beam {
  isolation:isolate;position:relative;overflow:hidden;
  border-top:1px solid rgba(99,196,255,.38);
  background:linear-gradient(105deg,#09254b 0%,#0b356b 55%,#0b4280 100%);
  color:#f5fbff;
}
body.dt-unified-public .dt-footer-beam::before {
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(ellipse at 52% 108%,rgba(42,201,255,.23),transparent 49%),
    radial-gradient(ellipse at 100% 0,rgba(47,135,245,.23),transparent 48%);
}
body.dt-unified-public .dt-footer-beam::after {
  content:"";position:absolute;z-index:3;pointer-events:none;
  height:2px;bottom:0;left:0;right:0;
  background:linear-gradient(90deg,transparent 0%,#1f8fff 25%,#7cf2ff 54%,#1681ef 75%,transparent 100%);
  box-shadow:0 0 9px rgba(28,185,255,.86),0 0 23px rgba(28,185,255,.61);
  animation:dt-footer-beam-pulse 5.5s ease-in-out infinite;
}
body.dt-unified-public .dt-footer-beam-shine {
  position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(105deg,transparent 33%,rgba(101,223,255,0) 42%,rgba(133,233,255,.14) 49%,rgba(133,233,255,0) 56%,transparent 66%);
  background-size:200% 100%;animation:dt-footer-beam-sweep 11s linear infinite;
}
body.dt-unified-public .dt-footer-beam-inner {
  position:relative;z-index:1;max-width:1210px;display:flex;align-items:center;
  gap:clamp(15px,2.2vw,25px);padding-block:clamp(23px,3vw,36px);
}
body.dt-unified-public .dt-footer-beam-icon {
  display:grid;place-items:center;flex:none;width:61px;height:61px;
  color:#6ce8ff;border:1px solid rgba(111,215,255,.48);
  border-radius:17px;background:linear-gradient(140deg,rgba(29,114,200,.26),rgba(6,26,54,.45));
  box-shadow:inset 0 1px #ffffff21,0 12px 26px #00162b35;
}
body.dt-unified-public .dt-footer-beam-copy {min-width:0;flex:1 1 auto}
body.dt-unified-public .dt-footer-beam-copy h2 {
  margin:0 0 5px;font:800 clamp(19px,2.2vw,30px)/1.22 Sora,Inter,system-ui,sans-serif;
  letter-spacing:-.05em;color:#f4faff;
}
body.dt-unified-public .dt-footer-beam-copy h2 em {font-style:normal;color:#69d9ff}
body.dt-unified-public .dt-footer-beam-copy p {margin:0;color:#c4dcf4;font:400 clamp(12px,1.15vw,15px)/1.6 Inter,system-ui,sans-serif}
body.dt-unified-public .dt-footer-beam-button {
  flex:none;display:inline-flex;align-items:center;justify-content:center;gap:22px;
  min-height:50px;padding:12px clamp(15px,1.65vw,25px);
  border:1px solid rgba(149,228,255,.35);border-radius:12px;
  color:#fff;text-decoration:none!important;font:800 13px/1.3 Inter,system-ui,sans-serif;
  background:linear-gradient(102deg,#1971ef,#18b6f7);
  box-shadow:0 10px 30px rgba(7,80,176,.36),inset 0 1px #ffffff40;
  transition:transform .2s,box-shadow .2s;
}
body.dt-unified-public .dt-footer-beam-button:hover {transform:translateY(-2px);box-shadow:0 13px 34px rgba(4,155,255,.39)}
body.dt-unified-public .dt-footer-beam-button:focus-visible {outline:3px solid #86efff;outline-offset:3px}

/* Compartilha o feixe horizontal com o rodapé existente sem esconder nenhum e-mail. */
body.dt-unified-public .site-footer.dt-footer-compact {border-top-color:rgba(88,202,255,.52)!important}
body.dt-unified-public .site-footer.dt-footer-compact .dt-footer-compact-contacts strong,
body.dt-unified-public .site-footer.dt-footer-compact .dt-footer-inline-extra-contacts strong {overflow-wrap:anywhere}

@keyframes dt-sol-orbit {from{transform:rotate(-15deg)}to{transform:rotate(345deg)}}
@keyframes dt-sol-breathe {0%,100%{filter:drop-shadow(0 0 3px #1598ff33)}50%{filter:drop-shadow(0 0 13px #25a9ff64)}}
@keyframes dt-footer-beam-pulse {0%,100%{opacity:.65}50%{opacity:1}}
@keyframes dt-footer-beam-sweep {from{background-position:160% 50%}to{background-position:-160% 50%}}
@media (max-width:1080px) {
  .dt-unified-public .dt-v11-sol-hero-grid {grid-template-columns:1fr}
  .dt-unified-public .dt-v11-sol-stage {width:min(100%,620px);margin-inline:auto}
  .dt-unified-public .dt-refresh-services-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:700px) {
  body.dt-unified-public .dt-footer-beam-inner {flex-wrap:wrap;gap:15px;padding-block:23px 27px}
  body.dt-unified-public .dt-footer-beam-copy {flex:1 1 calc(100% - 85px)}
  body.dt-unified-public .dt-footer-beam-icon {height:54px;width:54px;border-radius:14px}
  body.dt-unified-public .dt-footer-beam-button {margin-left:69px;min-height:45px}
  .dt-unified-public .dt-refresh-editor-body {max-height:350px}
  .dt-unified-public .dt-v11-sol-console {transform:none}
}
@media (max-width:560px) {
  .dt-unified-public .dt-refresh-services-grid {grid-template-columns:minmax(0,1fr);gap:14px}
  .dt-unified-public .dt-refresh-service-card {min-height:0;padding:22px 19px 24px}
  .dt-unified-public .dt-refresh-service-icon {margin-bottom:16px}
  .dt-unified-public .dt-refresh-hero .nx-hero-index {gap:7px;font-size:9px}
  .dt-unified-public .dt-refresh-hero .nx-hero-index span {padding:8px;min-height:32px}
  .dt-unified-public .dt-v11-sol-interactive {margin:12px 0 0;gap:7px}
  .dt-unified-public .dt-v11-sol-chip {font-size:10px;padding:9px 7px}
  body.dt-unified-public .dt-footer-beam-button {margin-left:0;width:100%}
  body.dt-unified-public .dt-footer-beam-copy h2 {font-size:20px}
  .dt-unified-public .dt-refresh-editor-top,.dt-unified-public .dt-refresh-editor-bottom {font-size:9px;padding-inline:11px}
  .dt-unified-public .dt-refresh-editor-body {padding-inline:12px}
}
@media (prefers-reduced-motion:reduce) {
  .dt-unified-public .dt-v11-sol-orbit,
  .dt-unified-public .dt-v11-sol-emblem,
  body.dt-unified-public .dt-footer-beam::after,
  body.dt-unified-public .dt-footer-beam-shine {animation:none!important}
  .dt-unified-public .dt-v11-sol-console {transform:none!important;transition:none!important}
  .dt-unified-public .dt-refresh-editor,
  .dt-unified-public .dt-refresh-editor:hover,
  .dt-unified-public .dt-v11-sol-chip,
  body.dt-unified-public .dt-footer-beam-button {transform:none!important;transition:none!important}
}


/* HOME — destaque sequencial das etapas */
.dt-unified-public .dt-refresh-hero .nx-hero-index span {
  opacity: 0;
  transform: translateY(10px) scale(.98);
  animation: dt-home-step-in .58s cubic-bezier(.22,.61,.36,1) forwards;
}
.dt-unified-public .dt-refresh-hero .nx-hero-index span:nth-child(1) { animation-delay: .08s; }
.dt-unified-public .dt-refresh-hero .nx-hero-index span:nth-child(2) { animation-delay: .34s; }
.dt-unified-public .dt-refresh-hero .nx-hero-index span:nth-child(3) { animation-delay: .60s; }
@keyframes dt-home-step-in {
  0% { opacity: 0; transform: translateY(10px) scale(.98); }
  60% { opacity: 1; transform: translateY(-2px) scale(1.01); }
  100% { opacity: 1; transform: translateY(0) scale(1); }
}
@media (prefers-reduced-motion: reduce) {
  .dt-unified-public .dt-refresh-hero .nx-hero-index span {
    opacity: 1;
    transform: none;
    animation: none;
  }
}
