:root{
  --bs-primary:#0072ce;
  --bs-primary-rgb:0,114,206;
  --ink:#0a2540;
  --ink-2:#10325e;
  --accent:#00b4d8;
  --soft:#f5f8fc;
}

*{ -webkit-font-smoothing:antialiased; }
html{ scroll-behavior:smooth; }
body{
  font-family:'Manrope',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  color:#1a2233;
  background:#fff;
  font-weight:400;
  letter-spacing:-.005em;
}
h1,h2,h3,h4,h5,h6,.display-3,.display-4,.display-5{
  font-family:'Outfit','Manrope',sans-serif;
  letter-spacing:-.025em;
  font-weight:700;
}
.display-3,.display-4,.display-5{ font-weight:800; }
.lead{ font-weight:400; }
.navbar .nav-link{ font-family:'Manrope',sans-serif; }
.btn{ border-radius:.6rem; font-weight:600; }
.btn-primary{ background:var(--bs-primary); border-color:var(--bs-primary); }
.btn-primary:hover{ background:#005ea8; border-color:#005ea8; }
.bg-light-soft{ background:var(--soft); }
.py-6{ padding-top:6rem; padding-bottom:6rem; }
.pt-6{ padding-top:6rem; } .pb-6{ padding-bottom:6rem; }
.min-vh-90{ min-height:90vh; }

/* Topbar */
.topbar{ background:#071a33; color:#cfe0f5; padding:.5rem 0; font-size:.85rem; }
.topbar a:hover{ color:#fff; }

/* Logo */
.site-logo{ height:76px; width:auto; display:block; }
.footer-logo{ height:68px; filter:invert(1) brightness(1.2); }
@media (max-width:767px){ .site-logo{ height:60px; } }
@media (max-width:575px){ .site-logo{ height:52px; } }

/* Language switcher */
.lang-switch a{ font-weight:600; padding:.1rem .3rem; border-radius:.3rem; }
.lang-switch a.active{ color:var(--accent); }
.lang-switch a:not(.active):hover{ color:#fff; }

/* Brand (legacy) */
.brand-mark{
  width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--bs-primary),var(--accent));
  border-radius:10px;color:#fff;font-size:1.1rem;box-shadow:0 6px 18px rgba(0,114,206,.35);
}
.brand-text{ font-family:'Outfit'; letter-spacing:.02em; color:var(--ink); }
.brand-text strong{ color:var(--bs-primary); }

/* Navbar */
.navbar{ padding:.85rem 0; }
.navbar .nav-link{ font-weight:500; color:#3a4a64 !important; padding:.5rem .9rem !important; border-radius:.5rem; }
.navbar .nav-link:hover,.navbar .nav-link.active{ color:var(--bs-primary) !important; background:#eaf3fc; }
.navbar .dropdown-menu{ border-radius:.8rem; padding:.5rem; }
.navbar .dropdown-item{ border-radius:.45rem; padding:.5rem .75rem; font-weight:500; }
.navbar .dropdown-item:hover{ background:#eaf3fc; color:var(--bs-primary); }

/* Eyebrow */
.eyebrow{
  display:inline-flex;align-items:center;gap:.5rem;
  text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:700;color:#fff;
}
.eyebrow .dot{ width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(0,180,216,.25); }
.eyebrow.text-primary{ color:var(--bs-primary)!important; }

/* Hero */
.hero{ position:relative; color:#fff; overflow:hidden; background:#06182f; }
.hero-bg{
  position:absolute;inset:0;
  background:
    radial-gradient(60% 60% at 80% 20%,rgba(0,180,216,.25),transparent 60%),
    radial-gradient(50% 50% at 10% 90%,rgba(0,114,206,.35),transparent 60%),
    linear-gradient(160deg,#06182f 0%,#0a2540 60%,#102a4d 100%);
}
.hero-grid{
  position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:60px 60px;
  mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%);
}
.hero .grad{
  background:linear-gradient(90deg,#00b4d8,#7ee0ff);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.stat .num{ font-family:'Outfit'; font-size:2.2rem; font-weight:700; line-height:1; }
.stat .num span{ color:var(--accent); }
.stat .lbl{ font-size:.85rem; color:rgba(255,255,255,.7); margin-top:.3rem; }

.hero-card{ position:relative; }
.hero-card-inner{ position:relative; padding:1rem; }
.hero-card img{ border:1px solid rgba(255,255,255,.08); }
.floating-badge{
  position:absolute; display:flex; align-items:center; gap:.75rem;
  padding:.85rem 1.1rem; border-radius:14px;
  background:rgba(10,37,64,.85); backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 12px 30px rgba(0,0,0,.35);
}
.floating-badge i{ font-size:1.5rem; color:var(--accent); }
.floating-badge.top{ top:.5rem; left:-1.5rem; }
.floating-badge.bottom{ bottom:1rem; right:-1.5rem; }

/* HERO SLIDER */
.hero-slider .carousel-item{ }
.hero-slider .slide{
  position:relative; min-height:620px;
  background-size:cover; background-position:center;
  display:flex; align-items:center;
}
.hero-slider .slide-overlay{
  position:absolute; inset:0;
  background:
    linear-gradient(90deg, rgba(6,24,47,.85) 0%, rgba(6,24,47,.55) 50%, rgba(6,24,47,.2) 100%);
}
.hero-slider .carousel-control-prev,.hero-slider .carousel-control-next{ width:5%; opacity:.5; }
.hero-slider .carousel-control-prev:hover,.hero-slider .carousel-control-next:hover{ opacity:1; }
.hero-slider .carousel-indicators{ margin-bottom:1.5rem; }
.hero-slider .carousel-indicators button{
  width:36px; height:4px; border-radius:2px; background:#fff; opacity:.4; border:0;
}
.hero-slider .carousel-indicators .active{ opacity:1; background:var(--accent); }

/* Stats bar */
.stats-bar{ background:linear-gradient(90deg,var(--ink),var(--ink-2)); color:#fff; }
.stat-mini .num{ font-family:'Outfit'; font-size:2rem; font-weight:700; color:#fff; line-height:1; }
.stat-mini .lbl{ font-size:.8rem; color:rgba(255,255,255,.7); text-transform:uppercase; letter-spacing:.1em; margin-top:.3rem; }

/* Trust strip */
.logo-text{
  font-family:'Outfit'; font-weight:700; letter-spacing:.15em;
  color:#5e6b80; font-size:1.05rem;
}

/* About (yeni) */
.about-section{ background:#fff; position:relative; }
.about-collage{
  position:relative; padding:0 2rem 3rem 0;
}
.about-img-main{
  width:100%; border-radius:18px; box-shadow:0 24px 48px rgba(10,37,64,.18);
  display:block; aspect-ratio:4/3; object-fit:cover;
}
.about-img-accent{
  position:absolute; right:0; bottom:1.5rem; width:48%;
  border:6px solid #fff; border-radius:14px;
  box-shadow:0 20px 40px rgba(10,37,64,.22);
  aspect-ratio:4/3; object-fit:cover;
}
.about-exp-badge{
  position:absolute; left:-1.5rem; top:2rem; z-index:2;
  background:linear-gradient(135deg,var(--bs-primary),var(--accent));
  color:#fff; padding:1.2rem 1.4rem; border-radius:16px;
  box-shadow:0 18px 40px rgba(0,114,206,.35);
  min-width:140px;
}
.about-exp-badge .num{
  font-family:'Outfit',sans-serif; font-size:2.3rem; font-weight:800; line-height:1;
}
.about-exp-badge .num span{ color:rgba(255,255,255,.7); }
.about-exp-badge .lbl{
  font-size:.78rem; text-transform:uppercase; letter-spacing:.1em;
  color:rgba(255,255,255,.9); margin-top:.4rem;
}

/* Modern feature kartları */
.about-features .feature-card{
  background:#fff; border:1px solid #eef2f7; border-radius:16px;
  padding:1.5rem 1.4rem; height:100%;
  transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.about-features .feature-card:hover{
  transform:translateY(-6px);
  box-shadow:0 18px 40px rgba(10,37,64,.1);
  border-color:#cfe0f5;
}
.about-features .feature-icon{
  width:54px; height:54px; border-radius:14px;
  background:linear-gradient(135deg,#eaf3fc,#d6e6f5);
  color:var(--bs-primary); display:inline-flex; align-items:center; justify-content:center;
  font-size:1.5rem; margin-bottom:1rem;
  transition:.3s;
}
.about-features .feature-card:hover .feature-icon{
  background:linear-gradient(135deg,var(--bs-primary),var(--accent)); color:#fff;
  transform:rotate(-6deg) scale(1.05);
}
.about-features .feature-card h6{
  font-weight:700; font-family:'Outfit'; font-size:1.1rem; margin-bottom:.4rem;
}

/* Legacy feature (other sections still use this) */
.feature i{
  font-size:1.4rem; color:var(--bs-primary);
  background:#eaf3fc; width:44px;height:44px; border-radius:12px;
  display:inline-flex;align-items:center;justify-content:center; margin-bottom:.6rem;
}
.feature h6{ font-weight:700; margin-bottom:.3rem; }

@media (max-width:991px){
  .about-collage{ padding-right:0; }
  .about-img-accent{ display:none; }
  .about-exp-badge{ left:1rem; top:1rem; }
}

/* Product cards */
.product-card{
  display:block; background:#fff; border-radius:18px; overflow:hidden;
  box-shadow:0 6px 24px rgba(10,37,64,.06);
  border:1px solid #eef2f7; text-decoration:none; color:inherit;
  transition:transform .35s ease, box-shadow .35s ease, border-color .35s ease;
  height:100%;
}
.product-card:hover{ transform:translateY(-6px); box-shadow:0 22px 50px rgba(10,37,64,.14); border-color:#d6e6f5; }
.product-card .img{
  height:210px; background-size:cover; background-position:center;
  position:relative;
}
.product-card .img::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg,transparent 50%,rgba(10,37,64,.35));
}
.product-card .body{ padding:1.4rem 1.4rem 1.6rem; }
.product-card .badge{
  background:#eaf3fc; color:var(--bs-primary); font-weight:600;
  text-transform:uppercase; letter-spacing:.1em; font-size:.7rem;
  padding:.4em .7em; border-radius:.4rem;
}
.product-card h5{ margin:.75rem 0 .5rem; font-weight:700; }
.product-card .more{ color:var(--bs-primary); font-weight:600; font-size:.9rem; }
.product-card.highlight{ border-color:var(--bs-primary); box-shadow:0 18px 40px rgba(0,114,206,.18); }

/* Industries */
.industry{
  background:#fff; border:1px solid #eef2f7; border-radius:18px;
  padding:1.5rem 1rem; text-align:center; transition:.3s;
  height:100%;
}
.industry i{ font-size:2rem; color:var(--bs-primary); display:block; margin-bottom:.6rem; }
.industry span{ font-weight:600; color:var(--ink); }
.industry:hover{ background:var(--ink); color:#fff; transform:translateY(-4px); }
.industry:hover i, .industry:hover span{ color:#fff; }

/* Process */
.process{ background:linear-gradient(160deg,#06182f,#0a2540); }
.process .step{
  background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.08);
  border-radius:18px; padding:1.6rem; height:100%;
  transition:.3s;
}
.process .step:hover{ background:rgba(0,180,216,.08); border-color:rgba(0,180,216,.3); transform:translateY(-4px); }
.process .step .num{
  font-family:'Outfit'; font-size:2.2rem; font-weight:700;
  color:var(--accent); line-height:1; margin-bottom:.6rem;
}

/* Projects */
.project{
  position:relative; border-radius:18px; overflow:hidden; height:340px;
}
.project img{ width:100%; height:100%; object-fit:cover; transition:transform .6s ease; }
.project:hover img{ transform:scale(1.08); }
.project .overlay{
  position:absolute; inset:0; padding:1.4rem;
  background:linear-gradient(180deg,transparent 40%,rgba(6,24,47,.92));
  display:flex; flex-direction:column; justify-content:flex-end; color:#fff;
}
.project .tag{
  align-self:flex-start; background:rgba(255,255,255,.15); backdrop-filter:blur(8px);
  padding:.3em .7em; border-radius:.4rem; font-size:.75rem; font-weight:600;
  text-transform:uppercase; letter-spacing:.1em; margin-bottom:.6rem;
}
.project h5{ font-weight:700; margin:0 0 .2rem; }

/* CTA */
.cta{ background:linear-gradient(110deg,var(--bs-primary),#005ea8); }

/* Contact */
.contact-info li{ display:flex; gap:1rem; margin-bottom:1rem; }
.contact-info i{
  font-size:1.2rem; color:var(--bs-primary); background:#eaf3fc;
  width:44px;height:44px; border-radius:12px;
  display:inline-flex; align-items:center; justify-content:center; flex:0 0 44px;
}
.contact-form{ border:1px solid #eef2f7; }
.contact-form .form-control,.contact-form .form-select{ border-radius:.6rem; }

/* Footer */
.footer{ background:#06182f; color:#cfe0f5; }
.footer a{ color:#cfe0f5; text-decoration:none; }
.footer a:hover{ color:#fff; }
.footer h6{ font-family:'Outfit'; font-weight:700; margin-bottom:1rem; letter-spacing:.04em; }
.footer ul li{ margin-bottom:.4rem; }
.footer .social a{
  width:38px;height:38px; display:inline-flex; align-items:center; justify-content:center;
  background:rgba(255,255,255,.06); border-radius:10px;
}
.footer .social a:hover{ background:var(--bs-primary); color:#fff; }

/* Page hero (inner pages) */
.page-hero{
  background:linear-gradient(110deg,#06182f 0%,#0a2540 60%,#10325e 100%);
  background-size:cover; background-position:center;
  padding:6rem 0 4.5rem;
  position:relative; color:#fff;
}
.page-hero::before{
  content:""; position:absolute; inset:0;
  background:linear-gradient(90deg,rgba(6,24,47,.88) 0%,rgba(6,24,47,.7) 55%,rgba(6,24,47,.4) 100%);
}
.page-hero::after{
  content:""; position:absolute; inset:0;
  background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
  background-size:50px 50px;
  mask-image:radial-gradient(ellipse at top right,#000 20%,transparent 70%);
  pointer-events:none;
}
.page-hero .container{ position:relative; z-index:1; }
.page-hero.compact{ padding:4.5rem 0 3rem; }
.page-hero.with-bg{ /* dahaa koyu overlay sade görüntü için aynı yapıda */ }

.page-body p{ margin-bottom:1.1rem; color:#3a4a64; line-height:1.7; }
.legal-page h3{ font-size:1.35rem; }
.legal-page h4{ font-size:1.1rem; color:#0a2540; }
.legal-page ul{ padding-left:1.2rem; }
.legal-page li{ margin-bottom:.3rem; color:#3a4a64; }

/* İletişim "Merkez" tablosu */
.contact-card{ background:#fff; border:1px solid #eef2f7; border-radius:14px; padding:1.6rem 1.8rem; box-shadow:0 6px 24px rgba(10,37,64,.04); }
.contact-card-title{
  color:var(--accent); font-weight:700; font-size:1.4rem; padding-bottom:.7rem;
  border-bottom:1px solid #eef2f7; margin:0 0 .4rem;
}
.contact-table{ display:grid; grid-template-columns:90px 1fr; row-gap:0; margin:0; }
.contact-table dt, .contact-table dd{ padding:.85rem .25rem; border-bottom:1px solid #f0f3f8; margin:0; }
.contact-table dt{ font-weight:600; color:#1a2233; }
.contact-table dd{ color:#3a4a64; }
.contact-table a{ color:var(--bs-primary); text-decoration:none; }
.contact-table a:hover{ text-decoration:underline; }
.contact-table dt:last-of-type, .contact-table dd:last-of-type{ border-bottom:0; }

/* İletişim sağ kolon küçük harita */
.contact-map{ position:relative; border-radius:14px; overflow:hidden; box-shadow:0 6px 24px rgba(10,37,64,.06); border:1px solid #eef2f7; }
.contact-map iframe{ width:100%; height:280px; border:0; display:block; filter:grayscale(.1); }
.contact-map .map-link{
  position:absolute; left:1rem; bottom:1rem;
  background:#fff; color:var(--ink); padding:.5rem .9rem; border-radius:24px;
  box-shadow:0 6px 18px rgba(0,0,0,.15); font-weight:600; font-size:.85rem; text-decoration:none;
}
.contact-map .map-link i{ color:var(--bs-primary); margin-right:.3rem; }
.contact-map .map-link:hover{ background:var(--bs-primary); color:#fff; }
.contact-map .map-link:hover i{ color:#fff; }
.product-body p{ color:#3a4a64; line-height:1.7; }

.specs-list{ list-style:none; padding:0; }
.specs-list li{ padding:.5rem 0; border-bottom:1px solid #eef2f7; font-weight:500; color:#1a2233; }
.specs-list li i{ color:var(--bs-primary); margin-right:.5rem; }

.info-card{ border:1px solid #eef2f7; }

.gallery-tile{
  display:block; position:relative; overflow:hidden; border-radius:14px;
  aspect-ratio:1/1; background:#eef2f7;
}
.gallery-tile img{ width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.gallery-tile:hover img{ transform:scale(1.08); }
.gallery-tile .cap{
  position:absolute; left:0; right:0; bottom:0; padding:.6rem .8rem;
  background:linear-gradient(transparent,rgba(6,24,47,.85));
  color:#fff; font-size:.85rem; font-weight:500;
}

.video-card{ background:#fff; border:1px solid #eef2f7; border-radius:14px; padding:.6rem; }
.video-card .ratio{ border-radius:10px; overflow:hidden; }
.video-card h6{ padding:.3rem .5rem .5rem; }

.mt-6{ margin-top:6rem; } .my-6{ margin-top:6rem; margin-bottom:6rem; }

/* Responsive */
@media (max-width: 991px){
  .py-6{ padding-top:4rem; padding-bottom:4rem; }
  .about-media{ padding-right:0; }
  .about-media .accent{ position:static; width:100%; margin-top:1rem; }
  .experience-pill{ position:static; display:inline-block; margin-top:1rem; }
  .floating-badge{ display:none; }
}
