/* BAŞ GRUP V13.3 — FRACTURE / ASSEMBLE */
.loader.fracture-intro{position:fixed;inset:0;z-index:990;isolation:isolate;background:#061126;overflow:hidden;display:grid;place-items:center;opacity:1;visibility:visible;transition:opacity .6s ease,visibility .6s ease;cursor:default}
.fracture-intro::before{content:"";position:absolute;inset:-40%;background:radial-gradient(ellipse at 50% 50%,rgba(0,64,255,.22),transparent 43%);animation:fractureGlow 3.2s ease both;pointer-events:none}
.fracture-intro .fx-grain{position:absolute;inset:0;opacity:.28;background-image:linear-gradient(90deg,transparent 49.95%,rgba(210,160,255,.07) 50%,transparent 50.05%),linear-gradient(0deg,transparent 49.95%,rgba(210,160,255,.05) 50%,transparent 50.05%);background-size:clamp(40px,6vw,90px) clamp(40px,6vw,90px);pointer-events:none}
.fracture-intro .fx-ring{position:absolute;left:50%;top:50%;width:min(740px,87vw);aspect-ratio:1;transform:translate(-50%,-50%) scale(.45);border:1px solid rgba(91,153,255,.0);border-radius:50%;opacity:0;pointer-events:none;animation:ringBurst 1.1s 1.63s ease-out both}
.fracture-intro .fx-ring.ring-two{width:min(980px,108vw);animation-delay:1.81s;opacity:.65}
.fracture-intro .fx-assembly{position:relative;width:min(680px,84vw);aspect-ratio:3.4 / 1;isolation:isolate;perspective:980px;filter:drop-shadow(0 0 30px rgba(22,82,239,.2));z-index:2}
.fracture-intro .fx-piece{position:absolute;inset:0;background-image:var(--logo-url);background-position:center;background-size:100% 100%;background-repeat:no-repeat;clip-path:polygon(var(--clip));opacity:0;will-change:transform,filter,opacity;transform:translate3d(var(--dx),var(--dy),var(--dz)) rotate(var(--rot)) scale(var(--scale));filter:blur(12px) brightness(1.45);animation:fractureAssemble var(--duration) var(--delay) cubic-bezier(.18,.82,.2,1.06) forwards}
.fracture-intro .fx-complete{position:absolute;inset:0;background-image:var(--logo-url);background-size:contain;background-position:center;background-repeat:no-repeat;opacity:0;animation:finalMark .35s 2.08s forwards}
.fracture-intro .fx-glint{position:absolute;z-index:3;inset:0;opacity:0;pointer-events:none;background:linear-gradient(110deg,transparent 34%,rgba(255,255,255,.0) 43%,rgba(255,255,255,.65) 49%,rgba(78,139,255,.55) 51%,transparent 60%);mix-blend-mode:screen;transform:translateX(-120%);animation:glintPass .72s 2.08s ease-out forwards}
.fracture-intro .fx-sub{position:absolute;z-index:3;top:calc(50% + min(10vw,115px));left:5%;right:5%;text-align:center;color:#9ec2ff;letter-spacing:.43em;font:600 clamp(8px,.74vw,11px) Manrope,sans-serif;opacity:0;animation:subReveal .6s 2.16s ease forwards}
.fracture-intro .fx-status{position:absolute;z-index:3;bottom:6%;left:6%;color:#86a1cb;font:600 10px Manrope,sans-serif;letter-spacing:.25em;text-transform:uppercase}
.fracture-intro .fx-skip{position:absolute;z-index:6;bottom:5%;right:5%;border:1px solid rgba(145,185,255,.5);background:rgba(255,255,255,.035);color:#fff;padding:11px 18px;border-radius:999px;font:600 11px Manrope,sans-serif;letter-spacing:.1em;cursor:pointer;transition:background .2s,border-color .2s}
.fracture-intro .fx-skip:hover,.fracture-intro .fx-skip:focus-visible{background:rgba(30,102,255,.23);border-color:#7caaff}
.fracture-intro .fx-curtain{position:absolute;inset:0;z-index:4;width:50.1%;background:linear-gradient(115deg,#091a36,#0a2b61 75%,#123d87);border-right:1px solid rgba(93,147,255,.46);pointer-events:none;transform:translateX(-101%)}
.fracture-intro .fx-curtain.right{left:50%;border-right:none;border-left:1px solid rgba(93,147,255,.46);transform:translateX(101%)}
.fracture-intro.depart .fx-curtain.left{animation:curtainLeft .8s cubic-bezier(.65,0,.2,1) both}
.fracture-intro.depart .fx-curtain.right{animation:curtainRight .8s cubic-bezier(.65,0,.2,1) both}
.fracture-intro.depart .fx-assembly,.fracture-intro.depart .fx-sub{transition:opacity .25s ease;opacity:0}
.fracture-intro.depart{background:transparent;transition:background .2s .4s}
.fracture-intro.hide{opacity:0;visibility:hidden;pointer-events:none}
@keyframes fractureAssemble{0%{opacity:0;transform:translate3d(var(--dx),var(--dy),var(--dz)) rotate(var(--rot)) scale(var(--scale));filter:blur(14px) brightness(1.6)}35%{opacity:1}80%{opacity:1;filter:blur(0) brightness(1.12)}100%{opacity:1;transform:translate3d(0,0,0) rotate(0) scale(1);filter:blur(0) brightness(1)}}
@keyframes finalMark{to{opacity:1}}
@keyframes glintPass{10%{opacity:1}80%{opacity:1}100%{opacity:0;transform:translateX(120%)}}
@keyframes ringBurst{0%{opacity:0;transform:translate(-50%,-50%) scale(.45);border-color:rgba(91,151,255,.85)}20%{opacity:.8}100%{opacity:0;transform:translate(-50%,-50%) scale(1.18);border-color:transparent}}
@keyframes subReveal{to{opacity:1}}
@keyframes fractureGlow{from{opacity:.1;transform:scale(.65)}to{opacity:1;transform:scale(1)}}
@keyframes curtainLeft{0%{transform:translateX(-101%)}45%{transform:translateX(0)}70%{transform:translateX(0)}100%{transform:translateX(-101%)}}
@keyframes curtainRight{0%{transform:translateX(101%)}45%{transform:translateX(0)}70%{transform:translateX(0)}100%{transform:translateX(101%)}}
@media(max-width:600px){.fracture-intro .fx-assembly{width:92vw}.fracture-intro .fx-sub{top:calc(50% + 14vw);letter-spacing:.17em}.fracture-intro .fx-status{bottom:12%;font-size:8px;left:5%}.fracture-intro .fx-skip{bottom:4%}}
@media(prefers-reduced-motion:reduce){.fracture-intro *,.fracture-intro::before{animation:none!important;transition:none!important}.fracture-intro .fx-piece,.fracture-intro .fx-ring,.fracture-intro .fx-curtain{display:none}.fracture-intro .fx-complete{opacity:1}.fracture-intro .fx-sub{opacity:1}}

.fracture-intro{background:#04102e!important}
.fracture-intro::before{background:radial-gradient(ellipse at center,rgba(0,73,255,.27),transparent 48%)!important}
.fracture-intro .fx-ring{animation-name:ringBurst;}
.fracture-intro .fx-glint{background:linear-gradient(110deg,transparent 34%,transparent 43%,rgba(255,255,255,.72) 49%,rgba(58,135,255,.68) 51%,transparent 60%)}
.fracture-intro .fx-sub{color:#99beff}.fracture-intro .fx-skip:hover{background:#1354ff44}

/* V13.5.5 – keep assembled mark visible while pieces converge */
.fracture-intro .fx-assembly{min-height:85px}
.fracture-intro .fx-complete{background-image:url("images/logo-blue-white.png");animation:finalMark .35s 1.65s both}
.fracture-intro .fx-piece{background-image:url("images/logo-blue-white.png")}
