/* Hostinger / MySQL public site. All content remains visible without JS. */
:root { --sm-loaded: 1; --sm-ease: cubic-bezier(.19,1,.22,1); }
.brand-preloader { display:none !important; }
html:not([data-sm-motion="full"]) :is(.motion-reveal,.motion-stagger-item,.journey-image,.motion-image-reveal,.motion-image-reveal-inner,[data-reveal]),
html[data-sm-motion="full"] :is(.motion-reveal,.motion-stagger-item,.journey-image,.motion-image-reveal,.motion-image-reveal-inner,[data-reveal]):not(.sm-block):not(.sm-media):not(.sm-heading) {
  opacity:1 !important; transform:none !important; filter:none !important; clip-path:none !important;
}
html { scroll-padding-top:110px; }
html[data-sm-motion="full"] { scroll-behavior:smooth; }
.sm-intro[hidden] { display:none; }
.sm-intro { position:fixed; inset:0; z-index:10000; color:#30153f; display:grid; place-items:center; isolation:isolate; pointer-events:none; animation:sm-release 1ms 4s forwards; }
.sm-intro::before,.sm-intro::after { content:""; position:absolute; inset:0; z-index:-1; background:#f7f2e8; transition:transform 1.05s var(--sm-ease); }
.sm-intro::before { clip-path:polygon(0 0,100% 0,100% 50.15%,0 50.15%); }
.sm-intro::after { clip-path:polygon(0 49.85%,100% 49.85%,100% 100%,0 100%); }
.sm-intro.is-exiting::before { transform:translateY(-101%); }
.sm-intro.is-exiting::after { transform:translateY(101%); }
.sm-intro-top,.sm-intro-bottom { position:absolute; left:clamp(24px,5vw,84px); right:clamp(24px,5vw,84px); display:flex; justify-content:space-between; gap:20px; align-items:center; font:600 11px/1.5 Manrope,Arial,sans-serif; letter-spacing:.18em; text-transform:uppercase; }
.sm-intro-top { top:34px; }
.sm-intro-bottom { bottom:34px; align-items:flex-end; }
.sm-intro-brand { display:flex; align-items:center; gap:13px; }
.sm-intro-brand img { width:42px; height:42px; object-fit:contain; }
.sm-intro-brand strong { font-size:14px; }
.sm-intro-brand small { display:block; font-size:9px; color:#946207; letter-spacing:.33em; }
.sm-intro-edition { color:#78647f; text-align:right; }
.sm-intro-stage { position:relative; width:min(100%,1100px); padding:40px 22px; text-align:center; }
.sm-intro-ring { position:absolute; left:50%; top:50%; width:min(62vw,470px); aspect-ratio:1; border:1px solid #d8951940; border-radius:50%; transform:translate(-50%,-50%) scale(.82); animation:sm-orbit-open 1.8s var(--sm-ease) both; }
.sm-intro-ring::before { content:""; position:absolute; inset:18px; border:1px solid #30153f0b; border-radius:50%; }
.sm-intro-ring::after { content:""; position:absolute; width:10px; height:10px; border-radius:50%; background:#d89519; top:15%; right:12%; box-shadow:0 0 30px #d8951960; }
.sm-intro-kicker { position:relative; display:block; font:500 10px Manrope,Arial,sans-serif; letter-spacing:.3em; text-transform:uppercase; color:#8c6f46; margin:0 0 28px; }
.sm-intro-words { position:relative; height:1.27em; font:400 clamp(42px,8.8vw,125px)/1.2 Newsreader,Georgia,serif; letter-spacing:-.05em; overflow:hidden; }
.sm-intro-words span { display:block; position:absolute; inset:0; transform:translateY(110%); }
.sm-intro-words span:nth-child(1) { animation:sm-intro-word .75s var(--sm-ease) 0s both; }
.sm-intro-words span:nth-child(2) { animation:sm-intro-word .75s var(--sm-ease) .5s both; }
.sm-intro-words span:nth-child(3) { animation:sm-intro-last .8s var(--sm-ease) 1s both; }
.sm-intro-caption { position:relative; font:400 15px/1.6 Newsreader,Georgia,serif; margin:20px 0 0; color:#716078; animation:sm-intro-caption 1.5s ease both; }
.sm-intro-track { height:2px; width:min(240px,32vw); background:#30153f19; margin-top:14px; overflow:hidden; }
.sm-intro-track i { display:block; width:100%; height:100%; background:#d89519; transform-origin:left; animation:sm-track 1.8s var(--sm-ease) both; }
.sm-intro-skip { pointer-events:auto; background:transparent; border:0; border-bottom:1px solid #30153f44; padding:8px 0; color:inherit; font:inherit; letter-spacing:inherit; cursor:pointer; }
.sm-intro.is-exiting .sm-intro-stage,.sm-intro.is-exiting .sm-intro-top,.sm-intro.is-exiting .sm-intro-bottom { opacity:0; transform:translateY(-18px); transition:opacity .3s ease,transform .4s var(--sm-ease); }
.sm-word-mask { display:inline-block; vertical-align:top; padding-bottom:.16em; margin-bottom:-.16em; overflow:clip; }
.sm-word { display:inline-block; transform-origin:0 100%; }
.immersive-home .world-hero h1 .sm-word-mask,.immersive-home .world-hero h1 .sm-word { display:inline-block; }
.hero-sequence .world-hero-copy > * { animation:none !important; }
html[data-sm-motion="full"] .sm-heading.sm-wait .sm-word { transform:translateY(114%) rotate(3deg); opacity:0; }
html[data-sm-motion="full"] .sm-heading.sm-shown .sm-word { animation:sm-word-in .95s var(--sm-ease) calc(var(--sm-word,0) * 32ms) both; }
html[data-sm-motion="full"] .sm-block.sm-wait { opacity:0 !important; transform:translate3d(0,48px,0) !important; }
html[data-sm-motion="full"] .sm-block.sm-shown,html[data-sm-motion="full"] .hero-sequence .world-hero-copy > .sm-block.sm-shown { animation:sm-block-in .95s var(--sm-ease) var(--sm-delay,0ms) both !important; }
/* A fully clipped observed target never intersects in WebKit. Hide with
   opacity first, then start its mask only after the observer has fired. */
html[data-sm-motion="full"] .sm-media.sm-wait { opacity:0 !important; }
html[data-sm-motion="full"] .sm-media.sm-shown { opacity:1 !important; animation:sm-media-in 1.35s var(--sm-ease) var(--sm-delay,0ms) both; }
.sm-media { overflow:clip; }
html[data-sm-motion="full"] :is(.sm-block,.sm-media,.sm-heading) { transition:none !important; }
.sm-media img { transform-origin:50% 50%; }
html[data-sm-motion="full"] .sm-media.sm-shown > img { animation:sm-image-settle 1.6s var(--sm-ease) both; }
html[data-sm-motion="full"] .sm-hero-photo { animation:sm-hero-photo 1.65s var(--sm-ease) both; }
.sm-motion-controls { display:flex; flex-wrap:wrap; gap:10px 24px; padding-top:24px; margin-top:24px; border-top:1px solid #ffffff26; font:500 12px/1.5 Manrope,Arial,sans-serif; }
.sm-motion-controls button { appearance:none; background:none; color:inherit; border:0; border-bottom:1px solid currentColor; padding:6px 0; font:inherit; cursor:pointer; }
.sm-motion-controls button:focus-visible,.sm-intro-skip:focus-visible { outline:2px solid #d89519; outline-offset:5px; }
.sm-motion-enable { position:fixed; bottom:20px; right:20px; z-index:45; border:1px solid #d8951977; border-radius:100px; background:#f7f2e8; color:#30153f; box-shadow:0 5px 24px #211d2420; padding:12px 18px; cursor:pointer; font:600 12px/1.4 Manrope,Arial,sans-serif; }
.sm-motion-enable:focus-visible { outline:2px solid #d89519; outline-offset:4px; }
.sm-transition { position:fixed; z-index:9999; inset:0; background:var(--ivory,#f7f2e8); pointer-events:none; clip-path:inset(100% 0 0); transition:clip-path .3s var(--sm-ease); }
.sm-transition::after { content:"SANKORE INSTITUTE"; position:absolute; inset:0; display:grid; place-items:center; color:var(--aub,#30153f); font:600 12px Manrope,Arial,sans-serif; letter-spacing:.22em; }
.sm-transition.is-leaving { clip-path:inset(0); }
html[data-sm-motion="full"] .stories-viewport { overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; overscroll-behavior-x:contain; }
.stories-viewport::-webkit-scrollbar { display:none; }
.field-story { scroll-snap-align:start; }
.stories-track { touch-action:pan-x pan-y pinch-zoom; }
.journey-visual { overflow:hidden; }
.sm-journey-frame { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.journey-image .journey-photo-meta { z-index:3; }
.journey-image .journey-image-shade { z-index:2; }
.journey-steps li { transition:opacity .5s ease,background .5s ease,border-color .5s ease !important; }
.journey-progress span { transition:transform .45s var(--sm-ease); transform-origin:top; }
html[data-sm-motion="full"] .journey-progress > span { transform:scaleY(var(--sm-journey-progress,.25)) !important; }
html[data-sm-motion="full"] .expertise-world-card,html[data-sm-motion="full"] .story-card,html[data-sm-motion="full"] .team-runtime-card,html[data-sm-motion="full"] .expertise-tile { transition:box-shadow .4s ease,background .4s ease; }
html[data-sm-motion="full"] :is(.expertise-world-card,.story-card,.expertise-tile):hover img { scale:1.045; transition:scale .8s var(--sm-ease); }
html[data-sm-motion="full"] .button,html[data-sm-motion="full"] .header-v2-whatsapp { transition:translate .35s var(--sm-ease),box-shadow .35s ease,background .35s ease; }
html[data-sm-motion="full"] .button:hover,html[data-sm-motion="full"] .header-v2-whatsapp:hover { translate:0 -3px; box-shadow:0 8px 24px #211d2418; }
@keyframes sm-word-in { from{transform:translateY(114%) rotate(3deg);opacity:0} to{transform:none;opacity:1} }
@keyframes sm-block-in { from{opacity:0;translate:0 48px} to{opacity:1;translate:0 0} }
@keyframes sm-media-in { from{clip-path:inset(0 0 100% 0)} to{clip-path:inset(0)} }
@keyframes sm-image-settle { from{scale:1.13} to{scale:1} }
@keyframes sm-hero-photo { from{scale:1.14;filter:brightness(.65)} to{scale:1;filter:brightness(1)} }
@keyframes sm-intro-word { 0%{transform:translateY(110%)} 30%,65%{transform:translateY(0)} 100%{transform:translateY(-110%)} }
@keyframes sm-intro-last { from{transform:translateY(110%)} to{transform:translateY(0)} }
@keyframes sm-intro-caption { 0%,45%{opacity:0;transform:translateY(12px)} 100%{opacity:1;transform:none} }
@keyframes sm-orbit-open { to{transform:translate(-50%,-50%) scale(1) rotate(100deg)} }
@keyframes sm-track { from{transform:scaleX(0)} to{transform:scaleX(1)} }
@keyframes sm-release { to{visibility:hidden;pointer-events:none} }
@media(max-width:700px) {
  .sm-intro-top { top:22px; }
  .sm-intro-bottom { bottom:28px; }
  .sm-intro-edition { display:none; }
  .sm-intro-ring { width:80vw; }
  .sm-intro-caption { font-size:14px; max-width:250px; margin:20px auto 0; }
  .sm-intro-kicker { font-size:9px; }
  .sm-intro-words { font-size:clamp(36px,10.3vw,68px); }
  html[data-sm-motion="full"] .sm-block.sm-wait { transform:translate3d(0,30px,0) !important; }
}
html[data-sm-motion="reduced"] .sm-heading .sm-word,html[data-sm-motion="reduced"] .sm-block,html[data-sm-motion="reduced"] .sm-media { opacity:1 !important; transform:none !important; translate:none !important; clip-path:none !important; animation:none !important; }
html[data-sm-motion="reduced"] .sm-intro,html[data-sm-motion="reduced"] .sm-transition { display:none; }
@media print { .sm-intro,.sm-transition,.sm-motion-controls,.page-progress {display:none!important} .sm-wait,.sm-word {opacity:1!important;transform:none!important;clip-path:none!important} }
:root[data-sm-motion="full"] .sm-world{transition:opacity 850ms ease;transform:none!important;clip-path:none!important}
:root[data-sm-motion="full"] .sm-world.sm-wait{opacity:0}
:root[data-sm-motion="full"] .sm-world.sm-shown{opacity:1}
