
/* ==========================================================
   IKG — Sprint 1.6 / Refinamento da Home
   ========================================================== */
html{scroll-behavior:smooth;scroll-padding-top:92px}
body{overflow-x:hidden;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
::selection{background:#c89a45;color:#071b35}
.page-anchor{position:absolute;top:0}
.skip-link{position:fixed;z-index:99999;left:1rem;top:1rem;transform:translateY(-180%);padding:.75rem 1rem;border-radius:10px;background:#fff;color:#071b35;font-weight:800;text-decoration:none;box-shadow:0 10px 30px #0003;transition:transform .2s}
.skip-link:focus{transform:none}
:focus-visible{outline:2px solid #c89a45;outline-offset:4px;border-radius:4px}
.scroll-progress{position:fixed;z-index:9998;left:0;right:0;top:0;height:2px;pointer-events:none;background:transparent}
.scroll-progress i{display:block;width:0;height:100%;background:linear-gradient(90deg,#b78739,#e5c984);box-shadow:0 0 12px #d8b56d88}
.back-to-top{position:fixed;z-index:5000;right:clamp(1rem,2vw,2rem);bottom:clamp(1rem,2vw,2rem);width:48px;height:48px;display:grid;place-items:center;border:1px solid rgba(229,201,132,.28);border-radius:50%;background:rgba(7,27,53,.88);backdrop-filter:blur(14px);color:#e5c984;font-size:1.1rem;box-shadow:0 12px 32px rgba(7,27,53,.18);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(12px);transition:.3s}
.back-to-top.is-visible{opacity:1;visibility:visible;transform:none}.back-to-top:hover{background:#0d2a4d;border-color:#e5c984;transform:translateY(-2px)}
/* Reveal progressivo */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .72s cubic-bezier(.2,.8,.2,1),transform .72s cubic-bezier(.2,.8,.2,1)}
.reveal.is-visible{opacity:1;transform:none}
.reveal-delay-1{transition-delay:.08s}.reveal-delay-2{transition-delay:.16s}.reveal-delay-3{transition-delay:.24s}
/* Refinamento de links e mídia */
img{max-width:100%;height:auto}a,button{-webkit-tap-highlight-color:transparent}
a{transition-property:color,background-color,border-color,opacity,transform;transition-duration:.25s}
section{isolation:isolate}
@media(max-width:767px){
  html{scroll-padding-top:72px}
  .back-to-top{width:44px;height:44px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .reveal{opacity:1!important;transform:none!important}
}
@media print{
  .scroll-progress,.back-to-top,.skip-link{display:none!important}
  *{box-shadow:none!important;text-shadow:none!important}
}
