/* ============================================================
   CNF Mühendislik ve Sürdürülebilirlik - anasayfa
   Marka renkleri logodan alınmıştır: teal #2289B0, yeşil #9EC031
   ============================================================ */
:root{
  --brand:#2289B0;
  --brand-deep:#0F6A85;
  --brand-dark:#0A2E3B;
  --brand-darker:#061F29;
  --leaf:#9EC031;
  --leaf-bright:#B6D84A;
  --leaf-deep:#5E7C15;

  --ground:#F3F7F8;
  --surface:#FFFFFF;
  --surface-2:#E9F1F3;
  --line:#D5E2E6;
  --line-soft:#E6EEF0;

  --ink:#0C2630;
  --body:#2B4550;
  --muted:#5F7A84;
  --on-dark:#E8F2F4;
  --on-dark-muted:#9FBCC5;

  --shadow-sm:0 1px 2px rgba(10,46,59,.06);
  --maxw:1160px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth; background:var(--ground)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
  margin:0; background:var(--ground); color:var(--body);
  font-family:"Source Serif 4", Georgia, "Times New Roman", serif;
  font-size:17.5px; line-height:1.65;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
img{max-width:100%; height:auto; display:block}
h1,h2,h3,h4{font-family:"Chivo","Helvetica Neue",Arial,sans-serif; color:var(--ink); margin:0; text-wrap:balance; letter-spacing:-.015em}
p{margin:0 0 16px}
a{color:var(--brand-deep)}
.wrap{max-width:var(--maxw); margin:0 auto; padding:0 28px}
.eyebrow{
  font-family:"IBM Plex Mono",ui-monospace,monospace; font-size:11.5px;
  letter-spacing:.16em; text-transform:uppercase; color:var(--muted); margin:0 0 14px;
}
.skip{position:absolute; left:-9999px}
.skip:focus{left:16px; top:16px; z-index:99; background:var(--surface); padding:10px 16px; border:2px solid var(--brand-deep)}
:focus-visible{outline:3px solid var(--brand); outline-offset:2px}

/* ---------- logo ---------- */
.logo-mark{display:block; height:48px; width:auto; aspect-ratio:262.174/131.651}
.site-head .logo-mark{color:var(--brand)}
.site-foot .logo-mark{color:#fff; height:56px}

/* ---------- buttons ---------- */
.btn{
  display:inline-flex; align-items:center; gap:9px;
  font-family:"Chivo",sans-serif; font-size:15px; font-weight:600; letter-spacing:.01em;
  padding:14px 24px; border:1.5px solid transparent; text-decoration:none; cursor:pointer;
  transition:background .18s ease, color .18s ease, border-color .18s ease;
}
.btn-primary{background:var(--leaf); color:#16260A; border-color:var(--leaf)}
.btn-primary:hover{background:var(--leaf-bright); border-color:var(--leaf-bright)}
.btn-ghost-dark{background:transparent; color:var(--on-dark); border-color:rgba(232,242,244,.45)}
.btn-ghost-dark:hover{background:rgba(232,242,244,.12); border-color:var(--on-dark)}

/* ---------- header ---------- */
.site-head{
  position:sticky; top:0; z-index:40; background:rgba(255,255,255,.95);
  backdrop-filter:saturate(1.6) blur(8px); border-bottom:1px solid var(--line);
}
.head-in{display:flex; align-items:center; justify-content:space-between; gap:24px; padding:12px 28px; max-width:var(--maxw); margin:0 auto}
.nav{display:flex; align-items:center; gap:26px}
.nav a{
  font-family:"Chivo",sans-serif; font-size:14.5px; font-weight:500; color:var(--ink);
  text-decoration:none; padding:6px 0; border-bottom:2px solid transparent;
}
.nav a:hover{border-bottom-color:var(--leaf)}
.nav .lang{font-family:"IBM Plex Mono",monospace; font-size:12px; letter-spacing:.1em; color:var(--muted); border:1px solid var(--line); padding:5px 9px}
.nav .lang:hover{border-color:var(--brand); color:var(--brand-deep); border-bottom-color:var(--brand)}
.nav-toggle{display:none; background:none; border:1px solid var(--line); padding:9px 11px; cursor:pointer}
.nav-toggle span{display:block; width:20px; height:2px; background:var(--ink); margin:4px 0}

/* ---------- hero ---------- */
.hero{background:var(--brand-dark); color:var(--on-dark); position:relative; overflow:hidden}
.hero::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(120% 90% at 88% 10%, rgba(34,137,176,.32), transparent 62%);
}
.hero-in{
  position:relative; z-index:1; max-width:var(--maxw); margin:0 auto; padding:78px 28px 74px;
  display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:56px; align-items:center;
}
.hero .eyebrow{color:var(--leaf)}
.hero h1{
  color:#fff; font-size:clamp(31px,3.9vw,47px); line-height:1.13; font-weight:700;
  letter-spacing:-.022em; margin-bottom:22px; max-width:19ch;
}
.hero h1 em{font-style:normal; color:var(--leaf)}
.hero-lede{font-size:18.5px; line-height:1.62; color:var(--on-dark); max-width:55ch; margin-bottom:28px}
.hero-cta{display:flex; flex-wrap:wrap; gap:12px}
.hero-note{
  margin-top:26px; font-family:"IBM Plex Mono",monospace; font-size:11.5px; line-height:1.8;
  color:var(--on-dark-muted); letter-spacing:.02em;
}
.hero-note b{color:var(--leaf); font-weight:600}

.figcard{background:rgba(255,255,255,.05); border:1px solid rgba(232,242,244,.16); padding:24px; margin:0}
.figcard h2{font-size:13.5px; font-weight:600; color:#fff; letter-spacing:0; margin-bottom:4px; font-family:"Chivo",sans-serif}
.figcard .sub{font-family:"IBM Plex Mono",monospace; font-size:10.5px; letter-spacing:.09em; text-transform:uppercase; color:var(--on-dark-muted); margin-bottom:18px}
.figcard figcaption{font-family:"IBM Plex Mono",monospace; font-size:10.5px; line-height:1.75; color:var(--on-dark-muted); margin-top:16px}

/* ---------- sections ---------- */
section{scroll-margin-top:76px}
.band{padding:80px 0}
.band-alt{background:var(--surface)}
.band-dark{background:var(--brand-dark); color:var(--on-dark)}
.band-dark h2,.band-dark h3{color:#fff}
.band-dark .eyebrow{color:var(--leaf)}
.sec-title{font-size:clamp(25px,3.1vw,34px); font-weight:700; line-height:1.2; margin-bottom:16px; max-width:24ch}
.sec-lede{font-size:18px; color:var(--body); max-width:68ch; margin-bottom:40px}
.band-dark .sec-lede{color:var(--on-dark)}

/* ---------- services ---------- */
.svc{display:grid; grid-template-columns:repeat(auto-fit,minmax(272px,1fr)); gap:20px}
@media (min-width:1000px){ .svc{grid-template-columns:repeat(3,1fr)} }
.svc article{
  background:var(--surface); border:1px solid var(--line); padding:26px 24px 24px;
  box-shadow:var(--shadow-sm); display:flex; flex-direction:column; border-top:3px solid var(--brand);
}
.svc article:nth-child(4),.svc article:nth-child(5){border-top-color:var(--leaf)}
.svc .top{display:flex; align-items:center; justify-content:space-between; margin-bottom:16px}
.svc .num{font-family:"IBM Plex Mono",monospace; font-size:11px; letter-spacing:.12em; color:var(--muted); margin:0}
.svc .ico{width:34px; height:34px; color:var(--brand); flex:none}
.svc article:nth-child(4) .ico,.svc article:nth-child(5) .ico{color:var(--leaf-deep)}
.svc h3{font-size:20px; font-weight:700; margin-bottom:9px}
.svc p{font-size:16px; line-height:1.6; margin-bottom:16px}
.svc ul{margin:0 0 18px; padding-left:18px; font-size:15px; color:var(--muted); line-height:1.7}
.svc li::marker{color:var(--leaf)}
.svc .foot{margin-top:auto; padding-top:14px; border-top:1px solid var(--line-soft); font-family:"IBM Plex Mono",monospace; font-size:11px; letter-spacing:.05em; color:var(--muted)}

/* ---------- neden cnf ---------- */
.why{display:grid; grid-template-columns:repeat(auto-fit,minmax(252px,1fr)); gap:1px; background:rgba(232,242,244,.18); border:1px solid rgba(232,242,244,.18)}
.why div{background:var(--brand-dark); padding:28px 24px}
.why .k{font-family:"IBM Plex Mono",monospace; font-size:10.5px; letter-spacing:.12em; color:var(--leaf); margin-bottom:12px}
.why h3{font-size:18px; font-weight:700; margin-bottom:10px; line-height:1.3}
.why p{font-size:15.5px; line-height:1.62; color:var(--on-dark); margin:0}

.quote{margin:44px 0 0; max-width:62ch; border-left:3px solid var(--leaf); padding-left:26px}
.quote blockquote{
  margin:0 0 14px; font-family:"Source Serif 4",serif; font-size:clamp(19px,2.2vw,24px);
  line-height:1.46; color:#fff; font-weight:400;
}
.quote figcaption{font-family:"IBM Plex Mono",monospace; font-size:11.5px; letter-spacing:.05em; color:var(--on-dark-muted)}
.quote figcaption a{color:var(--leaf); text-decoration:none}
.quote figcaption a:hover{text-decoration:underline}
.caps .head small a{color:var(--leaf); text-decoration:none; display:inline-block; margin-top:8px}
.caps .head small a:hover{text-decoration:underline}


/* ---------- geniş şemalar ---------- */
.figwide{margin:0 0 44px}
.figscroll{overflow-x:auto; -webkit-overflow-scrolling:touch; scrollbar-width:thin}
.figscroll svg{min-width:720px; width:100%; height:auto; display:block}
.figwide figcaption{
  font-family:"IBM Plex Mono",monospace; font-size:11px; line-height:1.7;
  color:var(--muted); margin-top:12px; letter-spacing:.02em;
}
.band-dark .figwide figcaption{color:var(--on-dark-muted)}
@media (max-width:720px){
  .figwide figcaption::before{
    content:"Şemayı görmek için yana kaydırın";
    display:block; margin-bottom:8px; font-weight:600; letter-spacing:.06em;
    text-transform:uppercase; font-size:10px; color:var(--brand-deep);
  }
  .band-dark .figwide figcaption::before{color:var(--leaf)}
  .figscroll svg{min-width:680px}
}

/* ---------- proof ---------- */
.proof-grid{display:grid; grid-template-columns:1.18fr .82fr; gap:44px; align-items:start}
.sector-list{display:grid; gap:1px; background:var(--line); border:1px solid var(--line)}
.sector-list div{background:var(--surface); padding:14px 18px; display:grid; grid-template-columns:205px 1fr; gap:4px 18px; align-items:baseline}
.sector-list b{font-family:"Chivo",sans-serif; font-size:15.5px; color:var(--ink); font-weight:600}
.sector-list span{font-size:15px; color:var(--muted)}

.caps{border:1px solid var(--line); background:var(--surface)}
.caps .head{background:var(--brand-dark); padding:22px 24px}
.caps .head p{margin:0}
.caps .head .k{font-family:"IBM Plex Mono",monospace; font-size:10.5px; letter-spacing:.12em; color:var(--leaf); margin-bottom:8px}
.caps .head strong{font-family:"Chivo",sans-serif; font-size:19px; font-weight:700; color:#fff; display:block; line-height:1.3}
.caps .head small{display:block; font-size:14.5px; color:var(--on-dark-muted); margin-top:8px; line-height:1.55; font-family:"Source Serif 4",serif}
.caps dl{margin:0; padding:22px 24px}
.caps dt{font-family:"IBM Plex Mono",monospace; font-size:10.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); margin-bottom:5px}
.caps dd{margin:0 0 20px; font-size:15.5px; line-height:1.55; color:var(--ink)}
.caps dd:last-child{margin-bottom:0}

/* ---------- cases ---------- */
.cases{display:grid; grid-template-columns:repeat(auto-fit,minmax(290px,1fr)); gap:20px}
.case{background:var(--surface); border:1px solid var(--line); padding:26px 24px; box-shadow:var(--shadow-sm); display:flex; flex-direction:column}
.case .tag{font-family:"IBM Plex Mono",monospace; font-size:10.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--brand-deep); background:var(--surface-2); padding:4px 9px; display:inline-block; margin-bottom:18px; align-self:flex-start}
.case .big{font-family:"Chivo",sans-serif; font-size:clamp(26px,2.4vw,32px); font-weight:800; color:var(--ink); line-height:1.08; letter-spacing:-.03em; font-variant-numeric:tabular-nums; margin-bottom:10px}
.case .big small{display:block; font-size:15px; font-weight:600; color:var(--muted); letter-spacing:0; margin-top:5px}
.case h3{font-size:17.5px; margin-bottom:9px; line-height:1.3}
.case p{font-size:15.5px; line-height:1.6; margin:0}

/* ---------- gündem ---------- */
.journal{display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:20px}
.jitem{background:var(--surface); border:1px solid var(--line); padding:24px; display:flex; flex-direction:column}
.jitem .meta{font-family:"IBM Plex Mono",monospace; font-size:10.5px; letter-spacing:.09em; text-transform:uppercase; color:var(--muted); margin-bottom:12px}
.jitem h3{font-size:18px; line-height:1.32; margin-bottom:10px}
.jitem p{font-size:15.5px; line-height:1.58; margin-bottom:16px}
.jitem .go{margin-top:auto; font-family:"Chivo",sans-serif; font-size:14px; font-weight:600; text-decoration:none; color:var(--brand-deep)}
.jitem .go:hover{text-decoration:underline}

/* ---------- cta ---------- */
.cta-band{background:var(--leaf); color:#16260A; padding:66px 0}
.cta-band h2{color:#16260A; font-size:clamp(24px,3vw,33px); font-weight:700; margin-bottom:16px; max-width:22ch}
.cta-band p{font-size:18px; max-width:60ch; color:#1F3512; margin-bottom:26px}
.cta-band .btn{background:var(--brand-dark); color:#fff; border-color:var(--brand-dark)}
.cta-band .btn:hover{background:var(--brand-darker); border-color:var(--brand-darker)}
.cta-row{display:flex; flex-wrap:wrap; gap:14px 20px; align-items:center}
.cta-row .alt{font-family:"IBM Plex Mono",monospace; font-size:13px; color:#1F3512}
.cta-row .alt a{color:#16260A}
.cta-grid{display:grid; grid-template-columns:1.2fr .8fr; gap:52px; align-items:start}
.cta-list{border-left:2px solid rgba(22,38,10,.3); padding-left:22px}
.cta-list h3{font-size:12.5px; font-family:"IBM Plex Mono",monospace; font-weight:500; letter-spacing:.12em; text-transform:uppercase; color:#1F3512; margin-bottom:14px}
.cta-list ul{list-style:none; margin:0; padding:0}
.cta-list li{font-size:15.5px; line-height:1.5; padding:9px 0; border-bottom:1px solid rgba(22,38,10,.16); color:#16260A}
.cta-list li:last-child{border-bottom:none}

/* ---------- footer ---------- */
.site-foot{background:var(--brand-darker); color:var(--on-dark-muted); padding:56px 0 28px; font-size:15px}
.foot-grid{display:grid; grid-template-columns:1.3fr 1fr 1fr; gap:40px}
.site-foot h4{color:#fff; font-size:12.5px; letter-spacing:.11em; text-transform:uppercase; font-family:"IBM Plex Mono",monospace; font-weight:500; margin-bottom:14px}
.site-foot a{color:var(--on-dark); text-decoration:none}
.site-foot a:hover{text-decoration:underline}
.site-foot ul{list-style:none; margin:0; padding:0}
.site-foot li{margin-bottom:9px}
.foot-logo{margin-bottom:18px}
.foot-bar{border-top:1px solid rgba(232,242,244,.14); margin-top:42px; padding-top:20px; display:flex; flex-wrap:wrap; gap:10px 24px; justify-content:space-between; font-family:"IBM Plex Mono",monospace; font-size:11.5px}

/* ---------- responsive ---------- */
@media (max-width:960px){
  .hero-in{grid-template-columns:1fr; gap:40px; padding:58px 28px}
  .proof-grid{grid-template-columns:1fr; gap:32px}
  .foot-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  body{font-size:16.5px}
  .wrap,.head-in,.hero-in{padding-left:18px; padding-right:18px}
  .band{padding:58px 0}
  .logo-mark{height:40px}
  .nav{display:none; position:absolute; top:100%; left:0; right:0; background:var(--surface); border-bottom:1px solid var(--line); flex-direction:column; align-items:stretch; gap:0; padding:8px 18px 16px}
  .nav.open{display:flex}
  .nav a{padding:12px 0; border-bottom:1px solid var(--line-soft)}
  .nav .lang{align-self:flex-start; margin-top:12px}
  .nav-toggle{display:block}
  .site-head{position:relative}
  .foot-grid{grid-template-columns:1fr}
  .sector-list div{grid-template-columns:1fr}
  .cta-grid{grid-template-columns:1fr; gap:30px}
}
/* ============================================================
   ALT SAYFALAR
   ============================================================ */
.page-hero{background:var(--brand-dark); color:var(--on-dark); position:relative; overflow:hidden}
.page-hero::after{content:""; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(120% 90% at 88% 6%, rgba(34,137,176,.30), transparent 62%)}
.page-hero .wrap{position:relative; z-index:1; padding-top:62px; padding-bottom:58px}
.page-hero .eyebrow{color:var(--leaf)}
.page-hero h1{color:#fff; font-size:clamp(28px,3.6vw,44px); line-height:1.14; font-weight:700; letter-spacing:-.022em; margin-bottom:20px; max-width:20ch}
.page-hero .lede{font-size:18.5px; line-height:1.62; color:var(--on-dark); max-width:62ch; margin-bottom:26px}
.page-hero .hero-cta{display:flex; flex-wrap:wrap; gap:12px}
.crumb{font-family:"IBM Plex Mono",monospace; font-size:11.5px; letter-spacing:.06em; color:var(--on-dark-muted); margin:0 0 18px}
.crumb a{color:var(--on-dark-muted); text-decoration:none}
.crumb a:hover{color:var(--leaf)}

.two{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:44px; align-items:start}
.two.narrow{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}

.trig{display:grid; gap:1px; background:var(--line); border:1px solid var(--line)}
.trig div{background:var(--surface); padding:18px 22px; display:grid; grid-template-columns:auto minmax(0,1fr); gap:20px}
.trig .m{font-family:"IBM Plex Mono",monospace; font-size:11px; color:var(--brand-deep); padding-top:5px; font-weight:600; white-space:nowrap; letter-spacing:.02em}
.trig p{margin:0; font-size:16px; line-height:1.58}
.trig p b{color:var(--ink)}
@media (max-width:560px){
  .trig div{grid-template-columns:1fr; gap:8px; padding:16px 18px}
  .trig .m{padding-top:0}
}

.steps{counter-reset:st; display:grid; gap:0}
.steps > div{display:grid; grid-template-columns:52px 1fr; gap:22px; padding:22px 0; border-bottom:1px solid var(--line)}
.steps > div:first-child{border-top:1px solid var(--line)}
.steps .n{font-family:"Chivo",sans-serif; font-size:22px; font-weight:700; color:var(--line-strong,#B9CCD2); letter-spacing:-.02em; font-variant-numeric:tabular-nums}
.steps h3{font-size:18px; margin-bottom:8px}
.steps ul{margin:8px 0 0; padding-left:18px; font-size:15.5px; color:var(--muted); line-height:1.7}
.steps li::marker{color:var(--leaf)}
.steps p{margin:0; font-size:16px; line-height:1.6}

.deliver{background:var(--surface-2); border:1px solid var(--line); padding:26px 26px 22px}
.deliver h3{font-size:17px; margin-bottom:16px}
.deliver ul{list-style:none; margin:0; padding:0}
.deliver li{font-size:15.5px; line-height:1.55; padding:11px 0 11px 26px; position:relative; border-bottom:1px solid var(--line)}
.deliver li:last-child{border-bottom:none}
.deliver li::before{content:""; position:absolute; left:0; top:19px; width:10px; height:2px; background:var(--leaf)}

.faq{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{
  cursor:pointer; padding:19px 34px 19px 0; position:relative; list-style:none;
  font-family:"Chivo",sans-serif; font-size:17px; font-weight:600; color:var(--ink); line-height:1.4;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+"; position:absolute; right:4px; top:17px; font-size:22px; font-weight:400; color:var(--brand); line-height:1}
.faq details[open] summary::after{content:"\2212"}
.faq .a{padding:0 0 20px; font-size:16px; line-height:1.65; max-width:70ch}
.faq .a p:last-child{margin-bottom:0}

.related{display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:16px}
.related a{
  display:block; background:var(--surface); border:1px solid var(--line); border-top:3px solid var(--brand);
  padding:20px 20px 18px; text-decoration:none; transition:border-color .18s ease;
}
.related a:hover{border-color:var(--brand)}
.related b{display:block; font-family:"Chivo",sans-serif; font-size:16.5px; font-weight:600; color:var(--ink); margin-bottom:6px; line-height:1.3}
.related span{font-size:14.5px; color:var(--muted); line-height:1.5}

/* kurumsal */
.bio{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.25fr); gap:44px; align-items:start}
.bio .card{background:var(--surface); border:1px solid var(--line); border-top:3px solid var(--leaf); padding:26px}
.bio .card .role{font-family:"IBM Plex Mono",monospace; font-size:11px; letter-spacing:.11em; text-transform:uppercase; color:var(--muted); margin-bottom:8px}
.bio .card h3{font-size:21px; margin-bottom:6px}
.bio .card .sub{font-size:15px; color:var(--muted); margin-bottom:18px}
.bio dl{margin:0}
.bio dt{font-family:"IBM Plex Mono",monospace; font-size:10.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); margin-bottom:5px}
.bio dd{margin:0 0 16px; font-size:15.5px; line-height:1.55; color:var(--ink)}
.bio dd:last-child{margin-bottom:0}

.principles{display:grid; grid-template-columns:repeat(auto-fit,minmax(248px,1fr)); gap:1px; background:var(--line); border:1px solid var(--line)}
.principles div{background:var(--surface); padding:24px 22px}
.principles h3{font-size:17.5px; margin-bottom:9px; line-height:1.3}
.principles p{margin:0; font-size:15.5px; line-height:1.6}

/* iletişim formu */
.formwrap{background:var(--surface); border:1px solid var(--line); padding:30px}
.frm{display:grid; gap:18px}
.row2{display:grid; grid-template-columns:1fr 1fr; gap:18px}
.fld label{display:block; font-family:"IBM Plex Mono",monospace; font-size:10.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); margin-bottom:7px}
.fld input,.fld select,.fld textarea{
  width:100%; font-family:"Source Serif 4",Georgia,serif; font-size:16px; color:var(--ink);
  background:var(--ground); border:1px solid var(--line); padding:12px 13px; border-radius:0;
}
.fld textarea{min-height:120px; resize:vertical}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:2px solid var(--brand); outline-offset:1px; background:#fff}
.fld .hint{font-size:13.5px; color:var(--muted); margin:6px 0 0; line-height:1.5}
.frm .req{color:var(--leaf-deep)}
.frm-note{font-size:14px; color:var(--muted); line-height:1.6; margin:0}
.frm-msg{display:none; padding:14px 16px; font-size:15.5px; line-height:1.5; border:1px solid}
.frm-msg.ok{display:block; border-color:var(--leaf); background:rgba(158,192,49,.14); color:var(--ink)}
.frm-msg.err{display:block; border-color:#B9552A; background:rgba(185,85,42,.10); color:var(--ink)}
.contact-info dl{margin:0}
.contact-info dt{font-family:"IBM Plex Mono",monospace; font-size:10.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); margin-bottom:6px}
.contact-info dd{margin:0 0 20px; font-size:16.5px; line-height:1.55; color:var(--ink)}
.contact-info dd a{color:var(--brand-deep); text-decoration:none}
.contact-info dd a:hover{text-decoration:underline}

@media (max-width:860px){
  .two,.two.narrow,.bio{grid-template-columns:1fr; gap:32px}
  .row2{grid-template-columns:1fr}
  .formwrap{padding:22px}
}

.svc h3 a{color:inherit; text-decoration:none}
.svc h3 a:hover{color:var(--brand-deep); text-decoration:underline}
.svc .more{margin:10px 0 0}
.svc .more a{font-family:"Chivo",sans-serif; font-size:14px; font-weight:600; color:var(--brand-deep); text-decoration:none}
.svc .more a:hover{text-decoration:underline}

/* ---------- Ecochain iş ortaklığı rozeti ---------- */
.ecobadge{
  display:inline-flex; flex-direction:column; gap:3px; margin-top:22px;
  border:1px solid rgba(232,242,244,.30); padding:11px 16px 12px; text-decoration:none;
  transition:border-color .18s ease, background .18s ease;
}
.ecobadge:hover{border-color:var(--leaf); background:rgba(158,192,49,.08)}
.ecobadge .eb-top{
  font-family:"IBM Plex Mono",monospace; font-size:9.5px; letter-spacing:.18em;
  text-transform:uppercase; color:var(--leaf);
}
.ecobadge .eb-name{
  font-family:"Chivo",sans-serif; font-size:19px; font-weight:700; color:#fff;
  letter-spacing:-.015em; line-height:1;
}

/* ---------- ekip bölümü ---------- */
.cap-list{display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:1px;
  background:var(--line); border:1px solid var(--line); margin-bottom:28px}
.cap-list div{background:var(--ground); padding:22px 22px}
.cap-list b{display:block; font-family:"Chivo",sans-serif; font-size:16.5px; color:var(--ink); margin-bottom:7px}
.cap-list span{font-size:15px; color:var(--muted); line-height:1.58}
.signoff{border-left:3px solid var(--leaf); padding:4px 0 4px 20px; font-size:16.5px; line-height:1.62; max-width:80ch}
.signoff b{color:var(--ink); font-weight:600}
.signoff a{color:var(--brand-deep); text-decoration:none; font-weight:600; white-space:nowrap}
.signoff a:hover{text-decoration:underline}

/* ---------- referans logo şeridi ---------- */
.logos{background:var(--surface); border-top:1px solid var(--line); border-bottom:1px solid var(--line);
  padding:44px 0 46px; overflow:hidden}
.logos .lead{max-width:var(--maxw); margin:0 auto 30px; padding:0 28px}
.logos .lead p{margin:0; font-family:"IBM Plex Mono",monospace; font-size:11.5px;
  letter-spacing:.16em; text-transform:uppercase; color:var(--muted)}
.marquee{position:relative; width:100%; overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marquee-track{display:flex; width:max-content; animation:marquee 64s linear infinite}
.marquee:hover .marquee-track{animation-play-state:paused}
.marquee-track ul{display:flex; align-items:center; gap:56px; list-style:none; margin:0; padding:0 28px}
.marquee-track img{width:auto; display:block;
  filter:grayscale(1) contrast(1.08); opacity:.78; transition:filter .2s ease, opacity .2s ease}
.marquee-track li:hover img{filter:none; opacity:1}
@keyframes marquee{from{transform:translateX(0)} to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){
  .marquee-track{animation:none}
  .marquee{overflow-x:auto; -webkit-mask-image:none; mask-image:none}
}
@media (max-width:760px){
  .logos{padding:34px 0 36px}
  .marquee-track img{max-height:46px}
  .marquee-track ul{gap:40px}
}

/* ---------- gündem yazıları ve hukuki metin ---------- */
.post{max-width:70ch; margin:0 auto 72px; scroll-margin-top:96px}
.post:last-child{margin-bottom:0}
.post + .post{padding-top:56px; border-top:1px solid var(--line)}
.post .meta{font-family:"IBM Plex Mono",monospace; font-size:11.5px; letter-spacing:.09em;
  text-transform:uppercase; color:var(--brand-deep); margin:0 0 12px}
.post h2{font-family:"Chivo",sans-serif; font-size:clamp(24px,2.6vw,30px); line-height:1.22;
  letter-spacing:-.018em; color:var(--ink); margin:0 0 20px}
.post h3{font-family:"Chivo",sans-serif; font-size:18.5px; font-weight:600; color:var(--ink);
  margin:34px 0 12px; line-height:1.32}
.post p{font-size:17.5px; line-height:1.72; color:var(--body); margin:0 0 18px}
.post ul{margin:0 0 20px; padding-left:22px}
.post li{font-size:17px; line-height:1.68; color:var(--body); margin-bottom:9px}
.post li b, .post p b{color:var(--ink); font-weight:600}
.post .trig{margin:22px 0 26px}
.post-cta{margin-top:26px !important}
.post-note{margin-top:26px !important; font-size:15.5px !important; color:var(--muted) !important;
  border-left:2px solid var(--line); padding-left:16px}
.post.legal h2{font-size:21px; margin:38px 0 12px}
.post.legal h2:first-of-type{margin-top:0}
.post.legal p, .post.legal li{font-size:16.5px}
.post.legal{max-width:76ch}
.post.legal .meta{color:var(--muted); margin-bottom:26px}
@media (max-width:760px){
  .post{margin-bottom:52px}
  .post + .post{padding-top:40px}
  .post p, .post li{font-size:16.5px}
}


/* ---------- fotograflar ---------- */
.fotolar{margin:0 0 44px}
.fotolar .ikili{display:grid; grid-template-columns:1fr 1fr; gap:18px}
.fotolar img, .foto-genis img{
  width:100%; height:auto; display:block;
  border:1px solid var(--line); background:var(--surface-2);
}
.foto-genis{margin:0 0 44px}
.fotolar figcaption, .foto-genis figcaption{
  font-family:"IBM Plex Mono",monospace; font-size:11px; line-height:1.7;
  color:var(--muted); margin-top:12px; letter-spacing:.02em;
}
.band-dark .fotolar figcaption, .band-dark .foto-genis figcaption{color:var(--on-dark-muted)}
@media (max-width:760px){
  .fotolar .ikili{grid-template-columns:1fr; gap:12px}
}
