@font-face{
  font-family:'Inter';
  font-style:normal;
  font-weight:100 900;
  font-display:swap;
  src:url('../assets/fonts/inter-latin-ext.woff2') format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:'Inter';
  font-style:normal;
  font-weight:100 900;
  font-display:swap;
  src:url('../assets/fonts/inter-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:'Inter';
  font-style:italic;
  font-weight:100 900;
  font-display:swap;
  src:url('../assets/fonts/inter-italic-latin-ext.woff2') format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:'Inter';
  font-style:italic;
  font-weight:100 900;
  font-display:swap;
  src:url('../assets/fonts/inter-italic-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

:root{
  --navy: #003057;
  --navy-dark: #00213d;
  --navy-darker: #003057;
  --amber: #f1b434;
  --amber-dark: #d99c1f;
  --amber-readable: #8a5a00;
  --white: #ffffff;
  --gray-bg: #f4f4f4;
  --gray-text: #5b6b78;
  --accent-blue: #5e9bdc;
  --linkedin: #0a66c2;
  --linkedin-dark: #004182;
  --font: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-heading: 'Inter', Arial, "Helvetica Neue", Helvetica, sans-serif;
  --font-display: 'Inter', Arial, "Helvetica Neue", Helvetica, sans-serif;
  /* Page-section container width: fixed on normal screens, scales up gradually on very wide monitors instead of leaving huge fixed side margins. */
  --container-max: clamp(1100px, 70vw, 1440px);
  /* Tüm sayfalardaki ana içerik blokları ortak kenar boşluğunu kullanır. */
  --page-content-width: 68%;
}

*{box-sizing:border-box; margin:0; padding:0;}

html{scroll-behavior:smooth;}

body{
  font-family: var(--font);
  color: var(--navy);
  background: var(--white);
  overflow-x:hidden;
  line-height:1.5;
}

a{color:inherit; text-decoration:none;}
/* Keyboard focus is always visible; currentColor keeps it readable on both
   light and navy surfaces (inputs keep their amber ring instead). */
:focus-visible{outline:2px solid currentColor; outline-offset:3px;}
ul{list-style:none;}
img{max-width:100%; display:block;}
section{position:relative;}

h1,h2,h3,h4,h5,h6,
.main-nav a,
.btn,
.eyebrow, .eyebrow-dark,
.slide-tag, .stat-label,
.mega-col-title{
  font-family: var(--font-heading);
}

.icon{display:inline-block;}

/* ===================== TOPBAR ===================== */
.topbar{
  position:sticky;
  top:0;
  z-index:1001;
  background:var(--gray-bg);
  font-size:12px;
  line-height:1.35;
  color:var(--navy);
}
.topbar-inner{
  max-width:var(--container-max);
  margin:0 auto;
  padding:7px 24px;
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto auto;
  align-items:center;
  column-gap:20px;
}
.language-toggle{
  display:inline-flex;
  align-items:center;
  justify-self:end;
  gap:2px;
  margin-left:0;
  padding:2px;
  border:1px solid rgba(0,48,87,.2);
  border-radius:999px;
  background:rgba(255,255,255,.78);
  box-shadow:0 1px 3px rgba(0,48,87,.1);
}
.language-toggle a{
  min-width:31px;
  height:20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  color:var(--navy);
  font-size:10px;
  font-weight:800;
  letter-spacing:.65px;
  transition:background .2s ease, color .2s ease, box-shadow .2s ease;
}
.language-toggle a.is-active{
  background:var(--navy);
  color:#fff;
  box-shadow:0 1px 4px rgba(0,48,87,.24);
}
.language-toggle a:not(.is-active):hover{background:rgba(0,48,87,.08);}
.language-toggle a:focus-visible{outline:2px solid var(--amber); outline-offset:2px;}
.topbar-contact{justify-self:start; white-space:nowrap;}
.topbar-contact a{
  margin-right:14px;
  font-weight:600;
}
.topbar-contact a:last-child{margin-right:0;}
.topbar-contact a:hover{color:var(--amber-dark);}
.topbar-social{
  justify-self:end;
  display:flex;
  align-items:center;
  gap:7px;
}
.follow-label{font-weight:600; margin-right:3px;}
.social-btn{
  width:22px; height:22px;
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:50%;
  background:var(--navy);
  color:#fff;
  font-size:10px;
  transition:transform .25s ease, background .25s ease;
}
.social-btn:hover{transform:translateY(-2px) scale(1.08); background:var(--amber-dark);}

/* LinkedIn badge (topbar + footer): the decorative text label is replaced by
   the real LinkedIn mark; the accessible name stays on the anchor. */
.topbar-social > a,
.footer-legal-social a{
  flex:none;
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:50%;
  background:var(--linkedin) url('../assets/img/linkedin-white.svg') center / 60% no-repeat;
  overflow:hidden;
  font-size:0;
  transition:transform .25s ease, background-color .25s ease, box-shadow .25s ease;
}
.topbar-social > a{
  width:22px; height:22px;
  box-shadow:0 1px 4px rgba(0,48,87,.24);
}
.footer-legal-social a{
  width:30px; height:30px;
  box-shadow:0 2px 6px rgba(0,48,87,.28);
}
.topbar-social > a:hover,
.footer-legal-social a:hover{
  transform:translateY(-2px) scale(1.08);
  background-color:var(--linkedin-dark);
  box-shadow:0 6px 14px rgba(10,102,194,.45);
}
.topbar-social > a:focus-visible,
.footer-legal-social a:focus-visible{outline:2px solid var(--amber); outline-offset:3px;}

/* Compact further on medium screens; contact details remain available
   through the footer and floating contact button on phones. */
@media (max-width:1100px){
  .topbar-inner{padding:5px 20px; column-gap:14px;}
  .topbar{font-size:10px;}
  .language-toggle{margin-left:0; padding:1px;}
  .language-toggle a{min-width:27px; height:18px; font-size:9px;}
  .topbar-contact a{margin-right:10px;}
  .topbar-social{gap:5px;}
  .topbar-contact a[href^="mailto"]{display:none;}
  .follow-label{display:none;}
}
@media (max-width:640px){
  .topbar{display:none;}
  .navbar{top:0;}
}

/* ===================== NAVBAR ===================== */
.navbar{
  position: sticky;
  top:var(--topbar-height, 40px);
  z-index:1000;
  background: transparent;
  transition: background-color .35s ease, box-shadow .35s ease, padding .35s ease;
  margin-bottom:-86px;
}
.navbar.scrolled{
  background: var(--navy);
  box-shadow: 0 4px 18px rgba(0,0,0,.18);
}
.navbar-inner{
  max-width:var(--container-max);
  margin:0 auto;
  min-height:84px;
  padding:10px 24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.logo-box{
  display:flex;
  align-items:center;
  flex-shrink:0;
  margin-left:-20px;
  transition: opacity .2s ease;
}
.logo-box img{
  height:64px;
  max-height:64px;
  width:auto;
  display:block;
}
.logo-box:hover{opacity:.8;}

.main-nav > ul{
  display:flex;
  gap:2px;
  flex-wrap:wrap;
}
.main-nav > ul > li > a{
  display:flex;
  align-items:center;
  gap:6px;
  color:#fff;
  font-weight:700;
  font-size:14px;
  letter-spacing:1.5px;
  text-transform:uppercase;
  padding:12px 16px;
  border-radius:4px;
  white-space:nowrap;
  transition: background .2s ease;
}
.main-nav > ul > li > a:hover{background:rgba(255,255,255,.12);}
.caret{
  width:0; height:0;
  border-left:4px solid transparent;
  border-right:4px solid transparent;
  border-top:5px solid currentColor;
  opacity:.8;
}
.has-dropdown{position:relative;}
.dropdown{
  position:absolute;
  top:calc(100% + 10px);
  left:0;
  display:flex;
  align-items:stretch;
  border-radius:15px;
  overflow:hidden;
  box-shadow:0 10px 35px rgba(0,0,0,.3);
  opacity:0;
  visibility:hidden;
  transform:translateY(8px);
  transition: opacity .2s ease, transform .2s ease, visibility .2s ease;
}
.has-dropdown:hover .dropdown, .has-dropdown:focus-within .dropdown{
  opacity:1; visibility:visible; transform:translateY(0);
}
/* The last 3 nav items sit far enough right that a left-anchored mega-menu
   overruns the viewport at common laptop widths (1280-1440px); flip them to
   hang from the right edge of their trigger instead. */
.main-nav > ul > li:nth-last-child(-n+3) .dropdown{ left:auto; right:0; }

/* Every dropdown (single-column or multi-column mega) is built from mega-col panels */
.mega-col{
  background:#efefef;
  padding:28px 24px 20px;
  width:auto;
  min-width:190px;
}
.mega-col + .mega-col{border-left:1px solid rgba(0,48,87,.08);}

.mega-col-head{margin-bottom:16px;}
/* Sarı çizgi tüm menülerde başlığın hemen altında kalsın (Projeler menüsündeki hizalama). */
.mega-col-title{
  font-size:14px;
  font-weight:700;
  letter-spacing:1px;
  line-height:1.3;
  text-transform:uppercase;
  color:var(--navy);
  white-space:nowrap;
}
.mega-col-subtitle{
  display:inline-block;
  margin-left:6px;
  font-size:11px;
  font-weight:600;
  font-style:italic;
  letter-spacing:1.5px;
  text-transform:uppercase;
  color:var(--accent-blue);
}
.mega-col-desc{
  margin-top:4px;
  font-size:11px;
  font-style:italic;
  letter-spacing:.3px;
  color:var(--navy);
  opacity:.7;
}
.mega-col-head::after{
  content:'';
  display:block;
  width:46px;
  height:2px;
  background:var(--amber);
  margin-top:12px;
}
.mega-col ul li a{
  display:flex;
  align-items:flex-start;
  gap:8px;
  padding:7px 10px;
  margin:0 -10px;
  border-radius:6px;
  font-size:13px;
  font-weight:700;
  letter-spacing:.4px;
  color:var(--navy);
  text-transform:none;
  transition: background .15s ease, color .15s ease;
}
.mega-col ul li a:hover{background:rgba(255,255,255,.75); color:var(--amber-dark);}
.chev-icon{
  color:var(--accent-blue);
  font-size:12px;
  font-weight:700;
  width:8px;
  flex-shrink:0;
}
/* › ikonu olmayan bağlantılar da ikonlularla aynı x konumundan başlasın
   (10px padding + 8px ikon + 8px boşluk = 26px) */
.mega-col ul li a:not(:has(.chev-icon)){padding-left:26px;}

.hamburger{
  display:none;
  flex-direction:column;
  gap:5px;
  background:none;
  border:none;
  cursor:pointer;
  padding:6px;
}
.hamburger span{
  width:24px; height:2px; background:#fff; display:block; transition:.3s;
}

/* ===================== BUTTONS ===================== */
.btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-weight:600;
  font-size:14px;
  letter-spacing:1.2px;
  text-transform:uppercase;
  padding:13px 32px;
  border-radius:4px;
  transition: transform .2s ease, background .2s ease, color .2s ease, box-shadow .2s ease;
  cursor:pointer;
  border:none;
}
.btn:hover{transform:scale(.96);}

.btn-outline{
  border:2px solid #fff;
  color:#fff;
  background:transparent;
}
.btn-outline:hover{background:#fff; color:var(--navy);}

.btn-outline-dark{
  border:2px solid var(--navy);
  color:var(--navy);
  background:transparent;
}
.btn-outline-dark:hover{background:var(--navy); color:#fff;}

.btn-pill{
  background:#fff;
  color:var(--navy);
  border-radius:30px;
  box-shadow:0 8px 20px rgba(0,0,0,.15);
}
.btn-pill:hover{background:var(--amber);}
.chev{transition:transform .2s ease;}
.btn:hover .chev{transform:translateX(3px);}

/* Turuncu zemin üzerindeki yazı: lacivert yerine neredeyse siyah bir
   ton kullanılıyor. Altın (#f1b434) üzerinde ~9.5:1 kontrast verir,
   yazı kalın ve keskin görünür; hover'da da turuncu üstünde turuncu
   metne düşmüyor. */
.btn-amber{
  background:var(--amber);
  color:#04121F;
  font-weight:800;
}
.btn-amber:hover{
  background:var(--amber-dark);
  color:#04121F;
}

/* ===================== SCROLL REVEAL ===================== */
.reveal{
  opacity:0;
  transform:translateY(22px);
  transition: opacity .6s cubic-bezier(.16,.84,.44,1), transform .6s cubic-bezier(.16,.84,.44,1);
}
.reveal.in-view{
  opacity:1;
  transform:translateY(0);
}

/* ===================== HERO ===================== */
.hero{
  position:relative;
  isolation:isolate;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:var(--navy-darker);
}
.hero-bg-video{
  position:absolute; inset:0;
  z-index:0;
  overflow:hidden;
  pointer-events:none;
}
.hero-bg-video video{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover;
}
body.homepage .homepage-video-stage{
  position:fixed;
  inset:0;
  z-index:0;
}
body.homepage main > section{
  z-index:1;
}
body.homepage .hero,
body.homepage .values,
body.homepage .stats-section{
  background:transparent;
}
body.homepage .values-bg,
body.homepage .stats-bg{
  display:none;
}
body.homepage .services-intro,
body.homepage .site-footer{
  position:relative;
  z-index:2;
}
.hero-overlay{
  position:absolute; inset:0;
  z-index:1;
  pointer-events:none;
  background: linear-gradient(0deg, rgba(0,0,0,.75) 0%, rgba(0,0,0,.4) 45%, rgba(0,0,0,.4) 65%, rgba(0,0,0,.1) 100%);
}
.hero-content{
  position:relative;
  z-index:2;
  max-width:var(--container-max);
  margin:0 auto;
  padding: 0 24px 100px;
  width:100%;
  color:#fff;
}
.eyebrow{
  font-size:clamp(22px, 2.6vw, 32px);
  font-weight:700;
  font-style:italic;
  letter-spacing:1.5px;
  text-transform:uppercase;
  margin-bottom:16px;
  opacity:.95;
}
.hero-buttons{display:flex; gap:18px; flex-wrap:wrap;}
.hero-content-brand{
  text-align:center;
}
.hero-brand{
  font-family: var(--font-display);
  font-weight:800;
  font-size:clamp(56px, 11vw, 160px);
  letter-spacing:-1px;
  line-height:1;
  margin-bottom:20px;
}
.hero-tagline{
  font-size:clamp(15px, 1.6vw, 19px);
  font-weight:500;
  letter-spacing:2px;
  text-transform:uppercase;
  opacity:.9;
  margin-bottom:14px;
}
.hero-partner-in{
  font-size:clamp(15px, 1.6vw, 19px);
  font-weight:700;
  font-style:italic;
  letter-spacing:1px;
  text-transform:uppercase;
  opacity:.95;
  margin-bottom:14px;
}
.hero-cycle-box{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:260px;
  background:var(--amber);
  color:var(--navy-darker);
  font-size:clamp(15px, 1.6vw, 19px);
  font-weight:800;
  font-style:italic;
  letter-spacing:.5px;
  padding:10px 22px;
  border-radius:6px;
  margin-bottom:36px;
}
.hero-cycle-cursor{
  display:inline-block;
  margin-left:2px;
  animation: cursorBlink 1s step-end infinite;
}
@keyframes cursorBlink{
  0%, 50%{opacity:1;}
  50.01%, 100%{opacity:0;}
}
.hero-content-brand .hero-buttons{justify-content:center;}

.scroll-indicator{
  position:absolute;
  bottom:28px; left:50%;
  transform:translateX(-50%);
  width:26px; height:42px;
  border:2px solid rgba(255,255,255,.7);
  border-radius:14px;
  z-index:2;
}
.scroll-indicator span{
  position:absolute;
  top:6px; left:50%;
  width:4px; height:8px;
  background:#fff;
  border-radius:2px;
  transform:translateX(-50%);
  animation: scrollDot 1.8s ease infinite;
}
@keyframes scrollDot{
  0%{opacity:1; top:6px;}
  70%{opacity:0; top:22px;}
  100%{opacity:0; top:6px;}
}

/* ===================== VALUES ===================== */
.values{
  display:flex;
  align-items:center;
  color:#fff;
  padding:140px 0 100px;
}
.values-bg{
  position:absolute; inset:0;
  background:
    repeating-linear-gradient(135deg, rgba(255,255,255,.02) 0px, rgba(255,255,255,.02) 2px, transparent 2px, transparent 40px),
    linear-gradient(120deg, #0a2540, #1c3a55 60%, #274a68);
}
.values-overlay{
  position:absolute; inset:0;
  background: linear-gradient(90deg, rgba(0,21,39,.92) 10%, rgba(0,21,39,.62) 60%, rgba(0,21,39,.52) 100%);
}
.values-inner{
  position:relative; z-index:2;
  max-width:var(--container-max);
  margin:0 auto;
  padding:0 24px;
  width:100%;
}
.values-title{
  font-size:clamp(34px, 4.6vw, 60px);
  font-weight:700;
  font-style:italic;
  letter-spacing:2px;
  line-height:1.05;
  text-transform:uppercase;
  color:#fff;
  margin-bottom:20px;
}
.values-intro{
  max-width:460px;
  font-size:16px;
  line-height:1.6;
}
.values-columns{
  display:grid;
  grid-template-columns:1.35fr repeat(3, 1fr);
  gap:36px;
  margin-bottom:56px;
}
.value-line{
  display:block;
  width:60px; height:2px;
  background:var(--amber);
  margin-bottom:22px;
}
.value-col h3{
  font-size:19px;
  font-weight:700;
  letter-spacing:1.5px;
  margin-bottom:16px;
}
.value-col p{font-size:17px; line-height:1.6; opacity:.85; max-width:none;}

/* Anasayfa gövde metinleri iki yana yaslı (editorial dizgi) */
.values-intro,
.value-col p,
.stats-text,
.services-intro-right p,
.carousel-slide p{
  text-align:justify;
  text-justify:inter-word;
}

/* ===================== CINEMATIC VIDEO SECTIONS (hakkimizda.html) ===================== */
.cinematic-section{
  position:relative;
  min-height:94vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:var(--navy-darker);
}
.cinematic-section video{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover;
  z-index:0;
}
.cinematic-section::after{
  content:'';
  position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(5,17,31,.35), rgba(5,17,31,.8));
  z-index:1;
}
.cinematic-card{
  position:relative; z-index:2;
  max-width:var(--container-max);
  margin:0 auto;
  padding:0 24px;
  color:#fff;
}
/* Text sits directly on the video now - no card frame, just a shadow to
   keep it readable against the footage. */
.cinematic-card-inner{
  background:none;
  border:none;
  border-radius:0;
  padding:0;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  box-shadow:none;
}
.cinematic-card h2,
.cinematic-card p,
.cinematic-card li,
.cinematic-label-tag{text-shadow:0 2px 16px rgba(0,0,0,.65);}
.cinematic-card .eyebrow-dark{color:var(--amber);}
.cinematic-label{
  display:inline-flex;
  align-items:stretch;
  margin-bottom:24px;
}
.cinematic-label-arrow{
  display:flex; align-items:center; justify-content:center;
  width:48px;
  background:var(--navy);
  border:1px solid rgba(255,255,255,.3);
  border-radius:8px;
}
.cinematic-label-arrow svg{width:20px; height:20px; color:var(--amber);}
.cinematic-label-tag{
  display:flex; align-items:center;
  background:none;
  border:none;
  padding:0 0 0 16px;
  font-size:clamp(18px,2vw,26px);
  font-weight:800;
  font-style:italic;
  letter-spacing:.5px;
  text-transform:uppercase;
  color:#fff;
  white-space:nowrap;
}
.cinematic-card h2{
  font-size:clamp(24px,3.4vw,34px);
  font-weight:800;
  color:#fff;
  margin:8px 0 22px;
  line-height:1.25;
}
.cinematic-card p{
  font-size:16px;
  line-height:1.75;
  color:rgba(255,255,255,.88);
  text-align:justify;
  text-justify:inter-word;
}
.cinematic-card p + p{margin-top:14px;}
.cinematic-card-columns{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0 40px;
}
.cinematic-card .about-intro-checklist{
  margin-top:18px;
  background:none;
  border-left:none;
  color:#fff;
  transform:none;
}
.cinematic-card .about-intro-checklist li{color:rgba(255,255,255,.92);}
.cinematic-card--wide{max-width:var(--container-max);}
.cinematic-card .mv-editorial-block{background:none; border:none; padding:0;}
.cinematic-card .mv-editorial-block h3{color:var(--amber);}
.cinematic-card .mv-editorial-block p{color:rgba(255,255,255,.88);}
.cinematic-card .mv-editorial-block p strong{color:#fff;}
.cinematic-card .mv-editorial-more{color:#fff;}
.cinematic-card .mv-editorial-more:hover{color:var(--amber);}
@media (max-width:820px){
  .cinematic-section{min-height:auto; padding:60px 0;}
  .cinematic-card-inner{padding:0;}
  .cinematic-card-columns{grid-template-columns:1fr;}
}

/* ===================== STATS ===================== */
.stats-section{
  position:relative;
  display:flex;
  align-items:center;
  color:#fff;
  padding:140px 0 100px;
}
.stats-bg{
  position:absolute; inset:0;
  background: linear-gradient(135deg, #0a2540, #145a8c 55%, #1c3a55);
}
.stats-bg video{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover;
}
.stats-overlay{
  position:absolute; inset:0;
  background: linear-gradient(0deg, rgba(0,21,39,.72), rgba(0,21,39,.5));
}
.stats-inner{
  position:relative; z-index:2;
  max-width:var(--container-max);
  margin:0 auto;
  padding:0 24px;
  width:100%;
}
.stats-inner h2{
  font-size:clamp(28px, 4.4vw, 45px);
  font-weight:700;
  font-style:italic;
  letter-spacing:2px;
  text-transform:uppercase;
  line-height:1.1;
  margin-bottom:28px;
  max-width:800px;
}
.stats-text{
  max-width:860px;
  font-size:16px;
  line-height:1.6;
  margin-bottom:56px;
}
.stats-bar{
  position:relative;
  z-index:3;
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(140px, 1fr));
  gap:24px;
  background: rgba(0,26,48,.82);
  border:1px solid rgba(255,255,255,.25);
  border-radius:10px;
  padding:36px 24px;
  margin-bottom:-80px;
  box-shadow:0 20px 50px rgba(0,0,0,.25);
}
.stat{text-align:center;}
.stat-number, .stat-number-static{
  display:block;
  font-family: var(--font-heading);
  font-size:clamp(28px, 3.6vw, 40px);
  font-weight:700;
  letter-spacing:1px;
  margin-bottom:8px;
}
.stat-label{
  font-size:12px;
  font-weight:700;
  letter-spacing:1px;
  text-transform:uppercase;
  opacity:.85;
}

/* ===================== SERVICES INTRO ===================== */
.services-intro{
  padding:110px 0;
  background:#fff;
}
.services-intro-inner{
  max-width:var(--container-max);
  margin:0 auto;
  padding:0 24px;
  display:grid;
  grid-template-columns:1fr 1.15fr;
  gap:56px;
  align-items:start;
}
.eyebrow-dark{
  font-style:italic;
  font-weight:700;
  letter-spacing:1.5px;
  text-transform:uppercase;
  color:var(--amber-dark);
  margin-bottom:18px;
  font-size:16px;
}
.services-intro-left h2{
  font-size:clamp(34px, 4.8vw, 60px);
  font-weight:700;
  letter-spacing:2px;
  line-height:1.15;
  text-transform:uppercase;
}
.services-intro-right p{
  color:var(--gray-text);
  font-size:16px;
  margin-bottom:28px;
}
.expand-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-weight:700;
  letter-spacing:.5px;
  padding-bottom:4px;
  border-bottom:2px solid var(--navy);
  transition:color .2s ease, border-color .2s ease;
}
.expand-link:hover{color:var(--amber-dark); border-color:var(--amber-dark);}
.chev-down{transition:transform .2s ease;}
.expand-link:hover .chev-down{transform:translateY(3px);}

/* ===================== SERVICES CAROUSEL ===================== */
.services-carousel{
  position:relative;
  display:flex;
  align-items:center;
  color:#fff;
  padding:140px 0;
  overflow:hidden;
}
/* Taban katman daima opak kalmalı: saydamlaşırsa arkadaki sabit hero
   videosu geçiş sırasında görünür (body.homepage .homepage-video-stage). */
.carousel-bg{
  position:absolute; inset:0;
  background: linear-gradient(120deg, #1a1a1a, #2d2d2d 45%, #1a1a1a);
}
.carousel-photo{
  position:absolute; inset:0;
  opacity:0;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  transform:scale(1.02);
  /* Süre main.js'teki FADE_MS ile aynı; küçük görselden tam çözünürlüğe
     geçiş anında olduğu için kısa ve keskin bir geçiş yeterli. */
  transition:opacity .3s ease;
}
/* Koyu filtre bilinçli olarak açık bırakıldı: fotoğraflar görünür kalsın,
   okunurluk metin gölgesiyle sağlandı. */
.carousel-overlay{
  position:absolute; inset:0;
  background:
    linear-gradient(90deg, rgba(6,12,20,.82) 0%, rgba(6,12,20,.5) 45%, rgba(6,12,20,.26) 100%),
    linear-gradient(180deg, rgba(6,12,20,.38), rgba(6,12,20,.08) 40%, rgba(6,12,20,.5)),
    radial-gradient(circle at 30% 30%, rgba(241,180,52,.08), transparent 60%);
}
.carousel-inner{
  position:relative; z-index:2;
  max-width:var(--container-max);
  margin:0 auto;
  padding:0 24px;
  width:100%;
  display:grid;
  grid-template-columns:60px 1fr 1fr;
  gap:40px;
  align-items:center;
}
.carousel-timeline{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:22px;
  position:relative;
}
.carousel-timeline::before{
  content:"";
  position:absolute;
  top:0; bottom:0; left:50%;
  width:1px;
  background:rgba(255,255,255,.25);
  transform:translateX(-50%);
  z-index:0;
}
.carousel-dot{
  position:relative; z-index:1;
  width:12px; height:12px;
  padding:0;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.35);
  cursor:pointer;
  transition: background .25s ease, transform .25s ease;
}
.carousel-dot:hover{transform:scale(1.3);}
.carousel-dot.active{
  background:var(--amber);
  box-shadow:0 0 0 5px rgba(241,180,52,.25);
}
.carousel-slide{
  min-height:220px;
  animation: slideFade .5s ease;
}
/* Filtre açıldığı için metin kontrastı gölgeyle korunuyor */
.carousel-slide .slide-tag,
.carousel-slide h3,
.carousel-slide p{
  text-shadow:0 2px 18px rgba(0,0,0,.65), 0 1px 4px rgba(0,0,0,.45);
}
@keyframes slideFade{
  from{opacity:0; transform:translateY(14px);}
  to{opacity:1; transform:translateY(0);}
}
.slide-tag{
  display:inline-block;
  font-size:12px;
  font-weight:700;
  letter-spacing:1.5px;
  text-transform:uppercase;
  color:var(--amber);
  margin-bottom:14px;
}
.carousel-slide h3{
  font-size:clamp(26px, 3.6vw, 40px);
  font-weight:500;
  letter-spacing:2px;
  text-transform:uppercase;
  margin-bottom:18px;
  line-height:1.15;
}
.carousel-slide p{
  color:rgba(255,255,255,.75);
  font-size:16px;
  margin-bottom:26px;
  max-width:560px;
}
.carousel-cards{
  display:flex;
  flex-direction:column;
  gap:16px;
}
.carousel-card{
  display:grid;
  grid-template-columns:132px 1fr;
  gap:16px;
  align-items:center;
  width:100%;
  text-align:left;
  font:inherit;
  /* Kart bir <button>: düğmeler color'ı miras almaz, bu yüzden metin
     koyu zeminde okunmaz (tarayıcı varsayılanı siyahtı). Açıkça beyaz
     verilir ve fotoğraf zemini karşısında gölge ile desteklenir. */
  color:#fff;
  background:rgba(6,12,20,.74);
  border:1px solid rgba(255,255,255,.16);
  border-radius:10px;
  padding:10px;
  cursor:pointer;
  overflow:hidden;
  transition: background .2s ease, transform .2s ease, border-color .2s ease;
}
.carousel-card:hover{
  background:rgba(6,12,20,.88);
  transform:translateX(-4px);
  border-color:var(--amber);
}
.carousel-card .card-thumb{
  display:block;
  width:132px;
  height:88px;
  object-fit:cover;
  border-radius:8px;
  background:#12161d;
}
.carousel-card .card-body{padding-right:6px;}
.carousel-card .card-tag{
  font-size:11px;
  letter-spacing:1px;
  text-transform:uppercase;
  color:var(--amber);
  font-weight:700;
  opacity:1;
  text-shadow:0 1px 6px rgba(0,0,0,.8);
}
.carousel-card .card-title{
  font-size:16px;
  font-weight:800;
  letter-spacing:.4px;
  margin-top:6px;
  text-transform:uppercase;
  color:#fff;
  line-height:1.25;
  text-shadow:0 2px 12px rgba(0,0,0,.85), 0 1px 3px rgba(0,0,0,.6);
}
.carousel-nav{
  grid-column:1 / -1;
  display:flex;
  gap:14px;
  justify-content:center;
  margin-top:20px;
}
.carousel-arrow{
  width:44px; height:44px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.4);
  background:transparent;
  color:#fff;
  font-size:20px;
  cursor:pointer;
  transition: background .2s ease, transform .2s ease, border-color .2s ease;
}
.carousel-arrow:hover{
  background:var(--amber);
  border-color:var(--amber);
  transform:scale(1.08);
}

/* ===================== NAVBAR SOLID (subpages without a dark hero) ===================== */
.navbar-solid{
  background:var(--navy);
  box-shadow:0 4px 18px rgba(0,0,0,.18);
}

/* ===================== CONTACT HERO ===================== */
.contact-hero{
  position:relative;
  min-height:60vh;
  overflow:hidden;
  padding:200px 0 220px;
  color:#fff;
  background: var(--navy-darker);
}
/* Transparent navbar over the hero: darkens the very top so the white
   nav links stay readable against brighter frames of the background video. */
.contact-hero::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:160px;
  background:linear-gradient(180deg, rgba(0,21,39,.5), rgba(0,21,39,0));
  z-index:1;
  pointer-events:none;
}
.contact-hero-diagonal{
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - 70px));
}
.section-bg-video{
  position:absolute; inset:0;
  overflow:hidden;
}
.section-bg-video video,
.section-bg-video img{
  width:100%; height:100%;
  object-fit:cover;
  display:block;
}
.hero-tag-pill{
  display:inline-flex;
  align-items:center;
  font-size:12px;
  font-weight:700;
  letter-spacing:1.5px;
  text-transform:uppercase;
  color:#fff;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.3);
  border-radius:30px;
  padding:8px 18px;
  margin-bottom:18px;
}
.contact-hero .hero-buttons{margin-top:8px;}
.section-bg-overlay{
  position:absolute; inset:0;
  background: linear-gradient(90deg, rgba(0,21,39,.72) 0%, rgba(0,21,39,.2) 100%);
}
.contact-hero-inner{
  position:relative;
  z-index:2;
  max-width:var(--container-max);
  margin:0 auto;
  padding:0 24px;
}
.contact-hero-inner .eyebrow{margin-bottom:10px; font-size:16px; font-weight:700; letter-spacing:3px;}
.contact-hero-inner h1{
  font-size:clamp(36px, 5.5vw, 60px);
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:1px;
  margin-bottom:20px;
}
.contact-hero-text{
  max-width:430px;
  font-size:18px;
}
.hero-shape-bottom{
  position:absolute;
  left:0; right:0; bottom:-1px;
  height:90px;
  z-index:1;
  line-height:0;
}
.hero-shape-bottom svg{
  width:100%; height:100%;
  display:block;
}
.hero-shape-bottom path{fill:var(--gray-bg);}

/* ===================== CONTACT CARDS ===================== */
.contact-cards-section{
  background: var(--gray-bg);
  margin-top:-50px;
  padding:0 0 90px;
}
.contact-cards-inner{
  position:relative;
  z-index:2;
  max-width:var(--container-max);
  margin:0 auto;
  padding:0 24px;
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:30px;
}
.contact-card{
  background:#fff;
  border-radius:10px;
  box-shadow:0 10px 50px 1px rgba(126,126,126,.25);
  padding:48px 36px;
  display:flex;
  flex-direction:column;
  gap:6px;
  transition:transform .3s ease, box-shadow .3s ease;
}
.contact-card:hover{
  transform:translateY(-6px);
  box-shadow:0 20px 60px 2px rgba(126,126,126,.32);
}
.contact-cards-inner.cols-2{
  grid-template-columns:repeat(2, 1fr);
  max-width:800px;
  margin:0 auto;
}
.related-contacts-section{
  background:var(--gray-bg);
  padding:90px 0;
}
.contact-card-navy{
  background:var(--navy);
  color:#fff;
}
.contact-card-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:56px; height:56px;
  border:2px solid var(--navy);
  border-radius:6px;
  margin-bottom:18px;
  color:var(--navy);
  transition: color .25s ease, border-color .25s ease;
}
.contact-card-icon svg{
  width:26px; height:26px;
  stroke:currentColor;
  stroke-width:1.6;
  stroke-linecap:round;
  stroke-linejoin:round;
  fill:none;
}
.contact-card-icon .icon-handshake{fill:currentColor; stroke:none;}
.contact-card-icon .icon-handshake .icon-crease{
  fill:none;
  stroke:#fff;
  stroke-width:0.9;
  stroke-linecap:round;
}
.contact-card-navy .contact-card-icon .icon-handshake .icon-crease{stroke:var(--navy);}
.contact-card-navy .contact-card-icon{border-color:#fff; color:#fff;}
.contact-card:hover .contact-card-icon{border-color:var(--amber); color:var(--amber);}
.contact-card h2{
  font-size:19px;
  font-weight:800;
  text-transform:uppercase;
  margin-bottom:8px;
}
/* Kart içindeki e-posta/telefon bağlantıları. :not(.btn) filtresi şart:
   aksi halde butonun kendi rengi (btn-amber) e-postanın gri tonuyla
   ezip, turuncu zemin üzerinde soluk ve hover'da görünmez bir yazı
   bırakıyordu. */
.contact-card a:not(.btn){
  font-size:14px;
  color:inherit;
  opacity:.85;
}
.contact-card a:not(.btn):hover{opacity:1; color:var(--amber);}
.contact-card-navy a:not(.btn):hover{color:var(--amber);}
.contact-card:not(.contact-card-navy) a:not(.btn){color:var(--gray-text);}
.contact-card:not(.contact-card-navy) a:not(.btn):hover{color:var(--amber-dark);}
.card-cta{
  margin-top:auto;
  align-self:flex-start;
  border:none;
  cursor:pointer;
}
/* Keeps a minimum gap above the CTA while letting it pin to the card bottom,
   so the three contact cards' buttons stay aligned when titles wrap. */
.contact-cards-section .contact-card a:last-of-type{margin-bottom:18px;}

/* ===================== SERVICE SUPPORT BLOCK ===================== */
.support-section{
  background:var(--navy-darker);
  color:#fff;
  padding:170px 0 90px;
}
.support-inner{
  max-width:var(--container-max);
  margin:0 auto;
  padding:0 24px;
  display:grid;
  grid-template-columns:340px 1fr;
  gap:60px;
  align-items:start;
}
.support-card{
  margin-top:-210px;
  box-shadow:0 20px 50px rgba(0,0,0,.35);
}
.support-card h2{color:var(--navy);}
.support-steps-head{margin-bottom:8px;}
.support-steps-head .eyebrow-dark{color:var(--amber);}
.support-steps-head h2{
  font-size:clamp(22px, 3vw, 30px);
  font-weight:800;
  text-transform:uppercase;
  margin-bottom:30px;
}
.support-steps{list-style:none; counter-reset:step;}
.support-steps li{
  position:relative;
  padding-left:38px;
  margin-bottom:22px;
  font-size:16px;
  line-height:1.65;
  color:rgba(255,255,255,.82);
}
.support-steps li:last-child{margin-bottom:0;}
.support-steps li::before{
  counter-increment:step;
  content:counter(step) " —";
  position:absolute;
  left:0; top:0;
  font-weight:800;
  color:var(--amber);
}

/* ===================== SHARE ROW ===================== */
.share-row{
  display:flex;
  gap:12px;
  justify-content:center;
  align-items:center;
  padding:50px 24px 0;
}
.share-row .social-btn{
  width:40px; height:40px;
  font-size:14px;
}

/* ===================== LET'S CONNECT ===================== */
.connect-section{
  background:#fff;
  padding:20px 0 110px;
}
.connect-box{
  max-width:var(--container-max);
  margin:0 auto;
  background:#fff;
  border-radius:20px;
  box-shadow:0 24px 60px rgba(0,48,57,.12);
  padding:60px;
  display:grid;
  grid-template-columns:1fr 1.2fr;
  gap:60px;
}
.connect-left{
  border-right:1px solid rgba(0,48,87,.12);
  padding-right:60px;
}
.connect-left h2{
  font-size:clamp(26px, 3.4vw, 36px);
  font-weight:800;
  text-transform:uppercase;
  margin-bottom:22px;
  color:var(--navy);
}
.connect-left p{
  color:var(--gray-text);
  font-size:16px;
  margin-bottom:16px;
}
.connect-address{
  font-style:normal;
  color:var(--gray-text);
  font-size:14px;
  line-height:1.6;
  padding-top:16px;
  margin-top:8px;
  border-top:1px solid rgba(0,48,87,.12);
}
.connect-map-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:14px;
  font-size:14px;
  font-weight:700;
  color:var(--navy);
  border-bottom:2px solid var(--amber);
  padding-bottom:2px;
}
.connect-map-link:hover{color:var(--amber-dark);}
.connect-map-embed{
  display:block;
  width:100%;
  height:220px;
  margin-top:20px;
  border:0;
  border-radius:12px;
}
.connect-map-placeholder{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  width:100%;
  height:220px;
  margin-top:20px;
  border:1px dashed rgba(0,48,87,.3);
  border-radius:12px;
  background:linear-gradient(135deg,#eef4f7,#f8f4e9);
  color:var(--navy);
  cursor:pointer;
  font-weight:700;
}
.connect-map-placeholder:hover{background:linear-gradient(135deg,#e4eef4,#fbf0d5);}
.connect-map-placeholder small{font-size:12px; font-weight:500; color:var(--gray-text);}
.map-placeholder-icon{font-size:30px; line-height:1; color:var(--amber-dark);}

/* Skip link: hidden until keyboard-focused (main.js-independent). */
.skip-link{
  position:fixed;
  top:-120px;
  left:16px;
  z-index:3000;
  background:var(--navy);
  color:#fff;
  padding:12px 22px;
  border-radius:0 0 8px 8px;
  font-size:14px;
  font-weight:700;
  transition:top .2s ease;
}
.skip-link:focus{top:0;}
main:focus{outline:none;}
/* Screen-reader-only text: keeps a heading's real, descriptive wording
   available to assistive tech and search crawlers without changing what
   sighted visitors see (e.g. a logo-image H1 that needs real keyword text). */
.sr-only{
  position:absolute;
  width:1px; height:1px;
  padding:0; margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

.form-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.form-field{
  display:flex;
  flex-direction:column;
  gap:6px;
  margin-bottom:18px;
}
.form-field label{
  font-size:13px;
  font-weight:600;
  color:var(--navy);
}
.form-field input,
.form-field select,
.form-field textarea{
  font-family:var(--font);
  font-size:15px;
  color:var(--navy);
  background:#fff;
  border:1px solid rgba(0,48,87,.18);
  border-radius:8px;
  padding:11px 14px;
  transition: border-color .2s ease, box-shadow .2s ease;
}
.form-field input:focus,
.form-field select:focus,
.form-field textarea:focus{
  outline:none;
  border-color:var(--amber);
  box-shadow:0 0 0 3px rgba(241,180,52,.2);
}
/* Sticky inline error state once the user has left an invalid field. */
.form-field input:user-invalid,
.form-field select:user-invalid,
.form-field textarea:user-invalid{
  border-color:#c8443f;
  box-shadow:0 0 0 3px rgba(200,68,63,.15);
}
.form-field textarea{resize:vertical;}
.form-required-note{
  font-size:13px;
  color:var(--gray-text);
  margin:-6px 0 14px;
}
.char-counter{
  align-self:flex-end;
  font-size:12px;
  color:var(--gray-text);
  margin-top:-2px;
}
.char-counter.is-near-limit{color:#c8443f; font-weight:600;}
.form-response-note{
  font-size:13px;
  line-height:1.6;
  color:var(--gray-text);
  margin-bottom:16px;
  padding:10px 14px;
  background:var(--gray-bg);
  border:1px solid rgba(0,48,87,.12);
  border-radius:8px;
}
.form-response-note strong{color:var(--navy);}
.form-response-note a{color:var(--navy); font-weight:600; text-decoration:underline;}
.form-kvkk-notice{
  font-size:13px;
  line-height:1.6;
  color:var(--gray-text);
  margin-bottom:16px;
  text-align:justify;
}
.form-kvkk-notice a{color:var(--navy); font-weight:600; text-decoration:underline;}
.form-consent-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:22px;
}
.form-consent{
  display:flex;
  align-items:flex-start;
  gap:10px;
  flex:1;
  margin:0;
  padding:12px 14px;
  background:var(--gray-bg);
  border:1px solid rgba(0,48,87,.12);
  border-radius:8px;
  font-size:13px;
  color:var(--gray-text);
  cursor:pointer;
}
.form-consent span{text-align:justify; line-height:1.55;}
.form-consent input{margin-top:3px; accent-color:var(--amber);}
.form-consent input:user-invalid{outline:2px solid #c8443f; outline-offset:2px;}
.form-submit{border:none; width:100%; justify-content:center;}
.form-success{
  margin-top:16px;
  padding:14px 16px;
  background:rgba(241,180,52,.15);
  border:1px solid var(--amber);
  border-radius:8px;
  font-size:14px;
  font-weight:600;
  color:var(--navy);
}
.form-error{
  margin-top:16px;
  padding:14px 16px;
  background:rgba(200,68,63,.08);
  border:1px solid rgba(200,68,63,.55);
  border-radius:8px;
  font-size:14px;
  font-weight:600;
  color:#9b302d;
}
.form-success a{color:var(--navy); text-decoration:underline;}

/* Small amber labels on white surfaces need a darker readable tone. */
.product-subsection-title,
.product-card-brand,
.lsl-card-number,
.lsl-ingredient-tag,
.bread-cols h3{color:var(--amber-readable);}

/* ===================== REFERENCES ===================== */
.references-fallback{grid-column:1/-1; text-align:center; color:var(--gray-text); line-height:1.7;}
.technology-fallback{padding:18px; text-align:center; color:var(--gray-text); background:var(--gray-bg); border:1px solid rgba(0,48,87,.1); border-radius:8px; line-height:1.7;}

.refs-hero{
  background: linear-gradient(160deg, var(--gray-bg) 0%, #fff 60%);
  padding:190px 0 70px;
  text-align:center;
}
.refs-hero-inner{
  max-width:720px;
  margin:0 auto;
  padding:0 24px;
}
.refs-hero .eyebrow-dark{justify-content:center; display:flex;}
.refs-hero h1{
  font-size:clamp(32px, 5vw, 48px);
  font-weight:800;
  text-transform:uppercase;
  color:var(--navy);
  margin:14px 0 18px;
}
.refs-hero p{
  color:var(--gray-text);
  font-size:16px;
}

.refs-logos-section{
  background:#fff;
  padding:20px 0 100px;
}
.refs-logos-inner{
  max-width:var(--container-max);
  margin:0 auto;
  padding:0 24px;
}
.logo-grid{
  display:grid;
  grid-template-columns:repeat(5, 1fr);
  gap:20px;
}
.logo-tile{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:140px;
  padding:22px;
  background:#fff;
  border:1px solid rgba(0,48,87,.1);
  border-radius:10px;
  text-align:center;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.logo-tile:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 30px rgba(0,48,87,.12);
  border-color:var(--amber);
}
.logo-tile img{
  max-width:100%;
  max-height:84px;
  width:auto;
  height:auto;
  object-fit:contain;
  filter:grayscale(1);
  opacity:.7;
  transition: filter .2s ease, opacity .2s ease;
}
.logo-tile:hover img{
  filter:grayscale(0);
  opacity:1;
}

.refs-projects-section{
  background:var(--gray-bg);
  padding:90px 0;
}
.refs-projects-inner{
  max-width:1000px;
  margin:0 auto;
  padding:0 24px;
}
.refs-projects-inner > .eyebrow-dark{text-align:center; display:block; margin-bottom:10px;}
.refs-projects-inner > h2{
  text-align:center;
  font-size:clamp(24px, 3.4vw, 32px);
  font-weight:800;
  text-transform:uppercase;
  color:var(--navy);
  margin-bottom:40px;
}
.projects-list{
  columns:2;
  column-gap:50px;
}
.projects-list li{
  break-inside:avoid;
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:12px 0;
  border-bottom:1px solid rgba(0,48,87,.1);
  font-size:14px;
}
.projects-list li strong{
  color:var(--navy);
  font-weight:700;
}
.projects-list li span{
  color:var(--amber-dark);
  font-weight:600;
  white-space:nowrap;
}

.refs-cta{
  background:var(--navy-darker);
  color:#fff;
  padding:70px 0;
  text-align:center;
}
.refs-cta h2{
  font-size:clamp(24px, 3.2vw, 32px);
  font-weight:800;
  text-transform:uppercase;
  margin-bottom:20px;
}
.refs-cta .btn{margin:0 auto;}

/* Related-product pill list, shown at the bottom of product pages just
   above the CTA — links to the other pages in the same nav category. */
.related-products{
  max-width:var(--container-max);
  margin:0 auto;
  padding:50px 20px;
}
.related-products h2{
  font-size:clamp(19px, 2.2vw, 24px);
  font-weight:800;
  color:var(--navy);
  margin-bottom:18px;
}
.related-products-list{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.related-products-list a{
  display:inline-flex;
  align-items:center;
  padding:10px 20px;
  border-radius:999px;
  border:1px solid rgba(0,48,87,.18);
  color:var(--navy);
  font-weight:700;
  font-size:14px;
  transition:background .15s ease, border-color .15s ease;
}
.related-products-list a:hover{background:rgba(0,48,87,.06); border-color:var(--navy);}

/* ===================== TEMSİLCİLİKLER / PARTNERS ===================== */
.partners-inner{
  max-width:var(--container-max);
  margin:0 auto;
  padding:0 24px;
}

/* -- Stats strip -- */
.partners-stats-section{
  background:#fff;
  padding:0 0 90px;
}
.partners-stats-bar{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:24px;
  background:var(--gray-bg);
  border:1px solid rgba(0,48,87,.08);
  border-radius:12px;
  padding:36px 24px;
}
.partners-stats-bar .stat-number,
.partners-stats-bar .stat-number-static{color:var(--navy);}
.partners-stats-bar .stat-label{color:var(--gray-text);}

/* -- Columns box (same visual pattern as Dijital Broşürler) -- */
.partners-columns-section{
  background:#fff;
  padding:20px 0 100px;
}
.partners-columns{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  row-gap:18px;
  background:var(--gray-bg);
  border:1px solid rgba(0,48,87,.08);
  border-radius:14px;
  overflow:hidden;
  padding-bottom:30px;
}
.partners-columns > *:nth-child(3n+2){background:#fff;}
.partners-columns > *:not(:nth-child(3n+1)){border-left:1px solid rgba(0,48,87,.08);}
.partner-col-head{padding:40px 30px 0; margin-bottom:2px;}
.partner-col-head .eyebrow-dark{margin-bottom:8px;}
.partner-col-head h2{
  font-size:19px;
  font-weight:800;
  text-transform:uppercase;
  color:var(--navy);
  margin-bottom:8px;
  line-height:1.25;
}
.partner-col-head p{
  font-size:13px;
  color:var(--gray-text);
  line-height:1.55;
  text-align:justify;
}

/* -- Partner card (rich profile) -- */
.partner-card{
  display:flex;
  flex-direction:column;
  text-align:left;
  padding:26px 24px;
  margin:0 30px;
  background:#fff;
  border:1px solid rgba(0,48,87,.1);
  border-radius:14px;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.partner-card:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 30px rgba(0,48,87,.12);
  border-color:var(--amber);
}
.partner-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:18px;
}
.partner-logo{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  height:40px;
  max-width:62%;
}
.partner-logo img{
  max-width:100%;
  max-height:100%;
  width:auto;
  height:auto;
  object-fit:contain;
}
.partner-logo.dark-chip{
  background:var(--navy);
  border-radius:8px;
  padding:9px 14px;
  height:auto;
}
.partner-fallback-mark{
  font-size:18px;
  font-weight:800;
  color:var(--navy);
  letter-spacing:.02em;
}
.partner-fallback-mark em{
  font-style:normal;
  color:var(--amber-dark);
}
.partner-origin{
  flex-shrink:0;
  font-size:10px;
  font-weight:700;
  letter-spacing:.3px;
  text-transform:uppercase;
  color:var(--amber-dark);
  text-align:right;
  line-height:1.4;
}
.partner-name{
  font-size:17px;
  font-weight:800;
  text-transform:uppercase;
  color:var(--navy);
  margin-bottom:9px;
}
.partner-desc{
  font-size:13px;
  color:var(--gray-text);
  line-height:1.6;
  margin-bottom:16px;
  text-align:justify;
}
.partner-tag-list{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-bottom:18px;
}
.partner-tag{
  font-size:10px;
  font-weight:700;
  letter-spacing:.2px;
  text-transform:uppercase;
  color:var(--navy);
  background:rgba(0,48,87,.06);
  border-radius:20px;
  padding:5px 10px;
}
.partner-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:auto;
  font-size:13px;
  font-weight:700;
  color:var(--amber-dark);
  text-decoration:none;
}
.partner-link .chev{transition:transform .2s ease;}
.partner-link:hover{color:var(--navy);}
.partner-link:hover .chev{transform:translate(2px,-2px);}

/* ===================== TAMAMLANAN PROJELER ===================== */
.milestones-stats-section{
  background:#fff;
  padding:0 0 80px;
}

/* -- Columns box (same visual pattern as Temsilcilikler / Dijital Broşürler) -- */
.milestones-columns-section{
  background:#fff;
  padding:20px 0 100px;
}
.milestones-inner{
  max-width:var(--container-max);
  margin:0 auto;
  padding:0 24px;
}
.milestones-columns{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  background:var(--gray-bg);
  border:1px solid rgba(0,48,87,.08);
  border-radius:14px;
  overflow:hidden;
  align-items:start;
}
.milestone-col{
  padding:40px 30px;
  display:flex;
  flex-direction:column;
  gap:12px;
}
.milestone-col:nth-child(even){background:#fff;}
.milestone-col + .milestone-col{border-left:1px solid rgba(0,48,87,.08);}
.milestone-col-head{margin-bottom:6px;}
.milestone-col-head .eyebrow-dark{margin-bottom:8px;}
.milestone-col-head h2{
  font-size:19px;
  font-weight:800;
  text-transform:uppercase;
  color:var(--navy);
  margin-bottom:8px;
  line-height:1.25;
}
.milestone-col-head p{
  font-size:13px;
  color:var(--gray-text);
  line-height:1.55;
}

/* -- Milestone card -- */
.milestone-item{
  padding:16px 18px;
  background:#fff;
  border:1px solid rgba(0,48,87,.1);
  border-radius:10px;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.milestone-item:hover{
  border-color:var(--amber);
  box-shadow:0 10px 22px rgba(0,48,87,.08);
  transform:translateY(-2px);
}
.milestone-meta{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:6px;
}
.milestone-year{
  font-size:12px;
  font-weight:800;
  color:var(--amber-dark);
  letter-spacing:.3px;
}
.milestone-org{
  font-size:13.5px;
  font-weight:800;
  color:var(--navy);
  text-transform:uppercase;
}
.milestone-badge{
  font-size:9px;
  font-weight:800;
  letter-spacing:.3px;
  text-transform:uppercase;
  padding:3px 9px;
  border-radius:20px;
  background:rgba(241,180,52,.18);
  color:var(--amber-dark);
  white-space:nowrap;
}
.milestone-badge.world{background:var(--navy); color:#fff;}
.milestone-scope{
  font-size:12.5px;
  color:var(--gray-text);
  line-height:1.5;
}

/* ===================== DIGITAL BROCHURES ===================== */
.brochures-hero{
  background: linear-gradient(160deg, var(--gray-bg) 0%, #fff 60%);
  padding:190px 0 70px;
  text-align:center;
}
.brochures-hero-inner{
  max-width:720px;
  margin:0 auto;
  padding:0 24px;
}
.brochures-hero .eyebrow-dark{justify-content:center; display:flex;}
.brochures-hero h1{
  font-size:clamp(32px, 5vw, 48px);
  font-weight:800;
  text-transform:uppercase;
  color:var(--navy);
  margin:14px 0 18px;
}
.brochures-hero p{
  color:var(--gray-text);
  font-size:16px;
}

.brochures-columns-section{
  background:#fff;
  padding:20px 0 100px;
}
.brochures-inner{
  max-width:var(--container-max);
  margin:0 auto;
  padding:0 24px;
}
.brochures-columns{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  background:var(--gray-bg);
  border:1px solid rgba(0,48,87,.08);
  border-radius:14px;
  overflow:hidden;
}
.brochure-col{
  padding:44px 34px;
}
/* Row-aware styling so the divided-box look still holds when columns wrap to a 2nd row (>3 brands) */
.brochure-col:nth-child(3n+2){background:#fff;}
.brochure-col:not(:nth-child(3n+1)){border-left:1px solid rgba(0,48,87,.08);}
.brochure-col:nth-child(n+4){border-top:1px solid rgba(0,48,87,.08);}
.brochure-col-head h2{
  font-size:20px;
  font-weight:800;
  text-transform:uppercase;
  color:var(--navy);
  margin-bottom:8px;
}
.brochure-col-head p{
  font-size:13px;
  color:var(--gray-text);
  line-height:1.5;
  margin-bottom:26px;
}
.brochure-list{
  display:flex;
  flex-direction:column;
}
.brochure-link{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 0;
  border-bottom:1px solid rgba(0,48,87,.07);
  font-size:14px;
  font-weight:600;
  color:var(--navy);
  transition: color .2s ease, padding-left .2s ease;
}
.brochure-list li:last-child .brochure-link{border-bottom:none;}
.brochure-link:hover{color:var(--amber-dark); padding-left:4px;}
.pdf-icon{
  flex-shrink:0;
  width:18px; height:18px;
  color:var(--navy);
  transition:color .2s ease;
}
.brochure-link:hover .pdf-icon{color:var(--amber-dark);}
.brochure-link-name{white-space:nowrap;}
.brochure-link-meta{
  font-size:12px;
  font-weight:400;
  color:var(--gray-text);
  margin-left:auto;
  padding-left:10px;
  white-space:nowrap;
  text-align:right;
}

/* ===================== ABOUT / MISSION-VISION PAGES ===================== */
.page-hero{
  background: linear-gradient(150deg, var(--navy-darker) 0%, var(--navy) 55%, #0a4a7a 100%);
  padding:210px 0 100px;
  text-align:center;
}
.page-hero::after{
  display:none;
}
.page-hero-inner{
  position:relative;
  z-index:1;
  max-width:760px;
  margin:0 auto;
  padding:0 24px;
}
.page-hero .eyebrow-dark{justify-content:center; display:flex; color:var(--amber);}
.page-hero h1{
  font-size:clamp(34px, 5.4vw, 56px);
  font-weight:800;
  text-transform:uppercase;
  line-height:1.15;
  color:#fff;
  margin:14px 0 22px;
}
.page-hero p{
  color:rgba(255,255,255,.72);
  font-size:17px;
  max-width:600px;
  margin:0 auto;
}

/* --- Legal hub hero + document tabs (all legal pages land on the same
   compact header so every document is one click away without scrolling) --- */
.page-hero-legal{
  min-height:clamp(440px, 58vh, 560px);
  display:flex;
  align-items:flex-end;
  padding:150px 0 64px;
  position:relative;
  overflow:hidden;
  isolation:isolate;
  background:var(--navy-darker) url('../assets/img/legal-hero.svg') center / cover no-repeat;
}
.page-hero-legal .hero-bg-video{
  position:absolute;
  inset:0;
  z-index:-2;
  pointer-events:none;
}
.page-hero-legal .hero-bg-video video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}
.page-hero-legal .hero-overlay{
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(90deg, rgba(0,21,39,.94) 0%, rgba(0,48,87,.76) 43%, rgba(0,48,87,.3) 100%), linear-gradient(0deg, rgba(0,21,39,.62), rgba(0,21,39,.05) 70%);
}
.page-hero-legal::after{display:none;}
.page-hero-legal .page-hero-inner{
  width:100%;
  max-width:var(--container-max);
  margin:0 auto;
  padding:0 24px;
  text-align:left;
}
.page-hero-legal .eyebrow-dark{
  justify-content:flex-start;
  display:flex;
  color:var(--amber);
}
.page-hero-legal h1{
  max-width:720px;
  font-size:clamp(42px, 5vw, 64px);
  letter-spacing:0;
  margin:12px 0 16px;
}
.page-hero-legal .page-hero-inner > p{
  max-width:620px;
  margin:0;
  line-height:1.7;
}
.page-hero-legal::before{
  content:'';
  position:absolute;
  right:-120px; bottom:-140px;
  width:520px; height:520px;
  background-image:url('../assets/brand/endotek-icon-final-white.svg');
  background-repeat:no-repeat;
  background-size:100% 100%;
  opacity:.05;
  pointer-events:none;
}
.legal-hero-cta{ margin:20px 0 0; }

/* Document tabs as a flat site-style strip above the content column:
    no boxed segmented control, active document marked with an underline. */
.legal-tabs-section{
  background:#fff;
  padding:48px 24px 0;
  border-bottom:0;
}
.legal-tabs{
  width:calc(100% - 80px);
  max-width:none;
  margin:0 auto;
  display:flex;
  gap:0;
  border:1px solid rgba(0,48,87,.55);
  border-radius:0;
  overflow:visible;
  scroll-margin-top:140px;
}
.legal-panel{scroll-margin-top:140px;}
.legal-tab{
  flex:1 1 0;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  min-height:48px;
  padding:12px 8px;
  margin-bottom:0;
  font-size:12px;
  font-weight:700;
  letter-spacing:1.2px;
  text-transform:uppercase;
  text-align:center;
  color:var(--navy);
  background:#f1f1f1;
  border:none;
  border-right:1px solid rgba(0,48,87,.55);
  transition:color .2s ease, background .2s ease;
  white-space:nowrap;
}
.legal-tab:last-child{border-right:none;}
.legal-tab:hover{background:#e6e6e6; color:var(--navy);}
.legal-tab.active{background:var(--navy); color:#fff;}
.legal-tab.active::after{
  content:'';
  position:absolute;
  left:50%;
  bottom:-7px;
  border-left:7px solid transparent;
  border-right:7px solid transparent;
  border-top:7px solid var(--navy);
  transform:translateX(-50%);
}
.legal-tab:focus-visible{outline:2px solid var(--amber); outline-offset:2px;}
.legal-tab-short{display:none;}

@media (max-width:640px){
  .legal-tabs-section{padding:16px 16px 0;}
  .legal-tabs{
    width:auto;
    max-width:none;
    gap:0;
    border:1px solid rgba(0,48,87,.55);
    border-radius:0;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    mask-image:linear-gradient(90deg, #000 90%, transparent);
    -webkit-mask-image:linear-gradient(90deg, #000 90%, transparent);
  }
  .legal-tab{
    flex:0 0 auto;
    min-height:44px;
    padding:10px 16px;
    font-size:11px;
  }
  .legal-tab-full{display:none;}
  .legal-tab-short{display:inline;}
  .page-yasal .legal-panel{
    min-height:0;
    padding:34px 24px 40px;
    column-count:1;
    column-gap:0;
    column-rule:0;
    background:#fff;
  }
  .page-yasal .legal-panel > p,
  .page-yasal .legal-panel > h3{
    padding:0;
    transform:none;
  }
}

/* --- Yasal document body (site-style): left-aligned, single-type --- */
.page-yasal .about-intro{
  padding:64px 0 96px;
}
.page-yasal .about-intro-inner{
  width:calc(100% - 80px);
  max-width:none;
}
.page-yasal .legal-panel{
  min-height:520px;
  padding:54px 56px 60px;
  border:1px solid rgba(0,48,87,.55);
  column-count:2;
  column-gap:40px;
  column-fill:balance;
  column-rule:1px solid rgba(0,48,87,.16);
  background:linear-gradient(to right, #f0f0f0 0%, #f0f0f0 50%, #fff 50%, #fff 100%);
  text-align:justify;
}
.page-yasal .legal-panel > h2{
  column-span:all;
  display:none;
}
.page-yasal .legal-panel > h3,
.page-yasal .legal-panel > p,
.page-yasal .legal-panel > .legal-table-wrap{
  break-inside:avoid;
}
/* Başlıklar sütun kenarına hizalı; açıklama başlığın hemen altında başlasın */
.page-yasal .legal-panel > h3,
.page-yasal .about-intro-inner h3{
  display:block;
  width:auto;
  padding:0 0 0 12px;
  border-left:3px solid var(--amber);
  margin:30px 0 8px;
  background:transparent;
  color:var(--navy);
  font-size:13px;
  font-weight:700;
  letter-spacing:1.2px;
  text-transform:uppercase;
  line-height:1.35;
  text-align:left;
  transform:none;
}
.page-yasal .legal-panel > p{
  padding:0;
  margin:0 0 16px;
  font-size:13px;
  font-weight:400;
  line-height:1.65;
  color:var(--navy);
  text-align:justify;
  hyphens:auto;
  transform:none;
}
.page-yasal .legal-panel > p:first-of-type{
  font-size:14.5px;
  line-height:1.7;
  color:rgba(0,48,87,.88);
  margin-bottom:24px;
}
.page-yasal .legal-panel > p:last-child{
  font-size:12px;
  color:rgba(0,48,87,.55);
  margin-bottom:0;
}
.page-yasal .legal-panel > .legal-table-wrap{
  column-span:none;
  width:100%;
  margin:20px 0 28px;
}
.page-yasal .legal-panel a{
  color:var(--accent-blue);
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:2px;
}
.page-yasal .legal-panel a:hover{color:var(--navy);}
.page-yasal .about-intro-inner > h2,
.page-yasal .about-intro-inner .legal-panel > h2{
  text-align:center;
  text-transform:none;
  letter-spacing:0;
  font-size:clamp(24px, 3vw, 30px);
  font-weight:700;
  margin-bottom:24px;
}
.page-yasal .about-intro-inner p{
  font-size:13px;
  font-weight:400;
  line-height:1.65;
  color:var(--navy);
  margin-bottom:16px;
}

.page-yasal .topbar-inner{padding-top:7px; padding-bottom:7px;}
.page-yasal .navbar-inner{padding-top:10px; padding-bottom:10px;}
.page-yasal .logo-box img{height:64px;}
.page-yasal .main-nav > ul > li > a{font-size:12px; padding:10px 13px; letter-spacing:1.2px;}
@media (max-width:640px){
  .page-yasal .navbar{top:0;}
  .page-hero-legal{ min-height:540px; padding:170px 0 34px; }
  .page-hero-legal::before{ width:340px; height:340px; right:-90px; bottom:-100px; }
  .page-hero-legal .page-hero-inner{padding:0 20px;}
  .page-hero-legal h1{font-size:clamp(38px, 12vw, 52px);}
  .page-hero-legal .page-hero-inner > p{ font-size:15px; }
  .legal-hero-cta{ margin:16px 0 0; }
  .page-yasal .legal-panel{
    min-height:0;
    padding:34px 24px 40px;
    column-count:1;
    column-rule:0;
    background:#fff;
  }
  .page-yasal .legal-panel > p,
  .page-yasal .legal-panel > h3{
    padding:0;
    transform:none;
  }
  .page-yasal .legal-panel > h3{
    width:auto;
    max-width:100%;
    margin-top:26px;
    margin-bottom:12px;
  }
}

/* --- Long-form intro --- */
.about-intro{
  background:#fff;
  padding:100px 0;
}
.about-intro-inner{
  max-width:800px;
  margin:0 auto;
  padding:0 24px;
}
.page-hakkimizda .about-intro-inner{
  max-width:1100px;
  column-count:2;
  column-gap:56px;
  column-fill:balance;
}
.page-hakkimizda .about-intro-inner > .eyebrow-dark,
.page-hakkimizda .about-intro-inner > h2,
.page-hakkimizda .about-intro-inner > .about-intro-quote{
  column-span:all;
}
.page-hakkimizda .about-intro-inner > h3{
  break-before:column;
  margin-top:0;
}
.page-hakkimizda .about-intro-checklist{
  width:100%;
  transform:none;
}
.page-hakkimizda .about-intro-inner > p.reveal{
  text-align:justify;
}
.about-intro-inner p{
  font-size:17px;
  line-height:1.85;
  color:var(--gray-text);
  margin-bottom:24px;
}
.about-intro-inner p:first-of-type{
  font-size:22px;
  font-weight:600;
  color:var(--navy);
  line-height:1.55;
}
.about-intro-inner p:last-child{margin-bottom:0;}

/* --- Founding-story extras (hakkimizda.html) --- */
.about-intro-inner .eyebrow-dark{justify-content:center; display:flex; margin-bottom:14px;}
.about-intro-inner > h2, .about-intro-inner .legal-panel > h2{
  font-size:clamp(26px, 3.4vw, 34px);
  font-weight:800;
  text-transform:uppercase;
  color:var(--navy);
  text-align:center;
  margin-bottom:40px;
  line-height:1.3;
}
.about-intro-inner h3{
  font-size:22px;
  font-weight:800;
  color:var(--navy);
  margin:48px 0 16px;
}
.about-intro-checklist{
  display:block;
  width:max-content;
  max-width:100%;
  padding:9px 14px;
  margin-top:30px;
  margin-bottom:14px;
  background:var(--gray-bg);
  border-left:4px solid var(--amber);
  color:var(--navy);
  font-size:12px;
  font-weight:700;
  letter-spacing:1.2px;
  line-height:1.35;
  text-align:left;
  transform:translateX(-20px);
  margin:8px 0 32px;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:14px;
}
.about-intro-checklist li{
  display:flex;
  align-items:flex-start;
  gap:12px;
  font-size:16px;
  line-height:1.6;
  color:var(--navy);
}
.about-intro-checklist li::before{
  content:'✓';
  flex-shrink:0;
  width:24px; height:24px;
  border-radius:50%;
  background:var(--amber);
  color:#fff;
  font-size:12px;
  font-weight:800;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-top:2px;
}
.about-intro-quote{
  margin-top:48px;
  padding:36px 40px;
  background:var(--gray-bg);
  border-left:4px solid var(--amber);
  border-radius:28px 10px 10px 10px;
}
.about-intro-inner .about-intro-quote p:first-of-type{
  font-size:18px;
  font-weight:600;
  color:var(--navy);
  line-height:1.6;
  margin-bottom:12px;
}
.about-intro-quote p:last-child{margin-bottom:0;}
.about-intro-tagline{
  margin-top:20px;
  padding-top:20px;
  border-top:1px solid rgba(0,48,87,.15);
  font-size:14px;
  font-weight:700;
  letter-spacing:.5px;
  color:var(--amber-dark);
}
@media (max-width:640px){
  .page-hakkimizda .about-intro-inner{
    column-count:1;
  }
}

/* --- Legal content table (cookie list etc.) --- */
.legal-table-wrap{overflow-x:auto; margin:8px 0 32px; border:1px solid rgba(0,48,87,.12); border-radius:8px;}
.legal-table{width:100%; border-collapse:collapse; font-size:13px; min-width:640px;}
.legal-table th, .legal-table td{text-align:left; padding:12px 14px; border-bottom:1px solid rgba(0,48,87,.1); vertical-align:top; color:var(--gray-text);}
.legal-table th{background:var(--gray-bg); color:var(--navy); font-weight:700; font-size:12px; text-transform:uppercase; letter-spacing:.5px;}
.legal-table tr:last-child td{border-bottom:none;}

/* --- Timeline / milestones --- */
/* ============ ABOUT PAGE — RADMAKER-STYLE EDITORIAL LAYOUT ============
   Video hero (framed title + pause), statement band, editorial story,
   mission/vision anchor, light journey timeline, white key figures. */
#about-story, #mission-vision, #history{scroll-margin-top:130px;}

/* --- Video hero --- */
.about-hero{
  position:relative;
  min-height:100vh;
  min-height:100svh;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:var(--navy-darker);
  padding:170px 24px 110px;
  text-align:center;
  isolation:isolate;
}
.about-hero-media{position:absolute; inset:0; z-index:-2;}
.about-hero-media video{width:100%; height:100%; object-fit:cover; display:block;}
.about-hero-overlay{
  position:absolute; inset:0; z-index:-1;
  background:linear-gradient(180deg, rgba(0,21,39,.58), rgba(0,21,39,.3) 45%, rgba(0,21,39,.78));
}
.about-hero-inner{position:relative; z-index:1; display:flex; flex-direction:column; align-items:center;}
.about-hero-brand{
  font-family:var(--font-display);
  font-size:clamp(56px, 11vw, 160px);
  font-weight:800;
  letter-spacing:-1px;
  line-height:1;
  color:#fff;
  margin-bottom:6px;
  text-shadow:0 6px 30px rgba(0,21,39,.45);
}
.about-hero-tagline{
  margin-top:20px;
  background:rgba(0,48,87,.55);
  border:1px solid rgba(255,255,255,.25);
  padding:12px 26px;
  font-style:italic;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:1.5px;
  font-size:clamp(12px,1.6vw,15px);
  color:#fff;
  max-width:760px;
}
.about-hero-scroll{
  margin-top:34px;
  color:#fff;
  opacity:.85;
  display:inline-flex;
  animation:aboutHeroBob 2.2s ease-in-out infinite;
}
.about-hero-scroll svg{width:26px; height:32px;}
@keyframes aboutHeroBob{0%,100%{transform:translateY(0);} 50%{transform:translateY(9px);}}

/* --- Statement band --- */
.about-statement{background:var(--navy-darker); color:#fff; padding:110px 0;}
.about-statement-inner{max-width:var(--container-max); margin:0 auto; padding:0 24px;}
.about-statement-text{
  font-size:clamp(34px,5.6vw,72px);
  font-weight:800;
  text-transform:uppercase;
  line-height:1.08;
  letter-spacing:.5px;
}
.about-statement-text span{color:var(--amber);}
.about-statement-sub{
  margin-top:26px;
  color:var(--amber);
  font-weight:700;
  letter-spacing:2px;
  font-size:14px;
  text-transform:uppercase;
}

/* --- Engineering philosophy (two-column editorial) --- */
.about-philosophy{background:#fff; padding:90px 0 100px;}
.about-philosophy-inner{
  max-width:1100px;
  margin:0 auto;
  padding:0 24px;
  display:grid;
  grid-template-columns:1fr 1.1fr;
  gap:56px;
  align-items:start;
}
.about-philosophy-head .eyebrow-dark{justify-content:flex-start; display:flex; margin-bottom:0;}
.about-philosophy-head h2{
  font-size:clamp(26px,3.4vw,36px);
  font-weight:800;
  text-transform:uppercase;
  color:var(--navy);
  line-height:1.25;
  margin:14px 0 20px;
}
.about-philosophy-head p:not(.eyebrow-dark){font-size:17px; line-height:1.8; color:var(--gray-text);}
.about-philosophy-head p strong, .about-philosophy-head p b{color:var(--navy);}
.about-philosophy .about-intro-checklist{transform:none; margin:0;}
.about-philosophy-close{max-width:900px; margin:56px auto 0; padding:0 24px;}
.about-philosophy-close p{
  font-size:17px;
  line-height:1.85;
  color:var(--gray-text);
  text-align:justify;
  margin-bottom:24px;
}
.about-philosophy-close p:last-child{margin-bottom:0;}

/* --- Mission & Vision (#mission-vision) --- */
.mv-editorial{background:var(--gray-bg); padding:100px 0;}
.mv-editorial-inner{max-width:1000px; margin:0 auto; padding:0 24px; text-align:center;}
.mv-editorial .eyebrow-dark{justify-content:center; display:flex; margin-bottom:14px;}
.mv-editorial h2{
  font-size:clamp(26px,3.4vw,34px);
  font-weight:800;
  text-transform:uppercase;
  color:var(--navy);
  line-height:1.3;
  margin-bottom:48px;
}
.mv-editorial-block{
  background:#fff;
  border:1px solid rgba(0,48,87,.08);
  border-radius:14px;
  padding:38px 40px;
  text-align:left;
  margin-bottom:26px;
}
.mv-editorial-block h3{
  font-size:15px;
  font-weight:800;
  letter-spacing:2px;
  text-transform:uppercase;
  color:var(--amber-dark);
  margin-bottom:16px;
}
.mv-editorial-block p{font-size:16.5px; line-height:1.8; color:var(--gray-text); text-align:justify;}
.mv-editorial-block p strong{color:var(--navy); font-weight:700;}
.mv-editorial-more{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:8px;
  font-size:13px;
  font-weight:800;
  letter-spacing:1.5px;
  text-transform:uppercase;
  color:var(--navy);
  text-decoration:none;
  border-bottom:2px solid var(--amber);
  padding-bottom:4px;
  transition:color .2s;
}
.mv-editorial-more:hover{color:var(--amber-dark);}
.mv-editorial-more .chev{color:var(--amber-dark); font-size:16px;}

/* --- Key figures (white) --- */
.figures-section{background:#fff; padding:95px 0; border-top:1px solid rgba(0,48,87,.08);}
.figures-inner{max-width:var(--container-max); margin:0 auto; padding:0 24px; text-align:left;}
.figures-inner h2{
  font-size:clamp(20px,2.2vw,26px);
  font-weight:800;
  font-style:italic;
  text-transform:uppercase;
  color:var(--navy);
  margin-bottom:14px;
}
.figures-text{
  max-width:520px;
  margin:0 0 44px;
  font-size:15.5px;
  line-height:1.7;
  color:var(--gray-text);
}
.figures-grid{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  max-width:none;
  margin:0;
}
/* Renk sırası mavi - beyaz - mavi - beyaz şeklinde ritmik ilerler.
   Tek kural (tek/çift) tüm kartların aynı deseni paylaşmasını garanti
   eder; kart sayısı değişse de simetri bozulmaz. */
.figure-card{padding:40px 32px; text-align:left; border:1px solid rgba(0,48,87,.08);}
.figure-card:nth-child(odd){background:var(--navy);}
.figure-card:nth-child(even){background:#fff;}
.figure-icon{
  display:inline-flex;
  align-items:center; justify-content:center;
  width:48px; height:48px;
  border:1.5px solid currentColor;
  border-radius:8px;
  color:var(--navy);
  margin-bottom:24px;
}
.figure-icon svg{width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.8;}
.figure-card:nth-child(odd) .figure-icon{color:#fff;}
.figure-card .stat-number,
.figure-card .stat-number-static{font-family:var(--font-heading); font-size:clamp(38px,4.2vw,52px); font-weight:800; color:var(--navy); line-height:1;}
.figure-card:nth-child(odd) .stat-number,
.figure-card:nth-child(odd) .stat-number-static{color:#fff;}
.figure-card .stat-label{
  display:block;
  margin-bottom:12px;
  font-size:12.5px;
  font-weight:700;
  letter-spacing:1.5px;
  text-transform:uppercase;
  color:var(--gray-text);
}
.figure-card:nth-child(odd) .stat-label{color:rgba(255,255,255,.78);}
.figure-card .value-line{margin-left:0; margin-right:0;}
/* CTA kartı artık beyaz zeminde: başlık ve ikon lacivert olmalı. */
.figure-card--cta h3{font-size:19px; font-weight:800; color:var(--navy); margin-bottom:20px; line-height:1.3;}

/* --- CTA (white) --- */
.about-cta{background:#fff; padding:90px 0; text-align:center;}
.about-cta-inner{max-width:820px; margin:0 auto; padding:0 24px;}
.about-cta h2{
  font-size:clamp(24px,3.2vw,32px);
  font-weight:800;
  text-transform:uppercase;
  color:var(--navy);
  margin-bottom:30px;
}
.about-cta-actions{display:flex; flex-wrap:wrap; gap:16px; justify-content:center;}
.btn-outline-navy{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:transparent;
  border:2px solid var(--navy);
  color:var(--navy);
  padding:15px 30px;
  border-radius:40px;
  font-size:13px;
  font-weight:800;
  letter-spacing:1.5px;
  text-transform:uppercase;
  text-decoration:none;
  transition:background .2s, color .2s;
}
.btn-outline-navy:hover{background:var(--navy); color:#fff;}

/* --- Typing label caret --- */
.type-label::after{
  content:'';
  display:inline-block;
  width:2px;
  height:.95em;
  background:var(--amber);
  margin-left:4px;
  vertical-align:-2px;
  animation:typeBlink .8s steps(1) infinite;
  white-space:pre;
}
@keyframes typeBlink{50%{opacity:0;}}

@media (max-width:960px){
  .about-statement{padding:80px 0;}
  .mv-editorial-block{padding:30px 26px;}
  .about-hero{padding:150px 20px 90px;}
  .figures-grid{grid-template-columns:repeat(2, 1fr);}
  .figure-card{padding:34px 26px;}
}
@media (max-width:640px){
  .about-hero-brand{font-size:clamp(48px,15vw,90px);}
  .about-hero-tagline{padding:10px 18px;}
  .figures-grid{grid-template-columns:1fr; gap:32px;}
  .mv-editorial-block p{text-align:left;}
}
@media (prefers-reduced-motion:reduce){
  .about-hero-scroll{animation:none;}
  .type-label::after{animation:none; opacity:1;}
}

.timeline-section{
  background:var(--navy-darker);
  padding:100px 0;
  color:#fff;
}
.timeline-head{
  max-width:900px;
  margin:0 auto 60px;
  padding:0 24px;
  text-align:center;
}
.timeline-head .eyebrow-dark{justify-content:center; display:flex; color:var(--amber);}
.timeline-head h2{
  font-size:clamp(24px, 3.4vw, 32px);
  font-weight:800;
  text-transform:uppercase;
  margin-top:10px;
}
.timeline-inner{
  max-width:820px;
  margin:0 auto;
  padding:0 24px;
  position:relative;
}
.timeline-inner::before{
  content:'';
  position:absolute;
  left:34px; top:6px; bottom:6px;
  width:2px;
  background:rgba(255,255,255,.15);
}
.timeline-item{
  position:relative;
  padding-left:70px;
  margin-bottom:52px;
}
.timeline-item:last-child{margin-bottom:0;}
.timeline-dot{
  position:absolute;
  left:26px; top:4px;
  width:16px; height:16px;
  border-radius:50%;
  background:var(--amber);
  box-shadow:0 0 0 4px var(--navy-darker), 0 0 0 5px rgba(255,255,255,.15);
}
.timeline-tag{
  font-size:13px;
  font-weight:800;
  letter-spacing:1.5px;
  color:var(--amber);
  text-transform:uppercase;
  margin-bottom:8px;
  display:block;
}
.timeline-item h3{
  font-size:21px;
  font-weight:800;
  text-transform:uppercase;
  margin-bottom:10px;
}
.timeline-item p{
  font-size:15px;
  line-height:1.7;
  color:rgba(255,255,255,.7);
  max-width:560px;
}

/* --- "Our Journey" variant (hakkimizda.html only) --- */
.journey-layout{
  max-width:var(--container-max);
  margin:0 auto;
  padding:0 24px;
  display:grid;
  grid-template-columns:220px 1fr;
  gap:40px;
  align-items:start;
}
.journey-sticky-label{
  position:sticky;
  top:120px;
}
.journey-sticky-tag{
  display:inline-block;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.2);
  border-radius:10px;
  padding:14px 18px;
  font-size:13px;
  font-weight:800;
  letter-spacing:1.5px;
  text-transform:uppercase;
  color:var(--amber);
}
.timeline-inner--journey{
  max-width:none;
  padding:0;
}
.timeline-inner--journey::before{
  left:50%;
  width:2px;
  background:linear-gradient(180deg, var(--amber) 0%, var(--accent-blue) 100%);
}
.timeline-inner--journey .timeline-item{
  position:relative;
  width:calc(50% - 40px);
  padding-left:0;
  margin-bottom:52px;
}
.timeline-inner--journey .timeline-item:last-child{margin-bottom:0;}
.timeline-inner--journey .timeline-item:nth-child(odd){
  margin-right:auto;
  padding-right:40px;
  text-align:right;
}
.timeline-inner--journey .timeline-item:nth-child(even){
  margin-left:auto;
  padding-left:40px;
  text-align:left;
}
.timeline-inner--journey .timeline-dot{
  top:4px;
  left:auto;
}
.timeline-inner--journey .timeline-item:nth-child(odd) .timeline-dot{right:-41px;}
.timeline-inner--journey .timeline-item:nth-child(even) .timeline-dot{left:-41px;}

/* --- Light editorial restyle of the journey timeline (hakkimizda.html) --- */
.timeline-section--journey{background:#fff; color:var(--navy);}
.timeline-section--journey .timeline-head .eyebrow-dark{color:var(--amber-dark);}
.timeline-section--journey .timeline-head h2{color:var(--navy);}
.timeline-inner--journey::before{background:linear-gradient(180deg, var(--amber) 0%, rgba(0,48,87,.28) 100%);}
.timeline-section--journey .timeline-item h3{color:var(--navy);}
.timeline-section--journey .timeline-item p{color:var(--gray-text);}
.timeline-section--journey .timeline-dot{
  background:var(--amber);
  box-shadow:0 0 0 4px #fff, 0 0 0 5px rgba(0,48,87,.2);
}
.journey-sticky-arrow{display:block; width:42px; height:26px; color:var(--amber); margin-bottom:16px;}
.journey-sticky-arrow svg{width:100%; height:100%; display:block;}
.journey-sticky-tag{
  background:none;
  border:none;
  border-radius:0;
  padding:0;
  font-size:clamp(16px,1.6vw,20px);
  letter-spacing:1px;
  color:var(--navy);
  white-space:nowrap;
}
.journey-sticky-sub{
  font-size:15px;
  line-height:1.65;
  color:var(--gray-text);
  margin-top:14px;
  max-width:250px;
}
.timeline-year{
  display:block;
  font-family:var(--font-heading);
  font-size:clamp(34px,4vw,52px);
  font-weight:800;
  line-height:1;
  letter-spacing:1px;
  color:var(--navy);
  margin-bottom:12px;
}
.timeline-year.is-empty{
  width:3.4ch;
  height:.72em;
  color:transparent;
  border-bottom:4px dashed rgba(0,48,87,.25);
  user-select:none;
}
.timeline-item:nth-child(odd) .timeline-year.is-empty{margin-left:auto;}
.timeline-media{
  display:block;
  width:120px;
  height:120px;
  object-fit:cover;
  border-radius:10px;
  margin-bottom:16px;
  border:1px solid rgba(0,48,87,.12);
}
.timeline-item:nth-child(odd) .timeline-media{margin-left:auto;}
.timeline-item details{margin-top:14px; max-width:560px;}
.timeline-item:nth-child(odd) details{margin-left:auto;}
.timeline-item summary{
  cursor:pointer;
  list-style:none;
  display:inline-block;
  font-size:13px;
  font-weight:800;
  letter-spacing:1.2px;
  text-transform:uppercase;
  color:var(--amber-dark);
  border-bottom:2px solid var(--amber);
  padding-bottom:3px;
}
.timeline-item summary::-webkit-details-marker{display:none;}
.timeline-item details p{
  margin-top:12px;
  font-size:14.5px;
  line-height:1.7;
  color:var(--gray-text);
}
@media (max-width:960px){
  .timeline-year.is-empty{margin-left:0 !important;}
  .timeline-item:nth-child(odd) .timeline-media{margin-left:0;}
  .timeline-item:nth-child(odd) details{margin-left:0;}
}

.about-highlights{
  background:var(--gray-bg);
  padding:90px 0;
}
.about-highlights-inner{
  max-width:var(--container-max);
  margin:0 auto;
  padding:0 24px;
}
.about-highlights-head{text-align:center; margin-bottom:48px;}
.about-highlights-head .eyebrow-dark{justify-content:center; display:flex;}
.about-highlights-head h2{
  font-size:clamp(24px, 3.4vw, 32px);
  font-weight:800;
  text-transform:uppercase;
  color:var(--navy);
  max-width:720px;
  margin:0 auto;
}
/* --- Simetrik kart dizisi ---
   Kartlar esnek kapsayıcıda ve ortalı hizalı. Böylece son satırdaki kart
   sayısı sütun sayısına tam bölünmediğinde boşluk tek tarafa yığılmaz,
   iki yana eşit dağılır. CSS grid son satırdaki boşluğu daima sola
   yığıyordu (ör. 7 kart / 4 sütun → sağda boş hücre). min-width:0 ile
   kartların genişliği uzun kelimeler yüzünden birbirinden ayrılması da
   engellenir; eşit taban genişlik + büyüme yok = eşit genişlik. */
.highlight-grid{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:20px;
}
.highlight-grid > *{
  flex:0 1 calc((100% - 3 * 20px) / 4);
  max-width:100%;
  min-width:0;
}
.highlight-card{
  background:#fff;
  border:1px solid rgba(0,48,87,.08);
  border-radius:10px;
  padding:28px 22px;
  text-align:center;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  /* Dikey esnek kutu: kart yükseklikleri eşit olsa bile CTA'nın hepsi
     kart tabanında aynı hizada durur. */
  display:flex;
  flex-direction:column;
  align-items:stretch;
}
.highlight-card > .highlight-link{
  margin-top:auto;
  padding-top:14px;
  align-self:center;
}
.highlight-card:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 30px rgba(0,48,87,.12);
  border-color:var(--amber);
}
.highlight-icon{
  display:inline-flex;
  align-items:center; justify-content:center;
  width:52px; height:52px;
  border-radius:50%;
  background:var(--navy);
  color:#fff;
  margin-bottom:18px;
  /* Kart artık esnek kapsayıcı: ikon esnek öğe olduğu için eski
     metin hizalaması yerine burada ortalanıyor. */
  align-self:center;
  flex:0 0 auto;
}
.highlight-icon svg{width:24px; height:24px; fill:currentColor; stroke:currentColor;}
.highlight-icon .icon-handshake{fill:currentColor; stroke:none;}
.highlight-icon .icon-handshake .icon-crease{stroke:var(--navy); stroke-width:1; fill:none;}
.highlight-card .milestone-meta{justify-content:center;}
.highlight-card h3{
  font-size:16px;
  font-weight:800;
  color:var(--navy);
  text-transform:uppercase;
  letter-spacing:.5px;
  margin-bottom:10px;
}
.product-subsection{margin-bottom:56px;}
.product-subsection:last-child{margin-bottom:0;}
.product-subsection-title{
  font-size:13px;
  font-weight:800;
  letter-spacing:1.5px;
  text-transform:uppercase;
  color:var(--amber);
  margin-bottom:20px;
  padding-bottom:10px;
  border-bottom:1px solid rgba(0,48,87,.12);
}
.product-grid{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:24px;
}
/* Üç sütunluk taban genişlik. Marka gruplarındaki kart sayısı 3'ün
   katı olmadığı için (MONO fırın 5, Heuft 2, depozitör 5, karıştırıcı 2,
   şekillendirme 1+4) son satır esnek kapsayıcı sayesinde ortalanır. */
.product-grid > .product-card{
  flex:0 1 calc((100% - 2 * 24px) / 3);
  max-width:100%;
  min-width:0;
}
.product-card{
  background:#fff;
  border:1px solid rgba(0,48,87,.08);
  border-radius:10px;
  overflow:hidden;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.product-card:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 30px rgba(0,48,87,.12);
  border-color:var(--amber);
}
/* Görsel alanı: kaynak görseller farklı en-boy oranlarında (kırpılmış
   ürün fotoğrafı ve şeffaf kesim), bu yüzden contain ile tamamı çerçeve
   içinde tutulur. Düz gri zemin kesimlerin kenarlarını görünür kılıyordu;
   beyaza yakın dikey geçiş hem fotoğrafı hem kesimi doğal gösteriyor. */
.product-card-img{
  aspect-ratio:4/3;
  background:linear-gradient(180deg, #ffffff 0%, #eef2f6 100%);
  border-bottom:1px solid rgba(0,48,87,.06);
  display:flex; align-items:center; justify-content:center;
}
.product-card-img img{
  width:100%; height:100%;
  object-fit:contain;
  padding:18px;
  transition: transform .35s ease;
}
.product-card:hover .product-card-img img{transform:scale(1.04);}
.product-card-body{padding:20px 22px 24px;}
.product-card-brand{
  font-size:11px;
  font-weight:800;
  letter-spacing:1px;
  text-transform:uppercase;
  color:var(--amber);
}
.product-card-body h3{
  font-size:17px;
  font-weight:800;
  color:var(--navy);
  margin:6px 0 8px;
}
.product-card-body p{font-size:14px; line-height:1.55; color:#4a5a68; margin-bottom:14px;}
.product-variant-table{width:100%; border-collapse:collapse; margin-bottom:14px; font-size:13px;}
.product-variant-table td{padding:6px 8px; border-bottom:1px solid rgba(0,48,87,.08);}
.product-detail-toggle{
  background:none; border:none; padding:0;
  font-size:13px; font-weight:700; color:var(--navy);
  cursor:pointer; margin-bottom:10px; display:inline-flex; align-items:center; gap:4px;
}
.product-detail{margin-bottom:14px;}
.product-detail-specs{list-style:none; padding:0; margin:0 0 10px; font-size:13px; color:#4a5a68;}
.product-detail-specs li{padding:4px 0; border-bottom:1px solid rgba(0,48,87,.06);}
.product-link{display:block; font-size:13px; font-weight:700; color:var(--navy); margin-bottom:6px;}
.product-cta{width:100%; justify-content:center; margin-top:4px;}
@media (max-width: 960px){
  .product-grid > .product-card{flex-basis:calc((100% - 24px) / 2);}
}
@media (max-width: 640px){
  .product-grid > .product-card{flex-basis:100%;}
}
.highlight-card p{
  font-size:14px;
  color:var(--gray-text);
  line-height:1.6;
}
.highlight-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:14px;
  font-size:13px;
  font-weight:700;
  color:var(--amber-dark);
}
.highlight-card:hover .highlight-link{color:var(--amber);}
.highlight-card:hover .highlight-link .chev{transform:translateX(3px);}

.mv-section{
  background:#fff;
  padding:100px 0;
}
.mv-inner{
  max-width:1120px;
  margin:0 auto;
  padding:0 16px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:36px;
}
.mv-block{
  padding:0;
}
.mv-block:first-child{
  padding-right:36px;
  border-right:1px solid rgba(0,48,87,.1);
}
.mv-block-head{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:18px;
}
.mv-card-icon{
  display:inline-flex;
  color:var(--amber);
  flex:none;
}
.mv-card-icon svg{width:30px; height:30px;}

@media (max-width:820px){
  .mv-inner{grid-template-columns:1fr; gap:0;}
  .mv-block{padding:32px 0;}
  .mv-block:first-child{
    padding-right:0;
    padding-top:0;
    border-right:none;
    border-bottom:1px solid rgba(0,48,87,.1);
  }
}
.mv-block h2{
  font-size:clamp(22px, 3vw, 30px);
  font-weight:800;
  letter-spacing:.5px;
  text-transform:uppercase;
  color:var(--navy);
}
.mv-block p{
  font-size:18px;
  line-height:1.8;
  color:var(--gray-text);
  text-align:justify;
}

/* ===================== FOOTER ===================== */
.site-footer{
  background:var(--white);
  color:var(--navy);
  padding-top:70px;
  /* Beyaz bandın üstünde duran koyu şerit (referans footer'daki gibi). */
  border-top:44px solid var(--navy);
}
.footer-top{
  max-width:var(--container-max);
  margin:0 auto;
  padding:0 24px 40px;
  display:grid;
  grid-template-columns:repeat(5, 1fr);
  gap:30px;
  border-bottom:1px solid var(--navy);
}
.footer-col h4{
  font-size:13px;
  letter-spacing:1px;
  margin-bottom:18px;
  color:var(--navy);
}
.footer-col ul li{margin-bottom:10px;}
.footer-col ul li a{
  font-size:14px;
  color:rgba(0,48,87,.74);
  transition:color .2s ease, padding-left .2s ease;
}
.footer-col ul li a:hover{color:var(--navy); padding-left:4px; text-decoration:underline; text-underline-offset:3px;}

.footer-legal{
  max-width:var(--container-max);
  margin:0 auto;
  padding:22px 24px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  gap:14px;
}
.footer-legal-left{display:flex; gap:20px; align-items:center; flex-wrap:wrap; font-size:13px;}
.legal-label{font-weight:700; letter-spacing:1px; color:var(--navy);}
.footer-legal-left a{color:rgba(0,48,87,.74);}
.footer-legal-left a:hover{color:var(--navy); text-decoration:underline; text-underline-offset:3px;}
.footer-legal-social{display:flex; gap:10px;}

.footer-brand{
  text-align:center;
  padding:48px 24px 40px;
  background:var(--navy);
  color:#fff;
}
/* Logo taban genişliğiyle ölçeklenir: masaüstünde belirgin şekilde büyük,
   dar ekranlarda konteyneri aşmayacak şekilde (oran korunur, esnetme yok). */
.footer-brand img{
  display:block;
  width:min(510px, 100%);
  height:auto;
  margin:0 auto;
}
.footer-address{
  display:none;
  font-style:normal;
  margin-top:24px;
  font-size:13px;
  opacity:.6;
  max-width:560px;
  margin-left:auto;
  margin-right:auto;
}
.footer-copyright{
  display:block;
  margin-top:12px;
  font-size:13px;
  opacity:.6;
}

/* ===================== COOKIE CONSENT ===================== */
.cookie-banner{
  position:fixed;
  left:20px; right:20px; bottom:20px;
  z-index:2000;
  max-width:1000px;
  margin:0 auto;
  background:#fff;
  border:1px solid rgba(0,48,87,.12);
  border-radius:16px;
  box-shadow:0 12px 40px rgba(0,20,40,.25);
  padding:20px 26px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  flex-wrap:wrap;
}
.cookie-banner[hidden]{display:none;}
.cookie-banner-text{font-size:14px; line-height:1.6; color:var(--gray-text); flex:1 1 320px; margin:0;}
.cookie-banner-text a{color:var(--navy); font-weight:600; text-decoration:underline;}
.cookie-banner-actions{display:flex; gap:10px; flex-wrap:wrap; flex-shrink:0;}
.btn-cookie-outline{
  display:inline-flex; align-items:center; justify-content:center;
  border:1px solid rgba(0,48,87,.25);
  background:transparent;
  color:var(--navy);
  font-size:13px;
  font-weight:700;
  padding:11px 18px;
  border-radius:4px;
  cursor:pointer;
  white-space:nowrap;
  transition: background .2s ease, border-color .2s ease;
}
.btn-cookie-outline:hover{background:rgba(0,48,87,.06); border-color:rgba(0,48,87,.4);}

/* --- Shared modal shell (used by both the consent modal on iletisim.html and
   the cookie preferences modal built in main.js). Entry/exit are driven by the
   .is-open class so opening fades+scales in and closing animates back out. --- */
.cookie-modal{
  position:fixed; inset:0; z-index:2100;
  display:flex; align-items:center; justify-content:center;
  padding:20px;
  opacity:0;
  transition:opacity .25s ease;
}
.cookie-modal.is-open{opacity:1;}
body.cookie-modal-open{overflow:hidden;}
.cookie-modal[hidden]{display:none;}
.cookie-modal-backdrop{
  position:absolute; inset:0;
  background:rgba(3,15,28,.55);
  -webkit-backdrop-filter:blur(6px);
  backdrop-filter:blur(6px);
  border:none; padding:0; margin:0; cursor:default;
  opacity:0;
  transition:opacity .3s ease;
}
.cookie-modal.is-open .cookie-modal-backdrop{opacity:1;}
.cookie-modal-panel{
  position:relative;
  background:#fff;
  border-radius:16px;
  max-width:560px;
  width:100%;
  max-height:86vh;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  box-shadow:0 24px 60px rgba(0,0,0,.35);
  opacity:0;
  transform:translateY(18px) scale(.97);
  transition:opacity .25s ease, transform .34s cubic-bezier(.16,.84,.44,1);
}
.cookie-modal.is-open .cookie-modal-panel{opacity:1; transform:none;}
/* Navy -> amber accent strip: carries the brand colours into the dialog. */
.cookie-modal-panel::before{
  content:'';
  position:absolute; top:0; left:0; right:0; height:4px;
  z-index:2;
  background:linear-gradient(90deg, var(--navy) 0%, var(--amber) 100%);
}
.cookie-modal-scroll{
  overflow-y:auto;
  padding:36px 32px 32px;
  -webkit-overflow-scrolling:touch;
}
.cookie-modal-head{
  display:flex; align-items:flex-start; justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
}
.cookie-modal-head h2{
  font-size:22px;
  font-weight:800;
  color:var(--navy);
  line-height:1.3;
  margin:0;
  padding:0 8px 0 0;
}
.cookie-modal-close{
  flex-shrink:0;
  width:44px; height:44px;
  margin:-10px -10px 0 0;
  display:inline-flex; align-items:center; justify-content:center;
  border:1px solid rgba(0,48,87,.14);
  border-radius:50%;
  background:#fff;
  color:var(--gray-text);
  font-family:inherit;
  font-size:24px;
  line-height:1;
  cursor:pointer;
  transition:background .2s ease, color .2s ease, border-color .2s ease, transform .25s ease;
}
.cookie-modal-close:hover{
  background:var(--navy);
  border-color:var(--navy);
  color:#fff;
  transform:rotate(90deg);
}
.cookie-modal-scroll > p{
  font-size:14px;
  color:var(--gray-text);
  line-height:1.7;
  margin:0 0 18px;
}
.cookie-modal-scroll > p:last-child{margin-bottom:0;}
.cookie-modal-scroll > p a{color:var(--navy); font-weight:600; text-decoration:underline;}
.cookie-category{padding:16px 0; border-top:1px solid rgba(0,48,87,.1);}
.cookie-category:first-of-type,
.cookie-modal-scroll > p + .cookie-category{border-top:none; padding-top:0;}
.cookie-category-head{display:flex; align-items:center; justify-content:space-between; gap:16px; font-weight:700; color:var(--navy); font-size:15px; margin-bottom:6px;}
.cookie-category p{font-size:13px; color:var(--gray-text); line-height:1.5; margin:0;}
.cookie-toggle{position:relative; display:inline-block; width:42px; height:24px; flex-shrink:0;}
.cookie-toggle input{position:absolute; opacity:0; width:100%; height:100%; margin:0; cursor:pointer;}
.cookie-toggle-slider{position:absolute; inset:0; background:rgba(0,48,87,.2); border-radius:24px; transition:background .2s ease; pointer-events:none;}
.cookie-toggle-slider::before{content:''; position:absolute; width:18px; height:18px; left:3px; top:3px; background:#fff; border-radius:50%; transition:transform .2s ease;}
.cookie-toggle input:checked + .cookie-toggle-slider{background:var(--amber);}
.cookie-toggle input:checked + .cookie-toggle-slider::before{transform:translateX(18px);}
.cookie-toggle input:disabled{cursor:not-allowed;}
.cookie-toggle-locked .cookie-toggle-slider{opacity:.7;}
/* --- Consent modal: the legal text as three scannable cards instead of one
   justified wall of grey paragraphs. --- */
.consent-points{
  list-style:none;
  margin:0 0 18px;
  padding:0;
  display:grid;
  gap:10px;
}
.consent-points li{
  position:relative;
  padding:13px 15px 13px 44px;
  background:var(--gray-bg);
  border:1px solid rgba(0,48,87,.1);
  border-radius:8px;
  font-size:13.5px;
  line-height:1.6;
  color:var(--gray-text);
}
.consent-points li::before{
  content:'';
  position:absolute; left:15px; top:15px;
  width:18px; height:18px;
  border-radius:50%;
  background:rgba(241,180,52,.22);
}
.consent-points li::after{
  content:'';
  position:absolute; left:20px; top:22px;
  width:8px; height:4px;
  border-left:2px solid var(--navy);
  border-bottom:2px solid var(--navy);
  transform:rotate(-45deg);
}
.consent-point-label{
  display:block;
  font-size:11.5px;
  font-weight:800;
  letter-spacing:.8px;
  text-transform:uppercase;
  color:var(--navy);
  margin-bottom:2px;
}
.cookie-modal-actions{
  display:flex; justify-content:flex-end; gap:10px; flex-wrap:wrap;
  flex-shrink:0;
  padding:16px 32px;
  border-top:1px solid rgba(0,48,87,.1);
  background:#fff;
}
/* Both choices share one type style (uppercase, same weight/size) so the pair
   reads as equals instead of a bold CTA next to a plain label. */
.cookie-modal-actions .btn,
.cookie-modal-actions .btn-cookie-outline{
  min-height:44px;
  padding:0 18px;
  font-size:13px;
  font-weight:700;
  letter-spacing:.8px;
  text-transform:uppercase;
  white-space:nowrap;
}
.cookie-modal-actions .btn-cookie-outline:hover{transform:scale(.96);}
.footer-cookie-btn{
  background:none; border:none; padding:0; margin:0;
  color:rgba(0,48,87,.74);
  font-size:13px;
  font-family:inherit;
  cursor:pointer;
  transition:color .2s ease;
}
.footer-cookie-btn:hover{color:var(--navy); text-decoration:underline; text-underline-offset:3px;}

@media (max-width:640px){
  .cookie-banner{
    left:8px; right:8px; bottom:8px;
    padding:12px 14px;
    gap:10px;
    flex-direction:column;
    align-items:stretch;
    max-height:60vh;
    overflow-y:auto;
  }
  .cookie-banner-text{font-size:12px; line-height:1.45; flex:none;}
  .cookie-banner-actions{
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  .cookie-banner-actions [data-cookie-action="accept-all"]{grid-column:1 / -1;}
  .cookie-banner-actions .btn, .cookie-banner-actions .btn-cookie-outline{
    width:auto;
    min-height:44px;
    padding:9px 8px;
    font-size:11px;
    white-space:normal;
    text-align:center;
  }
  body.cookie-banner-open .floating-contact-wrap{display:none;}
  .cookie-modal-panel{max-height:88vh;}
  .cookie-modal-scroll{padding:24px 18px 20px;}
  .cookie-modal-head{gap:10px;}
  .cookie-modal-head h2{font-size:19px; padding-right:0;}
  .cookie-modal-close{margin:-6px -8px 0 0; font-size:22px;}
  .cookie-modal-scroll > p{font-size:13px; line-height:1.65;}
  .consent-points{gap:8px; margin-bottom:16px;}
  .consent-points li{font-size:13px; padding:12px 12px 12px 40px;}
  .consent-points li::before{left:12px; top:13px;}
  .consent-points li::after{left:17px; top:20px;}
  .cookie-modal-actions{justify-content:stretch; padding:14px 18px; gap:8px;}
  .cookie-modal-actions .btn, .cookie-modal-actions .btn-cookie-outline{
    flex:1 1 auto;
    min-height:44px;
    height:auto;
    padding:8px;
    font-size:11.5px;
    letter-spacing:.6px;
    white-space:normal;
    text-align:center;
  }
}

@media (prefers-reduced-motion:reduce){
  .cookie-modal,
  .cookie-modal-backdrop,
  .cookie-modal-panel,
  .cookie-modal-close{transition-duration:.01ms !important;}
}

/* ===================== FLOATING CONTACT ===================== */
.floating-contact-wrap{
  position:fixed;
  right:0;
  bottom:120px;
  z-index:999;
}
.floating-contact{
  display:block;
  background:var(--navy);
  color:#fff;
  border:2px solid var(--amber);
  border-right:none;
  padding:21px 30px;
  border-radius:30px 0 0 30px;
  font-weight:700;
  font-size:19px;
  letter-spacing:1.5px;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  transition: padding .2s ease, background .2s ease;
  box-shadow:-4px 4px 16px rgba(0,0,0,.25);
}
.floating-contact:hover{
  background:var(--amber);
  padding-right:39px;
}
.floating-dropdown{
  top:auto;
  bottom:100%;
  left:auto;
  right:0;
  margin-bottom:10px;
  border-radius:0;
  overflow:visible;
  box-shadow:none;
}
.icon-list{
  background:#efefef;
  border-radius:15px;
  box-shadow:0 0 10px 3px rgba(0,0,0,.35);
  padding:20px 22px;
  width:220px;
  display:flex;
  flex-direction:column;
  gap:14px;
}
.icon-list-item{
  display:flex;
  align-items:center;
  gap:10px;
}
.icon-list-item .icon-glyph{
  flex-shrink:0;
  width:18px;
  font-size:15px;
  text-align:center;
  color:var(--accent-blue);
}
.icon-list-item a{
  font-size:14px;
  font-weight:700;
  color:var(--navy);
  transition: color .15s ease;
}
.icon-list-item a:hover{color:var(--amber-dark);}

/* ===================== RESPONSIVE ===================== */
@media (max-width: 960px){
  .values-columns{grid-template-columns:1fr;}
  .stats-bar{grid-template-columns:repeat(2, 1fr); gap:28px 16px;}
  .services-intro-inner{grid-template-columns:1fr;}
  .carousel-inner{grid-template-columns:1fr;}
  .carousel-timeline{flex-direction:row; margin-bottom:20px;}
  .carousel-timeline::before{top:50%; left:0; right:0; bottom:auto; width:auto; height:1px; transform:translateY(-50%);}
  .journey-layout{grid-template-columns:1fr;}
  .journey-sticky-label{position:static; margin-bottom:24px;}
  .timeline-inner--journey .timeline-item{
    width:auto;
    margin:0 0 40px;
    padding-left:70px !important;
    padding-right:0 !important;
    text-align:left !important;
  }
  .timeline-inner--journey::before{left:34px;}
  .timeline-inner--journey .timeline-dot{left:26px !important; right:auto !important;}
  .footer-top{grid-template-columns:repeat(2, 1fr);}
  .contact-hero{padding:170px 0 140px;}
  .contact-cards-section{margin-top:-90px;}
  .contact-cards-inner{grid-template-columns:1fr;}
  .support-section{padding-top:120px;}
  .support-inner{grid-template-columns:1fr;}
  .support-card{margin-top:0;}
  .contact-cards-inner.cols-2{grid-template-columns:1fr;}
  .connect-box{grid-template-columns:1fr; gap:36px; padding:40px;}
  .connect-left{border-right:none; border-bottom:1px solid rgba(0,48,87,.12); padding-right:0; padding-bottom:36px;}
  .logo-grid{grid-template-columns:repeat(3, 1fr);}
  .partners-stats-bar{grid-template-columns:repeat(2, 1fr); gap:28px 16px;}
  .partners-columns{grid-template-columns:1fr;}
  .partner-col + .partner-col{border-left:none; border-top:1px solid rgba(0,48,87,.08);}
  .partner-col:nth-child(even){background:transparent;}
  .milestones-columns{grid-template-columns:1fr;}
  .milestone-col + .milestone-col{border-left:none; border-top:1px solid rgba(0,48,87,.08);}
  .milestone-col:nth-child(even){background:transparent;}
  .projects-list{columns:1;}
  .brochures-columns{grid-template-columns:1fr;}
  .brochure-col:nth-child(3n+2){background:transparent;}
  .brochure-col:not(:nth-child(3n+1)){border-left:none;}
  .brochure-col:not(:first-child){border-top:1px solid rgba(0,48,87,.08);}
  .highlight-grid > *{flex-basis:calc((100% - 20px) / 2);}
}
@media (max-width: 560px){
  .form-row{grid-template-columns:1fr;}
  .connect-box{padding:28px;}
  .logo-grid{grid-template-columns:repeat(2, 1fr);}
  .partner-card-top{flex-direction:column; align-items:flex-start; gap:10px;}
  .partner-origin{text-align:left;}
  .projects-list li{flex-direction:column; gap:2px;}
  .highlight-grid > *{flex-basis:100%;}
}
@media (max-width: 1100px){
  .main-nav{
    position:fixed; top:0; right:0; bottom:0;
    width:78%; max-width:320px;
    background:var(--navy);
    padding:100px 24px 24px;
    transform:translateX(100%);
    visibility:hidden;
    pointer-events:none;
    transition: transform .3s ease, visibility .3s ease;
    z-index:999;
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
  }
  .main-nav.open{transform:translateX(0); visibility:visible; pointer-events:auto;}
  .main-nav > ul{flex-direction:column; gap:4px;}
  .main-nav > ul > li > a{color:#fff;}
  .main-nav > ul > li > a:hover{background:rgba(255,255,255,.12);}
  .dropdown{position:static; opacity:1; visibility:visible; transform:none; box-shadow:none; border-radius:0; flex-direction:column; display:none;}
  .has-dropdown.open .dropdown{display:flex;}
  .mega-col{background:transparent; width:auto; min-width:0; padding:14px 4px;}
  /* Mobilde sütunlar alt alta: sabit başlık yüksekliği gereksiz boşluk açmasın */
  .dropdown:has(.mega-col + .mega-col) .mega-col-head{display:block; min-height:0; margin-bottom:14px;}
  .mega-col + .mega-col{border-left:none; border-top:1px solid rgba(255,255,255,.12);}
  .mega-col-title{color:var(--amber); white-space:normal;}
  .mega-col-subtitle, .mega-col-desc{color:rgba(255,255,255,.6);}
  .mega-col ul li a{color:#fff; white-space:normal;}
  .mega-col ul li a:hover{background:rgba(255,255,255,.1); color:var(--amber);}
  .hamburger{display:flex; position:relative; z-index:1000;}
  .nav-backdrop{
    display:none;
    position:fixed; inset:0;
    background:rgba(0,15,30,.55);
    z-index:998;
  }
  body.nav-open .nav-backdrop{display:block;}
  body.nav-open{overflow:hidden;}
  .topbar-contact a{display:block; margin-bottom:4px;}
  .footer-top{grid-template-columns:1fr 1fr;}
  .floating-dropdown{display:none !important;}
}
@media (max-width: 480px){
  .footer-top{grid-template-columns:1fr;}
  .floating-contact-wrap{bottom:80px;}
  .floating-contact{padding:15px 21px;}
}
@media (prefers-reduced-motion: reduce){
  .reveal{opacity:1; transform:none; transition:none;}
  .scroll-indicator span{animation:none;}
  .btn:hover{transform:none;}
  .hero-cycle-cursor{animation:none;}
  .carousel-photo{transition:none;}
  .carousel-card:hover{transform:none;}
}
@media (max-width: 640px){
  .carousel-card{grid-template-columns:104px 1fr; gap:12px;}
  .carousel-card .card-thumb{width:104px; height:72px;}
}

/* ==================== HİZMETLER BÖLÜMÜ: GÖRSEL DESTEK, YASLAMA, ESTETİK ==================== */

/* Paragraflar iki yana yaslı — hizmetler bölümündeki tüm sayfalar */
[data-service-key] .about-intro-inner p,
[data-service-key] .support-steps li,
[data-service-key] .highlight-card p,
[data-service-key] .timeline-item p,
[data-service-key] .services-intro-right p,
[data-service-key] .product-card-body p,
.page-services .about-intro-inner p,
.page-services .highlight-card p{
  text-align:justify;
  hyphens:auto;
}

/* Bölüm başlığı görsel rozeti */
.head-visual{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:54px;
  height:54px;
  border-radius:16px;
  background:rgba(241,180,52,.15);
  border:1px solid rgba(241,180,52,.55);
  color:var(--navy);
  margin-bottom:16px;
}
.head-visual svg{
  width:26px;
  height:26px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.support-section .head-visual,
.timeline-section .head-visual{
  background:rgba(241,180,52,.18);
  border-color:rgba(241,180,52,.65);
  color:var(--amber);
}

/* Kart başlığı ikonları: çizgi (outline) tarzı SVG */
.highlight-icon svg{
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

/* Landing servis kartı görselleri */
.highlight-card .card-media{
  display:block;
  overflow:hidden;
  border-radius:10px;
  margin-bottom:18px;
}
.highlight-card .card-media img{
  display:block;
  width:100%;
  height:170px;
  object-fit:cover;
  transition:transform .45s ease;
}
.highlight-card:hover .card-media img{transform:scale(1.06);}
.page-services .highlight-grid--3 > *{flex-basis:calc((100% - 2 * 20px) / 3);}
@media (max-width: 960px){
  .page-services .highlight-grid--3 > *{flex-basis:calc((100% - 20px) / 2);}
}
@media (max-width: 560px){
  .page-services .highlight-grid--3 > *{flex-basis:100%;}
}

/* ==================== TEKNOLOJİLER: YASLAMA, ÜRÜN KARTI SİMETRİSİ ==================== */

/* Teknoloji sayfalarında ürün teknik özellikleri iki yana yaslı */
[data-service-key] .product-detail-specs li{
  text-align:justify;
  hyphens:auto;
}

/* Ürün kartı simetrisi: eşit yükseklik, altta hizalı teklif butonu */
.product-card{display:flex; flex-direction:column;}
.product-card-body{display:flex; flex-direction:column; flex:1;}
.product-card .product-cta{margin-top:auto;}
.product-card .product-detail-toggle{align-self:flex-start;}

/* ==================== ÜRÜNÜNÜZÜ SEÇİN: PİZZA SAYFASI ==================== */

/* Hero butonu */
.page-hero .btn{margin-top:26px;}

/* Paragraflar iki yana yaslı — pizza sayfası */
.page-pizza p{
  text-align:justify;
  hyphens:auto;
}
.page-pizza .about-intro-inner h2{
  font-size:clamp(24px, 3vw, 34px);
  font-weight:800;
  color:var(--navy);
  line-height:1.25;
  margin:0 0 16px;
}

/* Sekmeler */
.pizza-tabs{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px;
  margin:4px 0 30px;
}
.pizza-tab{
  font-family:inherit;
  font-size:14px;
  font-weight:700;
  padding:11px 22px;
  border:1px solid rgba(0,48,87,.18);
  border-radius:999px;
  background:#fff;
  color:var(--navy);
  cursor:pointer;
  transition:background .2s ease, border-color .2s ease, color .2s ease;
}
.pizza-tab:hover{border-color:var(--amber);}
.pizza-tab.is-active{
  background:var(--navy);
  border-color:var(--navy);
  color:#fff;
}
.pizza-panel{display:none;}
.pizza-panel.is-active{display:block; animation:pizzaFade .35s ease;}
@keyframes pizzaFade{
  from{opacity:0; transform:translateY(6px);}
  to{opacity:1; transform:none;}
}

/* Galeri ızgarası */
.pizza-gallery{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:20px;
}
.pizza-card{
  background:#fff;
  border:1px solid rgba(0,48,87,.08);
  border-radius:10px;
  overflow:hidden;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.pizza-card:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 30px rgba(0,48,87,.12);
  border-color:var(--amber);
}
.pizza-card-img{
  aspect-ratio:4/3;
  background:var(--gray-bg);
  overflow:hidden;
}
.pizza-card-img img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .45s ease;
}
.pizza-card:hover .pizza-card-img img{transform:scale(1.06);}
.pizza-cap{
  display:block;
  padding:12px 14px;
  font-size:13px;
  font-weight:700;
  color:var(--navy);
}
.page-pizza .pizza-cap{text-align:center;}

/* Uzun Raf Ömrü & Glutensiz — buton satırı */
.page-pizza .services-intro-right p{margin-bottom:6px;}
.page-pizza .services-intro-right .btn-row{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:18px;
}

@media (max-width: 960px){
  .pizza-gallery{grid-template-columns:repeat(2, 1fr);}
}
@media (max-width: 640px){
  .pizza-gallery{grid-template-columns:1fr;}
}
.page-pizza .about-highlights-head{text-align:center;}
.page-pizza .about-highlights-head .head-visual{margin-left:auto; margin-right:auto;}
.page-pizza .about-intro-inner h2{text-align:left;}
.page-pizza .range-intro{max-width:920px; margin:0 auto 30px;}

/* ==================== PİZZA: FOTOĞRAF HERO (?r?n sayfas? d?zeni) ==================== */
.page-hero.page-hero-photo{
  position:relative;
  background:var(--navy);
  min-height:69vh; /* 86vh'nin %20 azaltılmış hâli */
  display:flex;
  align-items:center;
  padding:190px 0 135px;
  text-align:left;
}
/* Fotoğraf filtresiz görünüm + x ekseninde aynalı, üstünde hafif koyu okunabilirlik katmanı */
.page-hero.page-hero-photo::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(0,21,39,.62) 0%, rgba(0,21,39,.48) 32%, rgba(0,21,39,.2) 68%, rgba(0,21,39,.1) 100%), /* metin tarafı koyu, sağ taraf fotoğrafı gösterir — okunabilirlik için */
    url('../assets/img/products/hero/pizza-hero.jpg') center center / cover no-repeat;
  transform:scaleX(-1);
  z-index:0;
}
.page-hero.page-hero-photo .page-hero-inner{
  position:relative;
  z-index:2;
  width:100%;
  max-width:var(--container-max);
  margin:0 auto;
  padding:0 20px;
  text-align:left;
}
.page-hero.page-hero-photo .eyebrow-dark{
  display:block;                 /* blok = PIZZA h1 ile tam aynı sol kenar */
  max-width:none;                /* .page-hero p'nin 600px + auto margin ezmesi */
  margin:0 0 20px;
  text-align:left;
  font-style:italic;
  color:#fff;
  font-size:clamp(17px, 1.5vw, 22px); /* punto büyütüldü (14px → ~17-22px) */
  letter-spacing:.14em;
  font-weight:700;
  text-shadow:0 2px 14px rgba(0,0,0,.45);
}
.page-hero.page-hero-photo h1{
  font-size:clamp(46px, 7vw, 78px);
  margin:16px 0 30px;
  text-shadow:0 4px 26px rgba(0,0,0,.45);
}
.page-hero.page-hero-photo .btn{
  border-radius:10px;
  font-weight:700;
  box-shadow:0 10px 26px rgba(0,0,0,.28);
}
/* Alt kenarda beyaz dalga — intro bölümü beyazla kaynaşır */
.page-hero.page-hero-photo::after{
  display:block;
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:74px;
  z-index:3;
  pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 74' preserveAspectRatio='none'%3E%3Cpath d='M0,44 C180,74 360,10 560,26 C760,42 900,74 1100,54 C1240,40 1340,20 1440,34 L1440,74 L0,74 Z' fill='%23ffffff'/%3E%3C/svg%3E") bottom center / 100% 100% no-repeat;
}
.page-pizza .about-intro{background:#fff; padding-top:64px;}

/* ==================== PİZZA: KREM ÜRÜN GAM PANELİ ==================== */
.page-pizza .about-highlights{background:#fff; padding:56px 0 84px;}
/* Yatay boşluk %20 azaltıldı: yan boşluk %20 → %16 (genişlik %60 → %68) */
.page-pizza .about-highlights-inner{width:68%; max-width:none; margin:0 auto; padding:0;}
.page-pizza .about-intro-inner{width:68%; max-width:none; margin:0 auto; padding:0;}
.range-panel{
  background:#fdf3d8;
  border-radius:20px;
  margin-bottom:44px;
  box-shadow:0 18px 50px rgba(0,48,87,.10);
}
.range-head{
  margin:0 7.2%; /* %9'in %20 azaltılmışı */
  padding:36px 0 32px;
  text-align:center;
  border-top:1px solid rgba(0,48,87,.45);
  border-bottom:1px solid rgba(0,48,87,.45);
}
.range-head .head-visual{
  margin:0 auto 16px;
  background:rgba(0,48,87,.06);
  border-color:rgba(0,48,87,.35);
  color:var(--navy);
}
.range-head h2{
  font-size:clamp(30px, 3.6vw, 44px);
  font-style:italic;
  font-weight:800;
  color:var(--navy);
  line-height:1.15;
  margin:0 0 18px;
}
.page-pizza .range-intro{
  max-width:880px;
  margin:0 auto;
  text-align:center;
  font-size:15.5px;
  color:var(--gray-text);
}

/* Tam genişlik 3 segmentli sekme şeridi */
.pizza-tabs{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:0;
  margin:0;
  position:relative;
  z-index:2;
}
.pizza-tab{
  font-family:inherit;
  font-size:14.5px;
  font-weight:700;
  text-align:center;
  padding:15px 12px;
  border:0;
  border-right:1px solid rgba(0,48,87,.22);
  border-radius:0;
  background:transparent;
  color:var(--navy);
  position:relative;
  transition:background .2s ease, color .2s ease;
}
.pizza-tab:last-child{border-right:0;}
.pizza-tab:hover{background:rgba(0,48,87,.07); border-right-color:rgba(0,48,87,.22);}
.pizza-tab.is-active{
  background:var(--navy);
  color:#fff;
}
.pizza-tab.is-active::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-11px;
  transform:translateX(-50%);
  border:11px solid transparent;
  border-top-color:var(--navy);
  border-bottom:0;
}

/* Sınırsız görseller + beyaz zeminde ortalanmış lacivert başlıklar */
.page-pizza .pizza-panel.is-active{margin-top:36px; animation:pizzaFade .35s ease;}
.page-pizza .pizza-gallery{gap:30px 24px;}
.page-pizza .pizza-card{
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
}
.page-pizza .pizza-card:hover{
  transform:none;
  box-shadow:none;
  border-color:transparent;
}
.page-pizza .pizza-card-img{
  background:transparent;
  border-radius:12px;
}
.page-pizza .pizza-cap{
  padding:14px 6px 0;
  font-size:13.5px;
  font-weight:600;
  letter-spacing:.01em;
  color:var(--navy);
  text-align:center;
}

@media (max-width: 960px){
  .range-head{margin:0 4.8%; padding:28px 0 26px;} /* %6'nın %20 azaltılmışı */
  .page-pizza .about-highlights-inner,
  .page-pizza .about-intro-inner{width:74.4%;}      /* yan boşluk %12,8 (masaüstünde %16) */
}
@media (max-width: 640px){
  .page-hero.page-hero-photo{padding:130px 0 95px; min-height:56vh;}
  .page-hero.page-hero-photo h1{font-size:clamp(32px, 10vw, 46px); overflow-wrap:anywhere;}
  .pizza-tab{font-size:13px; padding:13px 6px;}
  .range-panel{border-radius:14px;}
}

/* ortakı galeri görsel boyutu (thumb ~200-240px, 3:2) */
.page-pizza .pizza-gallery{
  grid-template-columns:repeat(auto-fill, 240px);
  justify-content:start;
  gap:36px 32px;
}
.page-pizza .pizza-card{max-width:240px;}
.page-pizza .pizza-card-img{max-width:240px; aspect-ratio:3/2;}

/* ==================== PİZZA: UZUN RAF ÖMRÜ & GLUTENSİZ (?r?n sayfas? d?zeni) ==================== */
.pizza-lsl{
  position:relative;
  background:url('../assets/img/products/hero/pizza-hero.jpg') center center / cover no-repeat;
  min-height:100vh;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:110px 15%;
}
.pizza-lsl::before{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.3);
}
.pizza-lsl-box{
  position:relative;
  z-index:1;
  width:70%;
  border:1px solid rgba(255,255,255,.85);
  border-radius:20px;
  padding:7%;
  color:#fff;
}
.pizza-lsl-box .pizza-lsl-eyebrow{
  font-size:13px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#fff;
  margin:0 0 22px;
}
.pizza-lsl-box h2{
  font-size:clamp(34px, 4.4vw, 54px);
  font-weight:800;
  text-transform:uppercase;
  line-height:1.12;
  color:#fff;
  margin:0 0 26px;
}
.pizza-lsl-box p{
  color:#fff;
  font-size:15.5px;
  font-weight:600;
  line-height:1.6;
  margin:0 0 18px;
}
.pizza-lsl-btns{
  display:flex;
  gap:18px;
  flex-wrap:wrap;
  margin-top:34px;
}
.pizza-lsl-btns .btn{
  border-radius:10px;
  font-weight:700;
}
.pizza-lsl-btns .btn-outline{
  border:2px solid #fff;
  color:#fff;
  background:transparent;
}
.pizza-lsl-btns .btn-outline:hover{background:#fff; color:var(--navy);}

@media (max-width: 960px){
  .pizza-lsl{padding:80px 8%;}
  .pizza-lsl-box{width:100%; padding:44px 34px;}
}

/* ==================== UZUN RAF ÖMRÜ SAYFASI ==================== */
.page-long-shelf-life{background:#fff;color:var(--navy);}
.lsl-content-width{width:var(--page-content-width);max-width:none;margin-left:auto;margin-right:auto;}
.lsl-content-width p{text-align:left;hyphens:none;}
.lsl-hero{
  position:relative;overflow:hidden;padding:104px 0 112px;
  background:radial-gradient(circle at 85% 18%,rgba(94,155,220,.20),transparent 32%),var(--navy);color:#fff;
}
.lsl-hero::after{
  content:"";position:absolute;right:-12%;bottom:-48%;width:62%;aspect-ratio:1;
  border:1px solid rgba(255,255,255,.08);border-radius:50%;
  box-shadow:0 0 0 42px rgba(255,255,255,.025),0 0 0 84px rgba(255,255,255,.018);pointer-events:none;
}
.lsl-hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:center;gap:clamp(38px,6vw,86px);}
.lsl-hero--text-only .lsl-hero-inner{grid-template-columns:1fr;}
.lsl-hero--text-only .lsl-hero-copy{max-width:850px;}
.lsl-hero-copy{max-width:610px;}
.lsl-eyebrow{margin:0 0 18px;color:var(--amber);font-size:12px;font-weight:800;letter-spacing:1.8px;line-height:1.4;text-transform:uppercase;}
.lsl-hero h1,.lsl-hero h2{margin:0 0 26px;color:#fff;font-size:clamp(42px,5.3vw,72px);font-weight:800;letter-spacing:-1px;line-height:1.04;text-transform:uppercase;}
.lsl-hero-copy > p:not(.lsl-eyebrow){margin:0 0 16px;color:rgba(255,255,255,.82);font-size:16px;font-weight:500;line-height:1.75;}
.lsl-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin-top:32px;}
.lsl-hero-actions .btn{border-radius:8px;}
.lsl-text-link{display:inline-flex;align-items:center;gap:9px;color:#fff;font-size:13px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;transition:color .2s ease,gap .2s ease;}
.lsl-text-link:hover{color:var(--amber);gap:13px;}
.lsl-hero-visual{position:relative;padding:18px;overflow:hidden;border:1px solid rgba(255,255,255,.32);border-radius:22px;background:#fff;box-shadow:0 24px 60px rgba(0,0,0,.24);}
.lsl-hero-visual img{display:block;width:100%;height:auto;aspect-ratio:1800/819;object-fit:contain;}
.lsl-visual-caption{display:block;margin-top:11px;color:var(--navy);font-size:11px;font-weight:700;letter-spacing:1.2px;text-align:center;text-transform:uppercase;}
.lsl-principles{padding:102px 0 110px;}
.lsl-section-heading{max-width:790px;margin-bottom:42px;}
.lsl-section-heading--center{margin-left:auto;margin-right:auto;text-align:center;}
.lsl-section-heading h2{margin:0 0 17px;color:var(--navy);font-size:clamp(30px,3.4vw,46px);font-weight:800;letter-spacing:-.4px;line-height:1.18;}
.lsl-section-heading > p:not(.lsl-eyebrow){margin:0;color:var(--gray-text);font-size:16px;line-height:1.75;}
.lsl-principle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.lsl-principle-card{min-height:280px;padding:30px 28px 32px;border:1px solid rgba(0,48,87,.11);border-radius:16px;background:#f7f9fb;box-shadow:0 12px 30px rgba(0,48,87,.06);}
.lsl-card-number{display:block;margin-bottom:20px;color:var(--amber-dark);font-size:12px;font-weight:800;letter-spacing:1.5px;}
.lsl-principle-card h3,.lsl-definition-card h3,.lsl-defence-card h3,.lsl-ingredient-card h3,.lsl-process-card h3{margin:0 0 13px;color:var(--navy);font-size:21px;font-weight:800;line-height:1.25;}
.lsl-principle-card p,.lsl-definition-card p,.lsl-defence-card p,.lsl-ingredient-card p,.lsl-process-card p{margin:0;color:var(--gray-text);font-size:14.5px;line-height:1.75;}
.lsl-definition{padding:94px 0 100px;background:#f1f5f8;}
.lsl-definition-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;max-width:900px;margin:0 auto;}
.lsl-definition-card{padding:34px 32px 36px;border:1px solid rgba(0,48,87,.10);border-radius:16px;background:#fff;box-shadow:0 12px 30px rgba(0,48,87,.05);}
.lsl-definition-label{display:inline-grid;place-items:center;width:42px;height:42px;margin-bottom:22px;border-radius:50%;background:var(--navy);color:#fff;font-size:12px;font-weight:800;letter-spacing:.8px;}
.lsl-defences{padding:102px 0 110px;scroll-margin-top:110px;}
.lsl-defence-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.lsl-defence-card{position:relative;min-height:310px;padding:28px 24px 30px;border:1px solid rgba(0,48,87,.11);border-radius:16px;background:#fff;box-shadow:0 12px 30px rgba(0,48,87,.05);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
.lsl-defence-card:hover{transform:translateY(-4px);border-color:rgba(241,180,52,.75);box-shadow:0 18px 36px rgba(0,48,87,.10);}
.lsl-defence-icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:24px;border-radius:14px;background:#eaf3fb;color:var(--accent-blue);}
.lsl-defence-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
.lsl-defence-card .lsl-card-number{position:absolute;top:30px;right:24px;margin:0;}
.lsl-defence-card h3{font-size:18px;}
.lsl-ingredients{padding:102px 0 110px;background:#fff;}
.lsl-ingredient-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.lsl-ingredient-card{min-height:270px;padding:28px 24px 30px;border-top:3px solid var(--amber);border-radius:0 0 16px 16px;background:#f7f9fb;box-shadow:0 12px 30px rgba(0,48,87,.05);}
.lsl-ingredient-tag{display:block;margin-bottom:22px;color:var(--amber-dark);font-size:12px;font-weight:800;letter-spacing:1.5px;}
.lsl-ingredient-card h3{font-size:19px;}
.lsl-process{padding:102px 0 110px;}
.lsl-process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.lsl-process-card{position:relative;padding:32px 28px 34px;border:1px solid rgba(0,48,87,.11);border-radius:16px;background:#fff;box-shadow:0 12px 30px rgba(0,48,87,.05);}
.lsl-process-number{display:block;margin-bottom:22px;color:var(--accent-blue);font-size:28px;font-weight:800;letter-spacing:-.5px;}
.lsl-process-card h3{font-size:22px;}
.lsl-cta{padding:82px 0 88px;background:var(--navy);color:#fff;}
.lsl-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:42px;}
.lsl-cta h2{margin:0 0 15px;color:#fff;font-size:clamp(28px,3.3vw,44px);font-weight:800;line-height:1.18;}
.lsl-cta p:not(.lsl-eyebrow){max-width:650px;margin:0;color:rgba(255,255,255,.78);font-size:15.5px;line-height:1.7;}
.lsl-cta .btn{flex-shrink:0;border-radius:8px;}
@media (max-width:1100px){
  .lsl-defence-grid,.lsl-ingredient-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:960px){
  .lsl-content-width{width:74.4%;}
  .lsl-hero{padding:82px 0 90px;}
  .lsl-hero-inner{grid-template-columns:1fr;gap:46px;}
  .lsl-hero-copy{max-width:none;}
  .lsl-hero-visual{max-width:760px;}
  .lsl-principles,.lsl-defences,.lsl-ingredients,.lsl-process{padding:82px 0 88px;}
  .lsl-definition{padding:78px 0 84px;}
  .lsl-cta-inner{align-items:flex-start;flex-direction:column;gap:28px;}
}
@media (max-width:700px){
  .lsl-content-width{width:calc(100% - 40px);}
  .lsl-hero h1,.lsl-hero h2{font-size:clamp(36px,11vw,54px);}
  .lsl-hero-copy > p:not(.lsl-eyebrow){font-size:15px;}
  .lsl-principle-grid,.lsl-definition-grid,.lsl-defence-grid,.lsl-ingredient-grid,.lsl-process-grid{grid-template-columns:1fr;}
  .lsl-section-heading{margin-bottom:30px;}
  .lsl-section-heading h2{font-size:30px;}
  .lsl-principle-card,.lsl-defence-card,.lsl-ingredient-card{min-height:0;}
  .lsl-hero-visual{padding:10px;border-radius:16px;}
  .lsl-visual-caption{font-size:9px;letter-spacing:.8px;}
  .lsl-cta{padding:66px 0 70px;}
  .lsl-cta h2{font-size:30px;}
}

/* ==================== ÖZEL ÜRÜN / FONKSİYONEL GIDA SAYFALARI ==================== */
.page-specialty{--specialty-accent:#4f8f72;--specialty-soft:#edf6f1;background:#fff;color:var(--navy);}
.page-vegan{--specialty-accent:#4f8f72;--specialty-soft:#edf6f1;}
.page-clean-label{--specialty-accent:#5e9bdc;--specialty-soft:#edf4fb;}
.page-et-urunleri,.page-dolgulu-urunler{--specialty-accent:#a76543;--specialty-soft:#f8efea;}
.page-doldurulmus-tatlilar,.page-sekerlemeler,.page-cikolatali-urunler{--specialty-accent:#b47735;--specialty-soft:#fbf3e7;}
.page-mochi,.page-mochi-ice-cream{--specialty-accent:#8b6bb0;--specialty-soft:#f3eff9;}
.page-filled-cookie,.page-fruit-bar{--specialty-accent:#6c9b55;--specialty-soft:#f0f6eb;}
.specialty-content-width{width:var(--page-content-width);max-width:none;margin-left:auto;margin-right:auto;}
.specialty-content-width p{text-align:left;hyphens:none;}
.specialty-hero{position:relative;overflow:hidden;padding:92px 0 104px;background:radial-gradient(circle at 88% 18%,rgba(94,155,220,.18),transparent 32%),var(--navy);color:#fff;}
.specialty-hero::after{content:"";position:absolute;right:-10%;bottom:-55%;width:62%;aspect-ratio:1;border:1px solid rgba(255,255,255,.08);border-radius:50%;box-shadow:0 0 0 42px rgba(255,255,255,.025),0 0 0 84px rgba(255,255,255,.018);pointer-events:none;}
.specialty-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);align-items:center;gap:clamp(38px,6vw,86px);}
.specialty-hero-copy{max-width:650px;}
.specialty-eyebrow{margin:0 0 18px;color:var(--amber);font-size:12px;font-weight:800;letter-spacing:1.8px;line-height:1.4;text-transform:uppercase;}
.specialty-hero h1{margin:0 0 25px;color:#fff;font-size:clamp(42px,5.2vw,70px);font-weight:800;letter-spacing:-1px;line-height:1.05;text-transform:uppercase;}
.specialty-hero-copy > p:not(.specialty-eyebrow){margin:0 0 16px;color:rgba(255,255,255,.82);font-size:16px;font-weight:500;line-height:1.75;}
.specialty-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin-top:32px;}
.specialty-hero-actions .btn{border-radius:8px;}
.specialty-text-link{display:inline-flex;align-items:center;gap:9px;color:#fff;font-size:13px;font-weight:800;letter-spacing:1px;text-transform:uppercase;transition:color .2s ease,gap .2s ease;}
.specialty-text-link:hover{color:var(--amber);gap:13px;}
.specialty-hero-media{position:relative;padding:16px;overflow:hidden;border:1px solid rgba(255,255,255,.32);border-radius:22px;background:#fff;box-shadow:0 24px 60px rgba(0,0,0,.24);}
.specialty-hero-media img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;}
.specialty-hero-media span{display:block;margin-top:11px;color:var(--navy);font-size:11px;font-weight:800;letter-spacing:1.1px;text-align:center;text-transform:uppercase;}
.specialty-intro{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(35px,7vw,100px);padding:100px 0 108px;}
.specialty-intro-heading h2,.specialty-section-heading h2{margin:0 0 18px;color:var(--navy);font-size:clamp(30px,3.4vw,46px);font-weight:800;letter-spacing:-.4px;line-height:1.18;}
.specialty-intro-copy p{margin:0 0 18px;color:var(--gray-text);font-size:16px;line-height:1.8;}
.specialty-intro-copy p:last-child{margin-bottom:0;}
.specialty-range{padding:94px 0 104px;background:var(--specialty-soft);}
.specialty-section-heading{max-width:800px;margin-bottom:40px;}
.specialty-product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.specialty-product-card{min-height:240px;padding:28px 24px 30px;border:1px solid rgba(0,48,87,.10);border-top:3px solid var(--specialty-accent);border-radius:0 0 16px 16px;background:#fff;box-shadow:0 12px 30px rgba(0,48,87,.05);transition:transform .2s ease,box-shadow .2s ease;}
.specialty-product-card:hover{transform:translateY(-4px);box-shadow:0 18px 36px rgba(0,48,87,.10);}
.specialty-card-number{display:block;margin-bottom:22px;color:var(--specialty-accent);font-size:12px;font-weight:800;letter-spacing:1.5px;}
.specialty-product-card h3,.specialty-feature-card h3{margin:0 0 13px;color:var(--navy);font-size:19px;font-weight:800;line-height:1.25;}
.specialty-product-card p,.specialty-feature-card p{margin:0;color:var(--gray-text);font-size:14.5px;line-height:1.75;}
.specialty-process{padding:102px 0 110px;}
.specialty-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.specialty-feature-card{min-height:260px;padding:30px 24px 32px;border:1px solid rgba(0,48,87,.11);border-radius:16px;background:#fff;box-shadow:0 12px 30px rgba(0,48,87,.05);}
.specialty-feature-number{display:block;margin-bottom:22px;color:var(--specialty-accent);font-size:28px;font-weight:800;letter-spacing:-.5px;}
.specialty-feature-card h3{font-size:20px;}
.specialty-cta{padding:82px 0 88px;background:var(--navy);color:#fff;}
.specialty-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:42px;}
.specialty-cta h2{margin:0 0 15px;color:#fff;font-size:clamp(28px,3.3vw,44px);font-weight:800;line-height:1.18;}
.specialty-cta p:not(.specialty-eyebrow){max-width:680px;margin:0;color:rgba(255,255,255,.78);font-size:15.5px;line-height:1.7;}
.specialty-cta .btn{flex-shrink:0;border-radius:8px;}
@media (max-width:1100px){
  .specialty-product-grid,.specialty-feature-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:960px){
  .specialty-content-width{width:74.4%;}
  .specialty-hero{padding:78px 0 88px;}
  .specialty-hero-grid{grid-template-columns:1fr;gap:44px;}
  .specialty-hero-copy{max-width:none;}
  .specialty-hero-media{max-width:760px;}
  .specialty-intro{grid-template-columns:1fr;gap:28px;padding:80px 0 88px;}
  .specialty-range,.specialty-process{padding:82px 0 88px;}
  .specialty-cta-inner{align-items:flex-start;flex-direction:column;gap:28px;}
}
@media (max-width:700px){
  .specialty-content-width{width:calc(100% - 40px);}
  .specialty-hero h1{font-size:clamp(36px,11vw,54px);}
  .specialty-hero-copy > p:not(.specialty-eyebrow){font-size:15px;}
  .specialty-product-grid,.specialty-feature-grid{grid-template-columns:1fr;}
  .specialty-section-heading{margin-bottom:30px;}
  .specialty-section-heading h2,.specialty-intro-heading h2{font-size:30px;}
  .specialty-product-card,.specialty-feature-card{min-height:0;}
  .specialty-hero-media{padding:10px;border-radius:16px;}
  .specialty-hero-media span{font-size:9px;letter-spacing:.8px;}
  .specialty-cta{padding:66px 0 70px;}
  .specialty-cta h2{font-size:30px;}
}

/* ==================== DOLDURULMUŞ TATLILAR: EKMEK ÜRÜN SAYFASI DÜZENİ ==================== */
body.page-doldurulmus-tatlilar .page-hero.page-hero-photo::before{
  transform:none;
  background:
    linear-gradient(90deg, rgba(0,21,39,.62) 0%, rgba(0,21,39,.48) 32%, rgba(0,21,39,.2) 68%, rgba(0,21,39,.1) 100%),
    url('../assets/img/specialties/doldurulmus/chocolate-sweets.webp') center 48% / cover no-repeat;
}
.page-doldurulmus-tatlilar .pizza-card-img{aspect-ratio:3/2;}
.page-doldurulmus-tatlilar .pizza-card-img img{width:100%;height:100%;object-fit:cover;}
@media (max-width:960px){
  .page-doldurulmus-tatlilar .pizza-tabs{grid-template-columns:repeat(2,1fr);}
}

/* ==================== ÜRÜN SAYFALARI: EKMEK REFERANS DÜZENİ ==================== */
body.page-product-reference .page-hero.page-hero-photo::before{
  transform:none;
  background:
    linear-gradient(90deg, rgba(0,21,39,.62) 0%, rgba(0,21,39,.48) 32%, rgba(0,21,39,.2) 68%, rgba(0,21,39,.1) 100%),
    var(--product-hero-image) center 48% / cover no-repeat;
}
body.page-product-reference .pizza-card-img{aspect-ratio:3/2;}
body.page-product-reference .pizza-card-img img{width:100%;height:100%;object-fit:cover;}
@media (max-width:960px){
  body.page-product-reference .pizza-tabs{grid-template-columns:repeat(2,1fr);}
}

/* ==================== KRUVASAN SAYFASI (?r?n sayfas?roissant birebir) ==================== */

/* Hero: bu sayfan?n kruvasan hero fotoğrafı (pizza'dan farklı olarak aynalanmaz),
   hafif koyu okunabilirlik katmanı korunur */
.page-croissant .page-hero.page-hero-photo::before{
  transform:none;
  background:
    linear-gradient(90deg, rgba(0,21,39,.62) 0%, rgba(0,21,39,.48) 32%, rgba(0,21,39,.2) 68%, rgba(0,21,39,.1) 100%),
    url('../assets/img/products/hero/kruvasan-hero.jpg') center center / cover no-repeat;
}

/* bu sayfada2 sekme var: Straight / Curved */
.page-croissant .pizza-tabs{grid-template-columns:repeat(2,1fr);}

/* bu sayfadaki gibi iki sütunlu metin blokları (columns:2) */
.two-col-text{columns:2; column-gap:56px;}
.two-col-text p{margin:0 0 16px; break-inside:avoid;}
.two-col-text p:last-child{margin-bottom:0;}

/*6'lı ürün görsel şeridi (Galeri: gallery-columns-6) */
.croissant-strip-sec{background:#fff; padding:6px 0 56px;}
.croissant-strip{display:grid; grid-template-columns:repeat(6,1fr); gap:14px;}
.croissant-strip img{width:100%; aspect-ratio:3/2; object-fit:cover; border-radius:12px; display:block;}

/* Bölgesel ürünler + Katman yapıları — iki sütun */
.croissant-cols{display:grid; grid-template-columns:1fr 1fr; gap:56px;}
.croissant-cols h2{font-size:clamp(22px,2.4vw,30px); font-weight:800; color:var(--navy); line-height:1.25; margin:0 0 16px;}

/* Dolgulu Kruvasanlar — metin + görsel yan yana */
.croissant-filled{background:#fff; padding:60px 0 90px;}
.croissant-filled-grid{display:grid; grid-template-columns:1.15fr .85fr; gap:56px; align-items:center;}
.croissant-filled-grid h2{font-size:clamp(24px,3vw,34px); font-weight:800; color:var(--navy); line-height:1.25; margin:0 0 18px;}
.croissant-filled-grid img{width:100%; height:auto; border-radius:16px; display:block; box-shadow:0 18px 44px rgba(0,48,87,.16);}

/* ==================== EKMEK SAYFASI (?r?n sayfas?read birebir) ==================== */

/* Hero: bu sayfan?n ekmek hero fotoğrafı (pizzadan farklı olarak aynalanmaz),
   hafif koyu okunabilirlik katmanı korunur */
.page-bread .page-hero.page-hero-photo::before{
  transform:none;
  background:
    linear-gradient(90deg, rgba(0,21,39,.62) 0%, rgba(0,21,39,.48) 32%, rgba(0,21,39,.2) 68%, rgba(0,21,39,.1) 100%),
    url('../assets/img/products/hero/ekmek-hero.jpg') center center / cover no-repeat;
}

/* bu sayfada4 sekme var: Yuvarlak / Rulo / Tost / Dilim */
.page-bread .pizza-tabs{grid-template-columns:repeat(4,1fr);}

/* Kart görselleri3:2 kırpılır (ENDOTEK satırları gibi düz sıra) */
.page-bread .pizza-card-img{aspect-ratio:3/2;}
.page-bread .pizza-card-img img{width:100%; height:100%; object-fit:cover;}

/* "GÜNLÜK EKMEĞİMİZ + SINIRSIZ ÜRÜN ÇEŞİTLİLİĞİ" — ENDOTEK iki sütunlu blok */
.bread-cols{display:grid; grid-template-columns:1fr 1fr; gap:56px;}
.bread-cols h2{font-size:clamp(22px,2.4vw,30px); font-weight:800; color:var(--navy); line-height:1.25; margin:0 0 16px;}
.bread-cols h3{font-size:14px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:var(--amber-dark); margin:30px 0 10px;}
.bread-cols > div > h3:first-child{margin-top:0;}

@media (max-width: 960px){
  .bread-cols{grid-template-columns:1fr; gap:36px;}
}
@media (max-width: 640px){
  .page-bread .pizza-tabs{grid-template-columns:repeat(2,1fr);}
}

/* ==================== KRUVASAN DUYARLI KURALLAR (yeniden eklendi) ==================== */
@media (max-width: 960px){
  .croissant-strip{grid-template-columns:repeat(3,1fr);}
  .croissant-cols,
  .croissant-filled-grid{grid-template-columns:1fr; gap:36px;}
  .two-col-text{columns:1;}
}
@media (max-width: 640px){
  .croissant-strip{grid-template-columns:repeat(2,1fr);}
}

/* ==================== YASSI EKMEK SAYFASI (?r?n sayfas?read birebir) ==================== */

.page-flatbread .page-hero.page-hero-photo::before{
  transform:none;
  background:
    linear-gradient(90deg, rgba(0,21,39,.62) 0%, rgba(0,21,39,.48) 32%, rgba(0,21,39,.2) 68%, rgba(0,21,39,.1) 100%),
    url('../assets/img/products/hero/yassi-ekmek-hero.jpg') center center / cover no-repeat;
}

/* bu sayfada4 sekme var: Krakerler / Açık Doku / İnce Yassı Ekmekler / Pinsa */
.page-flatbread .pizza-tabs{grid-template-columns:repeat(4,1fr);}

.page-flatbread .pizza-card-img{aspect-ratio:3/2;}
.page-flatbread .pizza-card-img img{width:100%; height:100%; object-fit:cover;}

/* ==================== DONUT SAYFASI (?r?n sayfas?nut birebir) ==================== */

.page-donut .page-hero.page-hero-photo::before{
  transform:none;
  background:
    linear-gradient(90deg, rgba(0,21,39,.62) 0%, rgba(0,21,39,.48) 32%, rgba(0,21,39,.2) 68%, rgba(0,21,39,.1) 100%),
    url('../assets/img/products/hero/donut-hero.jpg') center center / cover no-repeat;
}
.page-donut .intro-img{display:block; width:100%; max-width:420px; border-radius:16px; margin-top:28px;}
/* Donut içerik görselleri bisküvi sayfasındaki proses görselleriyle aynı ölçü ve 4:3 kırpılma düzenini kullanır. */
.page-donut .croissant-filled-grid img{
  width:100%;
  max-width:440px;
  height:auto;
  aspect-ratio:4/3;
  object-fit:cover;
  justify-self:center;
}
.page-donut ul.dot-list{margin:0 0 16px; padding:0 0 0 20px; list-style:disc;}
.page-donut ul.dot-list li{margin:0 0 8px;}

/* Yan yana buton grubu */
.btn-row{display:flex; flex-wrap:wrap; gap:14px; margin-top:28px;}

@media (max-width: 960px){
  .page-flatbread .pizza-tabs{grid-template-columns:repeat(2,1fr);}
}
@media (max-width: 640px){
  .page-flatbread .pizza-tabs{grid-template-columns:repeat(2,1fr);}
}

/* ==================== PASTACILIK SAYFASI (?r?n sayfas?ry birebir) ==================== */

.page-pastry .page-hero.page-hero-photo::before{
  transform:none;
  background:
    linear-gradient(90deg, rgba(0,21,39,.62) 0%, rgba(0,21,39,.48) 32%, rgba(0,21,39,.2) 68%, rgba(0,21,39,.1) 100%),
    url('../assets/img/products/hero/pastacilik-hero.jpg') center center / cover no-repeat;
}

/* bu sayfada6 sekme: Kesim / Katmanli / Kirilmis / Rulo / Burulmus / Orgulu */
.page-pastry .pizza-tabs{grid-template-columns:repeat(6,1fr);}
.page-pastry .pizza-tab{font-size:13.5px; padding:15px 8px;}

.page-pastry .pizza-card-img{aspect-ratio:3/2;}
.page-pastry .pizza-card-img img{width:100%; height:100%; object-fit:cover;}

/* Sekillendirme tipleri: gorsel + baslik + metin */
.shape-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:44px 56px; margin-top:36px;}
.shape-grid img{width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; border-radius:16px; display:block; box-shadow:0 16px 38px rgba(0,48,87,.16);}
.shape-grid h3{font-size:17.5px; font-weight:800; color:var(--navy); margin:20px 0 10px;}
.shape-grid p{font-size:15px; line-height:1.75; color:var(--gray-text); text-align:justify; margin:0;}

/* ==================== POGACA, TART & QUICHE SAYFASI (?r?n sayfas?nata birebir) ==================== */

.page-pies .page-hero.page-hero-photo::before{
  transform:none;
  background:
    linear-gradient(90deg, rgba(0,21,39,.62) 0%, rgba(0,21,39,.48) 32%, rgba(0,21,39,.2) 68%, rgba(0,21,39,.1) 100%),
    url('../assets/img/products/hero/pogaca-tart-quiche-hero.jpg') center center / cover no-repeat;
}

/* bu sayfada4 sekme: Tuzlu / Tatli / Yumurta Tarti / Quiche */
.page-pies .pizza-tabs{grid-template-columns:repeat(4,1fr);}

.page-pies .pizza-card-img{aspect-ratio:3/2;}
.page-pies .pizza-card-img img{width:100%; height:100%; object-fit:cover;}

/* Poğaça & tart tanıtım görselini mevcut boyutunun yarısına indir */
.page-pies .croissant-filled-grid img{width:50%; height:auto; margin-inline:auto;}

@media (max-width: 960px){
  .page-pastry .pizza-tabs{grid-template-columns:repeat(3,1fr);}
  .page-pies .pizza-tabs{grid-template-columns:repeat(2,1fr);}
  .shape-grid{grid-template-columns:1fr; gap:32px;}
}
@media (max-width: 640px){
  .page-pastry .pizza-tabs{grid-template-columns:repeat(2,1fr);}
  .page-pies .pizza-tabs{grid-template-columns:repeat(2,1fr);}
}

/* ==================== BERLINER SAYFASI (Alman Pastası / Krapfen / Bombolone) ==================== */

.page-berliner .page-hero.page-hero-photo::before{
  transform:none;
  background:
    linear-gradient(90deg, rgba(0,21,39,.62) 0%, rgba(0,21,39,.48) 32%, rgba(0,21,39,.2) 68%, rgba(0,21,39,.1) 100%),
    url('../assets/img/products/hero/berliner-hero.jpg') center center / cover no-repeat;
}

/* Alman Pastası / Krapfen adlandırma listesi */
.page-berliner ul.dot-list{margin:0 0 16px; padding:0 0 0 20px; list-style:disc;}
.page-berliner ul.dot-list li{margin:0 0 8px; font-size:15.5px; line-height:1.7; color:var(--gray-text);}
.page-berliner ul.dot-list li b{color:var(--navy); font-weight:700;}

/* ==================== BİSKÜVİ & KURABİYE SAYFASI ==================== */
.page-biscuit .page-hero.page-hero-photo::before{
  transform:none;
  background:
    linear-gradient(90deg, rgba(0,21,39,.62) 0%, rgba(0,21,39,.48) 32%, rgba(0,21,39,.2) 68%, rgba(0,21,39,.1) 100%),
    url('../assets/img/products/biscuits/hero-biscuit-shelves.webp') center 48% / cover no-repeat;
}
.page-biscuit .biscuit-process-image{
  aspect-ratio:4/3;
  object-fit:cover;
}
.page-biscuit .pizza-tabs{grid-template-columns:repeat(3,1fr);}

/* ==================== GLUTEN-FREE SAYFASI ==================== */
.page-gluten-free .page-hero.page-hero-photo::before{
  transform:none;
  z-index:1;
  background:linear-gradient(90deg, rgba(0,21,39,.58) 0%, rgba(0,21,39,.4) 45%, rgba(0,21,39,.32) 100%);
}
.page-gluten-free .gluten-free-hero-video{
  position:absolute;
  inset:0;
  z-index:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.page-gluten-free .gluten-intro-image{
  width:70%;
  aspect-ratio:3/2;
  object-fit:cover;
  margin-inline:auto;
}
.page-gluten-free .gluten-compare-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:36px 42px;
}
.page-gluten-free .gluten-switch-card{
  display:flex;
  flex-direction:column;
  min-height:420px;
  padding:42px 34px 38px;
  background:#fff;
  border:1px solid rgba(0,48,87,.10);
  border-radius:18px;
  box-shadow:0 18px 44px rgba(0,48,87,.12);
}
.page-gluten-free .gluten-switch-card h3{
  margin:0;
  color:var(--navy);
  font-size:17px;
  font-weight:800;
  letter-spacing:1.4px;
  line-height:1.35;
  text-align:center;
  text-transform:uppercase;
}
.page-gluten-free .gluten-switch-subtitle{
  min-height:44px;
  margin:16px 0 0;
  color:#4c94e3;
  font-size:16px;
  font-style:italic;
  font-weight:600;
  line-height:1.4;
  text-align:center;
}
.page-gluten-free .gluten-switch-divider{
  width:56%;
  height:2px;
  margin:28px auto 32px;
  background:var(--navy);
}
.page-gluten-free .gluten-switch{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  align-self:center;
  width:126px;
  height:56px;
  padding:4px;
  border:1px solid rgba(0,48,87,.08);
  border-radius:999px;
  background:#f2f2f2;
  box-shadow:inset 0 1px 3px rgba(0,0,0,.08);
}
.page-gluten-free .gluten-switch button{
  position:relative;
  display:grid;
  place-items:center;
  min-width:0;
  border:0;
  border-radius:999px;
  background:transparent;
  color:var(--navy);
  cursor:pointer;
  transition:background .22s ease, box-shadow .22s ease;
}
.page-gluten-free .gluten-switch button.is-active{
  background:#fff;
  box-shadow:0 6px 14px rgba(0,0,0,.16);
}
.page-gluten-free .gluten-switch button:focus-visible{
  outline:2px solid var(--amber);
  outline-offset:1px;
}
.page-gluten-free .gluten-switch svg{
  width:30px;
  height:30px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.page-gluten-free .gluten-switch button[data-gluten-state="with"] svg{
  color:var(--amber-dark);
}
.page-gluten-free .gluten-switch button[data-gluten-state="without"]::after{
  content:"";
  position:absolute;
  width:30px;
  height:2px;
  background:var(--navy);
  transform:rotate(-45deg);
  pointer-events:none;
}
.page-gluten-free .gluten-switch-copy{
  margin-top:auto;
  padding-top:46px;
}
.page-gluten-free .gluten-switch-copy p{
  margin:0;
  color:#a86900;
  font-size:14.5px;
  font-weight:600;
  line-height:1.8;
  text-align:left;
}
.page-gluten-free .gluten-process-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
  margin-top:44px;
}
.page-gluten-free .gluten-process-grid article{
  padding:30px 26px;
  background:#f8f8f8;
  border-top:3px solid var(--amber);
  border-radius:0 0 12px 12px;
}
.page-gluten-free .gluten-process-grid article > span{
  display:block;
  margin-bottom:18px;
  color:var(--amber-dark);
  font-size:13px;
  font-weight:800;
  letter-spacing:.12em;
}
.page-gluten-free .gluten-process-grid h3{
  margin:0 0 12px;
  color:var(--navy);
  font-size:19px;
  line-height:1.3;
}
.page-gluten-free .gluten-process-grid p{
  margin:0;
  color:var(--gray-text);
  font-size:14.5px;
  line-height:1.7;
  text-align:left;
}
@media (max-width:1100px){
  .page-gluten-free .gluten-compare-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:960px){
  .page-gluten-free .gluten-process-grid{grid-template-columns:1fr;}
}
@media (max-width:700px){
  .page-gluten-free .gluten-compare-grid{grid-template-columns:1fr;}
  .page-gluten-free .gluten-switch-card{min-height:380px;}
  .page-gluten-free .gluten-intro-image{width:100%;}
}

/* Vegan ve Clean Label sayfaları Gluten-Free karşılaştırma düzenini paylaşır. */
.page-vegan .gluten-switch button[data-vegan-state="conventional"] svg,
.page-clean-label .gluten-switch button[data-clean-state="standard"] svg{color:var(--amber-dark);}
.page-vegan .gluten-switch button[data-vegan-state="vegan"]::after,
.page-clean-label .gluten-switch button[data-clean-state="clean"]::after{
  content:"";
  position:absolute;
  width:30px;
  height:2px;
  background:var(--navy);
  transform:rotate(-45deg);
  pointer-events:none;
}

/* ==================== TÜM SAYFALARDA ORTAK İÇERİK KENAR BOŞLUĞU ==================== */
/* Hero ve tam genişlik arka planlar korunur; yalnızca içerik kolonları hizalanır. */
@media (max-width:960px){
  :root{--page-content-width:74.4%;}
}

main :is(
  .values-inner,
  .stats-inner,
  .services-intro-inner,
  .carousel-inner,
  .support-inner,
  .about-intro-inner,
  .about-highlights-inner,
  .contact-cards-inner,
  .refs-logos-inner,
  .refs-projects-inner,
  .partners-inner,
  .milestones-inner,
  .brochures-inner,
  .about-statement-inner,
  .cinematic-card--wide,
  .journey-layout,
  .figures-inner,
  .about-cta-inner
){
  width:var(--page-content-width);
  max-width:none;
  margin-inline:auto;
  padding-inline:0;
}

main .contact-cards-inner.cols-2,
main > section > :is(.timeline-head, .timeline-inner){
  width:var(--page-content-width);
  max-width:none;
  margin-inline:auto;
  padding-inline:0;
}

main .connect-box{
  width:var(--page-content-width);
  max-width:none;
  margin-inline:auto;
}

/* Yasal sayfasındaki sekme ve içerik blokları da tüm sayfalarla aynı kenar boşluğunu kullanır. */
.page-yasal .legal-tabs-section{
  padding-inline:0;
}
.page-yasal main .about-intro-inner,
.page-yasal .legal-tabs{
  width:var(--page-content-width);
  max-width:none;
  margin-inline:auto;
  padding-inline:0;
}

/* Son yedi ürün sayfasında iki kolonlu üretim alanlarını eşit ve okunaklı tut. */
.page-product-reference .bread-cols,
.page-doldurulmus-tatlilar .bread-cols{
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:clamp(40px, 5vw, 76px);
  align-items:start;
}
.page-product-reference .bread-cols > div,
.page-doldurulmus-tatlilar .bread-cols > div{
  min-width:0;
}
.page-product-reference .bread-cols > div > h3:first-child,
.page-doldurulmus-tatlilar .bread-cols > div > h3:first-child{
  margin-top:0;
}
.page-product-reference .bread-cols p,
.page-doldurulmus-tatlilar .bread-cols p{
  text-align:left;
  hyphens:none;
}
@media (max-width:960px){
  .page-product-reference .bread-cols,
  .page-doldurulmus-tatlilar .bread-cols{
    grid-template-columns:1fr;
    gap:36px;
  }
}

/* Ana sayfa ve hakkımızda hero'larında navbar ile aynı ENDOTEK kelime markası. */
.hero-brand--logo,
.about-hero-brand--logo{
  display:flex;
  align-items:center;
  justify-content:center;
  margin-left:auto;
  margin-right:auto;
  font-size:initial;
  letter-spacing:normal;
  line-height:1;
  text-shadow:none;
}
.hero-brand--logo{ margin-bottom:20px; }
.about-hero-brand--logo{ margin-bottom:6px; }
.hero-brand--logo img,
.about-hero-brand--logo img{
  display:block;
  width:clamp(300px,40vw,580px);
  max-width:100%;
  height:auto;
  filter:drop-shadow(0 8px 24px rgba(0,21,39,.32));
}
@media (max-width:640px){
  .hero-brand--logo img,
  .about-hero-brand--logo img{ width:min(82vw,420px); }
}

/* Readable amber labels on light surfaces. */
.product-subsection-title,
.product-card-brand,
.lsl-card-number,
.lsl-ingredient-tag,
.bread-cols h3{color:var(--amber-readable);}

/* ==================== ORTAK ÜRÜN GAM PANELİ ====================
   Pizza, ekmek, kruvasan, yassı ekmek, pastacılık ve diğer sekmeli
   ürün sayfaları aynı panel ritmini paylaşır. Krem başlık paneli ve
   sekmelerden sonra gelen görseller aynı beyaz çerçeve içinde yer alır;
   kartların kendi beyaz çerçevesi yoktur. */
.about-highlights .range-panel{margin-bottom:0;}
.about-highlights .pizza-panel.is-active{margin-top:0;}
.about-highlights .pizza-gallery{
  background:#fff;
  border-radius:0 0 20px 20px;
  box-shadow:0 18px 50px rgba(0,48,87,.10);
  padding:32px 36px 40px;
}
.about-highlights .pizza-card{
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
}
.about-highlights .pizza-card:hover{
  transform:none;
  box-shadow:none;
  border-color:transparent;
}
.about-highlights .pizza-card-img{
  background:transparent;
  border-radius:12px;
  aspect-ratio:3/2;
}
.about-highlights .pizza-card-img img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.about-highlights .pizza-cap{
  padding:14px 6px 0;
  font-size:13.5px;
  font-weight:600;
  letter-spacing:.01em;
  color:var(--navy);
  text-align:center;
}
.about-highlights .range-head .head-visual{
  background:transparent;
  border-color:transparent;
}
@media (max-width:960px){
  .about-highlights .pizza-gallery{padding:26px 24px 30px;}
}
@media (max-width:640px){
  .about-highlights .pizza-gallery{
    padding:22px 16px 26px;
    border-radius:0 0 14px 14px;
  }
}


/* ==================== MOBİL / TABLET İYİLEŞTİRMELERİ ====================
   Dokunmatik hedefler (min 44px), okunabilir yazı boyutu ve telefonda dil
   seçimi. Yalnızca media query içinde; masaüstü görünümü değişmez. */

/* Küçük görsel öğelere, düzeni bozmadan 44px'lik dokunma alanı ekler */
@media (max-width:1100px){
  .language-toggle a,
  .topbar-contact a,
  .expand-link,
  .connect-map-link,
  .contact-card a,
  .carousel-dot{position:relative;}
  .language-toggle a::after,
  .topbar-contact a::after,
  .expand-link::after,
  .connect-map-link::after,
  .contact-card a::after{content:""; position:absolute; inset:-10px -4px;}
  .carousel-dot::after{content:""; position:absolute; inset:-16px;}

  /* LinkedIn rozeti overflow:hidden olduğundan pseudo-element yerine saydam
     kenarlık: görünen daire 22px kalır, dokunma alanı 44px olur. */
  .topbar-social > a{
    box-sizing:content-box;
    border:11px solid transparent;
    background-clip:padding-box;
    margin:-11px;
    box-shadow:none;
  }

  /* Üst bilgi şeridi: okunabilir boyut */
  .topbar{font-size:12px;}
  .language-toggle a{min-width:32px; height:24px; font-size:11px;}

  /* Hamburger menü düğmesi */
  .hamburger{width:44px; height:44px; padding:0; margin-right:-10px; align-items:center; justify-content:center;}

  /* Menü içi bağlantılar */
  .mega-col ul li a{min-height:44px; align-items:center;}

  /* Butonlar ve pill bağlantılar */
  .btn{min-height:44px;}
  .related-products-list a,
  .pizza-tab{min-height:44px;}

  /* Alt bilgi bağlantıları */
  .footer-col ul li{margin-bottom:0;}
  .footer-col ul li a{display:inline-flex; align-items:center; min-height:44px;}
  .footer-legal-left{row-gap:0;}
  .footer-legal-left a,
  .footer-cookie-btn{display:inline-flex; align-items:center; min-height:44px;}
  .footer-cookie-btn{padding:0 4px;}
  .footer-legal-social a{width:44px; height:44px; background-size:42%;}

  .carousel-card .card-tag{font-size:12px;}

  /* Form alanları: 16px (iOS odak yakınlaştırmasını önler) ve 44px+ yükseklik */
  .form-field input,
  .form-field select,
  .form-field textarea{font-size:16px; min-height:48px;}
}

/* Telefon: üst şerit gizli kalırken TR/EN seçimi navbar satırında kalsın.
   Şerit yüksekliği 0 olduğundan --topbar-height (main.js) 0px kalır. */
@media (max-width:640px){
  .topbar{
    display:block;
    position:fixed; top:0; left:0; right:0;
    height:0; overflow:visible;
    background:none;
    pointer-events:none;
  }
  .topbar-inner{display:block; padding:0;}
  .topbar-contact,
  .topbar-social{display:none;}
  .language-toggle{
    position:fixed; top:26px; right:72px;
    pointer-events:auto;
    padding:2px;
  }
  .language-toggle a{min-width:38px; height:28px; font-size:12px;}
  .language-toggle a::after{inset:-8px -3px;}

  /* Çerez bannerı / ayarları: 11px yerine 12px */
  .cookie-banner-actions .btn,
  .cookie-banner-actions .btn-cookie-outline,
  .cookie-modal-actions .btn,
  .cookie-modal-actions .btn-cookie-outline{font-size:12px;}
}

/* ==================== TELEFON: SİMETRİK İÇERİK KOLONU ====================
   Ortak içerik genişliği (%74.4) telefonda sol/sağ 48px boşluk bırakıp
   içeriği 279px'e sıkıştırıyordu; iç ızgaralar min-content yüzünden kutudan
   taşıyordu. Telefonda eşit 20px kenar boşluğu kullanılır (specialty/lsl sayfalarıyla aynı). */
@media (max-width:640px){
  :root{--page-content-width:calc(100% - 40px);}

  /* Izgara/flex çocukları içeriğe göre büyüyüp kutudan taşmasın */
  .connect-box{grid-template-columns:minmax(0,1fr);}
  .connect-left,
  .connect-right,
  .contact-form,
  .form-row > *{min-width:0;}
}

@media (max-width:640px){
  /* Pizza/ekmek/mochi: sabit %68–74 genişlikler ve sola yaslı 240px kart sütunu */
  .page-pizza .about-highlights-inner,
  .page-pizza .about-intro-inner{width:calc(100% - 40px);}
  body .pizza-gallery.pizza-gallery{justify-content:center;}
}

/* Telefonda iki yana yaslı metin 300px civarı sütunda kelime aralarını açıyor
   (heceleme de yardımcı olmuyor); sola hizala. Masaüstü/tablet yaslı kalır. */
@media (max-width:640px){
  .values-intro, .value-col p, .stats-text, .services-intro-right p, .carousel-slide p,
  .cinematic-card p, .form-kvkk-notice, .form-consent span, .partner-col-head p, .partner-desc,
  .page-yasal .legal-panel, .page-yasal .legal-panel > p,
  .page-hakkimizda .about-intro-inner > p.reveal,
  .about-philosophy-close p, .mv-editorial-block p, .mv-block p,
  [data-service-key] .about-intro-inner p, [data-service-key] .support-steps li,
  [data-service-key] .highlight-card p, [data-service-key] .timeline-item p,
  [data-service-key] .services-intro-right p, [data-service-key] .product-card-body p,
  .page-services .about-intro-inner p, .page-services .highlight-card p,
  [data-service-key] .product-detail-specs li, .page-pizza p, .shape-grid p{
    text-align:left;
    hyphens:manual;
  }
}
