/* Kervanhost Plus · geliştirilmiş katman */

/* ---------- sayfa geçişi ---------- */
.kp-fade{position:fixed;inset:0;z-index:2000;background:var(--xl-bg);opacity:0;pointer-events:none;transition:opacity .22s ease}
.kp-fade.kp-on{opacity:1}
body.xl:not(.xl-home-page) main{animation:kp-in .55s cubic-bezier(.2,.8,.2,1) both}
@keyframes kp-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

/* ---------- kart ışığı (tüm sitede) ---------- */
main .card{position:relative;overflow:hidden}
main .card::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(380px circle at var(--xl-mx,50%) var(--xl-my,50%),rgba(242,181,68,.10),transparent 45%);opacity:0;transition:opacity .35s;z-index:0}
main .card:hover::before{opacity:1}
main .card>*{position:relative;z-index:1}
main .card.xl-card::before{display:none}

/* ---------- hero: kaydır ipucu ---------- */
.kp-scroll{position:absolute;left:50%;bottom:26px;width:26px;height:42px;margin-left:-13px;border:1.5px solid rgba(211,184,143,.45);border-radius:14px;z-index:3;opacity:0;transition:opacity 1s 1.8s}
body.xl-ready .kp-scroll{opacity:1}
.kp-scroll span{position:absolute;left:50%;top:8px;width:4px;height:8px;margin-left:-2px;border-radius:2px;background:var(--xl-grad);animation:kp-wheel 1.8s cubic-bezier(.4,0,.2,1) infinite}
@keyframes kp-wheel{0%{transform:translateY(0);opacity:1}70%{transform:translateY(14px);opacity:0}100%{opacity:0}}
@media (max-width:980px){.kp-scroll{display:none}}

/* ---------- bento özellik ızgarası ---------- */
.kp-bento{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:dense;gap:20px}
.kp-bento>.xl-card{grid-column:span 1;padding:30px 28px;display:flex;flex-direction:column}
.kp-bento>.xl-card:nth-child(6n+1),.kp-bento>.xl-card:nth-child(6n){grid-column:span 2}
.kp-bento>.xl-card:nth-child(6n+1) h3,.kp-bento>.xl-card:nth-child(6n) h3{font-size:24px}
.kp-bento>.xl-card:nth-child(6n+1) p,.kp-bento>.xl-card:nth-child(6n) p{font-size:15.5px;max-width:420px}
.kp-bento>.xl-card:nth-child(6n+1)::after{opacity:.55}
.kp-bento>.xl-card::before{background:radial-gradient(520px circle at var(--xl-mx,50%) var(--xl-my,50%),rgba(212,88,42,.2),transparent 45%)}
.kp-bento .xl-icon{transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.kp-bento>.xl-card:hover .xl-icon{transform:rotate(-8deg) scale(1.1)}
@media (max-width:980px){.kp-bento{grid-template-columns:repeat(2,minmax(0,1fr))}.kp-bento>.xl-card:nth-child(n){grid-column:span 1}.kp-bento>.xl-card:nth-child(6n+1){grid-column:span 2}}
@media (max-width:640px){.kp-bento{grid-template-columns:1fr}.kp-bento>.xl-card:nth-child(n){grid-column:span 1}}

/* ---------- kaydırmayla ilerleyen kurulum anlatısı ---------- */
.kp-story{position:relative;height:260vh}
.kp-sticky{position:sticky;top:0;height:100vh;display:flex;align-items:center}
.kp-sticky .xl-wrap{width:100%}
.kp-hint{margin-top:18px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--xl-dim);opacity:.7}
.kp-story .xl-step{transition:opacity .5s,transform .5s;transform:translateX(-6px)}
.kp-story .xl-step.xl-on{transform:none}
.kp-story .xl-bar i{transition:width .25s linear}
@media (max-width:980px){.kp-story{height:auto;padding:60px 0!important}.kp-sticky{position:static;height:auto}.kp-hint{display:none}}

/* ---------- ayırıcı çizgi ---------- */
.kp-sep{height:1px;max-width:1100px;margin:0 auto;background:linear-gradient(90deg,transparent,rgba(242,181,68,.55),rgba(212,88,42,.55),transparent);background-size:200% 100%;opacity:.55;animation:kp-sep 6s linear infinite}
@keyframes kp-sep{to{background-position:-200% 0}}

/* ---------- dev marka yazısı ---------- */
.kp-mark{overflow:hidden;text-align:center;line-height:.82;padding:90px 20px 0;margin-bottom:-.12em;user-select:none;pointer-events:none}
.kp-mark span{display:inline-block;font:900 clamp(56px,14.5vw,230px)/1 "Montserrat",sans-serif;letter-spacing:-.045em;background:radial-gradient(520px circle at var(--kp-x,50%) 60%,#f2b544 0%,#d4582a 38%,rgba(211,184,143,.16) 72%);-webkit-background-clip:text;background-clip:text;color:transparent;transition:background-position .2s}
.xl-home-page .site-footer{margin-top:0;position:relative}

/* ---------- hareket azaltma ---------- */
@media (prefers-reduced-motion:reduce){
  .kp-sep,.kp-scroll span,.kp-caret{animation:none}
  body.xl:not(.xl-home-page) main{animation:none}
  .kp-story{height:auto;padding:60px 0!important}.kp-sticky{position:static;height:auto}
}

/* ═════════ AÇILIŞ EKRANI (gelişmiş) ═════════ */
.xl-loader{background:transparent}
.xl-loader::before,.xl-loader::after{display:none}
.kp-lh{position:absolute;left:0;right:0;height:50.3%;background:var(--xl-bg);transition:transform .75s cubic-bezier(.76,0,.24,1);z-index:0}
.kp-lh-top{top:0;background:radial-gradient(60% 90% at 50% 100%,rgba(176,102,38,.22),transparent 70%),var(--xl-bg)}
.kp-lh-bot{bottom:0;background:radial-gradient(60% 90% at 50% 0%,rgba(242,181,68,.14),transparent 70%),var(--xl-bg)}
.xl-loader.xl-burst .kp-lh-top{transform:translateY(-101%)}
.xl-loader.xl-burst .kp-lh-bot{transform:translateY(101%)}
.xl-loader.xl-gone{opacity:1;visibility:visible;transition:visibility 0s linear .95s}
.kp-lgrid,.kp-lparts{position:absolute;inset:0;z-index:1;pointer-events:none;transition:opacity .35s}
.xl-loader.xl-burst .kp-lgrid,.xl-loader.xl-burst .kp-lparts{opacity:0}
.kp-lgrid{background-image:linear-gradient(rgba(211,184,143,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(211,184,143,.06) 1px,transparent 1px);background-size:56px 56px;-webkit-mask:radial-gradient(circle at 50% 50%,#000 5%,transparent 62%);mask:radial-gradient(circle at 50% 50%,#000 5%,transparent 62%)}
.kp-lscan{position:absolute;left:0;right:0;height:140px;top:-140px;background:linear-gradient(180deg,transparent,rgba(212,88,42,.16),transparent);animation:kp-scan 3.2s linear infinite}
@keyframes kp-scan{to{transform:translateY(calc(100vh + 280px))}}
.kp-lparts i{position:absolute;left:calc(var(--k) * 6%);bottom:-10px;width:3px;height:3px;border-radius:50%;background:#f3c97a;box-shadow:0 0 8px #d4582a;opacity:0;animation:kp-lrise calc(4.5s + var(--k) * .3s) linear infinite;animation-delay:calc(var(--k) * -.55s)}
.kp-lparts i:nth-child(3n){background:#ffc16a;box-shadow:0 0 8px #f2b544}
@keyframes kp-lrise{0%{transform:translateY(0);opacity:0}12%{opacity:.9}85%{opacity:.5}100%{transform:translateY(-108vh);opacity:0}}
.xl-lstage{gap:26px}
.xl-lmark{width:min(34vw,140px)}
.kp-orbit{position:absolute;inset:-26px;border:1px dashed rgba(211,184,143,.32);border-radius:50%;animation:kp-lorb 9s linear infinite;pointer-events:none}
.kp-orbit.kp-o2{inset:-54px;border:1px solid rgba(211,184,143,.12);animation-duration:15s;animation-direction:reverse}
.kp-sat{position:absolute;top:-5px;left:50%;width:10px;height:10px;margin-left:-5px;border-radius:50%;background:var(--xl-grad);box-shadow:0 0 14px var(--xl-g1)}
.kp-o2 .kp-sat{background:#ffe0a8;box-shadow:0 0 14px #d4582a;width:7px;height:7px;margin-left:-3.5px;top:-3.5px}
@keyframes kp-lorb{to{transform:rotate(360deg)}}
.kp-lbrand{display:flex;gap:.12em;font:800 clamp(22px,5.2vw,34px)/1 "Montserrat",sans-serif;letter-spacing:.34em;margin-right:-.34em;color:#fff}
.kp-lbrand span{display:inline-block;opacity:0;transform:translateY(16px);filter:blur(8px);animation:kp-lletter .7s cubic-bezier(.2,.8,.2,1) forwards}
.kp-lbrand span:nth-child(1){animation-delay:.25s}.kp-lbrand span:nth-child(2){animation-delay:.31s}.kp-lbrand span:nth-child(3){animation-delay:.37s}.kp-lbrand span:nth-child(4){animation-delay:.43s}.kp-lbrand span:nth-child(5){animation-delay:.49s}.kp-lbrand span:nth-child(6){animation-delay:.55s}.kp-lbrand span:nth-child(7){animation-delay:.61s}.kp-lbrand span:nth-child(8){animation-delay:.67s}.kp-lbrand span:nth-child(9){animation-delay:.73s}.kp-lbrand span:nth-child(10){animation-delay:.79s}.kp-lbrand span:nth-child(11){animation-delay:.85s}.kp-lbrand span:nth-child(12){animation-delay:.91s}.kp-lbrand span:nth-child(n+13){animation-delay:1s}
.kp-lbrand span:nth-child(odd){background:linear-gradient(180deg,#fff,#efdcb8);-webkit-background-clip:text;background-clip:text;color:transparent}
.kp-lbrand span:nth-child(even){background:var(--xl-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
@keyframes kp-lletter{to{opacity:1;transform:none;filter:blur(0)}}
.xl-lstatus{flex-direction:column;align-items:center;gap:6px}
.xl-lstatus b{font:800 44px/1 "Montserrat",sans-serif;letter-spacing:-.02em;min-width:0}
.xl-loader.xl-burst .xl-lstage{transform:scale(1.06);opacity:0}
@media (prefers-reduced-motion:reduce){.kp-lscan,.kp-lparts i,.kp-orbit{animation:none}.kp-lbrand span{animation:none;opacity:1;transform:none;filter:none}.kp-lh{transition:none}}

/* ---------- bakım sayfası ---------- */
.kp-maint-art{margin-bottom:18px}
.kp-maint-art .kpm-leds circle{fill:#35c9a8;animation:xl-blink 1.3s infinite}
.kp-maint-art .kpm-leds circle:nth-child(2n){fill:#ffb85c;animation-delay:.4s}
.kp-maint-art .kpm-leds circle:nth-child(3n){animation-delay:.8s}
.kp-maint-art .kpm-gear{animation:kpm-spin 9s linear infinite;transform-box:fill-box;transform-origin:center}
@keyframes kpm-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.kp-maint-art .kpm-leds circle,.kp-maint-art .kpm-gear{animation:none}}
