/* Local visual revision. Original palette, content and behavior are retained.
   Glass highlights use existing white and navy, never a new theme or hue. */
body.home-ios-polish {
  --glass-edge: inset 0 1px 0 #ffffff65, inset 0 -1px 0 #ffffff12;
}
.home-ios-polish #main-navigation .nav-link::after { display: none; }
html body.home-ios-polish .video-toggle {
  background: #05152466;
  border: 1px solid #ffffff45;
  border-radius: 999px;
  box-shadow: inset 0 1px 2px #ffffff40, inset 0 -1px 2px #05152420, 0 6px 18px #05152418;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}
html body.home-ios-polish .training-request-callout {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border: 1px solid #ffffff30;
  border-radius: 30px;
  box-shadow: inset 0 1px 2px #ffffff45, inset 0 -1px 1px #ffffff12, 0 12px 30px #05152420;
  backdrop-filter: blur(22px);
  -webkit-backdrop-filter: blur(22px);
}
html body.home-ios-polish .training-request-callout::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  pointer-events: none;
  background: radial-gradient(ellipse 360px 220px at var(--ios-light-x,50%) var(--ios-light-y,25%),#ffffff20,transparent 74%);
  opacity: 0;
  transition: opacity .3s ease;
}
html body.home-ios-polish .training-request-callout:focus-within::before { opacity: 1; }
html body.home-ios-polish .training-request-callout .button {
  box-shadow: inset 0 1px 2px #ffffff65, inset 0 -1px 2px #05152420, 0 8px 20px #05152416;
}
@media(hover:hover) and (pointer:fine) {
  html body.home-ios-polish .training-request-callout:hover::before { opacity: 1; }
}
@media(prefers-reduced-motion:no-preference) {
  .home-ios-polish #servicos .ios-icon-formed .service-icon svg {
    animation: ios-icon-settle .7s cubic-bezier(.2,.65,.3,1) both;
  }
  .home-ios-polish #servicos .ios-icon-formed .service-icon svg :is(path,rect,circle,line,polyline,polygon,ellipse) {
    animation: ios-icon-draw .95s ease-out both;
  }
}
@keyframes ios-icon-settle {
  from { opacity: .35; transform: translateY(5px) scale(.92); }
  to { opacity: 1; transform: none; }
}
@keyframes ios-icon-draw {
  from { stroke-dasharray: var(--ios-stroke-length); stroke-dashoffset: var(--ios-stroke-length); }
  to { stroke-dasharray: var(--ios-stroke-length); stroke-dashoffset: 0; }
}
@media(prefers-reduced-motion:reduce) {
  .home-ios-polish .training-request-callout::before { transition: none; }
}
@media(prefers-reduced-transparency:reduce) {
  html body.home-ios-polish .video-toggle { background: #051524e6; }
  html body.home-ios-polish :is(.video-toggle,.training-request-callout) { backdrop-filter: none; -webkit-backdrop-filter: none; }
  .home-ios-polish .training-request-callout::before { display: none; }
}
.home-ios-polish #topo {
  background: transparent;
  border: 0;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
.home-ios-polish #topo .header-inner {
  position: relative;
  width: min(calc(100% - 32px),1440px);
  height: calc(100% - 8px);
  margin-top: 8px;
  padding-inline: 24px;
  border-radius: 26px;
  isolation: isolate;
}
.home-ios-polish #topo .header-inner::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  pointer-events: none;
  opacity: 0;
  background: rgba(5,21,36,.64);
  border: 1px solid #ffffff35;
  box-shadow: inset 0 2px 3px #ffffff26, inset 0 -1px 2px #ffffff12, 0 10px 30px #05152429;
  backdrop-filter: blur(28px);
  -webkit-backdrop-filter: blur(28px);
  transition: opacity .3s ease;
}
.home-ios-polish #topo.scrolled .header-inner::before { opacity: 1; }
.home-ios-polish #topo .scroll-progress { bottom: -8px; }
.home-ios-polish .header-cta {
  box-shadow: inset 0 1px 1px #ffffff85, inset 0 -2px 3px #05152426, 0 6px 18px #05152420;
  border: 1px solid #ffffff30;
}
.home-ios-polish .menu-toggle {
  border-radius: 16px;
  box-shadow: inset 0 1px 0 #ffffff40;
}
html body.home-ios-polish #servicos .service-card {
  border-radius: 30px;
  border: 1px solid #ffffff;
  box-shadow: inset 0 1px 1px #ffffff, inset 0 -1px 0 #071d3308, 0 12px 34px #071d330b;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  transition: transform .25s ease, box-shadow .25s ease;
}
html body.home-ios-polish #servicos .service-card:hover {
  transform: translateY(-4px);
  border-color: #ffffff;
  box-shadow: inset 0 1px 1px #ffffff, 0 20px 42px #071d3318;
}
html body.home-ios-polish #servicos .service-icon {
  border-radius: 18px;
  box-shadow: inset 0 1px 1px #ffffffb3, inset 0 -2px 3px #071d3312, 0 6px 14px #071d330e;
}
html body.home-ios-polish #servico-business .service-icon {
  box-shadow: inset 0 1px 1px #ffffff65, inset 0 -2px 3px #071d3326, 0 6px 14px #071d3318;
}
html body.home-ios-polish .service-card-label svg,
html body.home-ios-polish .course-more svg {
  border: 1px solid #ffffff20;
  box-shadow: inset 0 1px 1px #ffffff40, inset 0 -1px 1px #071d3312, 0 4px 12px #071d330a;
  transition: transform .2s ease;
}
html body.home-ios-polish #capacitacoes .course {
  border-radius: 30px;
  border: 1px solid #ffffff20;
  box-shadow: inset 0 1px 0 #ffffff30, inset 0 -1px 0 #ffffff10, 0 14px 30px #05152424;
  overflow: hidden;
}
html body.home-ios-polish #capacitacoes .course-body {
  position: relative;
  isolation: isolate;
  padding: 16px 22px 14px;
  box-shadow: inset 0 1px 0 #ffffff20;
}
html body.home-ios-polish #capacitacoes .course h3 { margin-bottom: 10px; }
html body.home-ios-polish #capacitacoes .course p { margin-bottom: 12px; }
html body.home-ios-polish #capacitacoes .course-more { padding-top: 8px; }
html body.home-ios-polish #capacitacoes .course-body::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 0 0 29px 29px;
  box-shadow: inset 12px 0 24px -24px #ffffff55;
  pointer-events: none;
  z-index: -1;
  background: radial-gradient(ellipse 300px 220px at var(--ios-light-x,50%) var(--ios-light-y,25%),#ffffff1c,transparent 72%);
  opacity: 0;
  transition: opacity .3s ease;
}
html body.home-ios-polish #capacitacoes .course:hover {
  box-shadow: inset 0 1px 0 #ffffff40, 0 18px 38px #05152435;
}
html body.home-ios-polish :is(#capacitacoes,#resultados) .rail-controls { gap: 12px; }
html body.home-ios-polish :is(#capacitacoes,#resultados) .rail-controls button {
  display: grid;
  place-items: center;
  position: relative;
  width: 46px;
  height: 46px;
  padding: 0;
  font-size: 0;
  border-radius: 50%;
  box-shadow: inset 0 1px 1px #ffffff50, inset 0 -1px 2px #05152424, 0 5px 14px #05152414;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.home-ios-polish .rail-controls button::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  pointer-events: none;
  width: 20px;
  height: 20px;
  background: currentColor;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m8.5 5 7 7-7 7' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
}
.home-ios-polish .rail-controls button[data-rail-direction="previous"]::before { transform: translate(-50%,-50%) rotate(180deg); }
.home-ios-polish .rail-controls button:active { transform: scale(.94); }
html body.home-ios-polish #servicos .service-card {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}
html body.home-ios-polish #servicos .service-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  pointer-events: none;
  background: radial-gradient(ellipse 260px 200px at var(--ios-light-x,50%) var(--ios-light-y,25%),#ffffffcc,transparent 75%);
  opacity: 0;
  transition: opacity .3s ease;
}
html body.home-ios-polish .hero-actions .button-gold {
  border: 1px solid #ffffff35;
  border-radius: 999px;
  box-shadow: inset 0 1px 2px #ffffff70, inset 0 -1px 2px #05152418, 0 6px 16px #05152412;
}
html body.home-ios-polish #servicos .service-card:focus-visible::before,
html body.home-ios-polish #capacitacoes .course:focus-visible .course-body::before { opacity: 1; }
@media(hover:hover) and (pointer:fine) {
  html body.home-ios-polish #servicos .service-card:hover::before,
  html body.home-ios-polish #capacitacoes .course:hover .course-body::before { opacity: 1; }
}
@media(prefers-reduced-motion:reduce) {
  html body.home-ios-polish #servicos .service-card::before,
  html body.home-ios-polish #capacitacoes .course-body::before { transition: none; }
}
@media(prefers-reduced-transparency:reduce) {
  html body.home-ios-polish #servicos .service-card::before,
  html body.home-ios-polish #capacitacoes .course-body::before { display: none; }
}
html body.home-ios-polish #resultados .stat {
  border-radius: 30px;
  box-shadow: inset 0 1px 1px #ffffff45, inset 0 -1px 1px #ffffff10, 0 16px 34px #0515241a;
  backdrop-filter: blur(22px);
  -webkit-backdrop-filter: blur(22px);
}
html body.home-ios-polish #resultados .result-icon {
  border-radius: 17px;
  box-shadow: inset 0 1px 1px #ffffff45, inset 0 -1px 2px #05152426, 0 5px 14px #05152416;
}
@media(max-width:980px) {
  .home-ios-polish #topo .header-inner { padding-inline: 16px; }
  .home-ios-polish #topo .desktop-nav { border-radius: 0 0 24px 24px; }
}
@media(max-width:600px) {
  .home-ios-polish #topo .header-inner { width: calc(100% - 16px); border-radius: 22px; padding-inline: 12px; }
  html body.home-ios-polish #servicos .service-card,
  html body.home-ios-polish #capacitacoes .course,
  html body.home-ios-polish #resultados .stat { border-radius: 25px; }
}

/* Light follows the pointer, as on For Business. No text or base color changes. */
html body.home-ios-polish :is(.about-panel,#resultados .stat,.contact-card) {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border: 1px solid #ffffff30;
  border-radius: 30px;
  box-shadow: inset 0 1px 2px #ffffff45, inset 0 -1px 1px #ffffff12, 0 16px 38px #071d331a;
  transition: box-shadow .25s ease;
}
html body.home-ios-polish :is(.about-panel,#resultados .stat,.contact-card)::before {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  width: auto;
  border-radius: inherit;
  pointer-events: none;
  z-index: -1;
  background: radial-gradient(ellipse 360px 260px at var(--ios-light-x,50%) var(--ios-light-y,25%),#ffffff26, #ffffff08 46%,transparent 74%);
  opacity: 0;
  transition: opacity .3s ease;
}
html body.home-ios-polish :is(.about-panel,#resultados .stat,.contact-card):focus-within::before { opacity: 1; }
html body.home-ios-polish .contact-card { backdrop-filter: blur(22px); -webkit-backdrop-filter: blur(22px); }
html body.home-ios-polish .contact-card .button {
  border: 1px solid #ffffff35;
  box-shadow: inset 0 1px 2px #ffffff65, inset 0 -1px 2px #05152420, 0 8px 20px #05152416;
}
html body.home-ios-polish #topo .services-menu {
  background: linear-gradient(145deg,#15324ac2,#071d33d1);
  border-radius: 24px;
  padding: 12px;
  border: 1px solid #ffffff45;
  box-shadow: inset 0 1px 2px #ffffff30, inset 0 -1px 1px #ffffff10, 0 20px 50px #05152440;
  backdrop-filter: blur(28px);
  -webkit-backdrop-filter: blur(28px);
}
html body.home-ios-polish #topo .services-menu a {
  border-radius: 15px;
  transition: box-shadow .2s ease, transform .2s ease;
}
html body.home-ios-polish #topo .services-menu a:hover,
html body.home-ios-polish #topo .services-menu a:focus-visible {
  box-shadow: inset 0 1px 1px #ffffff30, inset 0 -1px 1px #ffffff12;
}
html body.home-ios-polish #topo .services-menu-icon {
  border: 1px solid #ffffff20;
  border-radius: 11px;
  box-shadow: inset 0 1px 1px #ffffff28;
}
@media(hover:hover) and (pointer:fine) {
  html body.home-ios-polish :is(.about-panel,#resultados .stat,.contact-card):hover::before { opacity: 1; }
  html body.home-ios-polish :is(.about-panel,#resultados .stat,.contact-card):hover {
    box-shadow: inset 0 1px 2px #ffffff60, inset 0 -1px 1px #ffffff18, 0 20px 44px #071d3324;
  }
}
@media(max-width:600px) {
  html body.home-ios-polish :is(.about-panel,#resultados .stat,.contact-card) { border-radius: 25px; }
}
@media(prefers-reduced-motion:reduce) {
  html body.home-ios-polish :is(.about-panel,#resultados .stat,.contact-card),
  html body.home-ios-polish :is(.about-panel,#resultados .stat,.contact-card)::before,
  html body.home-ios-polish #topo .services-menu a { transition: none; }
}
@media(prefers-reduced-transparency:reduce) {
  .home-ios-polish #topo .header-inner::before { background: rgba(5,21,36,.92); }
  html body.home-ios-polish :is(.about-panel,#resultados .stat,.contact-card)::before { display: none; }
  html body.home-ios-polish :is(.contact-card,#topo .services-menu) { backdrop-filter: none; -webkit-backdrop-filter: none; }
}
@media(prefers-reduced-motion:reduce) {
  .home-ios-polish #topo .header-inner::before,
  html body.home-ios-polish #servicos .service-card,
  html body.home-ios-polish .rail-controls button { transition: none; }
  html body.home-ios-polish #servicos .service-card:hover,
  .home-ios-polish .rail-controls button:active { transform: none; }
}
@media(prefers-reduced-transparency:reduce) {
  .home-ios-polish #topo .header-inner::before,
  html body.home-ios-polish #servicos .service-card,
  html body.home-ios-polish #resultados .stat,
  html body.home-ios-polish .rail-controls button { backdrop-filter: none; -webkit-backdrop-filter: none; }
}
