html { scroll-behavior: smooth; }
body { font-family:'Plus Jakarta Sans','Inter',sans-serif; background:#FFFBF7; color:#1A120B; overflow-x:hidden; }

::-webkit-scrollbar { width:10px; }
::-webkit-scrollbar-track { background:#FFF7ED; }
::-webkit-scrollbar-thumb { background:linear-gradient(#F97316,#EA580C); border-radius:10px; }

.glass { background:rgba(255,255,255,.65); backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px); border:1px solid rgba(255,255,255,.7); }
.glass-dark { background:rgba(26,18,11,.55); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); border:1px solid rgba(253,186,116,.25); }

.text-gradient { background:linear-gradient(120deg,#F97316 0%,#EA580C 45%,#FB923C 100%); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }

.hero-bg {
  background:
    radial-gradient(60% 80% at 80% 10%, rgba(251,146,60,.35) 0%, rgba(251,146,60,0) 60%),
    radial-gradient(50% 60% at 10% 90%, rgba(234,88,12,.30) 0%, rgba(234,88,12,0) 60%),
    linear-gradient(160deg,#1A120B 0%,#2A1A0E 50%,#3A2410 100%);
}

.blob { position:absolute; border-radius:50%; filter:blur(60px); opacity:.5; animation:float 14s ease-in-out infinite; }
@keyframes float { 0%,100%{transform:translate(0,0) scale(1)} 50%{transform:translate(30px,-40px) scale(1.1)} }

.reveal { opacity:0; transform:translateY(40px); transition:all .8s cubic-bezier(.2,.8,.2,1); }
.reveal.show { opacity:1; transform:translateY(0); }

.service-card { transition:transform .4s cubic-bezier(.2,.8,.2,1), box-shadow .4s, border-color .4s; }
.service-card:hover { transform:translateY(-10px); box-shadow:0 25px 50px -15px rgba(234,88,12,.35); border-color:#FB923C; }
.service-card:hover .service-icon { transform:scale(1.12) rotate(-6deg); background:linear-gradient(135deg,#F97316,#EA580C); color:#fff; }
.service-icon { transition:all .4s; }
.service-icon .ic, .service-icon svg { width:24px; height:24px; }

.stat-card { transition:transform .35s; }
.stat-card:hover { transform:translateY(-6px); }

.marquee { display:flex; gap:4rem; animation:scroll 28s linear infinite; white-space:nowrap; }
@keyframes scroll { from{transform:translateX(0)} to{transform:translateX(-50%)} }

.timeline-line { background:linear-gradient(90deg,#FED7AA,#F97316,#FED7AA); }

.map-dot { position:absolute; width:14px; height:14px; border-radius:50%; background:#F97316; box-shadow:0 0 0 0 rgba(249,115,22,.7); }
.map-dot::after { content:''; position:absolute; inset:0; border-radius:50%; background:#F97316; animation:ping 2s cubic-bezier(0,0,.2,1) infinite; }
@keyframes ping { 0%{transform:scale(1);opacity:.7} 80%,100%{transform:scale(3);opacity:0} }

.conn-line { stroke-dasharray:6 8; animation:dash 1.5s linear infinite; }
@keyframes dash { to{stroke-dashoffset:-28} }

.btn-primary { background:linear-gradient(120deg,#F97316,#EA580C); transition:all .3s; box-shadow:0 14px 30px -10px rgba(234,88,12,.6); }
.btn-primary:hover { transform:translateY(-3px); box-shadow:0 20px 40px -10px rgba(234,88,12,.75); }
.btn-ghost { transition:all .3s; }
.btn-ghost:hover { background:rgba(255,255,255,.12); transform:translateY(-3px); }

.nav-link { position:relative; }
.nav-link::after { content:''; position:absolute; left:0; bottom:-4px; width:0; height:2px; background:#F97316; transition:width .3s; }
.nav-link:hover::after { width:100%; }

#megaPanel.mega-open { visibility:visible; opacity:1; transform:translate(-50%,0); }
#megaWrap.open #megaChevron { transform:rotate(180deg); }
#mobileServices { max-height:0; overflow:hidden; transition:max-height .4s ease; }
#mobileServices.open { max-height:700px; }
#mobileServicesToggle.open svg { transform:rotate(180deg); }

@keyframes fadeUp { from{opacity:0;transform:translateY(30px)} to{opacity:1;transform:translateY(0)} }
.fade-up { animation:fadeUp .9s cubic-bezier(.2,.8,.2,1) both; }
.delay-1{animation-delay:.15s}.delay-2{animation-delay:.3s}.delay-3{animation-delay:.45s}.delay-4{animation-delay:.6s}

@keyframes drift { 0%{transform:translateX(-30px)} 50%{transform:translateX(30px)} 100%{transform:translateX(-30px)} }
.ship { animation:drift 9s ease-in-out infinite; }

/* Dil seçici */
.lang-panel { transform: translateY(6px); }
.lang-panel.lang-open { visibility: visible; opacity: 1; transform: translateY(0); }

/* FAQ accordion */
.faq-a { max-height:0; overflow:hidden; transition:max-height .35s ease; }
.faq-item.open .faq-a { max-height:320px; }
.faq-item.open .faq-chevron { transform:rotate(180deg); }
.faq-q { cursor:pointer; }

/* Service-card icon stroke sizing in feature grids */
.service-icon svg.ic { width:24px; height:24px; }
