:root {
  --sifin-motion-out: cubic-bezier(.23, 1, .32, 1);
  --sifin-motion-in-out: cubic-bezier(.77, 0, .175, 1);
}
.sifin-motion-hero { isolation: isolate; overflow: clip !important; }
.sifin-motion-photo { position: absolute; inset: 0; z-index: -1; pointer-events: none; transform-origin: center; }
.sifin-motion-button { transition: transform 120ms var(--sifin-motion-out), background-color 180ms ease, color 180ms ease !important; }
.sifin-motion-button[data-sifin-pressed] { transform: scale(.98) !important; }
.sifin-motion-world { position: relative; isolation: isolate; transition: transform 220ms var(--sifin-motion-out), background-color 220ms ease !important; }
.sifin-motion-world > .et_pb_heading { position: relative; z-index: 2; transition: transform 220ms var(--sifin-motion-out); }
.sifin-motion-light, .sifin-motion-depth { position: absolute; inset: 0; border-radius: inherit; pointer-events: none; opacity: 0; transition: opacity 220ms var(--sifin-motion-out); }
.sifin-motion-light { z-index: 1; background: linear-gradient(140deg, rgb(255 255 255 / 19%), rgb(255 255 255 / 4%) 60%, transparent); box-shadow: inset 0 1px 0 rgb(255 255 255 / 28%); }
.sifin-motion-depth { z-index: -1; box-shadow: 0 1rem 1.75rem rgb(0 55 102 / 24%); }
.sifin-motion-action { position: absolute; z-index: 2; bottom: clamp(1rem, 1.5vw, 1.5rem); left: clamp(1rem, 1.5vw, 1.5rem); right: clamp(1rem, 1.5vw, 1.5rem); display: flex; align-items: center; justify-content: space-between; gap: .75rem; color: white; font-size: clamp(.875rem, .75rem + .3vw, 1.0625rem); line-height: 1.3; font-weight: 300; opacity: 0; transform: translateY(.5rem); pointer-events: none; transition: opacity 180ms var(--sifin-motion-out), transform 180ms var(--sifin-motion-out); }
.sifin-motion-action i { display: grid; place-items: center; flex: 0 0 auto; width: 2rem; height: 2rem; border: 1px solid rgb(255 255 255 / 28%); border-radius: 50%; font: inherit; font-size: 1.5rem; }
@media (hover: hover) and (pointer: fine) {
  .sifin-motion-world[data-sifin-inview="true"]:hover { transform: translateY(-4px); }
  .sifin-motion-world[data-sifin-inview="true"]:hover > .et_pb_heading { transform: translateY(-4px); }
  .sifin-motion-world[data-sifin-inview="true"]:hover > .sifin-motion-light,
  .sifin-motion-world[data-sifin-inview="true"]:hover > .sifin-motion-depth,
  .sifin-motion-world[data-sifin-inview="true"]:hover > .sifin-motion-action { opacity: 1; }
  .sifin-motion-world[data-sifin-inview="true"]:hover > .sifin-motion-action { transform: none; }
}
.sifin-motion-world:focus-within > .sifin-motion-action { opacity: 1; transform: none; transition: none; }
.sifin-motion-world:not([data-sifin-inview="true"]), .sifin-motion-world:not([data-sifin-inview="true"]) > .et_pb_heading { transform: none !important; transition: none !important; }
.sifin-motion-world:not([data-sifin-inview="true"]) > :is(.sifin-motion-light, .sifin-motion-depth, .sifin-motion-action) { opacity: 0; transition: none; }
.sifin-motion-history-track { position: absolute; display: block; pointer-events: none; background: #dce5ed; }
.sifin-motion-history-progress { position: absolute; inset: 0; display: block; background: #00559d; }
.sifin-motion-document { padding: 0; margin: auto; width: min(68rem, calc(100vw - 4rem)); max-width: none; height: calc(100dvh - 4rem); max-height: none; border: 1px solid #d6e0e8; border-radius: .5rem; background: white; color: #00559d; box-shadow: 0 2rem 6rem rgb(0 30 60 / 25%); }
.sifin-motion-document[open] { display: flex; flex-direction: column; }
.sifin-motion-document::backdrop { background: rgb(9 29 49 / 66%); }
.sifin-motion-document header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: clamp(.75rem, 1vw, 1.25rem); border-bottom: 1px solid #e3e9ee; }
.sifin-motion-document h2 { padding: 0; margin: 0; color: inherit; font-size: clamp(1.125rem, 1rem + .4vw, 1.5rem); line-height: 1.25; }
.sifin-motion-document button { flex: 0 0 auto; width: 2.5rem; height: 2.5rem; padding: 0; border: 1px solid #d4dfe8; border-radius: 50%; color: #00559d; background: white; font: 300 1.75rem/1 sans-serif; cursor: pointer; }
.sifin-motion-document iframe { flex: 1; min-height: 0; width: 100%; border: 0; background: #e9edf1; }
.sifin-motion-document button:focus-visible { outline: 2px solid #00559d; outline-offset: 3px; }
html:has(.sifin-motion-document[open]) { overflow: hidden; scrollbar-gutter: stable; }
@media (max-width: 760px) { .sifin-motion-document { width: calc(100vw - 1.5rem); height: calc(100dvh - 1.5rem); } }
@media (prefers-reduced-motion: reduce) {
  .sifin-motion-button, .sifin-motion-world, .sifin-motion-world > .et_pb_heading, .sifin-motion-action { transform: none !important; transition-property: color, background-color, opacity !important; }
}
