/* Adrians Ankunft (arrival-v17), 1:1 uebernommen 16.09.2026. */
.loader.arrival-v17{--sans:'Manrope',Arial,sans-serif}
/* Full-screen arrival: the house mark always stays above its growing scenery. */
html.arrival-active,
html.arrival-active body{overflow:hidden;overscroll-behavior:none}
.loader.arrival-v17{
 --arrival-exit-duration:920ms;
 position:fixed;inset:0;z-index:9999;display:grid;place-items:center;
 overflow:hidden;isolation:isolate;min-height:100svh;
 background:transparent;color:#cfb17a;pointer-events:auto;touch-action:none;
 opacity:1;visibility:visible;clip-path:none;transition:none;
}
.loader.arrival-v17[hidden],
html.internal-entry .loader.arrival-v17,
.no-js .loader.arrival-v17{display:none}
.arrival-v17 .arrival-scene{
 position:absolute;inset:-1px;z-index:1;overflow:hidden;pointer-events:none;
 background:radial-gradient(ellipse at 50% 44%,#4d1524 0,#290b16 45%,#12070b 100%);
 transform:scale(1);opacity:1;will-change:transform,opacity;
 transition:transform var(--arrival-exit-duration) cubic-bezier(.2,.72,.18,1),opacity 720ms ease;
}
.arrival-v17 .arrival-scene::before{
 content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
 background:radial-gradient(ellipse at 18% 12%,#b0424038,transparent 45%),
 radial-gradient(ellipse at 85% 90%,#b2814223,transparent 50%),
 linear-gradient(180deg,#14050970,transparent 24%,transparent 72%,#0c03088c);
}
.arrival-v17 .arrival-film{
 position:absolute;inset:0;width:100%;height:100%;
 z-index:1;overflow:hidden;pointer-events:none;
 animation:aya-arrival-camera 3900ms cubic-bezier(.18,.65,.25,1) both;
}
.arrival-v17 .arrival-film video{
 display:block;width:100%;height:100%;object-fit:cover;object-position:50% 53%;
 opacity:.76;
}
.arrival-v17 .arrival-film canvas{display:block;width:100%;height:100%;opacity:.76}
.arrival-v17 .arrival-halo{
 position:absolute;z-index:4;left:50%;top:49%;translate:-50% -50%;
 width:min(850px,108vw);height:min(650px,78vh);border-radius:50%;pointer-events:none;
 background:radial-gradient(ellipse,#230a14e8 0,#230a14db 23%,#260b16b8 40%,#230a1440 61%,transparent 73%);
}
.arrival-v17 .arrival-petals{position:absolute;inset:0;z-index:3;pointer-events:none}
.arrival-v17 .arrival-petal{
 position:absolute;width:clamp(350px,65vmin,800px);height:auto;max-width:none;
 object-fit:contain;opacity:0;transform-origin:64% 67%;pointer-events:none;

 animation:aya-arrival-unfold 1300ms cubic-bezier(.17,.75,.24,1) var(--delay,0ms) both;
 will-change:transform,opacity;
}
.arrival-v17 .arrival-petal.p1{left:-17vmin;top:-20vmin;--r:-31deg;--from-x:-15vw;--from-y:-15vh;--delay:20ms}
.arrival-v17 .arrival-petal.p2{right:-22vmin;top:-21vmin;--r:105deg;--from-x:15vw;--from-y:-16vh;--delay:120ms}
.arrival-v17 .arrival-petal.p3{left:-24vmin;bottom:-22vmin;--r:217deg;--from-x:-16vw;--from-y:17vh;--delay:210ms}
.arrival-v17 .arrival-petal.p4{right:-18vmin;bottom:-27vmin;--r:51deg;--from-x:15vw;--from-y:17vh;--delay:300ms}
.arrival-v17 .arrival-petal.p5{width:clamp(280px,49vmin,620px);left:-30vmin;top:20%;--r:-48deg;--from-x:-17vw;--from-y:3vh;--delay:380ms}
.arrival-v17 .arrival-petal.p6{width:clamp(280px,50vmin,640px);right:-26vmin;top:27%;--r:142deg;--from-x:18vw;--from-y:-3vh;--delay:450ms}
.arrival-v17 .arrival-drift{
 position:absolute;left:var(--x);top:var(--y);width:var(--size);height:auto;max-width:none;
 opacity:0;pointer-events:none;
 animation:aya-arrival-drift 4600ms cubic-bezier(.22,.45,.58,.9) var(--delay) both;
}
.arrival-v17 .arrival-mote{
 position:absolute;left:var(--x);top:var(--y);width:4px;height:4px;border-radius:50%;opacity:0;
 background:#dfbd77;box-shadow:0 0 10px 2px #dba35165;pointer-events:none;
 animation:aya-arrival-mote 4400ms ease-in-out var(--delay) both;
}
.arrival-v17 .arrival-curtain{
 position:absolute;z-index:0;top:0;bottom:0;width:50.2%;pointer-events:none;
 background:linear-gradient(110deg,#170810,#39101c 65%,#4b1b27);
 transform:translateX(0);will-change:transform;
 transition:transform var(--arrival-exit-duration) cubic-bezier(.76,0,.18,1);
}
.arrival-v17 .arrival-curtain-left{left:0}
.arrival-v17 .arrival-curtain-right{right:0;background:linear-gradient(250deg,#170810,#39101c 65%,#4b1b27)}
.arrival-v17 .arrival-curtain::after{
 content:"";position:absolute;top:0;bottom:0;width:1px;opacity:0;
 background:linear-gradient(180deg,transparent,#c7a56e8c 27%,#e0c690 50%,#c7a56e8c 73%,transparent);
 transition:opacity 250ms ease;
}
.arrival-v17 .arrival-curtain-left::after{right:0}
.arrival-v17 .arrival-curtain-right::after{left:0}
.arrival-v17 .loader-center{
 position:relative;z-index:10;display:flex;align-items:center;flex-direction:column;text-align:center;
 width:min(86vw,560px);padding:0;margin:0;gap:0;inset:auto;transform:translateY(-2vh);
 opacity:1;pointer-events:none;
 transition:opacity 470ms ease,transform 650ms cubic-bezier(.23,.65,.2,1);
}
.arrival-v17 .arrival-brand{
 position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;gap:clamp(23px,3.2vh,36px);
 width:100%;
 animation:aya-arrival-brand 1100ms cubic-bezier(.15,.75,.24,1) both;
}
.arrival-v17 .arrival-mark{
 position:relative;z-index:10;display:block;width:clamp(92px,11.5vmin,146px);height:auto;max-height:none;
 object-fit:contain;margin:0;opacity:1;
}
.arrival-v17 .loader-logo{
 position:relative;z-index:10;display:block;width:clamp(258px,31vw,425px);max-width:100%;height:auto;max-height:none;
 object-fit:contain;margin:0;opacity:1;animation:none;transform:none;
}
.arrival-v17 .loader-progress{
 position:relative;width:148px;height:1px;margin:38px 0 0;overflow:visible;border:0;
 background:#c8a76937;opacity:.94;
}
.arrival-v17 .loader-progress>span{
 display:block;width:0;height:100%;background:linear-gradient(90deg,#b99651,#e5cb8d);
 box-shadow:0 0 9px #d1a34c6b;transition:none;
}
.arrival-v17 .loader-kicker,
.arrival-v17 .loader-greeting,
.arrival-v17 .loader-percent{display:none}
.arrival-v17 .loader-phase{
 position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;border:0;
 clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;overflow:hidden;
}
.arrival-v17 .loader-skip{
 position:absolute;z-index:20;right:max(5vw,20px);bottom:max(4vh,env(safe-area-inset-bottom,0px) + 14px);
 display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:44px;
 padding:10px 3px;color:#dfc38d;background:transparent;border:0;border-bottom:1px solid #c3a5715c;
 border-radius:0;font-family:var(--sans,Arial,sans-serif);font-size:11px;font-weight:400;line-height:1.4;
 letter-spacing:.035em;pointer-events:auto;cursor:pointer;opacity:1;
 transition:opacity 250ms ease,color 200ms ease;
}
.arrival-v17 .loader-skip>span{font-size:17px;line-height:1}
.arrival-v17 .loader-skip:hover{color:#ffe7b8}
.arrival-v17 .loader-skip:focus-visible{outline:2px solid #e9cc91;outline-offset:7px}
.loader.arrival-v17.dismiss{opacity:1;visibility:visible;clip-path:none;pointer-events:auto}
.arrival-v17.dismiss .arrival-scene{transform:scale(1.17);opacity:0}
.arrival-v17.dismiss .arrival-scene *{animation-play-state:paused}
.arrival-v17.dismiss .arrival-curtain-left{transform:translateX(-101%)}
.arrival-v17.dismiss .arrival-curtain-right{transform:translateX(101%)}
.arrival-v17.dismiss .arrival-curtain::after{opacity:.85}
.arrival-v17.dismiss .loader-center{opacity:0;transform:translateY(-5vh) scale(1.05)}
.arrival-v17.dismiss .loader-skip{opacity:0;pointer-events:none}
@keyframes aya-arrival-camera{
 from{transform:scale(1.14) translateY(2%);opacity:.25}
 25%{opacity:.94}
 to{transform:scale(1) translateY(0);opacity:1}
}
@keyframes aya-arrival-unfold{
 from{opacity:0;transform:translate(var(--from-x),var(--from-y)) rotate(calc(var(--r) - 12deg)) scale(.62)}
 to{opacity:.94;transform:translate(0,0) rotate(var(--r)) scale(1)}
}
@keyframes aya-arrival-brand{
 from{transform:translateY(12px) scale(.92)}
 to{transform:translateY(0) scale(1)}
}
@keyframes aya-arrival-drift{
 0%{opacity:0;transform:translate3d(-12px,30px,0) rotate(calc(var(--r) - 26deg)) scale(.72)}
 18%{opacity:.72}
 84%{opacity:.78}
 100%{opacity:0;transform:translate3d(24px,-72px,0) rotate(calc(var(--r) + 46deg)) scale(1.1)}
}
@keyframes aya-arrival-mote{
 0%{opacity:0;transform:translateY(28px) scale(.6)}
 18%{opacity:.75}
 80%{opacity:.44}
 100%{opacity:0;transform:translateY(-72px) scale(1.12)}
}
@media(max-width:600px){
 .arrival-v17 .arrival-film video{object-position:50% 50%}
 .arrival-v17 .arrival-halo{width:118vw;height:65vh}
 .arrival-v17 .loader-center{width:86vw;transform:translateY(-2vh)}
 .arrival-v17 .arrival-brand{gap:26px}
 .arrival-v17 .arrival-mark{width:104px}
 .arrival-v17 .loader-logo{width:min(76vw,330px)}
 .arrival-v17 .loader-progress{width:126px;margin-top:32px}
 .arrival-v17 .loader-skip{right:22px;bottom:max(22px,env(safe-area-inset-bottom,0px) + 12px);font-size:10px}
 .arrival-v17 .arrival-petal{width:370px}
 .arrival-v17 .arrival-petal.p1{left:-133px;top:-141px}
 .arrival-v17 .arrival-petal.p2{right:-151px;top:-130px}
 .arrival-v17 .arrival-petal.p3{left:-152px;bottom:-128px}
 .arrival-v17 .arrival-petal.p4{right:-135px;bottom:-155px}
 .arrival-v17 .arrival-petal.p5,.arrival-v17 .arrival-petal.p6{display:none}
}
@media(max-height:540px) and (min-width:601px){
 .arrival-v17 .loader-center{transform:translateY(-1vh)}
 .arrival-v17 .arrival-brand{gap:15px}
 .arrival-v17 .arrival-mark{width:74px}
 .arrival-v17 .loader-logo{width:255px}
 .arrival-v17 .loader-progress{margin-top:22px;width:125px}
 .arrival-v17 .arrival-halo{height:100vh;width:620px}
 .arrival-v17 .loader-skip{bottom:14px;right:24px}
}
@media(prefers-reduced-motion:reduce){
 .loader.arrival-v17{display:none!important}
 html.arrival-active,html.arrival-active body{overflow:auto;overscroll-behavior:auto}
 .arrival-v17 *{animation:none!important;transition:none!important}
}
