/* GAP SİLİM MARKET - Ortak stiller (Kurumsal endüstriyel kimlik: tok altın vurgu, sade tipografi) */

:root {
    --amber: #967100;
    --gold: #967100;
    --gold-light: #967100;
    --carbon: #090d16;
    --matte: #05070a;
}

/* Yatay taşmayı engelle ama kaydırma kabı oluşturma: overflow-x:hidden sticky'yi bozar */
/* Yatay taşma: 'clip' kaydırma kabı oluşturmaz, böylece sticky navbar bozulmaz.
   'hidden' yalnızca clip desteklemeyen eski tarayıcılar için yedek. */
html, body { width: 100%; max-width: 100%; overflow-x: hidden; overflow-x: clip; }
img, svg, video, iframe, canvas, table { max-width: 100%; }
h1, h2, h3, p, a, button, span { overflow-wrap: anywhere; }
.grid > *, .snap-row > *, .flex > * { min-width: 0; }
/* Hero: navbar yüksekliği düşülerek tam viewport'a oturur (masaüstü: üst bar 35px + header 80px) */
.hero-fill { min-height: calc(100vh - 115px); min-height: calc(100dvh - 115px); }
@media (max-width: 767px) { .hero-fill { min-height: calc(100vh - 80px); min-height: calc(100dvh - 80px); } }
/* Menü açıkken sayfa kaydırılmaz */
html.menu-lock, body.menu-lock { overflow: hidden !important; }
body {
    font-family: 'Inter', system-ui, sans-serif;
    background-color: var(--matte);
    background-image:
        radial-gradient(ellipse at 10% 0%, rgba(150,113,0,0.03), transparent 45%),
        radial-gradient(ellipse at 90% 40%, rgba(150,113,0,0.02), transparent 40%);
}
img { max-width: 100%; height: auto; }
/* Başlık fontu: tok, kurumsal sans-serif */
.font-hud { font-family: 'Montserrat', sans-serif; letter-spacing: .01em; }

/* Teknik grid arka plan */
.blueprint {
    background-image:
        linear-gradient(rgba(150,113,0,0.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(150,113,0,0.03) 1px, transparent 1px),
        linear-gradient(rgba(150,113,0,0.01) 1px, transparent 1px),
        linear-gradient(90deg, rgba(150,113,0,0.01) 1px, transparent 1px);
    background-size: 120px 120px, 120px 120px, 24px 24px, 24px 24px;
    background-position: -1px -1px;
}

/* Glassmorphism: yarı saydam koyu cam (korunur); ışıltı ve parlama daha ölçülü */
.glass {
    position: relative;
    overflow: hidden;
    background: linear-gradient(145deg, rgba(15,23,42,.6), rgba(9,13,22,.6));
    backdrop-filter: blur(20px) saturate(130%);
    -webkit-backdrop-filter: blur(20px) saturate(130%);
    border: 1px solid rgba(255,255,255,.10);
    transition: border-color .45s ease, box-shadow .45s ease, transform .45s cubic-bezier(.2,.8,.2,1);
}
.glass::after {
    content: '';
    position: absolute; inset: 0;
    background: linear-gradient(115deg, transparent 35%, rgba(150,113,0,.09) 50%, transparent 65%);
    transform: translateX(-120%);
    pointer-events: none;
}
.glass:hover {
    border-color: rgba(150,113,0,0.27);
    box-shadow: 0 0 0 1px rgba(150,113,0,0.11), 0 0 22px rgba(150,113,0,0.08), inset 0 0 22px rgba(150,113,0,0.02);
}
.glass:hover::after { transform: translateX(120%); transition: transform 1.1s ease; }
.glass-strong {
    background: linear-gradient(145deg, rgba(9,13,22,.92), rgba(5,7,10,.92));
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
}

/* Buton: hafif parlama + kayan ışık */
.neon-btn { position: relative; overflow: hidden; transition: box-shadow .35s ease, transform .35s ease, color .35s ease, background-color .35s ease; }
.neon-btn::before {
    content: ''; position: absolute; top: 0; left: -75%; width: 50%; height: 100%;
    background: linear-gradient(120deg, transparent, rgba(255,255,255,.3), transparent);
    transform: skewX(-20deg); transition: left .7s ease; pointer-events: none;
}
.neon-btn:hover { box-shadow: 0 0 16px rgba(150,113,0,0.21), 0 0 34px rgba(150,113,0,0.08); transform: translateY(-2px); }
.neon-btn:hover::before { left: 130%; }
.neon-btn:active { transform: translateY(0) scale(.98); }

/* Teknik cihaz kartı */
.spec-card { will-change: transform; }
.spec-card .glare-spot {
    position: absolute; inset: 0; border-radius: inherit; pointer-events: none; opacity: 0; transition: opacity .35s;
    background: radial-gradient(420px circle at var(--mx, 50%) var(--my, 50%), rgba(150,113,0,.14), rgba(150,113,0,0.02) 40%, transparent 60%);
}
.spec-card:hover .glare-spot { opacity: 1; }
.spec-card:hover { box-shadow: 0 0 0 1px rgba(150,113,0,.35), 0 0 24px rgba(150,113,0,0.12), 0 30px 60px -20px rgba(0,0,0,.8); }

/* Animasyonlu kart girişi (sekme / sayfalama) */
@keyframes fxIn {
    0% { opacity: 0; transform: translateY(24px) scale(.96); filter: blur(6px); }
    100% { opacity: 1; transform: none; filter: none; }
}
.fx-in { animation: fxIn .7s cubic-bezier(.2,.8,.2,1) both; }

/* Dropdown menü */
.dropdown-panel { will-change: opacity, transform; }

/* Modal */
.modal-panel { transform: scale(.92) translateY(18px); opacity: 0; transition: transform .45s cubic-bezier(.2,.8,.2,1), opacity .35s ease; }
.modal-open .modal-panel { transform: none; opacity: 1; }
.gallery-img { transition: opacity .35s ease; }
.thumb { transition: border-color .25s, transform .25s, box-shadow .25s, opacity .25s; opacity: .6; }
.thumb:hover { opacity: 1; transform: translateY(-2px); }
.thumb.is-active { opacity: 1; border-color: #967100; box-shadow: 0 0 10px rgba(150,113,0,0.21); }

/* Mobil yatay kaydırma (snap) */
.snap-row { scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
.snap-row::-webkit-scrollbar { display: none; }
.snap-row > * { scroll-snap-align: center; }

/* İstasyon kartları (kategoriler) */
.station { transition: transform .5s cubic-bezier(.2,.8,.2,1), border-color .4s, box-shadow .5s; }
.station:hover {
    transform: translateY(-6px);
    border-color: #967100;
    box-shadow: 0 0 0 1px rgba(150,113,0,.4), 0 0 26px rgba(150,113,0,0.12);
}

/* Hero vitrini */
.hud-ring { position: absolute; border-radius: 9999px; border: 1px dashed rgba(150,113,0,.25); pointer-events: none; }
.hud-ring-1 { inset: 2%; animation: spin 40s linear infinite; }
.hud-ring-2 { inset: 13%; border-style: solid; border-color: rgba(150,113,0,0.07); animation: spin 24s linear infinite reverse; }
.hud-ring-3 { inset: 25%; border-color: rgba(150,113,0,.2); border-top-color: #967100; border-width: 2px; animation: spin 10s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }
.beam {
    position: absolute; left: 50%; top: 0; width: 200px; height: 100%; transform: translateX(-50%);
    background: linear-gradient(180deg, rgba(150,113,0,0), rgba(150,113,0,0.04) 40%, rgba(150,113,0,0.02) 70%, rgba(150,113,0,0));
    filter: blur(12px); animation: beamSweep 8s ease-in-out infinite; pointer-events: none;
}
@keyframes beamSweep { 0%,100% { opacity: .35; transform: translateX(-50%) skewX(-6deg); } 50% { opacity: .7; transform: translateX(-42%) skewX(6deg); } }
.float-machine { animation: float 6s ease-in-out infinite; filter: drop-shadow(0 30px 40px rgba(0,0,0,.65)) drop-shadow(0 0 22px rgba(150,113,0,0.08)); }
@keyframes float { 0%,100% { transform: translateY(0) rotateX(4deg); } 50% { transform: translateY(-16px) rotateX(-2deg); } }
/* Vurgulu metin: tok altın, hafif parlaklık */
.neon-text { color: #967100; text-shadow: 0 0 4px rgba(150,113,0,0.27), 0 0 14px rgba(150,113,0,0.12); }
.slogan-in { animation: sloganIn .9s cubic-bezier(.2,.8,.2,1) both; }
@keyframes sloganIn { 0% { opacity: 0; transform: translateX(-30px); filter: blur(8px); } 100% { opacity: 1; transform: none; filter: none; } }
.showcase-slide { opacity: 0; visibility: hidden; transition: opacity .8s ease, visibility .8s; position: absolute; inset: 0; }
.showcase-slide.is-active { opacity: 1; visibility: visible; }

/* Hakkımızda logo animasyonu: parlama + ölçek */
.logo-intro { animation: logoIn 1.6s cubic-bezier(.2,.8,.2,1) both; position: relative; }
.logo-intro::after {
    content: ''; position: absolute; inset: 0; border-radius: 1rem;
    background: linear-gradient(110deg, transparent 40%, rgba(255,255,255,.85) 50%, transparent 60%);
    background-size: 250% 100%; mix-blend-mode: overlay;
    animation: logoShine 2.4s ease-in-out .9s both;
}
@keyframes logoIn { 0% { opacity: 0; transform: scale(.7) rotate(-4deg); filter: blur(12px); } 100% { opacity: 1; transform: none; filter: none; } }
@keyframes logoShine { 0% { background-position: 150% 0; } 100% { background-position: -50% 0; } }

/* SSS akordiyonu */
details summary::-webkit-details-marker { display: none; }
details[open] .faq-icon { transform: rotate(45deg); }

.hash-offset { scroll-margin-top: 110px; }
/* Bölüm etiketi: sade, küçük büyük harf başlık (terminal stili kaldırıldı) */
.sec-label { font-family: 'Montserrat', sans-serif; font-size: 13px; font-weight: 600; letter-spacing: .16em; color: #967100; text-transform: uppercase; }

/* Erişilebilirlik: hareket azaltma tercihi */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Dropdown: tıklamayla açık durum (hover'a ek olarak) */
[data-dropdown].dd-open .dropdown-panel { opacity: 1; visibility: visible; transform: none; }

/* Açılış ekranı (preloader): yalnızca ana sayfada, ~1.9 sn sonra yumuşakça kaybolur */
.preloader { animation: preloaderFade .7s ease 1.9s forwards; }
@keyframes preloaderFade { to { opacity: 0; visibility: hidden; } }
.preloader-logo {
    animation: preloaderIn .9s cubic-bezier(.2,.8,.2,1) .1s both, preloaderPulse 1.6s ease-in-out .9s infinite;
    border: 1px solid rgba(150,113,0,0.27);
}
@keyframes preloaderIn { 0% { opacity: 0; transform: scale(.7); filter: blur(10px); } 100% { opacity: 1; transform: none; filter: none; } }
@keyframes preloaderPulse {
    0%, 100% { box-shadow: 0 0 14px rgba(150,113,0,0.12), 0 0 40px rgba(150,113,0,0.05); }
    50%      { box-shadow: 0 0 22px rgba(150,113,0,.35), 0 0 60px rgba(150,113,0,0.11); }
}
.preloader-bar { animation: preloaderBar 1.5s ease-in-out .2s both; }
@keyframes preloaderBar { 0% { transform: translateX(-100%); } 100% { transform: translateX(200%); } }
@media (max-width: 640px) { .preloader-logo { max-width: 80vw; } }

/* Sabit WhatsApp butonu: nabız / dalga halkaları */
.wa-float::before, .wa-float::after {
    content: ''; position: absolute; inset: 0; border-radius: 9999px;
    background: rgba(34,197,94,.55); z-index: 0; pointer-events: none;
    animation: waPulse 2.2s ease-out infinite;
}
.wa-float::after { animation-delay: 1.1s; }
@keyframes waPulse { 0% { transform: scale(1); opacity: .7; } 100% { transform: scale(1.9); opacity: 0; } }

/* Ana navbar: sticky bozulursa JS ile fixed moda geçer (.is-fixed) */
.site-navbar { position: sticky; top: 0; z-index: 50; }
.site-navbar.is-fixed {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 9999 !important;
    box-shadow: 0 10px 30px rgba(0,0,0,.8);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    background: rgba(10,13,20,.95) !important;
}
.nav-spacer { display: none; }
.nav-spacer.is-active { display: block; }
