@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@500;600;700;800&family=Inter:wght@300;400;500;600;700&display=swap');

:root {
  --primary: #d1202f;
  --dark: #1e2d42;
  --soft: #6e798c;
  --line: #e4e8f0;
  --bg-soft: #f7f8fb;
  --radius: 14px;
}

* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: "Inter", Arial, sans-serif; color: var(--dark); background: #fff; line-height: 1.55; }
a { color: inherit; text-decoration: none; }
h1,h2,h3,h4,.menu > a,.btn,.phone-number { font-family: "Montserrat", Arial, sans-serif; }
.container { width: min(1180px, calc(100% - 32px)); margin: 0 auto; }

.site-header { position: sticky; top: 0; z-index: 50; background: rgba(255,255,255,.93); backdrop-filter: blur(8px); border-bottom: 1px solid var(--line); }
.nav-wrap { min-height: 84px; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.brand img { width: min(185px,42vw); display: block; }
.menu-toggle { display:none; border:1px solid var(--line); border-radius:8px; width:40px; height:40px; background:#fff; }
.menu { display:flex; align-items:center; gap:22px; font-size:13px; font-weight:700; color:#1c2533; }
.menu > a { position: relative; padding: 6px 0; }
.menu > a.active, .menu > a:hover { color: var(--primary); }
.menu > a.active::after { content:""; position:absolute; left:0; bottom:-2px; width:100%; height:2px; background:var(--primary); }

.menu-dropdown { position: relative; }
.menu-dropdown-trigger { border:0; background:transparent; font: inherit; font-weight:700; color:inherit; cursor:pointer; padding: 6px 0; }
.menu-dropdown .submenu { position:absolute; top:100%; left:0; min-width:220px; background:#fff; border:1px solid var(--line); border-radius:10px; box-shadow:0 10px 26px rgba(20,31,47,.08); padding:8px; display:none; }
.menu-dropdown:hover .submenu { display:block; }
.menu-dropdown.active .menu-dropdown-trigger { color: var(--primary); }
.submenu:not(.mega-menu) a { display:block; padding:9px 10px; border-radius:8px; font-size:13px; font-weight:600; color:#33415a; }
.submenu:not(.mega-menu) a:hover { background:#f5f7fb; color: var(--primary); }
.submenu-empty { display:block; padding:10px; font-size:12px; color:#7a8395; }
/* Mega menu: viewport içinde kalır; cam + yumuşak görselli arka plan; ince tipografi */
.menu-dropdown .mega-menu {
  left: 50%;
  right: auto;
  transform: translateX(-50%);
  width: min(1180px, calc(100vw - 24px));
  max-height: min(90vh, 920px);
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  scrollbar-width: thin;
  scrollbar-color: rgba(209, 32, 47, 0.35) transparent;
  padding: 16px 18px 18px;
  display: none;
  grid-template-columns: repeat(auto-fill, minmax(186px, 1fr));
  gap: 10px 14px;
  align-content: start;
  border-radius: 14px;
  border: 1px solid rgba(255, 255, 255, 0.65);
  background-color: rgba(255, 255, 255, 0.88);
  background-image:
    radial-gradient(ellipse 100% 70% at 100% -10%, rgba(209, 32, 47, 0.09) 0%, transparent 52%),
    radial-gradient(ellipse 85% 55% at -8% 108%, rgba(30, 45, 66, 0.07) 0%, transparent 48%),
    linear-gradient(168deg, rgba(255, 255, 255, 0.97) 0%, rgba(241, 245, 249, 0.92) 45%, rgba(255, 252, 252, 0.94) 100%);
  backdrop-filter: blur(16px) saturate(1.12);
  -webkit-backdrop-filter: blur(16px) saturate(1.12);
  box-shadow:
    0 4px 7px rgba(255, 255, 255, 0.45) inset,
    0 28px 56px rgba(15, 26, 42, 0.14),
    0 0 0 1px rgba(228, 232, 240, 0.65);
}
.menu-dropdown:hover .mega-menu { display: grid; }
.mega-menu-group {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 8px 10px 10px;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.42);
  border: 1px solid rgba(228, 232, 240, 0.55);
}
.mega-menu-heading { display: flex; align-items: stretch; gap: 6px; }
.mega-group-toggle { display: none; }
.mega-menu-links {
  display: block;
  max-height: 460px;
  overflow-y: auto;
  padding-right: 4px;
  scrollbar-width: thin;
}
.mega-menu-title {
  display: block;
  font-family: "Inter", Arial, sans-serif;
  font-size: 14px;
  font-weight: 700;
  color: #2d3a4f;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin: -8px -10px 7px;
  padding: 8px 10px;
  border-radius: 9px 9px 0 0;
  background: linear-gradient(90deg, rgba(209, 32, 47, 0.07) 0%, rgba(241, 245, 249, 0.85) 55%, rgba(255, 255, 255, 0.35) 100%);
  border-bottom: 1px solid rgba(228, 232, 240, 0.6);
  line-height: 1.2;
}
.mega-menu-group .mega-menu-title:hover {
  color: var(--primary);
  background: linear-gradient(90deg, rgba(209, 32, 47, 0.1) 0%, rgba(241, 245, 249, 0.9) 100%);
}
.mega-menu-link {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: "Inter", Arial, sans-serif;
  font-size: 13px;
  font-weight: 600;
  padding: 7px 6px 7px 8px;
  line-height: 1.28;
  color: #3f4a60;
  border-radius: 8px;
  border-left: 3px solid transparent;
}
.mega-menu-link::before {
  content: "";
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  border-radius: 50%;
  border: 1px solid rgba(209, 32, 47, 0.35);
  background:
    radial-gradient(circle at center, rgba(209, 32, 47, 0.88) 0 2px, transparent 3px),
    #fff;
}
.mega-menu-link:hover {
  background: rgba(255, 255, 255, 0.92);
  color: var(--primary);
  border-left-color: rgba(209, 32, 47, 0.55);
}

.head-phone { border:1px solid #d8dee8; border-radius:12px; padding:7px 12px; display:inline-flex; align-items:center; gap:10px; background:#fff; box-shadow:0 8px 24px rgba(15,24,40,.08); white-space:nowrap; }
.phone-dot { width:34px; height:34px; border-radius:50%; display:grid; place-items:center; color:#fff; background:var(--primary); font-size:17px; }
.phone-meta { display:flex; flex-direction:column; line-height:1.12; }
.phone-number { font-size:16px; font-weight:800; }
.phone-sub { font-size:11px; color:#69748a; font-weight:700; }

/* Ana sayfada menü hero üzerine biner */
.home-page .site-header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background: transparent;
  border-bottom: none;
  backdrop-filter: none;
}

.home-page .nav-wrap {
  margin-top: 16px;
  min-height: 68px;
  padding: 8px 18px;
  border-radius: 16px;
  background: rgba(255, 255, 255, .78);
  box-shadow: 0 12px 34px rgba(15, 24, 40, .08);
  backdrop-filter: blur(10px);
}

.hero { position:relative; width:100%; height:clamp(560px,54vw,740px); overflow:hidden; background:#fff; touch-action: pan-y; cursor: grab; }
.hero.is-dragging { cursor: grabbing; }
.hero-slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity .55s ease, visibility .55s ease;
}
.hero-slide.active {
  opacity: 1;
  visibility: visible;
}
.hero__image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.hero__overlay { position:absolute; inset:0; z-index:1; background:linear-gradient(95deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.94) 30%, rgba(255,255,255,.58) 48%, rgba(255,255,255,.06) 72%); }
.hero__body { position:absolute; left:0; top:0; z-index:2; width:100%; padding-top:clamp(120px,12vw,160px); padding-left:clamp(44px,5vw,78px); }
.hero-content { max-width:520px; }
.hero-kicker { display:flex; gap:14px; align-items:center; margin-bottom:14px; font-size:12px; font-weight:700; color:#31425e; }
.hero-kicker::before { content:""; width:34px; height:3px; border-radius:99px; background:var(--primary); }
.hero h1 { font-size:clamp(40px,4.7vw,60px); line-height:1.05; margin-bottom:14px; font-weight:800; color:var(--dark); }
.hero-title-red { color:var(--primary); }
.hero p { font-size:17px; color:#4a5568; line-height:1.6; max-width:470px; margin-bottom:20px; }
.hero-btns { display:flex; gap:12px; margin-bottom:28px; flex-wrap:wrap; }
.btn { min-width:158px; height:44px; padding:0 20px; border-radius:8px; font-size:14px; font-weight:700; display:inline-flex; align-items:center; justify-content:center; }
.btn.primary { background:var(--primary); color:#fff; box-shadow:0 6px 18px rgba(209,32,47,.35); }
.btn.light { background:#fff; border:1px solid #cfd8e8; color:var(--dark); }
.hero-features { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 20px; max-width:500px; }
.hero-feature { display:flex; flex-direction:column; align-items:center; gap:8px; text-align:center; }
.hero-feature-icon { width:28px; height:28px; color:var(--primary); display:grid; place-items:center; background:transparent; border:none; border-radius:0; }
.hero-feature-icon svg {
  width: 26px;
  height: 26px;
  display: block;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.hero-feature h4 { font-size:11px; font-weight:800; margin-bottom:0; color:#1c2533; text-transform:uppercase; line-height:1.3; }
.hero-feature p { margin:0; font-size:10px; line-height:1.4; color:#69748a; }
.hero-features--main {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  max-width: 640px;
  margin-bottom: 22px;
}
.hero-features--main .hero-feature h4 {
  font-size: 12px;
  line-height: 1.25;
}
.hero-slide--fire .hero__overlay { background:linear-gradient(94deg, rgba(245,246,248,.98) 0%, rgba(245,246,248,.95) 33%, rgba(245,246,248,.72) 52%, rgba(245,246,248,.08) 76%); }
.hero-slide--fire .hero-content { max-width:560px; }
.hero-slide--fire h1 { letter-spacing:-.01em; }
.hero-features--fire {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  max-width: 640px;
  margin-bottom: 22px;
}
.hero-features--fire .hero-feature { align-items: center; }
.hero-features--fire .hero-feature h4 {
  font-size: 12px;
  line-height: 1.25;
  margin-bottom: 0;
}
.hero-slide--fiber .hero__overlay { background:linear-gradient(94deg, rgba(245,246,248,.98) 0%, rgba(245,246,248,.95) 33%, rgba(245,246,248,.72) 52%, rgba(245,246,248,.08) 76%); }
.hero-slide--fiber .hero-content { max-width:560px; }
.hero-slide--fiber h1 { letter-spacing:-.01em; }
.hero-features--fiber {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  max-width: 640px;
  margin-bottom: 22px;
}
.hero-features--fiber .hero-feature { align-items: center; }
.hero-features--fiber .hero-feature h4 {
  font-size: 12px;
  line-height: 1.25;
  margin-bottom: 0;
}
.hero-nav { position:absolute; top:50%; transform:translateY(-50%); width:40px; height:40px; border-radius:999px; background:rgba(255,255,255,.52); border:1px solid rgba(255,255,255,.72); display:grid; place-items:center; color:#fff; z-index:4; font-size:22px; }
.hero-nav.prev { left:18px; } .hero-nav.next { right:18px; }
.hero-dots { position:absolute; left:50%; transform:translateX(-50%); bottom:20px; display:flex; gap:12px; z-index:4; }
.hero-dot { width:10px; height:10px; border-radius:50%; border:none; background:rgba(255,255,255,.7); cursor:pointer; }
.hero-dot.active { background:var(--primary); }

.section { padding:54px 0 0; }
.service-child-intro { margin-bottom: 28px; padding-bottom: 8px; border-bottom: 1px solid var(--line); }
.service-child-intro h2 { font-size: 22px; margin: 22px 0 12px; color: var(--dark); }
.service-child-intro h3 { font-size: 17px; margin: 18px 0 8px; color: #2a3649; }
.service-child-intro ul, .service-child-intro ol { margin: 10px 0 14px 1.1rem; color: #4a5568; font-size: 15px; }
.service-parent-block { margin-top: 8px; padding: 28px 0 12px; border-top: 1px solid var(--line); }
.service-parent-block__title { font-size: 22px; font-weight: 800; color: var(--dark); margin-bottom: 16px; letter-spacing: -0.02em; line-height: 1.2; }
.service-parent-block__body .page-banner { margin-bottom: 16px; }
.service-parent-block__body .page-banner img { border-radius: var(--radius); display: block; width: 100%; height: auto; }
.inner-sidecard-parent-link { margin-top: 14px; font-size: 13px; font-weight: 600; }
.inner-sidecard-parent-link a { color: var(--primary); text-decoration: underline; text-underline-offset: 3px; }
.inner-sidecard-parent-link a:hover { color: #b01b2a; }

.section { padding:54px 0 0; }
.section-title { text-align:center; font-size:42px; font-weight:800; margin-bottom:6px; letter-spacing:-.02em; }
.section-title::before,.section-title::after { content:""; display:inline-block; width:42px; height:2px; background:var(--primary); vertical-align:middle; margin:0 12px; opacity:.8; }
.section-subtitle { text-align:center; color:var(--soft); font-size:16px; margin-bottom:28px; }

.service-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:18px; margin-bottom:56px; }
.card { border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; background:#fff; box-shadow:0 8px 22px rgba(16,28,44,.06); }
.service-thumb { height:150px; position:relative; overflow:hidden; }
.service-thumb img { width:100%; height:100%; object-fit:cover; transform:scale(1.02); }
.service-thumb::after { position:absolute; content:""; inset:0; background:linear-gradient(0deg, rgba(12,22,38,.26), rgba(12,22,38,0)); }
.service-icon { position:absolute; left:14px; bottom:12px; width:42px; height:42px; border-radius:50%; border:2px solid rgba(255,255,255,.85); color:#fff; display:grid; place-items:center; font-size:18px; z-index:2; }
.service-icon-red { background:var(--primary); } .service-icon-dark { background:#1f2f45; }
.card-body { padding:14px 14px 16px; min-height:220px; display:flex; flex-direction:column; }
.card h3 { font-size:18px; line-height:1.22; margin-bottom:8px; }
.card p { color:#5d677b; font-size:15px; line-height:1.5; margin-bottom:14px; flex-grow:1; }
.card a { color:var(--primary); font-size:14px; font-weight:700; margin-top:auto; }

.why-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:16px; margin-bottom:34px; }
.why-item { min-height:132px; padding:10px 8px; text-align:center; display:flex; flex-direction:column; align-items:center; justify-content:center; }
.why-icon { width:54px; height:54px; color:var(--primary); display:grid; place-items:center; margin-bottom:10px; border-radius:50%; border:2px solid rgba(209,32,47,.35); background:linear-gradient(180deg,rgba(209,32,47,.06) 0%,rgba(209,32,47,.02) 100%); }
.why-icon svg { width:24px; height:24px; stroke:currentColor; fill:none; stroke-width:1.85; stroke-linecap:round; stroke-linejoin:round; }
.why-title { font-size:14px; line-height:1.2; font-weight:800; color:#1f2f45; margin-bottom:8px; text-transform:uppercase; }
.why-text { font-size:13px; line-height:1.5; color:#667389; max-width:170px; }

.stats { display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--line); border-radius:12px; margin-bottom:52px; overflow:hidden; background:#fff; }
.stat { text-align:center; border-right:1px solid var(--line); padding:18px 12px; }
.stat:last-child { border-right:none; }
.stat strong { display:block; color:var(--primary); font-size:48px; line-height:1; margin-bottom:4px; font-family:"Montserrat",Arial,sans-serif; }
.stat span { font-size:13px; color:#5a657c; text-transform:uppercase; letter-spacing:.3px; font-weight:700; }

.refs { border:1px solid var(--line); border-radius:12px; overflow:hidden; background:#fff; display:grid; grid-template-columns:repeat(5,1fr); margin-bottom:54px; }
.ref-item { min-height:86px; display:flex; align-items:center; justify-content:center; color:#9ca4b4; font-size:26px; font-weight:800; border-right:1px solid var(--line); background:#fbfcff; }
.ref-item:last-child { border-right:none; }

.ref-showcase { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-bottom:22px; }
.ref-card { border:1px solid var(--line); border-radius:12px; background:#fff; overflow:hidden; display:flex; flex-direction:column; min-height:0; box-shadow:0 6px 18px rgba(16,28,44,.04); }
.ref-card-visual { min-height:100px; display:flex; align-items:center; justify-content:center; padding:16px 14px; background:linear-gradient(180deg,#fbfcff 0%,#f4f6fb 100%); border-bottom:1px solid var(--line); }
.ref-card-logo { max-width:100%; max-height:72px; width:auto; height:auto; object-fit:contain; }
.ref-card-placeholder { width:64px; height:64px; border-radius:12px; background:linear-gradient(135deg,#1f2f45 0%,var(--primary) 100%); color:#fff; font-size:20px; font-weight:800; display:grid; place-items:center; letter-spacing:.02em; }
.ref-card-name { margin:0; padding:12px 14px 14px; font-size:13px; line-height:1.45; font-weight:600; color:#3a4558; flex-grow:1; }
.ref-more-wrap { text-align:center; margin-bottom:54px; }
.ref-more-btn { display:inline-flex; align-items:center; justify-content:center; min-width:200px; }

.references-page .ref-showcase { grid-template-columns:repeat(4,1fr); margin-bottom:0; }
.references-page .ref-card-name { font-size:12px; }

.references-intro {
  display:grid;
  grid-template-columns:minmax(240px, 340px) 1fr;
  margin-bottom:32px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  overflow:hidden;
  background:#fff;
  box-shadow:0 10px 36px rgba(16,28,44,.07);
}
.references-intro-aside {
  position:relative;
  background:linear-gradient(160deg, #1a2d48 0%, #122038 48%, #0e1a2e 100%);
  color:#fff;
  padding:28px 24px 28px 20px;
  display:flex;
  align-items:stretch;
}
.references-intro-accent {
  flex:0 0 4px;
  border-radius:99px;
  background:linear-gradient(180deg, var(--primary) 0%, #ff4d5e 100%);
  margin-right:18px;
  align-self:stretch;
  min-height:100%;
}
.references-intro-aside-inner { flex:1; min-width:0; }
.references-intro-kicker {
  display:flex;
  align-items:center;
  gap:10px;
  margin:0 0 10px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:rgba(255,255,255,.72);
}
.references-intro-kicker::before {
  content:"";
  width:28px;
  height:3px;
  border-radius:99px;
  background:var(--primary);
}
.references-intro-aside .references-intro-title {
  font-family:"Montserrat",Arial,sans-serif;
  font-size:clamp(22px,2.4vw,26px);
  font-weight:800;
  line-height:1.15;
  margin:0 0 18px;
  letter-spacing:-.02em;
  color:#fff;
}
.references-intro-pills {
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.references-intro-pills li {
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:8px 12px;
  border-radius:10px;
  font-size:12px;
  font-weight:700;
  color:rgba(255,255,255,.95);
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.14);
  backdrop-filter:blur(6px);
}
.references-intro-pill-icon {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:18px;
  height:18px;
  color:rgba(255,255,255,.92);
}
.references-intro-pill-icon svg {
  display:block;
  stroke:currentColor;
  fill:none;
}
.references-intro-main {
  padding:28px 32px 30px;
  display:flex;
  align-items:center;
  background:linear-gradient(180deg, #fff 0%, #fafbfd 100%);
  border-left:1px solid var(--line);
}
.references-intro-text {
  font-size:15px;
  line-height:1.68;
  color:#5a657c;
  margin:0;
}
.references-intro-text strong { color:#33415a; font-weight:600; }

@media (max-width: 900px) {
  .references-intro { grid-template-columns:1fr; }
  .references-intro-main {
    border-left:none;
    border-top:1px solid var(--line);
    padding:22px 20px 26px;
  }
  .references-intro-aside { padding:22px 20px 24px 16px; }
}

@media (max-width: 760px) {
  .references-intro { margin-bottom:24px; border-radius:12px; }
  .references-intro-aside .references-intro-title { font-size:20px; margin-bottom:14px; }
  .references-intro-pills li { font-size:11px; padding:7px 10px; }
  .references-intro-main { padding:20px 16px 22px; }
  .references-intro-text { font-size:14px; }
}

.contact { background:var(--bg-soft); border-top:1px solid var(--line); padding:56px 0 50px; }
.contact-grid { display:grid; grid-template-columns:.95fr 1.3fr; gap:20px; }
.contact-box,.form-box { border:1px solid #e3e7f1; border-radius:12px; background:#fff; padding:22px; }
.contact-box h3,.form-box h3 { font-size:32px; line-height:1.08; margin-bottom:10px; }
.contact-box p { color:#69748a; font-size:15px; margin-bottom:18px; }
.contact-item { margin-bottom:12px; font-size:16px; font-weight:600; color:#3a4558; display:flex; align-items:flex-start; gap:10px; line-height:1.4; }
.contact-item-icon { width:20px; flex:0 0 20px; color:var(--primary); font-size:16px; margin-top:1px; }
.contact-social { display:flex; gap:10px; margin-top:6px; }
.social-link { width:34px; height:34px; border-radius:50%; display:grid; place-items:center; color:#fff; font-size:14px; font-weight:700; background:#132747; }
.social-link.whatsapp { background:#25d366; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.full { grid-column:1 / -1; }
input,textarea { width:100%; border:1px solid #d4dbe8; border-radius:10px; padding:12px 14px; font-size:15px; color:#293446; min-height:46px; background:#fff; }
textarea { min-height:104px; resize:vertical; }
.send { border:none; width:100%; height:50px; border-radius:8px; background:var(--primary); color:#fff; font-weight:700; font-size:16px; cursor:pointer; }

.inner-page { padding:38px 0 56px; }
.page-header { margin-bottom:24px; padding:18px 22px; border:1px solid #f2c8cd; border-radius:12px; background:linear-gradient(90deg, #fff6f7 0%, #fff 65%); }
.page-header h1 { font-size:42px; line-height:1.12; margin-bottom:8px; color:var(--primary); }
.page-header .section-subtitle { margin:0; text-align:left; color:#6b7280; font-size:15px; }
.page-content { background:#fff; border:1px solid var(--line); border-radius:12px; padding:24px; }
.page-content p { margin-bottom:14px; font-size:16px; color:#4b576f; }
.page-content { min-width:0; overflow-wrap:anywhere; word-break:break-word; }
.page-content img,
.page-content video,
.page-content iframe,
.page-content table,
.page-content pre {
  max-width:100%;
}
.page-content img,
.page-content video,
.page-content iframe {
  height:auto;
}
.page-content table {
  display:block;
  overflow-x:auto;
}
.inner-layout > * { min-width:0; }
.inner-layout { display:grid; grid-template-columns:minmax(0, 1.75fr) minmax(280px, .85fr); gap:22px; align-items:start; }
.inner-sidecard {
  position:sticky;
  top:106px;
  display:flex;
  border-radius:14px;
  overflow:hidden;
  background:linear-gradient(165deg, #1a2d48 0%, #122038 48%, #0e1a2e 100%);
  color:#fff;
  box-shadow:0 12px 30px rgba(12,22,38,.22);
}
.inner-sidecard-accent {
  flex:0 0 4px;
  background:linear-gradient(180deg, var(--primary) 0%, #ff5665 100%);
}
.inner-sidecard-body { padding:22px 18px 20px; width:100%; }
.inner-sidecard-kicker {
  margin:0 0 10px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.72);
}
.inner-sidecard-title {
  margin:0 0 14px;
  font-size:22px;
  line-height:1.2;
  font-family:"Montserrat", Arial, sans-serif;
}
.inner-sidecard-list {
  list-style:none;
  margin:0 0 16px;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.inner-sidecard-list li {
  font-size:13px;
  line-height:1.45;
  color:rgba(255,255,255,.92);
  padding:7px 10px;
  border-radius:9px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.06);
}
.inner-sidecard-contact {
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.08);
  border-radius:10px;
  padding:10px 12px;
  margin-bottom:14px;
}
.inner-sidecard-contact p {
  margin:0 0 5px;
  font-size:12px;
  color:rgba(255,255,255,.75);
}
.inner-sidecard-contact a {
  font-family:"Montserrat", Arial, sans-serif;
  font-size:18px;
  font-weight:800;
  letter-spacing:.01em;
}
.inner-sidecard-btn {
  width:100%;
  min-width:0;
  font-size:12px;
  letter-spacing:.02em;
}

.page-banner {
  border:1px solid var(--line);
  border-radius:12px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 10px 24px rgba(16,28,44,.06);
  margin-bottom:18px;
}
.page-banner img { display:block; width:100%; height:auto; }

.media-gallery { margin-top:22px; }
.media-gallery-title {
  font-size:22px;
  line-height:1.2;
  margin:0 0 12px;
  font-weight:800;
}
.media-gallery-grid {
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:12px;
}
.media-gallery-item {
  border-radius:12px;
  overflow:hidden;
  border:1px solid var(--line);
  background:#fff;
  box-shadow:0 8px 18px rgba(16,28,44,.05);
}
.media-gallery-item img {
  display:block;
  width:100%;
  aspect-ratio: 4 / 3;
  object-fit:cover;
}

.lb-open { overflow:hidden; }
.lightbox {
  position:fixed;
  inset:0;
  z-index:2000;
  display:none;
}
.lightbox.open { display:block; }
.lightbox__backdrop {
  position:absolute;
  inset:0;
  background:rgba(8,14,24,.72);
  backdrop-filter: blur(2px);
}
.lightbox__dialog {
  position:absolute;
  inset:16px;
  display:grid;
  grid-template-columns:56px 1fr 56px;
  align-items:center;
  gap:12px;
  max-width:1180px;
  margin:0 auto;
}
.lightbox__figure {
  margin:0;
  border-radius:14px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.04);
  box-shadow:0 18px 50px rgba(0,0,0,.35);
}
.lightbox__img {
  display:block;
  width:100%;
  height:calc(100vh - 32px);
  max-height:820px;
  object-fit:contain;
  background:#0a1220;
}
.lightbox__nav {
  width:56px;
  height:56px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.10);
  color:#fff;
  font-size:40px;
  line-height:0;
  display:grid;
  place-items:center;
  cursor:pointer;
}
.lightbox__nav:hover { background:rgba(255,255,255,.16); }
.lightbox__close {
  position:absolute;
  right:18px;
  top:14px;
  width:44px;
  height:44px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.10);
  color:#fff;
  font-size:28px;
  display:grid;
  place-items:center;
  cursor:pointer;
  z-index:1;
}
.lightbox__close:hover { background:rgba(255,255,255,.16); }

@media (max-width: 760px) {
  .lightbox__dialog { grid-template-columns:44px 1fr 44px; inset:10px; }
  .lightbox__nav { width:44px; height:44px; font-size:32px; }
  .lightbox__img { height:calc(100vh - 20px); }
}

.inner-hero { width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); min-height:280px; position:relative; overflow:hidden; background:#10213d; --inner-hero-image:url('/wp-content/hiz1.png'); }
.inner-hero::before { content:""; position:absolute; inset:0; background-image:var(--inner-hero-image); background-position:center; background-size:cover; background-repeat:no-repeat; transform:scale(1.04); }
.inner-hero::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg, rgba(11,25,46,.86) 0%, rgba(11,25,46,.55) 38%, rgba(11,25,46,.22) 65%, rgba(11,25,46,.1) 100%); }
.inner-hero-content { position:relative; z-index:2; color:#fff; padding:38px 0; }
.inner-breadcrumb { font-size:12px; opacity:.92; margin-bottom:16px; }
.inner-breadcrumb--row {
  display:flex;
  flex-wrap:nowrap;
  align-items:baseline;
  gap:0;
  max-width:100%;
  margin-bottom:16px;
  white-space:nowrap;
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  line-height:1.35;
}
.inner-breadcrumb--row::-webkit-scrollbar { display:none; height:0; width:0; }
.inner-breadcrumb--row a {
  color:inherit;
  text-decoration:underline;
  text-underline-offset:2px;
  flex-shrink:0;
}
.inner-breadcrumb--row a:hover { opacity:1; text-decoration-thickness:2px; color:#fff; }
.inner-bc-sep {
  flex-shrink:0;
  margin:0 0.35em;
  opacity:.75;
  user-select:none;
  text-decoration:none;
}
.inner-breadcrumb--row .inner-bc-current {
  flex-shrink:0;
  font-weight:600;
  opacity:1;
  text-decoration:none;
}
.inner-hero-title { font-size:46px; line-height:1.08; margin-bottom:10px; }
.inner-hero-text { font-size:16px; max-width:560px; color:rgba(255,255,255,.92); }

.info-strip { width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); background:linear-gradient(90deg,#0b2344 0%, #0f2f62 55%, #123a79 100%); padding:22px 0; color:#fff; }
.info-strip-inner { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.info-strip h3 { font-size:28px; margin-bottom:4px; }
.info-strip p { font-size:15px; opacity:.9; }
.info-strip .btn.light { border-color:#fff; color:#0f2f62; font-weight:700; }

.contact-page { padding-top: 24px; }
.contact-page-grid { margin-bottom: 26px; }
.map-card { border:1px solid var(--line); border-radius:12px; overflow:hidden; background:#fff; box-shadow:0 8px 22px rgba(16,28,44,.06); }
.map-card iframe { display:block; width:100%; }

/* Kurumsal */
.corporate-mv-grid {
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
  margin-bottom:6px;
}
.corporate-mv-card {
  display:grid;
  grid-template-columns:minmax(240px, 340px) 1fr;
  border:1px solid var(--line);
  border-radius:var(--radius);
  overflow:hidden;
  background:#fff;
  box-shadow:0 10px 36px rgba(16,28,44,.07);
}
.corporate-mv-aside {
  position:relative;
  background:linear-gradient(165deg,#1f2f45 0%,#15253b 45%,var(--primary) 110%);
  color:#fff;
  padding:24px 20px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:10px;
  min-height:200px;
}
.corporate-mv-card--mission .corporate-mv-aside {
  background:linear-gradient(160deg,#1f2f45 0%,#172a43 52%,rgba(209,32,47,.92) 100%);
}
.corporate-mv-card--vision .corporate-mv-aside {
  background:linear-gradient(160deg,#172a43 0%,#122036 54%,rgba(209,32,47,.82) 100%);
}
.corporate-mv-accent {
  position:absolute;
  left:18px;
  top:18px;
  width:6px;
  border-radius:99px;
  height:calc(100% - 36px);
  background:linear-gradient(180deg, rgba(255,255,255,.95) 0%, rgba(255,255,255,.22) 100%);
  opacity:.9;
}
.corporate-mv-accent--soft {
  background:linear-gradient(180deg, rgba(255,255,255,.75) 0%, rgba(255,255,255,.18) 100%);
}
.corporate-mv-icon {
  position:absolute;
  right:18px;
  top:18px;
  width:54px;
  height:54px;
  border-radius:16px;
  display:grid;
  place-items:center;
  color:rgba(255,255,255,.92);
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.22);
  backdrop-filter:blur(8px);
  box-shadow:0 14px 30px rgba(0,0,0,.18);
}
.corporate-mv-icon svg {
  display:block;
  stroke:currentColor;
  fill:none;
}
.corporate-mv-kicker {
  margin:0;
  padding-left:16px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:rgba(255,255,255,.74);
}
.corporate-mv-title {
  margin:0;
  padding-left:16px;
  padding-bottom:2px;
  font-family:"Montserrat", Arial, sans-serif;
  font-size:clamp(22px, 2.4vw, 28px);
  font-weight:800;
  line-height:1.12;
  letter-spacing:-.02em;
}
.corporate-mv-body {
  padding:26px 30px;
  border-left:1px solid var(--line);
  background:linear-gradient(180deg,#fff 0%,#fafbfd 100%);
}
.corporate-mv-lead {
  margin:0 0 14px;
  font-size:15px;
  line-height:1.62;
  color:#556070;
}
.corporate-mv-pills {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:14px;
}
.corporate-mv-pills span {
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:10px;
  font-size:12px;
  font-weight:700;
  color:rgba(209,32,47,.92);
  background:rgba(209,32,47,.06);
  border:1px solid rgba(209,32,47,.22);
}
.corporate-mv-pills--muted span {
  color:#33415a;
  background:rgba(30,45,66,.05);
  border-color:rgba(30,45,66,.14);
}
.corporate-mv-text {
  margin:0;
  font-size:15px;
  line-height:1.72;
  color:#5a657c;
}
.corporate-mv-text strong { font-weight:600; color:#33415a; }

@media (max-width: 980px) {
  .corporate-mv-grid { margin-bottom:0; }
  .corporate-mv-card { grid-template-columns:1fr; }
  .corporate-mv-aside { min-height:0; padding:22px 18px; }
  .corporate-mv-body { border-left:none; border-top:1px solid var(--line); padding:22px 20px 24px; }
}

.corporate-process {
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:16px;
}
.corporate-process-step {
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:#fff;
  box-shadow:0 8px 22px rgba(16,28,44,.06);
  overflow:hidden;
}
.corporate-process-step-head {
  display:flex;
  align-items:center;
  gap:10px;
  padding:14px 14px 12px;
  border-bottom:1px solid var(--line);
  background:linear-gradient(180deg,#fff 0%,#fafbfd 100%);
}
.corporate-process-step-badge {
  width:28px;
  height:28px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:var(--primary);
  color:#fff;
  font-weight:800;
  font-family:"Montserrat", Arial, sans-serif;
  box-shadow:0 8px 18px rgba(209,32,47,.22);
  flex:0 0 auto;
}
.corporate-process-step-icon {
  width:34px;
  height:34px;
  border-radius:12px;
  display:grid;
  place-items:center;
  color:var(--primary);
  background:rgba(209,32,47,.06);
  border:1px solid rgba(209,32,47,.22);
  flex:0 0 auto;
}
.corporate-process-step-icon svg {
  display:block;
  stroke:currentColor;
  fill:none;
}
.corporate-process-step-title {
  margin:0;
  font-size:15px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:-.01em;
  color:#1f2f45;
  text-transform:uppercase;
}
.corporate-process-step-list {
  list-style:none;
  margin:0;
  padding:14px 16px 16px;
  display:grid;
  gap:10px;
  color:#5d677b;
  font-size:14px;
}
.corporate-process-step-list li {
  position:relative;
  padding-left:20px;
  line-height:1.45;
}
.corporate-process-step-list li::before {
  content:"";
  position:absolute;
  left:0;
  top:.55em;
  width:10px;
  height:10px;
  border-radius:999px;
  background:rgba(209,32,47,.15);
  border:2px solid rgba(209,32,47,.45);
}
.corporate-process-cta {
  display:flex;
  justify-content:center;
  gap:12px;
  flex-wrap:wrap;
  margin-top:18px;
}

@media (max-width: 980px) {
  .corporate-process { grid-template-columns:repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .corporate-process { grid-template-columns:1fr; }
}
.map-full-bleed { width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.map-full-bleed iframe { display:block; width:100%; height:520px; border:0; }

.site-footer { background:#0e203c; color:#d9dfec; font-size:13px; }
.footer-inner { min-height:64px; display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.wpp { position:fixed; right:18px; bottom:18px; width:56px; height:56px; border-radius:50%; background:#25d366; color:#fff; font-size:24px; font-weight:700; display:grid; place-items:center; box-shadow:0 10px 26px rgba(18,40,24,.3); z-index:90; }

@media (max-width: 1060px) {
  .head-phone { display:none; }
  .menu-toggle { display:block; }
  .menu { position:absolute; top:86px; left:16px; right:16px; background:#fff; border:1px solid var(--line); border-radius:12px; box-shadow:0 14px 28px rgba(10,20,36,.1); padding:12px; display:none; flex-direction:column; align-items:flex-start; gap:8px; max-height:calc(100vh - 110px); overflow:auto; }
  .menu.open { display:flex; }
  .menu-dropdown .submenu { position:static; border:none; box-shadow:none; padding:6px 0 0; }
  .menu-dropdown:hover .submenu { display:none; }
  .menu-dropdown.open .submenu { display:block; }
  .menu-dropdown .mega-menu {
    left: auto;
    transform: none;
    width: 100%;
    max-height: none;
    overflow: visible;
    scrollbar-gutter: auto;
    padding: 4px 0 0;
    grid-template-columns: 1fr;
    gap: 8px;
    border-radius: 0;
    border: none;
    background: transparent;
    background-image: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    box-shadow: none;
  }
  .mega-menu-group {
    padding: 0 0 6px;
    background: rgba(247, 250, 252, 0.98);
    border: 1px solid var(--line);
    border-radius: 10px;
    overflow: hidden;
  }
  .mega-menu-title {
    margin: 0 0 4px;
    padding: 7px 10px;
    border-radius: 0;
  }
  .mega-menu-heading { gap: 0; }
  .mega-group-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    margin: 0 0 4px;
    border: 0;
    border-left: 1px solid var(--line);
    background: #f8fafc;
    color: #475467;
    font-size: 0;
    line-height: 1;
    font-weight: 400;
    border-radius: 0;
  }
  .mega-menu-links { display: none; max-height: none; overflow: visible; padding-right: 0; }
  .mega-menu-group.open .mega-menu-links { display: block; }
  .mega-menu-group.open .mega-group-toggle { color: var(--primary); }
  .mega-menu-group.open .mega-group-toggle::before { content: "−"; }
  .mega-group-toggle::before { content: "+"; }
  .menu-dropdown:hover .mega-menu { display:none; }
  .menu-dropdown.open .mega-menu { display:grid; }
  .mega-menu-title { margin-bottom:0; }
  .mega-menu-link { padding-left:14px; }
  .service-grid { grid-template-columns:repeat(2,1fr); }
  .why-grid { grid-template-columns:repeat(3,1fr); }
  .ref-showcase { grid-template-columns:repeat(2,1fr); }
  .references-page .ref-showcase { grid-template-columns:repeat(2,1fr); }
}

@media (max-width: 760px) {
  .hero { height:680px; }
  .hero__image { object-position:64% center; }
  .hero__body { width:calc(100% - 24px); padding-top:110px; padding-left:12px; }
  .hero h1 { font-size:36px; }
  .hero p { font-size:15px; max-width:none; }
  .hero-features { grid-template-columns:repeat(2,1fr); max-width:none; }
  .hero-features--main { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .hero-features--fire { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .hero-features--fiber { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .hero-nav.prev { left:10px; } .hero-nav.next { right:10px; }

  .section-title { font-size:32px; }
  .section-title::before,.section-title::after { display:none; }

  .service-grid,.why-grid,.stats,.refs,.ref-showcase,.contact-grid,.form-grid { grid-template-columns:1fr; }
  .inner-layout { grid-template-columns:1fr; }
  .inner-sidecard {
    position:static;
    border-radius:12px;
  }
  .media-gallery-grid { grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .contact-box h3,.form-box h3 { font-size:26px; }
  .page-header { padding:14px 16px; }
  .page-header h1 { font-size:34px; }
  .inner-hero { min-height:220px; }
  .inner-hero-content { padding:28px 0; }
  .inner-hero-title { font-size:34px; }
  .inner-hero-text { font-size:14px; }
  .info-strip-inner { flex-direction:column; align-items:flex-start; }
  .info-strip h3 { font-size:24px; }
  .stat,.ref-item { border-right:0; border-bottom:1px solid var(--line); }
  .stats .stat:last-child,.refs .ref-item:last-child { border-bottom:0; }
  .references-page .ref-showcase { grid-template-columns:1fr; }
  .map-card iframe { height: 360px; }
  .map-full-bleed iframe { height: 360px; }
}
