/* ============================================================
   Audit Partners — v5 shared styles
   Deep-green / soft-lime palette · Onest · rounded full-bleed
   ============================================================ */
:root{
  --deep:#081b17;            /* darkest — heroes, footer   */
  --green-950:#081b17;
  --green-900:#0d2822;       /* primary dark green         */
  --green-800:#16382f;
  --green-700:#1d5044;
  --lime:#c8e86a;            /* soft lime — accents only   */
  --lime-2:#e7ff9d;
  --lime-d:#b4d65a;
  --stone:#f4f1e8;           /* warm stone panels          */
  --stone-2:#ebe7dc;
  --cream:#f4f1e8;
  --paper:#fffdf8;           /* page background            */
  --ink:#0d2822;
  --grey:#69756f;
  --grey-l:#8d968f;
  --line:#dedbd0;
  --border:rgba(13,40,34,.12);
  --fd:'Onest',-apple-system,sans-serif;
  --fb:'Onest',-apple-system,sans-serif;
  --fm:'IBM Plex Mono',monospace;
  --ease:cubic-bezier(.4,0,.2,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
  --pad:clamp(32px,6.5vw,104px);
  --gutter:10px;             /* rounded-shell breathing     */
  --r-lg:34px;--r-md:22px;--r-sm:15px;
  --shadow:0 24px 70px rgba(8,27,23,.14);

  /* ---------- spacing scale (single source of truth) ----------
     Tüm section / heading / grid boşlukları bu token'lardan gelir.
     Sayfa bazlı rastgele margin değeri kullanılmaz.                */
  --sp-2xs:8px;
  --sp-xs:clamp(10px,1.1vw,14px);
  --sp-sm:clamp(14px,1.6vw,20px);
  --sp-md:clamp(20px,2.4vw,32px);
  --sp-lg:clamp(28px,3.4vw,44px);
  --sp-xl:clamp(38px,4.6vw,64px);

  /* section ritmi */
  --sp-section:clamp(64px,7.4vw,124px);   /* section top/bottom padding      */
  --sp-section-in:clamp(56px,6.6vw,104px);/* koyu panel iç padding           */
  --sp-panel-gap:clamp(28px,3.6vw,56px);  /* iki full-bleed panel arası      */
  --sp-seam:var(--gutter);                /* form ⇄ footer gibi bağlı çiftler */

  /* heading / content ritmi */
  --sp-head:clamp(14px,1.5vw,22px);       /* label → başlık → açıklama       */
  --sp-head-gap:clamp(36px,4.4vw,68px);   /* başlık bloğu → grid / içerik    */
  --sp-sub:clamp(40px,4.6vw,60px);        /* içerik → ara label (std-label)  */
  --sp-sub-gap:clamp(16px,1.8vw,22px);    /* ara label → kendi içeriği       */
  --sp-grid:clamp(14px,1.5vw,20px);       /* kart grid gap                   */
}
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;font-family:var(--fb);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden;}
h1,h2,h3,h4{font-family:var(--fd);margin:0;}
p{margin:0;}
a{color:inherit;text-decoration:none;}
a:hover{color:var(--green-800);}
img{display:block;max-width:100%;}
::selection{background:var(--lime);color:var(--deep);}
.wrap{max-width:none;margin:0 auto;padding-inline:var(--pad);}
.eyebrow{display:inline-flex;align-items:baseline;gap:2px;font-family:var(--fm);font-weight:500;font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;color:var(--green-700);}
.eyebrow::before{content:"[\00a0";opacity:.45;}
.eyebrow::after{content:"\00a0]";opacity:.45;}
.eyebrow.on-dark{color:rgba(244,241,232,.78);}

/* ============ loader (index only) ============ */
.loader{position:fixed;inset:0;z-index:200;background:var(--deep);display:grid;place-items:center;transition:transform .8s cubic-bezier(.65,0,.35,1);}
.loader.hide{transform:translateY(-103%);}
.loader-box{display:grid;gap:26px;justify-items:center;}
.loader-box img{height:73px;}
.loader .bar{width:190px;height:2px;border-radius:99px;overflow:hidden;background:rgba(255,255,255,.16);}
.loader .bar i{display:block;height:100%;background:var(--lime);transform-origin:left;animation:loadfill 1.1s cubic-bezier(.65,0,.35,1) forwards;}
@keyframes loadfill{from{transform:scaleX(0);}to{transform:scaleX(1);}}
@media (prefers-reduced-motion: reduce){.loader{display:none;}}

/* ============ reveal & motion system ============ */
@media (prefers-reduced-motion: no-preference){
  .rv{opacity:0;transform:translateY(30px);transition:opacity .85s var(--ease-out),transform .85s var(--ease-out);}
  .rv.in{opacity:1;transform:none;}
  .rv-l{opacity:0;transform:translateX(-40px);transition:opacity .85s var(--ease-out),transform .85s var(--ease-out);}
  .rv-r{opacity:0;transform:translateX(40px);transition:opacity .85s var(--ease-out),transform .85s var(--ease-out);}
  .rv-l.in,.rv-r.in{opacity:1;transform:none;}
  .rv-sc{opacity:0;transform:scale(.93);transition:opacity .85s var(--ease-out),transform .85s var(--ease-out);}
  .rv-sc.in{opacity:1;transform:none;}
  .rv-d1{transition-delay:.08s;}.rv-d2{transition-delay:.16s;}.rv-d3{transition-delay:.24s;}.rv-d4{transition-delay:.32s;}.rv-d5{transition-delay:.4s;}.rv-d6{transition-delay:.48s;}
  .float-slow{animation:floaty 6s ease-in-out infinite;}
  .float-slow2{animation:floaty 7s ease-in-out .8s infinite;}
  @keyframes floaty{0%,100%{transform:translateY(0);}50%{transform:translateY(-12px);}}
  .hi{opacity:0;transform:translateY(38px);animation:heroIn 1s var(--ease-out) forwards;}
  .hi-1{animation-delay:.9s;}.hi-2{animation-delay:1.05s;}.hi-3{animation-delay:1.2s;}.hi-4{animation-delay:1.35s;}.hi-5{animation-delay:1.5s;}
  @keyframes heroIn{to{opacity:1;transform:none;}}
  .hero-img{animation:heroZoom 2.4s var(--ease-out) both;}
  @keyframes heroZoom{from{transform:scale(1.07);}to{transform:scale(1);}}
  .nav-bar{animation:navIn .9s var(--ease-out) .75s both;}
  @keyframes navIn{from{opacity:0;transform:translateY(-120%);}to{opacity:1;transform:none;}}
}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:12px;height:54px;min-height:54px;padding:8px 8px 8px 26px;border-radius:999px;font-family:var(--fb);font-weight:600;font-size:.9375rem;line-height:1;border:1px solid transparent;cursor:pointer;transition:background .2s var(--ease),color .2s,border-color .2s,transform .25s var(--ease),box-shadow .25s;}
.btn:hover{transform:translateY(-2px);color:inherit;}
.btn .circ{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:transform .3s var(--ease);}
.btn:hover .circ{transform:rotate(45deg);}
.btn-lime{background:var(--lime);color:var(--deep);}
.btn-lime:hover{background:var(--lime-2);box-shadow:0 14px 36px rgba(200,232,106,.35);color:var(--deep);}
.btn-lime .circ{background:var(--deep);color:var(--lime);}
.btn-dark{background:var(--green-900);color:#fff;}
.btn-dark:hover{background:var(--green-800);box-shadow:0 12px 32px rgba(13,40,34,.25);color:#fff;}
.btn-dark .circ{background:var(--lime);color:var(--deep);}
.btn-ghost{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.3);color:#fff;padding:15px 28px;backdrop-filter:blur(8px);}
.btn-ghost:hover{background:#fff;color:var(--deep);border-color:#fff;}
.btn-ghost-dark{background:transparent;border-color:var(--border);color:var(--ink);padding:15px 28px;}
.btn-ghost-dark:hover{border-color:var(--green-900);background:rgba(13,40,34,.04);}
.arrow-chip{width:34px;height:34px;border-radius:50%;background:var(--paper);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--ink);flex:none;transition:background .2s,color .2s,transform .3s var(--ease);}
a:hover>.arrow-chip,.card-link:hover .arrow-chip{background:var(--lime);border-color:var(--lime);color:var(--deep);transform:rotate(45deg);}
.badge{width:44px;height:44px;border-radius:13px;background:var(--lime);display:flex;align-items:center;justify-content:center;color:var(--deep);flex:none;}
.badge svg{width:22px;height:22px;}

/* ============ NAV: full-width rounded pill -> shrinks on scroll ============ */
header.nav{position:fixed;top:0;left:0;right:0;z-index:70;display:flex;justify-content:center;padding:14px 14px 0;pointer-events:none;}
.nav-bar{pointer-events:auto;display:flex;align-items:center;justify-content:space-between;gap:clamp(16px,3vw,44px);
  width:100%;max-width:calc(100vw - 28px);
  background:rgba(255,253,248,.9);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  border:1px solid var(--border);border-radius:999px;
  padding:10px 12px 10px 24px;
  box-shadow:0 10px 36px rgba(8,27,23,.1);
  transition:max-width .6s var(--ease),padding .6s var(--ease),box-shadow .45s var(--ease),background .3s;}
header.nav.shrunk .nav-bar{max-width:980px;padding:8px 10px 8px 20px;box-shadow:0 16px 48px rgba(8,27,23,.18);background:rgba(255,253,248,.95);}
.nav-logo{height:38px;width:auto;transition:height .6s var(--ease);}
header.nav.shrunk .nav-logo{height:30px;}
nav.links{display:flex;gap:2px;align-items:center;}
nav.links a{font-weight:500;font-size:.9rem;color:var(--ink);padding:9px 15px;border-radius:999px;transition:background .2s,color .2s;white-space:nowrap;}
nav.links a:hover{background:var(--stone);color:var(--ink);}
nav.links a.active{background:var(--green-900);color:#fff;}
.nav-right{display:flex;gap:10px;align-items:center;}
.nav-cta{display:inline-flex;align-items:center;gap:10px;padding:12px 24px;border-radius:999px;background:var(--green-900);color:#fff;font-weight:600;font-size:.875rem;transition:background .2s,box-shadow .25s;white-space:nowrap;}
.nav-cta:hover{background:var(--green-800);box-shadow:0 10px 28px rgba(13,40,34,.28);color:#fff;}
.nav-cta .dot{width:7px;height:7px;border-radius:50%;background:var(--lime);animation:pulse 2.4s ease-in-out infinite;}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(200,232,106,.6);}50%{box-shadow:0 0 0 5px rgba(200,232,106,0);}}
.burger{display:none;}
/* mobile/tablet drawer nav */
@media (max-width:960px){
  nav.links,.nav-cta{display:none !important;}
  .burger{display:flex;z-index:80;width:46px;height:46px;border:1px solid var(--border);background:#fff;border-radius:50%;align-items:center;justify-content:center;color:var(--ink);font-size:1.2rem;line-height:1;cursor:pointer;transition:background .2s,color .2s;}
  .burger:hover{background:var(--green-900);color:#fff;}
}
.mnav-scrim{position:fixed;inset:0;background:rgba(8,27,23,.55);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:opacity .35s var(--ease),visibility .35s;z-index:90;}
.mnav-scrim.open{opacity:1;visibility:visible;}
.mnav{position:fixed;top:0;right:0;height:100%;width:min(400px,88vw);background:var(--deep);color:#fff;transform:translateX(102%);transition:transform .42s var(--ease);z-index:95;display:flex;flex-direction:column;box-shadow:-30px 0 80px rgba(8,27,23,.5);overflow-y:auto;overscroll-behavior:contain;}
.mnav.open{transform:none;}
.mnav-top{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid rgba(244,241,232,.12);position:sticky;top:0;background:var(--deep);z-index:1;}
.mnav-top img{height:30px;width:auto;}
.mnav-close{width:44px;height:44px;border-radius:50%;border:1px solid rgba(244,241,232,.22);background:transparent;color:#fff;font-size:1.05rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s,color .2s;}
.mnav-close:hover{background:rgba(244,241,232,.08);border-color:var(--lime);color:var(--lime);}
.mnav-list{display:flex;flex-direction:column;padding:14px 14px 8px;gap:2px;}
.mnav-list>a,.mnav-acc{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;text-align:left;background:transparent;border:0;font-family:var(--fd);font-weight:600;font-size:1.12rem;color:#fff;padding:15px 16px;border-radius:14px;cursor:pointer;transition:background .2s,color .2s;}
.mnav-list>a:hover,.mnav-acc:hover,.mnav-list>a.active{background:rgba(244,241,232,.07);color:var(--lime);}
.mnav-acc .chev{display:flex;transition:transform .3s var(--ease);color:var(--lime);}
.mnav-group.open .mnav-acc .chev{transform:rotate(180deg);}
.mnav-sub{display:grid;grid-template-rows:0fr;transition:grid-template-rows .34s var(--ease);}
.mnav-group.open .mnav-sub{grid-template-rows:1fr;}
.mnav-sub-in{overflow:hidden;display:flex;flex-direction:column;}
.mnav-sub a{color:rgba(244,241,232,.8);font-size:.98rem;font-weight:500;padding:12px 16px 12px 32px;border-radius:12px;position:relative;transition:background .2s,color .2s;}
.mnav-sub a::before{content:"";position:absolute;left:16px;top:50%;width:6px;height:6px;border-radius:50%;background:rgba(200,232,106,.55);transform:translateY(-50%);}
.mnav-sub a:hover,.mnav-sub a.active{background:rgba(244,241,232,.07);color:var(--lime);}
.mnav-cta{margin:16px 22px 30px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 24px;border-radius:999px;background:var(--lime);color:var(--green-900);font-weight:700;font-size:1rem;transition:filter .2s;}
.mnav-cta:hover{filter:brightness(.94);color:var(--green-900);}
body.mnav-lock{overflow:hidden;}

/* ============ HERO: rounded, full-width shell ============ */
.hero{position:relative;background:var(--deep);min-height:min(96svh,900px);display:flex;align-items:flex-end;overflow:hidden;
  margin:var(--gutter) var(--gutter) 0;border-radius:var(--r-lg);isolation:isolate;}
.hero-img{position:absolute;inset:0;background:url('https://images.unsplash.com/photo-1554469384-e58fac16e23a?q=80&w=2200&auto=format&fit=crop') center 28%/cover no-repeat;filter:saturate(.72);}
.hero-img::after{content:"";position:absolute;inset:0;background:linear-gradient(78deg,rgba(8,27,23,.97) 0%,rgba(8,27,23,.85) 32%,rgba(8,27,23,.3) 70%,rgba(8,27,23,.6) 100%);}
.hero::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
  background-size:72px 72px;mask-image:linear-gradient(to bottom,transparent,black 20%,black 80%,transparent);}
.hero::after{content:"";position:absolute;right:-170px;bottom:-200px;width:min(56vw,720px);aspect-ratio:1;border-radius:50%;z-index:1;pointer-events:none;
  border:1px solid rgba(255,255,255,.15);box-shadow:inset 0 0 0 70px rgba(255,255,255,.025),inset 0 0 0 140px rgba(255,255,255,.018);}
.hero-inner{position:relative;z-index:2;width:100%;max-width:none;margin:0 auto;padding:clamp(130px,17vh,190px) var(--pad) clamp(48px,6vw,76px);display:flex;flex-direction:column;gap:26px;align-items:flex-start;}
.hero .eyebrow{color:var(--lime);}
.hero h1{font-size:clamp(2.5rem,1.7rem + 3.6vw,4.7rem);line-height:1.02;font-weight:700;letter-spacing:-.03em;color:#fff;max-width:19ch;text-wrap:balance;}
.hero h1 em{font-style:normal;color:var(--lime);position:relative;white-space:nowrap;}
.hero h1 em::after{content:"";position:absolute;left:0;right:0;bottom:.04em;height:.1em;background:var(--lime);opacity:.3;border-radius:99px;transform:scaleX(0);transform-origin:left;animation:underline 1s var(--ease-out) 2s forwards;}
@keyframes underline{to{transform:scaleX(1);}}
@media (prefers-reduced-motion: reduce){.hero h1 em::after{transform:none;animation:none;}}
.hero p.sub{font-size:clamp(1.02rem,1rem + .3vw,1.2rem);line-height:1.65;color:rgba(255,253,248,.82);max-width:58ch;}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;align-items:center;}
.hero-pills{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px;}
.hpill{display:inline-flex;align-items:center;gap:10px;background:rgba(255,253,248,.94);border-radius:999px;padding:9px 20px 9px 10px;font-weight:600;font-size:.85rem;color:var(--ink);box-shadow:0 12px 32px rgba(8,27,23,.25);}
.hpill .mini{width:28px;height:28px;border-radius:50%;background:var(--lime);display:flex;align-items:center;justify-content:center;color:var(--deep);}
.hpill .mini svg{width:14px;height:14px;}
.hero-float{position:absolute;z-index:3;right:clamp(24px,4vw,64px);top:clamp(120px,15vh,180px);display:flex;flex-direction:column;gap:16px;}
.fcard{background:rgba(255,253,248,.96);border-radius:var(--r-sm);padding:16px 18px;display:flex;gap:14px;align-items:center;min-width:250px;box-shadow:0 24px 60px rgba(8,27,23,.35);}
.fcard b{font-family:var(--fd);font-size:.95rem;font-weight:700;display:block;color:var(--ink);}
.fcard span{font-size:.78rem;color:var(--grey);}
.fcard .badge{width:40px;height:40px;}
.fcard.dark{background:var(--green-800);}
.fcard.dark b{color:#fff;}
.fcard.dark span{color:var(--stone);}
/* scroll hint */
.scroll-hint{position:absolute;z-index:3;right:clamp(24px,4vw,60px);bottom:26px;display:flex;align-items:center;gap:10px;color:rgba(255,253,248,.6);font-family:var(--fm);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;}
.scroll-hint i{display:block;width:1px;height:38px;background:linear-gradient(rgba(255,255,255,0),rgba(255,255,255,.7));overflow:hidden;position:relative;}
.scroll-hint i::after{content:"";position:absolute;inset:0;background:var(--lime);transform:translateY(-100%);animation:scrolldrip 2.2s var(--ease) infinite;}
@keyframes scrolldrip{40%{transform:translateY(0);}100%{transform:translateY(100%);}}

/* sub-page hero (also rounded) */
.page-hero{position:relative;background:var(--deep);color:#fff;overflow:hidden;margin:var(--gutter) var(--gutter) 0;border-radius:var(--r-lg);}
.page-hero::before{content:"";position:absolute;top:-40%;right:-8%;width:560px;height:560px;border-radius:50%;border:1px dashed rgba(200,232,106,.28);pointer-events:none;animation:spin 60s linear infinite;}
.page-hero::after{content:"";position:absolute;top:-24%;right:2%;width:360px;height:360px;border-radius:50%;border:1px dashed rgba(244,241,232,.15);pointer-events:none;animation:spin 90s linear infinite reverse;}
@keyframes spin{to{transform:rotate(360deg);}}
@media (prefers-reduced-motion: reduce){.page-hero::before,.page-hero::after{animation:none;}}
.page-hero .inner{position:relative;z-index:1;max-width:none;margin:0 auto;padding:clamp(140px,17vh,190px) var(--pad) clamp(28px,3vw,44px);display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(32px,5vw,80px);align-items:stretch;}
.page-hero .ph-copy{display:flex;flex-direction:column;gap:22px;align-items:flex-start;padding-bottom:clamp(20px,3vw,44px);}
.page-hero .ph-visual{position:relative;border-radius:var(--r-md);overflow:hidden;min-height:380px;background:var(--green-800);}
.page-hero .ph-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.72);}
.page-hero .ph-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(14deg,rgba(8,27,23,.66) 0%,rgba(8,27,23,.08) 46%,rgba(8,27,23,0) 70%);}
.page-hero .ph-visual .fcard{position:absolute;left:18px;right:auto;bottom:18px;z-index:2;box-shadow:0 24px 60px rgba(8,27,23,.45);}
.page-hero .ph-visual .tagm{position:absolute;top:16px;right:16px;z-index:2;font-family:var(--fm);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:rgba(8,27,23,.55);backdrop-filter:blur(6px);padding:8px 14px;border-radius:999px;}
.page-hero .eyebrow{color:var(--lime);}
.page-hero h1{font-size:clamp(2.1rem,1.6rem + 2.6vw,3.7rem);line-height:1.05;font-weight:700;letter-spacing:-.025em;max-width:24ch;text-wrap:balance;color:#fff;}
.page-hero p.lead{font-size:clamp(1.02rem,1rem + .3vw,1.2rem);line-height:1.6;color:rgba(255,253,248,.85);max-width:58ch;}
.page-hero p.body{font-size:1rem;line-height:1.7;color:rgba(255,253,248,.72);max-width:70ch;}
.crumb{font-family:var(--fm);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--grey-l);display:flex;gap:10px;align-items:center;}
.crumb a:hover{color:var(--lime);}

/* sectors marquee */
.sectors{padding:var(--sp-lg) 0 var(--sp-xs);overflow:hidden;}
.sectors .label{text-align:center;font-family:var(--fm);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--grey-l);margin-bottom:22px;}
.marquee{display:flex;gap:56px;width:max-content;animation:scrollx 36s linear infinite;}
.sectors:hover .marquee{animation-play-state:paused;}
.marquee span{font-family:var(--fd);font-weight:600;font-size:1.15rem;color:var(--grey);white-space:nowrap;display:flex;align-items:center;gap:56px;opacity:.75;}
.marquee span::after{content:"✳";color:var(--lime-d);font-size:.9rem;}
@keyframes scrollx{to{transform:translateX(-50%);}}
@media (prefers-reduced-motion: reduce){.marquee{animation:none;flex-wrap:wrap;width:auto;justify-content:center;}}

/* ============ section scaffolding & vertical rhythm ============
   Kural: her section dikey ritmi token'lardan alır.
   .block            → açık zeminli standart section
   .block.flow       → bir öncekinin devamı (üst padding yok)
   .block.on-stone   → açık ama farklı tonlu bant (arka plan ritmi)
   .block.after-dark → koyu bir panelin hemen ardından gelen açık section  */
section.block{padding:var(--sp-section) 0;}
section.block.flow{padding-top:0;}
section.block.after-dark{padding-top:calc(var(--sp-section) + var(--sp-md));}
/* arka arkaya gelen iki açık section, iki tam section padding'i kadar
   ayrılmasın — aradaki mesafe tek bir ritim adımı olarak okunsun */
section.block + section.block{padding-top:calc(var(--sp-section) * .48);}
section.block + section.block.flow{padding-top:0;}
/* koyu panel → açık section geçişinde ekstra nefes (otomatik) */
.philo + section.block,.metrics + section.block,.banner + section.block,
.page-hero + section.block,.hero + section.block{padding-top:calc(var(--sp-section) + var(--sp-sm));}
.philo + section.block.flow,.metrics + section.block.flow{padding-top:var(--sp-section);}

.sec-head{display:flex;flex-direction:column;gap:var(--sp-head);max-width:800px;}
.sec-head.center{align-items:center;text-align:center;margin:0 auto;}
/* başlık bloğunun ardından gelen ilk içerik her zaman aynı nefesi alır */
.wrap>.sec-head+*,.wrap>.sec-row+*,.inner>.sec-head+*,.inner>.sec-row+*{margin-top:var(--sp-head-gap);}
.sec-head h2{font-size:clamp(1.85rem,1.5rem + 1.7vw,3rem);line-height:1.06;font-weight:700;letter-spacing:-.025em;text-wrap:balance;}
.sec-head p{font-size:1.0625rem;line-height:1.7;color:var(--grey);}
.sec-row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;}
/* big statement (home intro) */
.statement{font-size:clamp(1.9rem,1.4rem + 2.6vw,3.6rem);line-height:1.08;letter-spacing:-.03em;font-weight:700;text-wrap:balance;}
.statement .soft{color:#b9bfb2;}
.statement .st-word{white-space:nowrap;}
.statement.st-split .ch{opacity:.14;transition:opacity .3s linear;}
.statement.st-split .ch.on{opacity:1;}
@media (prefers-reduced-motion: reduce){.statement.st-split .ch{opacity:1;}}

/* ============ BIG animated metrics (rounded dark) ============ */
.metrics{background:var(--deep);color:#fff;position:relative;overflow:hidden;margin:var(--sp-panel-gap) var(--gutter);border-radius:var(--r-lg);}
.metrics::before{content:"";position:absolute;top:-45%;left:-10%;width:640px;height:640px;border-radius:50%;border:1px dashed rgba(200,232,106,.22);pointer-events:none;animation:spin 80s linear infinite;}
.metrics .inner{max-width:none;margin:0 auto;padding:var(--sp-section-in) var(--pad);position:relative;z-index:1;}
.metrics .sec-head h2{color:#fff;}
.metrics .sec-head p{color:rgba(244,241,232,.78);}
.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,48px);margin-top:var(--sp-head-gap);}
.stat{display:flex;flex-direction:column;gap:14px;border-top:2px solid rgba(244,241,232,.14);padding-top:26px;position:relative;}
.stat::before{content:"";position:absolute;top:-2px;left:0;height:2px;width:0;background:var(--lime);transition:width 1.4s var(--ease-out) .2s;}
.stat.in::before{width:100%;}
.stat b{font-family:var(--fd);font-weight:700;font-size:clamp(3.4rem,2.4rem + 4vw,6.2rem);line-height:.95;color:var(--lime);letter-spacing:-.04em;display:flex;align-items:flex-start;}
.stat b sup{font-size:.45em;line-height:1;margin-top:.12em;font-weight:700;}
.stat h3{font-size:1.05rem;font-weight:700;color:#fff;}
.stat p{font-size:.9rem;line-height:1.6;color:rgba(244,241,232,.75);}

/* bento (about) */
.bento{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--sp-grid);margin-top:var(--sp-head-gap);}
.bcard{border-radius:var(--r-md);padding:28px;display:flex;flex-direction:column;gap:16px;position:relative;transition:transform .35s var(--ease),box-shadow .35s var(--ease);}
.bcard:hover{transform:translateY(-6px);box-shadow:var(--shadow);}
.bcard.white{background:#fff;border:1px solid var(--border);}
.bcard.lime{background:var(--lime);}
.bcard h3{font-size:1.3rem;font-weight:700;line-height:1.25;letter-spacing:-.01em;}
.bcard p{font-size:.92rem;line-height:1.6;color:var(--grey);}
.bcard.lime p{color:rgba(8,27,23,.75);}
.bcard .top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;}
.bcard .photo{border-radius:var(--r-sm);overflow:hidden;margin-top:auto;}
.bcard .photo img{width:100%;aspect-ratio:16/9.5;object-fit:cover;filter:saturate(.82);transition:transform .6s var(--ease);}
.bcard:hover .photo img{transform:scale(1.05);}
.bcard.tall .photo img{aspect-ratio:4/4.4;}
.bcard .stat-big{font-family:var(--fd);font-weight:700;font-size:3rem;letter-spacing:-.02em;color:var(--deep);}

/* service cards */
.svc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-grid);margin-top:var(--sp-head-gap);}
.svc{display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-radius:var(--r-md);padding:14px;transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s;}
.svc:hover{transform:translateY(-8px);box-shadow:0 32px 64px rgba(8,27,23,.16);border-color:transparent;color:inherit;}
.svc .ph{position:relative;border-radius:var(--r-sm);overflow:hidden;}
.svc .ph img{width:100%;aspect-ratio:4/3.4;object-fit:cover;filter:saturate(.8);transition:transform .6s var(--ease);}
.svc:hover .ph img{transform:scale(1.06);}
.svc .ph .badge{position:absolute;top:12px;left:12px;box-shadow:0 8px 24px rgba(8,27,23,.3);}
.svc-body{display:flex;flex-direction:column;gap:8px;padding:20px 10px 12px;flex:1;}
.svc h3{font-size:1.1rem;font-weight:700;line-height:1.3;}
.svc p{font-size:.875rem;line-height:1.6;color:var(--grey);flex:1;}
.svc .foot{display:flex;justify-content:space-between;align-items:center;margin-top:14px;}
.svc .foot span{font-weight:600;font-size:.85rem;color:var(--green-900);}

/* scope list cards */
.scope-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-grid);margin-top:var(--sp-head-gap);counter-reset:scope;}
.scope{background:#fff;border:1px solid var(--border);border-radius:var(--r-md);padding:28px 24px;display:flex;flex-direction:column;gap:12px;transition:transform .3s var(--ease),box-shadow .3s;position:relative;overflow:hidden;counter-increment:scope;}
.scope::after{content:counter(scope,decimal-leading-zero);position:absolute;top:22px;right:22px;font-family:var(--fm);font-size:.75rem;color:var(--grey-l);}
.scope:hover{transform:translateY(-5px);box-shadow:0 24px 48px rgba(8,27,23,.1);}
.scope .glyph{width:38px;height:38px;border-radius:10px;background:rgba(200,232,106,.4);display:flex;align-items:center;justify-content:center;color:var(--green-900);margin-bottom:4px;}
.scope .glyph svg{width:19px;height:19px;}
.scope h3{font-size:1.02rem;font-weight:700;line-height:1.3;}
.scope p{font-size:.875rem;line-height:1.6;color:var(--grey);}

/* split section: photo + numbered steps */
.split{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(28px,4vw,80px);align-items:stretch;}
.split-photo{position:relative;border-radius:var(--r-md);overflow:hidden;min-height:440px;background:var(--green-800);}
.split-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.75);}
.split-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(10deg,rgba(8,27,23,.5) 0%,rgba(8,27,23,0) 45%);}
.split-photo .fcard{position:absolute;left:18px;bottom:18px;z-index:2;box-shadow:0 24px 60px rgba(8,27,23,.4);}
.split-body{display:flex;flex-direction:column;gap:20px;align-items:flex-start;}
.split-body h2{font-size:clamp(1.7rem,1.4rem + 1.4vw,2.6rem);line-height:1.1;font-weight:700;letter-spacing:-.02em;text-wrap:balance;}
.split-body>p{font-size:1.02rem;line-height:1.7;color:var(--grey);max-width:58ch;}
.mini-steps{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;width:100%;}
.mini-steps li{display:flex;gap:18px;padding:18px 0;border-top:1px solid var(--line);align-items:flex-start;}
.mini-steps li:last-child{border-bottom:1px solid var(--line);}
.mini-steps b{font-family:var(--fm);font-weight:500;font-size:.78rem;color:var(--green-800);background:rgba(200,232,106,.4);width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:none;}
.mini-steps h4{font-size:1.02rem;font-weight:700;margin:6px 0 5px;}
.mini-steps p{font-size:.9rem;line-height:1.6;color:var(--grey);max-width:52ch;}

/* dark statement (rounded) */
.philo{background:var(--deep);color:#fff;position:relative;overflow:hidden;margin:var(--sp-panel-gap) var(--gutter);border-radius:var(--r-lg);}
.philo::before{content:"";position:absolute;top:-30%;right:-12%;width:520px;height:520px;border-radius:50%;border:1px dashed rgba(200,232,106,.3);pointer-events:none;animation:spin 70s linear infinite;}
.philo::after{content:"";position:absolute;top:-18%;right:-4%;width:340px;height:340px;border-radius:50%;border:1px dashed rgba(244,241,232,.16);pointer-events:none;animation:spin 100s linear infinite reverse;}
@media (prefers-reduced-motion: reduce){.philo::before,.philo::after,.metrics::before{animation:none;}}
.philo .inner{max-width:none;margin:0 auto;padding:var(--sp-section-in) var(--pad);position:relative;z-index:1;}
.philo .sec-head h2{color:#fff;}
.philo .sec-head p{color:rgba(244,241,232,.78);}

/* ---------- .philo LIGHT variant ----------
   Aynı içerik yapısı, açık zeminde. Arka arkaya iki koyu panel oluşan
   sayfalarda (Hakkımızda / Hizmetler) ritmi kırmak için kullanılır.     */
.philo.on-light{background:var(--stone);color:var(--ink);}
.philo.on-light::before{border-color:rgba(13,40,34,.1);}
.philo.on-light::after{border-color:rgba(13,40,34,.07);}
.philo.on-light .sec-head h2{color:var(--ink);}
.philo.on-light .sec-head p{color:var(--grey);}
.philo.on-light .eyebrow{color:var(--green-700);}
.philo.on-light .eyebrow.on-dark{color:var(--green-700);}
.philo.on-light .pcard{background:#fff;border-color:var(--border);}
.philo.on-light .pcard:hover{background:#fff;border-color:rgba(13,40,34,.28);box-shadow:0 22px 46px rgba(8,27,23,.09);}
.philo.on-light .pcard .glyph{background:rgba(200,232,106,.4);color:var(--green-900);}
.philo.on-light .pcard h3,.philo.on-light .pcard h4{color:var(--ink);}
.philo.on-light .pcard p{color:var(--grey);}
.philo.on-light .std{border-color:var(--border);color:var(--ink);background:#fff;}
.philo.on-light .std:hover{background:var(--green-900);color:#fff;border-color:var(--green-900);}
.philo.on-light .std-label{border-top-color:var(--border);}
.philo.on-light .aud,.philo.on-light .aud-list{border-color:var(--border) !important;}
.philo.on-light .aud h3{color:var(--ink) !important;}
.philo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-grid);margin-top:var(--sp-head-gap);}
.pcard{background:rgba(255,255,255,.055);border:1px solid rgba(244,241,232,.12);border-radius:var(--r-md);padding:26px 22px;display:flex;flex-direction:column;gap:14px;transition:background .3s,transform .3s var(--ease),border-color .3s;}
.pcard:hover{background:rgba(255,255,255,.1);transform:translateY(-5px);border-color:rgba(200,232,106,.35);}
.pcard .glyph{width:38px;height:38px;border-radius:10px;background:rgba(200,232,106,.15);display:flex;align-items:center;justify-content:center;color:var(--lime);}
.pcard .glyph svg{width:19px;height:19px;}
.pcard h3,.pcard h4{font-size:1.05rem;font-weight:700;color:#fff;}
.pcard p{font-size:.875rem;line-height:1.6;color:rgba(244,241,232,.75);}

/* standards chips */
.std-chips{display:flex;gap:12px;flex-wrap:wrap;margin-top:var(--sp-sub-gap);}
/* ara başlık: bir üstteki kart grid'inin devamı gibi görünmemeli */
.std-label{display:block;width:100%;margin-top:var(--sp-sub);padding-top:var(--sp-md);border-top:1px solid rgba(244,241,232,.12);}
.std-chips.on-light{margin-top:var(--sp-sub);}
.std-label.on-light-line{border-top-color:var(--border);}
.std-label + .std-chips{margin-top:var(--sp-sub-gap);}
.std{font-family:var(--fm);font-weight:500;font-size:.85rem;letter-spacing:.04em;padding:12px 22px;border-radius:999px;border:1px solid rgba(244,241,232,.25);color:rgba(244,241,232,.85);transition:background .25s,color .25s,border-color .25s,transform .25s var(--ease);}
.std:hover{background:var(--lime);color:var(--deep);border-color:var(--lime);transform:translateY(-3px);}
.std-chips.on-light .std{border-color:var(--border);color:var(--ink);background:#fff;}
.std-chips.on-light .std:hover{background:var(--green-900);color:#fff;border-color:var(--green-900);}

/* audience list */
.aud-list{display:flex;flex-direction:column;gap:0;margin-top:var(--sp-head-gap);border-top:1px solid var(--border);}
.aud{display:flex;align-items:center;gap:clamp(16px,3vw,40px);padding:22px 8px;border-bottom:1px solid var(--border);transition:background .25s,padding-left .3s var(--ease);}
.aud:hover{background:rgba(200,232,106,.1);padding-left:20px;}
.aud .n{font-family:var(--fm);font-size:.78rem;color:var(--grey-l);width:34px;flex:none;}
.aud h3{font-size:clamp(1.05rem,1rem + .6vw,1.45rem);font-weight:700;letter-spacing:-.01em;}
.aud .arrow-chip{margin-left:auto;}

/* full-bleed banner (rounded) */
.banner{position:relative;min-height:400px;display:flex;align-items:flex-end;overflow:hidden;margin:var(--sp-panel-gap) var(--gutter);border-radius:var(--r-lg);}
.banner img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.8);}
.banner::after{content:"";position:absolute;inset:0;background:linear-gradient(12deg,rgba(8,27,23,.88) 8%,rgba(8,27,23,.3) 55%,rgba(8,27,23,.06) 100%);}
.banner-inner{position:relative;z-index:2;max-width:none;margin:0 auto;padding:clamp(32px,5vw,64px) var(--pad);display:flex;justify-content:space-between;align-items:flex-end;gap:28px;width:100%;flex-wrap:wrap;}
.banner h2{color:#fff;font-size:clamp(1.7rem,1.4rem + 1.6vw,2.7rem);font-weight:700;line-height:1.12;max-width:22ch;letter-spacing:-.02em;text-wrap:balance;}

/* process steps */
.proc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-grid);margin-top:var(--sp-head-gap);}
.step{background:#fff;border:1px solid var(--border);border-radius:var(--r-md);padding:28px 24px;display:flex;flex-direction:column;gap:14px;position:relative;overflow:hidden;transition:transform .35s var(--ease),box-shadow .35s;}
.step:hover{transform:translateY(-6px);box-shadow:0 24px 48px rgba(8,27,23,.1);}
.step .snum{width:44px;height:44px;border-radius:50%;background:var(--green-900);color:var(--lime);font-family:var(--fm);font-size:.85rem;display:flex;align-items:center;justify-content:center;}
.step h3,.step h4{font-size:1.08rem;font-weight:700;}
.step p{font-size:.875rem;line-height:1.6;color:var(--grey);}
.step .watermark{position:absolute;right:-8px;bottom:-26px;font-family:var(--fd);font-weight:700;font-size:6rem;color:var(--stone-2);opacity:.7;line-height:1;pointer-events:none;}

/* team */
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-grid);margin-top:var(--sp-head-gap);}
.tcard{background:#fff;border:1px solid var(--border);border-radius:var(--r-md);padding:24px 20px;display:flex;flex-direction:column;gap:12px;align-items:flex-start;transition:transform .3s var(--ease),box-shadow .3s;}
.tcard:hover{transform:translateY(-5px);box-shadow:0 20px 44px rgba(8,27,23,.1);}
.tcard .mono{width:56px;height:56px;border-radius:50%;background:var(--green-900);color:var(--lime);font-family:var(--fd);font-weight:700;font-size:1.05rem;display:flex;align-items:center;justify-content:center;}
.tcard h3{font-size:1.05rem;font-weight:700;line-height:1.3;}
.tcard p{font-size:.85rem;line-height:1.55;color:var(--grey);}
.tcard .tag{font-family:var(--fm);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--green-800);background:rgba(200,232,106,.35);padding:5px 10px;border-radius:999px;}

/* blog cards */
.ins-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-grid);margin-top:var(--sp-head-gap);}
.ins{display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-radius:var(--r-md);padding:14px;transition:transform .35s var(--ease),box-shadow .35s;}
.ins:hover{transform:translateY(-6px);box-shadow:0 24px 48px rgba(8,27,23,.12);color:inherit;}
.ins .ph{position:relative;border-radius:var(--r-sm);overflow:hidden;}
.ins .ph img{width:100%;aspect-ratio:16/9.6;object-fit:cover;filter:saturate(.8);transition:transform .6s var(--ease);}
.ins:hover .ph img{transform:scale(1.06);}
.ins .cat{position:absolute;top:12px;left:12px;background:var(--lime);color:var(--deep);font-weight:700;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;padding:7px 13px;border-radius:999px;}
.ins-body{display:flex;flex-direction:column;gap:10px;padding:18px 10px 10px;flex:1;}
.ins h3{font-size:1.12rem;line-height:1.35;font-weight:700;}
.ins p{font-size:.875rem;line-height:1.6;color:var(--grey);flex:1;}
.ins .foot{display:flex;justify-content:space-between;align-items:center;margin-top:12px;}
.ins .foot span{font-weight:600;font-size:.84rem;color:var(--green-900);}
.ins .date{font-family:var(--fm);font-size:.72rem;color:var(--grey-l);}
.cat-chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:var(--sp-md);}
.chip{font-weight:600;font-size:.85rem;padding:9px 18px;border-radius:999px;border:1px solid var(--border);background:#fff;color:var(--ink);cursor:pointer;transition:background .2s,color .2s,border-color .2s;font-family:var(--fb);}
.chip:hover{border-color:var(--green-900);}
.chip.active{background:var(--green-900);color:#fff;border-color:var(--green-900);}

/* FAQ */
.faq{max-width:860px;margin:var(--sp-head-gap) auto 0;display:flex;flex-direction:column;gap:12px;}
details.qa{background:#fff;border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden;}
details.qa summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;font-family:var(--fd);font-weight:700;font-size:1.02rem;}
details.qa summary::-webkit-details-marker{display:none;}
details.qa summary .pm{width:30px;height:30px;border-radius:50%;background:var(--stone);display:flex;align-items:center;justify-content:center;font-weight:600;flex:none;transition:transform .3s var(--ease),background .2s;}
details.qa[open] summary .pm{transform:rotate(45deg);background:var(--lime);}
details.qa .a{padding:0 24px 22px;font-size:.95rem;line-height:1.65;color:var(--grey);max-width:64ch;}

/* ============ contact & forms ============ */
.contact-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(28px,4vw,64px);align-items:start;margin-top:var(--sp-head-gap);}
.office{padding:22px 24px;border:1px solid var(--border);background:#fff;border-radius:var(--r-sm);display:flex;flex-direction:column;gap:6px;margin-top:16px;transition:transform .25s var(--ease),box-shadow .25s;}
.office:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(8,27,23,.08);}
.office b{font-family:var(--fm);font-weight:500;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--green-800);}
.office p{font-size:.92rem;line-height:1.55;}
.office span{font-size:.92rem;color:var(--grey);}
.office a:hover{color:var(--green-800);}
.map-ph{margin-top:16px;border-radius:var(--r-sm);border:1px dashed rgba(13,40,34,.25);background:repeating-linear-gradient(45deg,#EFF1EC 0 14px,#E7EAE3 14px 28px);min-height:180px;display:flex;align-items:center;justify-content:center;font-family:var(--fm);font-size:.75rem;letter-spacing:.08em;color:var(--grey);}
form.quote{display:flex;flex-direction:column;gap:16px;background:#fff;border:1px solid var(--border);border-radius:var(--r-md);padding:clamp(24px,3vw,40px);box-shadow:0 28px 64px rgba(8,27,23,.09);}
.f-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
label.f{display:flex;flex-direction:column;gap:7px;font-weight:600;font-size:.8rem;}
label.f input,label.f select,label.f textarea{font-family:var(--fb);font-size:.975rem;color:var(--ink);padding:13px 16px;border:1px solid var(--border);border-radius:12px;background:var(--paper);outline:none;transition:border-color .15s,background .15s,box-shadow .15s;width:100%;}
label.f input:focus,label.f select:focus,label.f textarea:focus{border-color:var(--green-900);background:#fff;box-shadow:0 0 0 3px rgba(200,232,106,.35);}
label.chk{display:flex;gap:10px;align-items:flex-start;font-size:.83rem;font-weight:400;color:var(--grey);line-height:1.5;cursor:pointer;}
label.chk input{margin-top:3px;accent-color:var(--green-900);}
.form-note{font-size:.83rem;color:var(--grey);line-height:1.5;}
.form-ok{display:none;padding:14px 16px;border-radius:12px;background:rgba(200,232,106,.25);border:1px solid var(--lime-d);color:var(--green-900);font-size:.9rem;font-weight:500;}

/* ============ HOME lead form (dark rounded section) ============ */
.lead-sec{background:var(--deep);color:#fff;position:relative;overflow:hidden;margin:var(--sp-panel-gap) var(--gutter) 0;border-radius:var(--r-lg);}
.lead-sec::before{content:"";position:absolute;bottom:-45%;left:-12%;width:620px;height:620px;border-radius:50%;border:1px dashed rgba(200,232,106,.22);pointer-events:none;animation:spin 90s linear infinite;}
.lead-sec .inner{position:relative;z-index:1;max-width:none;margin:0 auto;padding:var(--sp-section-in) var(--pad);display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(32px,5vw,80px);align-items:start;}
.lead-copy{display:flex;flex-direction:column;gap:20px;position:sticky;top:110px;}
.lead-copy h2{color:#fff;font-size:clamp(1.9rem,1.5rem + 1.9vw,3.1rem);line-height:1.06;font-weight:700;letter-spacing:-.025em;text-wrap:balance;}
.lead-copy p{color:rgba(244,241,232,.78);font-size:1.05rem;line-height:1.7;max-width:52ch;}
.lead-points{display:flex;flex-direction:column;gap:0;margin:8px 0 0;padding:0;border-top:1px solid rgba(244,241,232,.14);}
.lead-points li{list-style:none;display:flex;gap:14px;align-items:center;padding:16px 4px;border-bottom:1px solid rgba(244,241,232,.14);font-size:.95rem;color:rgba(244,241,232,.88);}
.lead-points .mini{width:28px;height:28px;border-radius:50%;background:rgba(200,232,106,.16);color:var(--lime);display:flex;align-items:center;justify-content:center;flex:none;}
.lead-points .mini svg{width:14px;height:14px;}
.lead-contact{display:flex;gap:22px;flex-wrap:wrap;margin-top:6px;}
.lead-contact a{display:flex;flex-direction:column;gap:3px;color:#fff;font-weight:600;}
.lead-contact a small{font-family:var(--fm);font-weight:400;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(244,241,232,.55);}
.lead-contact a:hover{color:var(--lime);}
form.quote.on-dark{background:rgba(255,253,248,.98);border:none;box-shadow:0 40px 100px rgba(0,0,0,.35);color:var(--ink);}
.form-head{display:flex;flex-direction:column;gap:6px;margin-bottom:4px;}
.form-head h3{font-size:1.35rem;font-weight:700;letter-spacing:-.01em;}
.form-head p{font-size:.9rem;color:var(--grey);line-height:1.55;}

/* final CTA + footer */
.final-foot{background:var(--deep);overflow:hidden;position:relative;margin:var(--sp-panel-gap) var(--gutter) var(--gutter);border-radius:var(--r-lg);}
.final-foot::before{content:"";position:absolute;top:-180px;left:50%;transform:translateX(-50%);width:680px;height:680px;border-radius:50%;border:1px dashed rgba(200,232,106,.22);pointer-events:none;}
.final-inner{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--sp-md);text-align:center;max-width:820px;margin:0 auto;padding:var(--sp-section-in) var(--pad) var(--sp-xl);}
.final-inner h2{color:#fff;font-size:clamp(2rem,1.6rem + 2.2vw,3.5rem);font-weight:700;line-height:1.06;letter-spacing:-.025em;text-wrap:balance;}
.final-inner p{color:rgba(244,241,232,.78);font-size:1.05rem;line-height:1.65;}
/* CTA'sız footer (ana sayfa): CTA'ya ait dekoratif daire ve ayırıcı çizgi gereksiz */
.final-foot.no-cta::before{display:none;}
.final-foot.no-cta .foot-grid{border-top:0;}
.foot-grid{position:relative;max-width:none;margin:0 auto;display:grid;
  grid-template-columns:minmax(230px,.92fr) minmax(0,2.08fr);
  gap:clamp(30px,4.6vw,86px);
  padding:clamp(40px,4.2vw,58px) var(--pad) clamp(26px,2.8vw,38px);
  border-top:1px solid rgba(244,241,232,.12);color:#fff;}
.foot-col{display:flex;flex-direction:column;gap:10px;align-items:flex-start;}
.foot-col .foot-logo{height:36px;width:auto;margin-bottom:10px;}
.foot-col .h{font-family:var(--fm);font-weight:500;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--lime);margin-bottom:4px;}
.foot-col a,.foot-col p{font-size:.92rem;color:rgba(244,241,232,.75);line-height:1.55;transition:color .2s;}
.foot-col a:hover{color:#fff;}
.foot-base{border-top:1px solid rgba(244,241,232,.12);}
.foot-base .in{max-width:none;margin:0 auto;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:20px var(--pad);font-size:.8rem;color:var(--grey-l);}

/* responsive */
@media (max-width:1080px){
  .bento{grid-template-columns:1fr 1fr;}
  .svc-grid,.philo-grid,.proc-grid{grid-template-columns:repeat(2,1fr);}
  .scope-grid{grid-template-columns:repeat(2,1fr);}
  .team-grid{grid-template-columns:repeat(3,1fr);}
  .stat-grid{grid-template-columns:repeat(2,1fr);row-gap:44px;}
  .ins-grid{grid-template-columns:1fr;}
  .contact-grid{grid-template-columns:1fr;}
  .split{grid-template-columns:1fr;}
  .split-photo{min-height:320px;}
  .lead-sec .inner{grid-template-columns:1fr;}
  .lead-copy{position:static;}
  .foot-grid{grid-template-columns:1fr 1fr;}
  .hero-float{display:none;}
  .scroll-hint{display:none;}
  .page-hero .inner{grid-template-columns:1fr;}
  .page-hero .ph-visual{min-height:300px;}
}
@media (max-width:760px){
  :root{--gutter:8px;--r-lg:26px;}
  .bento,.svc-grid,.scope-grid,.philo-grid,.proc-grid,.f-row{grid-template-columns:1fr;}
  .team-grid{grid-template-columns:1fr 1fr;}
  .stat-grid{grid-template-columns:1fr 1fr;row-gap:40px;}
  .hero{min-height:86svh;}
  .banner-inner{align-items:flex-start;flex-direction:column;}
}


/* mission / vision mini cards */
.mv-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;width:100%;margin-top:10px;}
.mv{border:1px solid var(--border);background:#fff;border-radius:var(--r-md);padding:24px 22px;display:flex;flex-direction:column;gap:10px;align-items:flex-start;}
.mv.lime{background:var(--lime);border-color:transparent;}
.mv h3{font-size:1.05rem;font-weight:700;}
.mv p{font-size:.9rem;line-height:1.65;color:var(--grey);}
.mv.lime .eyebrow,.mv.lime h3{color:var(--green-950);}
.mv.lime p{color:var(--green-900);}

/* need section: statement + lime checklist panel */
.need-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,80px);align-items:center;}
.need-side{background:var(--lime);border-radius:var(--r-md);padding:clamp(26px,3vw,40px);display:flex;flex-direction:column;gap:6px;color:var(--green-950);}
.need-side h3{font-size:1.2rem;font-weight:700;color:var(--green-950);margin-bottom:12px;}
.need-side .nrow{display:flex;gap:14px;align-items:flex-start;border-top:1px solid rgba(8,27,23,.16);padding:15px 0;}
.need-side .nrow .nbadge{width:26px;height:26px;border-radius:50%;background:var(--green-950);color:var(--lime);display:flex;align-items:center;justify-content:center;flex:none;margin-top:1px;}
.need-side .nrow .nbadge svg{width:13px;height:13px;}
.need-side .nrow p{font-size:.95rem;line-height:1.55;color:var(--green-900);font-weight:500;}
.need-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;}
.need-tags span{font-family:var(--fm);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;border:1px solid rgba(8,27,23,.3);border-radius:999px;padding:8px 14px;color:var(--green-950);}

/* teklif al popup */
.qmodal-ov{position:fixed;inset:0;z-index:300;background:rgba(8,27,23,.62);backdrop-filter:blur(7px);display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;pointer-events:none;transition:opacity .3s;}
.qmodal-ov.open{opacity:1;pointer-events:auto;}
.qmodal{background:#fdfcf8;border-radius:var(--r-md);width:min(660px,100%);max-height:92vh;overflow:auto;padding:clamp(26px,4vw,44px);position:relative;transform:translateY(18px) scale(.985);transition:transform .35s var(--ease);}
.qmodal-ov.open .qmodal{transform:none;}
.qmodal .qx{position:absolute;top:16px;right:16px;width:38px;height:38px;border-radius:50%;border:1px solid var(--border);background:#fff;color:var(--ink);font-size:1.05rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .25s;}
.qmodal .qx:hover{background:var(--lime);}
.qmodal .qhead{display:flex;flex-direction:column;gap:10px;margin-bottom:22px;padding-right:44px;}
.qmodal .qhead h3{font-size:clamp(1.35rem,1.2rem + .8vw,1.8rem);font-weight:700;letter-spacing:-.02em;}
.qmodal .qhead p{font-size:.92rem;color:var(--grey);line-height:1.6;}
.qmodal form{display:flex;flex-direction:column;gap:14px;}

/* footer dev credit */
.dev-credit{color:rgba(244,241,232,.85);text-decoration:none;transition:color .25s;}
.dev-credit:hover{color:var(--lime);}

@media (max-width:960px){
  .need-grid{grid-template-columns:1fr;}
  .mv-grid{grid-template-columns:1fr;}
}


/* related services cards */
.rel-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:clamp(36px,4vw,56px);}

/* ============ mobile & tablet polish ============ */
@media (max-width:960px){
  .sec-row{flex-direction:column;align-items:flex-start;gap:20px;}
  .split-body h2{font-size:clamp(1.5rem,1.2rem + 2vw,2.2rem);}
}
@media (max-width:760px){
  .page-hero .inner{padding-top:120px;}
  .page-hero .ph-visual{min-height:240px;}
  .statement{font-size:clamp(1.6rem,1.2rem + 3.4vw,2.4rem);}
  section.block{padding:clamp(56px,10vw,80px) 0;}
  .need-side{padding:22px 20px;}
  .need-side .nrow p{font-size:.88rem;}
  .mini-steps li{gap:14px;padding:15px 0;}
  .mini-steps b{width:32px;height:32px;font-size:.7rem;}
  .split-photo{min-height:260px;}
  .split-photo .fcard,.page-hero .ph-visual .fcard{left:12px;bottom:12px;padding:12px 14px;}
  .stat-grid{grid-template-columns:1fr;row-gap:32px;}
  .foot-grid{grid-template-columns:1fr;gap:34px;}
  .foot-base .in{flex-direction:column;gap:8px;align-items:flex-start;}
  .final-inner h2{font-size:clamp(1.5rem,1.2rem + 3vw,2.1rem);}
  .hero-ctas{width:100%;}
  .hero-ctas .btn{width:100%;justify-content:center;}
  .faq{margin-top:36px;}
  .qa summary{font-size:.98rem;padding:18px 16px;}
  .team-grid{grid-template-columns:1fr;}
  .bento .bcard{min-height:0;}
  .lead-points li{padding:14px 0;}
  .qmodal-ov{padding:12px;align-items:flex-end;}
  .qmodal{max-height:88vh;border-radius:22px;}
  .std-chips{gap:8px;}
  .std-chips .std{padding:8px 13px;font-size:.68rem;}
  .marquee{gap:28px;}
  .aud{gap:16px;padding:18px 0;}
  .aud h3{font-size:1.02rem;}
}
@media (max-width:480px){
  :root{--pad:20px;}
  .page-hero h1{font-size:clamp(1.7rem,1.4rem + 3.5vw,2.2rem);}
  .team-grid{grid-template-columns:1fr;}
  .need-tags span{padding:7px 11px;font-size:.64rem;}
}


/* legal pages */
.page-hero .inner.solo{grid-template-columns:1fr;}
.legal{max-width:860px;display:flex;flex-direction:column;gap:18px;}
.legal .l-date{font-family:var(--fm);font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:var(--grey-l);}
.legal h2{font-size:1.25rem;font-weight:700;margin-top:18px;letter-spacing:-.01em;}
.legal p,.legal li{font-size:.98rem;line-height:1.75;color:var(--grey);}
.legal ul{padding-left:22px;display:flex;flex-direction:column;gap:8px;}
.legal a{color:var(--green-800);text-decoration:underline;text-underline-offset:3px;}
.legal a:hover{color:var(--green-950);}
.legal strong{color:var(--ink);}

/* kvkk consent checkbox */
.kvkk-check{display:flex;gap:12px;align-items:flex-start;cursor:pointer;font-size:.85rem;line-height:1.6;color:var(--grey);}
.kvkk-check input{appearance:none;width:20px;height:20px;flex:none;margin-top:2px;border:1.5px solid var(--grey-l);border-radius:6px;cursor:pointer;display:grid;place-content:center;transition:background .2s,border-color .2s;background:#fff;}
.kvkk-check input::before{content:"";width:11px;height:11px;clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0%,43% 62%);transform:scale(0);transition:transform .15s;background:var(--green-950);}
.kvkk-check input:checked{background:var(--lime);border-color:var(--lime);}
.kvkk-check input:checked::before{transform:scale(1);}
.kvkk-check a{color:var(--green-800);text-decoration:underline;text-underline-offset:3px;}

/* cookie banner */
.cookie-bar{position:fixed;left:16px;right:16px;bottom:16px;z-index:280;background:var(--deep);color:rgba(244,241,232,.9);border-radius:18px;padding:20px 22px;display:flex;gap:18px;align-items:center;flex-wrap:wrap;box-shadow:0 24px 70px rgba(8,27,23,.45);transform:translateY(calc(100% + 32px));transition:transform .5s var(--ease);}
.cookie-bar.show{transform:none;}
.cookie-bar p{font-size:.88rem;line-height:1.55;flex:1;min-width:240px;}
.cookie-bar p a{color:var(--lime);text-decoration:underline;text-underline-offset:3px;}
.cookie-bar .cb-actions{display:flex;gap:10px;flex-wrap:wrap;}
.cookie-bar button{font:inherit;font-size:.85rem;font-weight:600;border-radius:999px;padding:11px 20px;cursor:pointer;transition:transform .2s,background .2s;}
.cookie-bar .cb-accept{background:var(--lime);border:1px solid var(--lime);color:var(--green-950);}
.cookie-bar .cb-accept:hover{transform:translateY(-1px);}
.cookie-bar .cb-decline{background:transparent;border:1px solid rgba(244,241,232,.35);color:rgba(244,241,232,.9);}
.cookie-bar .cb-decline:hover{border-color:var(--lime);color:var(--lime);}
@media (max-width:640px){
  .cookie-bar{left:10px;right:10px;bottom:10px;flex-direction:column;align-items:stretch;}
  .cookie-bar .cb-actions button{flex:1;}
}


/* footer legal links */
.foot-legal{display:flex;gap:18px;flex-wrap:wrap;}
.foot-legal a{color:var(--grey-l);text-decoration:none;transition:color .25s;}
.foot-legal a:hover{color:var(--lime);}

/* footer legal row (above divider, above copyright) */
.foot-legal-row{padding:0 var(--pad) 22px;}
.foot-legal-row .foot-legal{display:flex;gap:16px;flex-wrap:wrap;justify-content:flex-start;}
.foot-legal-row .foot-legal a{font-size:.76rem;color:rgba(244,241,232,.6);}
.foot-legal-row .foot-legal a:hover{color:var(--lime);}
/* google maps embed */
.map-embed{margin-top:16px;background:#fff;border:1px solid var(--border);border-radius:var(--r-sm);padding:10px;box-shadow:0 16px 40px rgba(8,27,23,.06);transition:transform .25s var(--ease),box-shadow .25s;}
.map-embed:hover{transform:translateY(-3px);box-shadow:0 20px 44px rgba(8,27,23,.1);}
.map-embed iframe{display:block;width:100%;height:320px;border:0;border-radius:9px;}
.map-dir{margin:12px 4px 4px;display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:.9rem;color:var(--green-900);}
.map-dir svg{transition:transform .2s var(--ease);}
.map-dir:hover{color:var(--green-700);}
.map-dir:hover svg{transform:translate(2px,-2px);}
/* final CTA mark */
.cta-mark{width:58px;height:58px;border-radius:50%;background:rgba(200,232,106,.13);border:1px solid rgba(200,232,106,.4);display:flex;align-items:center;justify-content:center;color:var(--lime);}
.cta-mark svg{width:26px;height:26px;}
/* blog post article */
.post-meta{display:flex;gap:14px;align-items:center;font-family:var(--fm);font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--grey-l);}
.post-hero-img{border-radius:var(--r-md);overflow:hidden;margin:0 0 34px;}
.post-hero-img img{width:100%;aspect-ratio:21/9;object-fit:cover;filter:saturate(.8);}

/* blog post detail */
.post-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(32px,4.5vw,80px);align-items:start;}
.post-body{max-width:780px;}
.post-body .post-meta{margin-bottom:24px;}
.post-body p{font-size:1.03rem;line-height:1.85;color:#41504a;margin:0 0 18px;max-width:70ch;}
.post-body>p:first-of-type{font-size:1.16rem;line-height:1.75;color:var(--ink);}
.post-body h2{font-size:clamp(1.25rem,1.1rem + .8vw,1.55rem);font-weight:700;letter-spacing:-.015em;line-height:1.25;margin:36px 0 14px;padding-top:20px;position:relative;text-wrap:balance;}
.post-body h2::before{content:"";position:absolute;top:0;left:0;width:46px;height:3px;border-radius:99px;background:var(--lime);}
.post-body ul{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-direction:column;gap:10px;}
.post-body li{position:relative;padding-left:28px;font-size:.99rem;line-height:1.7;color:#41504a;}
.post-body li::before{content:"";position:absolute;left:2px;top:.5em;width:11px;height:11px;border-radius:4px;background:var(--lime);box-shadow:inset 0 0 0 1.5px rgba(8,27,23,.35);}
.post-body a{color:var(--green-800);font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(200,232,106,.9);text-decoration-thickness:2px;}
.post-body a:hover{color:var(--green-950);}
.post-body strong{color:var(--ink);}
.post-aside{position:sticky;top:104px;display:flex;flex-direction:column;gap:16px;}
.aside-card{background:var(--deep);color:#fff;border-radius:var(--r-md);padding:30px 26px;display:flex;flex-direction:column;gap:14px;align-items:flex-start;position:relative;overflow:hidden;}
.aside-card::before{content:"";position:absolute;top:-70px;right:-70px;width:190px;height:190px;border-radius:50%;border:1px dashed rgba(200,232,106,.3);pointer-events:none;}
.aside-card h3{color:#fff;font-size:1.18rem;font-weight:700;line-height:1.35;letter-spacing:-.01em;}
.aside-card p{color:rgba(244,241,232,.75);font-size:.9rem;line-height:1.6;}
.aside-card .btn{margin-top:4px;}
.aside-contact{display:flex;flex-direction:column;gap:7px;margin-top:8px;padding-top:14px;border-top:1px solid rgba(244,241,232,.14);width:100%;}
.aside-contact a{font-size:.9rem;font-weight:500;color:rgba(244,241,232,.85);}
.aside-contact a:hover{color:var(--lime);}
.aside-contact small{display:block;font-family:var(--fm);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(244,241,232,.45);margin-bottom:2px;}
.rel-posts{margin-top:var(--sp-head-gap);border-top:1px solid var(--line);padding-top:var(--sp-lg);}
.rel-posts .rel-grid{margin-top:var(--sp-md);}
@media (max-width:1080px){.post-grid{grid-template-columns:1fr;}.post-aside{position:static;}}


/* ============================================================
   LAYOUT REVİZYONU — section ritmi, kapanış bölgesi, kompakt kartlar
   ============================================================ */

/* ---------- 1) FORM + FOOTER = tek "final contact zone" ----------
   İki panel aynı koyu aileden; aralarında büyük bir boşluk yerine
   kontrollü bir dikiş (seam) ve küçülen radius var. Böylece
   "iletişim → footer" olarak okunur, tek dev blok gibi görünmez.      */
.lead-sec.final-zone{margin-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0;}
.lead-sec.final-zone + .final-foot,
.lead-sec.final-zone + .final-foot.no-cta{margin-top:0;border-top-left-radius:0;border-top-right-radius:0;}
/* form ⇄ footer: krem separator yok; ayrım tek bir hairline + kontrollu padding */
.lead-sec.final-zone + .final-foot.no-cta .foot-grid{border-top:1px solid rgba(244,241,232,.12);}
/* footer, form ile aynı dekoratif dili sürdürsün (CTA'sız halde de) */
.final-foot.no-cta::before{display:block;top:auto;bottom:-260px;left:auto;right:-120px;transform:none;
  width:520px;height:520px;border-color:rgba(200,232,106,.14);}
.lead-sec.final-zone .inner{padding-bottom:var(--sp-xl);}
.lead-copy{gap:var(--sp-head);}
/* sol kolon ile form kartı aynı üst hizadan başlar (dikeyde ortalanmaz) */
@media (min-width:1081px){
  .lead-sec .inner{align-items:start;}
  .lead-copy{position:static;padding-block:0;}
}

/* ---------- 2) İLGİLİ HİZMETLER — bağımsız açık bant ----------
   Üstteki koyu panelden net ayrılır; label → başlık → kart ritmi
   diğer section'larla aynı token'ları kullanır.                        */
/* açık zeminli panel: koyu panellerle aynı yuvarlak kabuk dilini kullanır */
section.block.on-stone,section.block.related,section.block.insights-band{
  background:var(--stone);margin:var(--sp-panel-gap) var(--gutter);
  border-radius:var(--r-lg);padding:var(--sp-section-in) 0;}
.philo+section.block.related,.philo+section.block.insights-band,
.philo+section.block.on-stone{padding-top:var(--sp-section-in);}

/* kompakt hizmet kartı: görsel baskın değil, yükseklikler eşit */
.rel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-grid);margin-top:var(--sp-head-gap);}
.rel-grid .svc{padding:10px;background:#fff;}
.rel-grid .svc .ph img{aspect-ratio:16/9;}
.rel-grid .svc-body{gap:var(--sp-2xs);padding:16px 8px 6px;}
.rel-grid .svc h3{font-size:1rem;line-height:1.32;}
.rel-grid .svc p{font-size:.85rem;line-height:1.55;}
.rel-grid .svc .foot{margin-top:14px;}
.rel-grid .svc .foot span{font-size:.82rem;}
.rel-grid .svc .arrow-chip{width:30px;height:30px;}
.rel-grid .svc:hover{box-shadow:0 22px 46px rgba(8,27,23,.13);}
/* 3 kart: laptop/tablette de 3 kolon kalır ki "2+1 yetim kart" oluşmasın */
@media (max-width:700px){.rel-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:620px){.rel-grid{grid-template-columns:1fr;}.rel-grid .svc .ph img{aspect-ratio:21/9;}}
/* blog detayındaki ilgili yazılar da aynı kompakt gridi kullanır */
.rel-posts .rel-grid{grid-template-columns:repeat(2,1fr);}
@media (max-width:760px){.rel-posts .rel-grid{grid-template-columns:1fr;}}

/* ---------- 3) BİLGİ MERKEZİ (ana sayfa son içerik bandı) ---------- */
section.block.insights-band .ins{border-color:rgba(13,40,34,.1);}

/* ---------- 4) GLOBAL KART BOYUTU ----------
   Kart yüksekliği içeriğe göre; görsel alan asla dominant değil.       */
.svc .ph img{aspect-ratio:4/3;}
.ins .ph img{aspect-ratio:16/9;}
.bcard .photo img{aspect-ratio:16/9;}
.bcard.tall .photo img{aspect-ratio:4/4;}
.split-photo{min-height:400px;}
.page-hero .ph-visual{min-height:340px;}
.banner-inner{padding:var(--sp-xl) var(--pad);}

/* ---------- 5) ARA BAŞLIK / TAG RİTMİ ---------- */
.std-chips{margin-bottom:0;}
.philo .inner > .std-chips:last-child,.philo .inner > .std-label + .std-chips{padding-bottom:0;}

/* ============ responsive spacing: laptop → tablet → mobile ============ */
@media (max-width:1366px){
  :root{--sp-section:clamp(60px,6.4vw,96px);--sp-section-in:clamp(52px,5.8vw,84px);
        --sp-panel-gap:clamp(26px,3vw,40px);--sp-head-gap:clamp(32px,3.8vw,52px);
        --sp-sub:clamp(36px,4vw,48px);}
}
@media (max-width:1080px){
  :root{--sp-section:clamp(52px,6vw,76px);--sp-section-in:clamp(46px,5.4vw,72px);
        --sp-panel-gap:clamp(22px,2.8vw,32px);--sp-head-gap:clamp(28px,3.4vw,40px);
        --sp-sub:32px;--sp-sub-gap:16px;--sp-head:14px;}
  .ins-grid{grid-template-columns:repeat(2,1fr);}
  .split-photo{min-height:300px;}
  .page-hero .ph-visual{min-height:280px;}
}
@media (max-width:760px){
  :root{--sp-section:clamp(44px,9vw,60px);--sp-section-in:clamp(40px,8vw,56px);
        --sp-panel-gap:18px;--sp-head-gap:26px;--sp-sub:28px;--sp-sub-gap:14px;
        --sp-head:12px;--sp-grid:12px;--sp-xl:34px;--sp-lg:26px;}
  section.block{padding:var(--sp-section) 0;}
  section.block.after-dark{padding-top:calc(var(--sp-section) + 10px);}
  .philo + section.block,.metrics + section.block,.banner + section.block,
  .page-hero + section.block,.hero + section.block{padding-top:calc(var(--sp-section) + 10px);}
  .ins-grid{grid-template-columns:1fr;}
  .svc .ph img,.ins .ph img{aspect-ratio:16/9;}
  .split-photo{min-height:220px;}
  .std-label{margin-top:var(--sp-sub);padding-top:var(--sp-md);}
  .foot-grid{padding:var(--sp-xl) var(--pad) var(--sp-lg);}
  .final-inner{gap:16px;}
  .lead-sec.final-zone .inner{padding-bottom:var(--sp-lg);}
}
@media (max-width:480px){
  :root{--sp-section:40px;--sp-section-in:36px;--sp-head-gap:22px;--sp-sub:24px;--sp-panel-gap:14px;}
  .rel-grid .svc .ph img,.svc .ph img{aspect-ratio:16/9;}
  .sectors{padding:26px 0 4px;}
}

/* ============ HEADER — Hizmetler hover dropdown ============ */
.nav-item{position:relative;display:flex;align-items:center;}
.nav-sub{position:absolute;top:100%;left:50%;transform:translate(-50%,8px);
  min-width:258px;padding:7px;margin-top:9px;
  background:rgba(255,253,248,.92);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  border:1px solid var(--border);border-radius:26px;
  box-shadow:0 12px 38px rgba(8,27,23,.12);
  display:flex;flex-direction:column;gap:2px;
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .18s var(--ease),transform .22s var(--ease),visibility .18s;z-index:5;}
/* hover'da menüye giderken kapanmasın: görünmez köprü */
.nav-sub::before{content:"";position:absolute;top:-20px;left:0;right:0;height:20px;}
.nav-item.open .nav-sub{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0);}
/* nav.links a kurallarını geçmek için aynı kökten yazılır */
nav.links .nav-sub a{display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:10px 16px;border-radius:999px;font-size:.9rem;font-weight:500;
  color:var(--ink);white-space:nowrap;background:transparent;
  transition:background .2s,color .2s;}
nav.links .nav-sub a:hover,nav.links .nav-sub a:focus-visible{background:var(--stone);color:var(--ink);}
nav.links .nav-sub a.active{background:var(--green-900);color:#fff;}
nav.links .nav-sub a.active .ns-go{opacity:1;color:var(--lime);}
nav.links .nav-sub a .ns-go{opacity:0;color:var(--green-700);transition:opacity .18s,transform .18s var(--ease);}
nav.links .nav-sub a:hover .ns-go,nav.links .nav-sub a:focus-visible .ns-go{opacity:1;transform:translateX(2px);}
.nav-sub .ns-sep{height:1px;background:var(--border);margin:5px 14px;}
/* header scroll'da koyulasinca alt menu de ayni yuzey degerini alir */
header.nav.shrunk .nav-sub{background:rgba(255,253,248,.96);}
nav.links .nav-sub a.ns-all{font-family:var(--fm);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--green-700);}
nav.links .nav-sub a.ns-all:hover{color:var(--green-950);}
nav.links a.nav-trigger .nv-chev{margin-left:6px;display:inline-flex;transition:transform .22s var(--ease);vertical-align:middle;}
.nav-item.open > a.nav-trigger .nv-chev{transform:rotate(180deg);}
nav.links .nav-item.open>a.nav-trigger{background:var(--stone);color:var(--ink);}
nav.links .nav-item.open>a.nav-trigger.active{background:var(--green-900);color:#fff;}
@media (max-width:960px){.nav-sub{display:none;}}


/* ============================================================
   GLOBAL SPACING KURALLARI — sayfa bazlı tekil margin yerine
   tek bir sistem. (layout revizyonu · ek tur)
   ============================================================ */

/* ---------- A) Section'ın ilk içeriği kendi üst boşluğunu taşımaz ----------
   .contact-grid / .cat-chips / .faq gibi bloklar normalde bir sec-head'in
   ardından geldikleri için margin-top taşır. Section'ın ilk çocuğu
   olduklarında bu margin, section padding'inin üzerine binip çift boşluk
   yaratıyordu (İletişim, Teklif Al, Blog). Ritim tek kaynaktan gelsin.     */
.wrap > *:first-child,
.inner > *:first-child{margin-top:0;}

/* ---------- B) sec-row içindeki yardımcı CTA'nın optik hizası ----------
   Başlık bloğunun son satırıyla aynı taban çizgisine oturur.
   (Sayfalara inline style yazmak yerine tek kural.)                        */
.sec-row > .btn{margin-bottom:6px;}

/* ---------- C) AÇIK BANT RİTMİ (.on-stone) ----------
   Uzun "hep aynı zemin" akışlarını kırmak için kullanılan açık bant.
   Bir önceki/sonraki açık section ile arasındaki mesafe, iki normal
   section arasındaki ritim adımıyla aynı kalsın; bant kendi
   panel-gap'ini üstten iki kez eklemesin.                                  */
section.block + section.block.on-stone{margin-top:0;padding-top:var(--sp-section-in);}
section.block.on-stone + section.block.flow{padding-top:calc(var(--sp-section) * .48);}
section.block.on-stone + section.block:not(.flow){padding-top:calc(var(--sp-section) * .48);}
/* koyu panelden sonra gelen açık bant zaten kendi nefesini alır */
.philo + section.block.on-stone,.metrics + section.block.on-stone{padding-top:var(--sp-section-in);}
/* açık bandın hemen ardından footer/CTA geliyorsa çift boşluk oluşmasın */
section.block.on-stone + .final-foot{margin-top:var(--sp-panel-gap);}

/* ---------- D) SSS: soru grupları arasında okunabilir ritim ----------
   Grup başlıkları merkezli ve birbirine çok benzediği için sayfa tek bir
   uzun açık yüzey olarak okunuyordu. Birer atlayarak açık bant kullanılır. */
section.block.on-stone > .wrap > .faq{margin-top:var(--sp-head-gap);}

/* blog detay: "geri dön" ayırıcısı da ortak ritim token'larını kullanır */
.post-back{margin-top:var(--sp-head-gap);padding-top:var(--sp-lg);border-top:1px solid var(--line);}
.post-back a{font-family:var(--fm);font-size:.8rem;letter-spacing:.04em;color:var(--grey);}
.post-back a:hover{color:var(--green-900);}

/* ---------- E) Başlık bloğu → ilk içerik kartı ----------
   İletişim / Teklif Al sayfalarında ofis kartı başlığa yapışıyordu;
   diğer tüm section'larla aynı nefesi alsın.                              */
.sec-head + .office{margin-top:var(--sp-head-gap);}

/* ---------- F) Blog detay "Okumaya devam edin" modülü ----------
   Yazının devamındaki ikincil bir bölüm; iki kart sayfayı ele geçirmesin,
   görsel alanı ana içerikten daha baskın olmasın.                         */
.rel-posts .rel-grid .ins .ph img{aspect-ratio:21/9;}
@media (max-width:760px){.rel-posts .rel-grid .ins .ph img{aspect-ratio:16/9;}}


/* ============================================================
   ARKA PLAN RİTMİ REVİZESİ — koyu vurgu section'ı
   Kural: krem bant otomatik ayirici degildir. Koyu yuzey markanin
   ana yuzeyi; ayrim gerektiginde once spacing/radius/divider,
   en son acik zemin kullanilir.
   ============================================================ */

/* ---------- .block.on-dark — acik akis icindeki koyu vurgu paneli ----------
   Mevcut .philo panel dilini kullanir; yeni bir gorsel dil uretmez.
   (Hakkimizda > Degerlerimiz)                                            */
section.block.on-dark{
  background:var(--deep);color:#fff;position:relative;overflow:hidden;
  margin:var(--sp-panel-gap) var(--gutter);
  border-radius:var(--r-lg);
  padding:var(--sp-section-in) 0;}
/* .block + .block padding kuralini gecmek icin ayni ozgullukte */
section.block + section.block.on-dark{padding-top:var(--sp-section-in);}
section.block.on-dark::before{content:"";position:absolute;top:-32%;right:-10%;
  width:520px;height:520px;border-radius:50%;pointer-events:none;
  border:1px dashed rgba(200,232,106,.22);animation:spin 80s linear infinite;}
@media (prefers-reduced-motion: reduce){section.block.on-dark::before{animation:none;}}
section.block.on-dark > .wrap{position:relative;z-index:1;}

/* icerigin koyu zemine cevrilmesi */
section.block.on-dark .sec-head h2{color:#fff;}
section.block.on-dark .sec-head p{color:rgba(244,241,232,.78);}
section.block.on-dark .eyebrow{color:rgba(244,241,232,.78);}
section.block.on-dark .eyebrow::before,
section.block.on-dark .eyebrow::after{opacity:.4;}
/* kartlar .pcard ile ayni koyu-panel karti dilinde */
section.block.on-dark .scope{
  background:rgba(255,255,255,.055);border-color:rgba(244,241,232,.12);}
section.block.on-dark .scope:hover{
  background:rgba(255,255,255,.1);border-color:rgba(200,232,106,.35);
  box-shadow:none;}
section.block.on-dark .scope h3{color:#fff;}
section.block.on-dark .scope p{color:rgba(244,241,232,.75);}
section.block.on-dark .scope::after{color:rgba(244,241,232,.4);}
section.block.on-dark .scope .glyph{
  background:rgba(200,232,106,.15);color:var(--lime);}


/* ============================================================
   FINAL ART DIRECTION — mevcut icerigi daha guclu sunma
   Yeni section/renk/component dili yok; olcek, grid, whitespace,
   asimetri ve divider ile karakter kazandirilir.
   ============================================================ */

/* ---------- 1) MANIFESTO — asimetrik editorial moment ----------
   Buyuk ifade solda genis nefes alir; aciklama ve CTA sagda dar bir
   kolonda, statement'in ust hizasindan baslayan hairline ile ayrilir.  */
.manifesto > .wrap > .eyebrow{display:block;margin-bottom:var(--sp-head);}
.mf-grid{display:grid;grid-template-columns:1.22fr .78fr;
  gap:clamp(28px,4.4vw,84px);align-items:start;}
.manifesto .statement{max-width:20ch;
  font-size:clamp(2rem,1.35rem + 3.1vw,4.15rem);letter-spacing:-.035em;line-height:1.05;}
.mf-aside{display:flex;flex-direction:column;align-items:flex-start;
  gap:var(--sp-md);border-top:1px solid var(--line);padding-top:var(--sp-md);}
.mf-aside p{font-size:1.0625rem;line-height:1.75;color:var(--grey);max-width:46ch;}
@media (max-width:1080px){
  .mf-grid{grid-template-columns:1fr;gap:var(--sp-lg);}
  .manifesto .statement{max-width:24ch;}
}
@media (max-width:760px){
  .manifesto .statement{max-width:none;font-size:clamp(1.7rem,1.2rem + 3.6vw,2.5rem);}
  .mf-aside{gap:var(--sp-sm);padding-top:var(--sp-sm);}
}

/* ---------- 2) RAKAMLAR — tipografik olcek one cikar ----------
   Kart kutusu hissi zaten yok; rakam olcegi buyutulur, ayirici
   incelir, kolonlar arasi nefes artar.                                */
.stat-grid{gap:clamp(24px,4.2vw,72px);}
.stat{border-top-width:1px;padding-top:clamp(22px,2.4vw,34px);gap:10px;}
.stat::before{height:1px;}
.stat b{font-size:clamp(3.6rem,2.5rem + 4.6vw,7rem);letter-spacing:-.045em;}
.stat h3{font-size:1.08rem;letter-spacing:-.005em;}
.stat p{max-width:34ch;}
@media (max-width:760px){
  .stat b{font-size:clamp(3.2rem,2.2rem + 6vw,4.6rem);}
  .stat{padding-top:18px;}
}

/* ---------- 3) FORM — sayfanin final kapanis kompozisyonu ----------
   Sol blok formla ayni ust hizadan baslar (mevcut), basligi bir tik
   guclenir, iletisim satiri hairline ile rafine hizalanir.            */
.lead-copy h2{font-size:clamp(2rem,1.55rem + 2.15vw,3.45rem);letter-spacing:-.03em;}
.lead-copy > p{max-width:48ch;}
.lead-contact{margin-top:var(--sp-sm);padding-top:var(--sp-md);
  border-top:1px solid rgba(244,241,232,.14);width:100%;
  gap:clamp(24px,3.4vw,56px);}
.lead-contact a small{margin-bottom:3px;}


/* ============================================================
   SON REVIZELER — badge ikonu, standartlar blogu, Neden Biz
   ============================================================ */

/* ---------- 1) fcard badge ikonu ----------
   .fcard span / .fcard.dark span kurallari <span class="badge">'i de
   yakalayip ikon rengini eziyordu (koyu kartta neredeyse beyaz,
   acik kartta gri). Ikon her zaman lime uzerinde koyu yesil olur.     */
.fcard .badge,
.fcard.dark .badge{color:var(--green-950);}

/* ---------- 2) STANDARTLAR — bagimsiz acik blok ----------
   Iki koyu panel (Neden Audit Partners ⇄ Bilgi Formu) arasinda
   gorsel tampon. Kendi basina okunur ama dev bir section degil.       */
section.block.standards{padding-block:var(--sp-xl);}
/* etiket ustte, tag'ler tam genislikte tek sirada: 6 chip 1440'ta
   yan etiket kolonuyla tek satira sigmiyor, 5+1 yetim kirilma olusuyordu */
.std-row{display:flex;flex-direction:column;gap:var(--sp-sub-gap);}
/* etiket sarilirsa kapanis parantezi son satirda kalsin */
.standards .std-row > .eyebrow{display:block;}
.standards .std-chips{margin-top:0;}

/* ---------- 3) NEDEN BIZ (Hakkimizda) — iki kolon + gorsel ----------
   Bej zemin kalkti; bosluk yerine kontrollu bir kurumsal gorsel ve
   2x2 kart bloguyla dolduruldu. Kartlar mevcut .pcard dilinin
   acik zemin varyantini kullanir.                                     */
.why-grid{display:grid;grid-template-columns:.82fr 1.18fr;
  gap:clamp(28px,4vw,72px);align-items:stretch;}
.why-visual{position:relative;border-radius:var(--r-md);overflow:hidden;
  background:var(--green-800);min-height:100%;}
.why-visual img{position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;filter:saturate(.5) contrast(1.04) brightness(.92);}
/* gorsel "stock foto" degil, atmosferik bir kurumsal doku gibi okunsun */
.why-visual::after{content:"";position:absolute;inset:0;
  background:linear-gradient(12deg,rgba(8,27,23,.62) 0%,rgba(8,27,23,.28) 46%,rgba(8,27,23,.12) 100%);}
.why-body{display:flex;flex-direction:column;}
.why-cards{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-grid);
  margin-top:var(--sp-head-gap);}
/* acik zeminde .pcard: beyaz kart + ince cizgi */
.whyus .pcard{background:#fff;border:1px solid var(--border);}
.whyus .pcard:hover{background:#fff;border-color:rgba(13,40,34,.28);
  box-shadow:0 22px 46px rgba(8,27,23,.09);transform:translateY(-5px);}
.whyus .pcard .glyph{background:rgba(200,232,106,.4);color:var(--green-900);}
.whyus .pcard h3,.whyus .pcard h4{color:var(--ink);}
.whyus .pcard p{color:var(--grey);}
@media (max-width:1080px){
  .why-grid{grid-template-columns:1fr;gap:var(--sp-lg);}
  .why-visual{min-height:280px;}
}
@media (max-width:620px){
  .why-cards{grid-template-columns:1fr;}
  .why-visual{min-height:210px;}
}


/* ============================================================
   EK SON REVIZELER — bej azaltma, bos alanlari guclendirme,
   tiklanabilir adresler
   ============================================================ */

/* ---------- 1) ILGILI HIZMETLER — bej panel kalkti ----------
   Koyu section'dan sonra gelen notr acik bolum; "kutulanmis"
   gorunmesin diye yuvarlak bej kabuk yerine duz section.          */
section.block.related{background:transparent;margin-inline:0;
  border-radius:0;padding:var(--sp-section) 0;}
.philo + section.block.related{padding-top:calc(var(--sp-section) + var(--sp-sm));}
/* notr zeminde kart siniri biraz belirginlesir */
section.block.related .svc{border-color:rgba(13,40,34,.13);}

/* ---------- 2) STANDARTLAR — bagimsiz guven / uzmanlik section'u ----------
   Sol %45: label → baslik → dar aciklama → yatay editorial gorsel.
   Sag %55: 6 satirlik premium standart listesi.
   Padding icerige gore; section artik bos bir tampon degil.          */
section.block.standards{padding-block:clamp(46px,5.2vw,82px);position:relative;overflow:hidden;}
/* cok hafif grid dokusu: duz beyazligi kirar, renkli panel olusturmaz */
section.block.standards::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(rgba(13,40,34,.032) 1px,transparent 1px),
             linear-gradient(90deg,rgba(13,40,34,.032) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:linear-gradient(to bottom,transparent,black 22%,black 78%,transparent);
  -webkit-mask-image:linear-gradient(to bottom,transparent,black 22%,black 78%,transparent);}
section.block.standards > .wrap{position:relative;z-index:1;}

.sd-grid{display:grid;grid-template-columns:45fr 55fr;
  gap:clamp(28px,4vw,72px);align-items:stretch;}
.sd-head{display:flex;flex-direction:column;gap:var(--sp-head);}
.sd-head h2{font-size:clamp(1.6rem,1.35rem + 1.15vw,2.3rem);
  line-height:1.14;font-weight:700;letter-spacing:-.02em;text-wrap:balance;max-width:18ch;}
.sd-head p{font-size:1rem;line-height:1.68;color:var(--grey);max-width:38ch;}

/* editorial gorsel: yatay crop, kontrollu yukseklik — section'a hakim degil */
.sd-visual{margin-top:var(--sp-xs);border-radius:var(--r-sm);overflow:hidden;
  position:relative;background:var(--green-800);}
.sd-visual img{display:block;width:100%;aspect-ratio:16/7;object-fit:cover;
  filter:saturate(.42) contrast(1.05) brightness(.94);}
.sd-visual::after{content:"";position:absolute;inset:0;
  background:linear-gradient(190deg,rgba(8,27,23,.42) 0%,rgba(8,27,23,.1) 55%,rgba(8,27,23,.04) 100%);}

/* premium liste: kucuk index + baslik, ince divider, hafif lime accent */
.sd-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;
  border-top:1px solid var(--line);}
.sd-list li{display:flex;align-items:center;gap:clamp(14px,1.6vw,22px);
  padding:clamp(15px,1.5vw,20px) 6px;border-bottom:1px solid var(--line);
  transition:padding-left .32s var(--ease),background .25s,border-color .25s;}
/* liste sol kolonun yuksekligine yayilir: iki kolon dengeli biter */
@media (min-width:1081px){
  .sd-list{height:100%;}
  .sd-list li{flex:1;}
}
.sd-list li:hover{background:rgba(200,232,106,.13);padding-left:16px;
  border-color:rgba(13,40,34,.2);}
.sd-n{font-family:var(--fm);font-size:.72rem;letter-spacing:.06em;color:var(--grey-l);
  flex:none;width:22px;transition:color .25s;}
.sd-list li:hover .sd-n{color:var(--green-700);}
.sd-t{font-family:var(--fd);font-weight:600;font-size:1.06rem;
  letter-spacing:-.008em;color:var(--ink);line-height:1.35;}
@media (max-width:1080px){
  .sd-grid{grid-template-columns:1fr;gap:var(--sp-lg);}
  .sd-head h2{max-width:24ch;}
  .sd-head p{max-width:56ch;}
  .sd-visual img{aspect-ratio:24/7;}   /* stack halinde gorsel baskin olmasin */
}
@media (max-width:620px){
  .sd-visual img{aspect-ratio:16/8;}
  .sd-t{font-size:1rem;}
  .sd-list li{padding:14px 2px;}
}

/* ---------- 3) HIZMET YAKLASIMIMIZ — bej kalkti, iki kolon + gorsel ---- */
.ap-grid{display:grid;grid-template-columns:1.06fr .94fr;
  gap:clamp(28px,4.4vw,76px);align-items:stretch;}
.ap-body{display:flex;flex-direction:column;}
.ap-body .std-chips{margin-top:var(--sp-lg);}
.ap-visual{position:relative;border-radius:var(--r-md);overflow:hidden;
  background:var(--green-800);min-height:100%;}
.ap-visual img{position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;filter:saturate(.5) contrast(1.04) brightness(.94);}
.ap-visual::after{content:"";position:absolute;inset:0;
  background:linear-gradient(200deg,rgba(8,27,23,.55) 0%,rgba(8,27,23,.2) 48%,rgba(8,27,23,.08) 100%);}
@media (max-width:1080px){
  .ap-grid{grid-template-columns:1fr;gap:var(--sp-lg);}
  .ap-visual{min-height:260px;}
}
@media (max-width:620px){.ap-visual{min-height:200px;}}

/* ---------- 4) TIKLANABILIR ADRESLER ---------- */
.foot-col a.foot-addr{display:inline;color:rgba(244,241,232,.75);
  text-decoration:underline;text-decoration-color:rgba(244,241,232,.25);
  text-underline-offset:3px;transition:color .2s,text-decoration-color .2s;}
.foot-col a.foot-addr:hover{color:#fff;text-decoration-color:var(--lime);}
.office a.office-addr{display:inline;color:inherit;
  text-decoration:underline;text-decoration-color:rgba(13,40,34,.22);
  text-underline-offset:3px;transition:color .2s,text-decoration-color .2s;}
.office a.office-addr svg{display:inline-block;vertical-align:-1px;margin-left:4px;
  opacity:.55;transition:transform .2s var(--ease),opacity .2s;}
.office a.office-addr:hover{color:var(--green-800);text-decoration-color:var(--lime-d);}
.office a.office-addr:hover svg{opacity:1;transform:translate(2px,-2px);}


/* ============================================================
   FOOTER — iki kolonlu, daha kompakt yerlesim
   Sol: marka bloğu. Sag: link + iletisim kumesi (3 alt kolon).
   Amac: 4 blogun tum genislige yayilmasini kirmak.
   ============================================================ */
.foot-links{display:grid;grid-template-columns:1fr 1.05fr 1.55fr;
  gap:clamp(20px,2.2vw,40px);}
.foot-brand{gap:10px;}
.foot-brand p{max-width:38ch;font-size:.9rem;line-height:1.6;}
.foot-col .h{margin-bottom:6px;}
.foot-col a,.foot-col p{font-size:.885rem;line-height:1.55;}
/* iletisim: adres bloklari okunabilir genislikte kalir */
.foot-contact p{max-width:36ch;margin-bottom:2px;}
.foot-contact p + p{margin-top:8px;}
.foot-contact > a[href^="tel:"]{margin-top:10px;}
.foot-contact strong{display:inline-block;margin-bottom:3px;
  font-family:var(--fm);font-weight:500;font-size:.72rem;
  letter-spacing:.08em;text-transform:uppercase;}

@media (max-width:1080px){
  .foot-links{grid-template-columns:1fr 1fr 1.45fr;gap:clamp(18px,2vw,30px);}
  .foot-brand p{max-width:44ch;}
}
@media (max-width:960px){
  .foot-grid{grid-template-columns:1fr;gap:var(--sp-lg);}
  .foot-brand p{max-width:60ch;}
  .foot-links{grid-template-columns:1fr 1fr;gap:var(--sp-md) clamp(20px,4vw,40px);}
  /* iletisim blogu tam genislikte: iki ofis yan yana, tel/mail alt sirada */
  .foot-contact{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;
    column-gap:clamp(20px,4vw,40px);row-gap:0;align-content:start;}
  .foot-contact .h{grid-column:1 / -1;}
  .foot-contact p{max-width:none;}
  .foot-contact p + p{margin-top:0;}
  .foot-contact > a[href^="tel:"]{grid-column:1;margin-top:14px;}
  .foot-contact > a[href^="mailto:"]{grid-column:2;margin-top:14px;}
}
@media (max-width:600px){
  .foot-links{grid-template-columns:1fr;gap:var(--sp-md);}
  .foot-contact{grid-template-columns:1fr;}
  .foot-contact p{max-width:none;}
  .foot-contact p + p{margin-top:10px;}
  .foot-contact > a[href^="tel:"],
  .foot-contact > a[href^="mailto:"]{grid-column:1;margin-top:10px;}
}


/* Footer container'i sitenin genel container'i ile ayni sistemi kullanir:
   yatay olcu tek kaynaktan, --pad'den gelir (.wrap ve .lead-sec .inner ile ayni).
   Daha once burada sabit bir --foot-max caps'i vardi; 1600px ustunde footer
   icerigini ortalayip iki yanda gereksiz bosluk birakiyordu. */
.foot-grid,.foot-base .in{max-width:none;margin-inline:0;}
.foot-legal-row .foot-legal{max-width:none;margin-inline:0;width:auto;}


/* ============================================================
   14) SEFFAFLIK RAPORLARI — editoryal rapor arsivi
   Kart grid'i degil; ince divider'larla ayrilmis satirlar.
   Sol: buyuk yil · Orta: baslik + meta · Sag: PDF aksiyonlari
   ============================================================ */
.rep-archive{margin-top:var(--sp-head-gap);border-top:1px solid var(--border);}
.rep-row{display:grid;align-items:center;
  grid-template-columns:auto minmax(0,1fr) auto;
  grid-template-areas:"year body act";
  gap:clamp(22px,3.4vw,56px);
  padding:clamp(24px,2.8vw,38px) clamp(4px,1.2vw,18px);
  border-bottom:1px solid var(--border);
  transition:background .25s var(--ease);}
.rep-row.has-cover{grid-template-columns:auto auto minmax(0,1fr) auto;
  grid-template-areas:"year cover body act";}
.rep-row:hover{background:rgba(13,40,34,.03);}

.rep-year{grid-area:year;font-family:var(--fd);font-weight:700;
  font-size:clamp(2.5rem,1.5rem + 3.1vw,4.4rem);line-height:.86;letter-spacing:-.035em;
  color:var(--green-900);opacity:.88;font-variant-numeric:tabular-nums;
  transition:color .25s,opacity .25s;}
.rep-row:hover .rep-year{color:var(--green-700);opacity:1;}

/* kapak gorseli yalnizca veride varsa basilir — placeholder uretilmez */
.rep-cover{grid-area:cover;display:block;width:clamp(52px,4.6vw,70px);
  border-radius:8px;overflow:hidden;border:1px solid var(--border);
  background:var(--stone);box-shadow:0 8px 22px rgba(8,27,23,.1);}
.rep-cover img{width:100%;height:auto;}

.rep-body{grid-area:body;display:flex;flex-direction:column;gap:7px;min-width:0;}
.rep-body h3{font-size:clamp(1.05rem,1rem + .34vw,1.3rem);font-weight:600;
  letter-spacing:-.015em;line-height:1.28;}
.rep-meta{font-family:var(--fm);font-size:.72rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--grey-l);}

.rep-act{grid-area:act;display:flex;align-items:center;justify-content:flex-end;
  gap:10px;flex-wrap:wrap;}
.rep-view{display:inline-flex;align-items:center;gap:10px;height:46px;
  padding:0 7px 0 20px;border-radius:999px;border:1px solid var(--border);
  font-weight:600;font-size:.9rem;line-height:1;color:var(--ink);white-space:nowrap;
  transition:background .2s,border-color .2s,color .2s,transform .25s var(--ease);}
.rep-view .circ{width:32px;height:32px;border-radius:50%;display:flex;
  align-items:center;justify-content:center;background:var(--green-900);color:var(--lime);
  transition:transform .3s var(--ease),background .2s,color .2s;}
.rep-view:hover{background:var(--green-900);border-color:var(--green-900);color:#fff;transform:translateY(-2px);}
.rep-view:hover .circ{background:var(--lime);color:var(--deep);transform:rotate(45deg);}

.rep-dl{display:inline-flex;align-items:center;gap:9px;height:46px;padding:0 18px;
  border-radius:999px;border:1px solid var(--border);color:var(--green-800);
  font-weight:600;font-size:.9rem;line-height:1;white-space:nowrap;
  transition:background .2s,border-color .2s,color .2s,transform .25s var(--ease);}
.rep-dl:hover{background:var(--lime);border-color:var(--lime);color:var(--deep);transform:translateY(-2px);}

.rep-soon{display:inline-flex;align-items:center;height:46px;padding:0 20px;
  border-radius:999px;border:1px dashed var(--border);font-family:var(--fm);
  font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--grey-l);}
.rep-empty{margin-top:var(--sp-head-gap);color:var(--grey);font-size:1.0625rem;line-height:1.7;}

/* tablet: yil solda kalir, baslik ve aksiyonlar alt alta */
@media (max-width:980px){
  .rep-row{align-items:start;
    grid-template-columns:auto minmax(0,1fr);
    grid-template-areas:"year body" "year act";
    gap:clamp(14px,2.4vw,20px) clamp(20px,3.4vw,36px);}
  .rep-row.has-cover{grid-template-columns:auto auto minmax(0,1fr);
    grid-template-areas:"year cover body" "year cover act";}
  .rep-act{justify-content:flex-start;}
}
/* mobil: yil -> baslik -> aksiyonlar alt alta */
@media (max-width:620px){
  .rep-row{grid-template-columns:1fr;
    grid-template-areas:"year" "body" "act";
    gap:12px;padding:26px 0;}
  .rep-row.has-cover{grid-template-columns:1fr;
    grid-template-areas:"cover" "year" "body" "act";}
  .rep-year{font-size:2.6rem;}
  .rep-act{gap:8px;}
  .rep-view,.rep-dl,.rep-soon{height:44px;}
}


/* ============================================================
   15) FOOTER — orta kolonlarin dengelenmesi
   Kurumsal kolonu artik 7 link (Hizmetler ve Teklif Al kaldirildi;
   ayri HIZMETLER kolonu ve header CTA zaten var). Iki kucuk alt
   sutuna bolme kaldirildi: tek sutun, iki kolon dengeli genislikte.
   ============================================================ */
/* KURUMSAL kolonu: HIZMETLER ile birebir ayni tipografik sistem.
   Ozel bir .foot-nav kurali yok — .foot-col'dan gelen
   display:flex / flex-direction:column / gap:10px aynen gecerli.
   (Onceki 2 sutunlu grid kurali row-gap:0 birakiyordu, kolon sikisik goruunuyordu.) */

.foot-links{grid-template-columns:minmax(0,1.16fr) minmax(0,1fr) minmax(0,1.62fr);
  gap:clamp(22px,2.4vw,44px);}
@media (max-width:1080px){
  .foot-links{grid-template-columns:minmax(0,1.14fr) minmax(0,1fr) minmax(0,1.5fr);
    gap:clamp(18px,2vw,32px);}
}
@media (max-width:960px){
  .foot-links{grid-template-columns:1fr 1fr;gap:var(--sp-md) clamp(20px,4vw,40px);}
}
@media (max-width:600px){
  .foot-links{grid-template-columns:1fr;gap:var(--sp-md);}
}


/* ============================================================
   16) NAV — 8. link (Seffaflik Raporlari) sonrasi olcum duzeltmeleri
   Menu bir link daha uzadi. Logo hicbir durumda ezilmemeli, link
   paddingleri dar masaustunde sikilasmali, 1060px altinda ise
   masaustu menu yerine mevcut drawer menu kullanilmali.
   ============================================================ */
.nav-bar > a:first-child,.nav-logo,nav.links,.nav-right{flex:none;}

/* kucultulmus pill: daha sik link ritmi ile ayni olcuye sigar */
header.nav.shrunk .nav-bar{max-width:1010px;gap:22px;}
header.nav.shrunk nav.links{gap:0;}
header.nav.shrunk nav.links a{padding:9px 11px;}

/* dar masaustu araligi */
@media (max-width:1200px) and (min-width:1061px){
  .nav-bar{gap:18px;}
  nav.links{gap:0;}
  nav.links a{padding:9px 11px;}
}
/* 1060px altinda masaustu menu sikisiyor -> drawer menu */
@media (max-width:1060px){
  nav.links,.nav-cta{display:none !important;}
  .burger{display:flex;z-index:80;width:46px;height:46px;border:1px solid var(--border);
    background:#fff;border-radius:50%;align-items:center;justify-content:center;
    color:var(--ink);font-size:1.2rem;line-height:1;cursor:pointer;
    transition:background .2s,color .2s;}
  .burger:hover{background:var(--green-900);color:#fff;}
}

/* 961-1080 araligi: .foot-grid burada 1fr 1fr oluyordu, marka kolonu
   yarinin tamamini aliyor ve uc link kolonu sikisip 2-3 satira kiriliyordu.
   Marka kolonu daraltilarak link kolonlarina nefes acilir. */
@media (max-width:1080px) and (min-width:961px){
  .foot-grid{grid-template-columns:minmax(196px,.72fr) minmax(0,2.28fr);
    gap:clamp(26px,3.4vw,44px);}
  .foot-links{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1.48fr);
    gap:clamp(16px,2vw,26px);}
  .foot-brand p{max-width:34ch;}
  .foot-contact p{max-width:none;}
}

/* KURUMSAL kolonu HIZMETLER ile ayni genislikte olsun (gorsel denge).
   Ihtiyac duyulan yer marka kolonu biraz daraltilarak kazanilir;
   iletisim kolonu adreslerin iki satirda kalabilecegi olcuyu korur. */
@media (min-width:1081px){
  .foot-grid{grid-template-columns:minmax(220px,.86fr) minmax(0,2.14fr);}
  .foot-links{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.34fr);}
  .foot-brand p{max-width:36ch;}
}
/* 1081-1400: "Finansal Raporlama Danismanligi" 215px istiyor; bu aralikta
   ucu esit yapmak onu kiriyordu. Marka kolonundan pay alinir, Hizmetler
   kolonuna kucuk bir fark verilir; adresler iki satirda kalir. */
@media (min-width:1081px) and (max-width:1400px){
  .foot-grid{grid-template-columns:minmax(210px,.76fr) minmax(0,2.24fr);}
  .foot-links{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1.4fr);}
  .foot-brand p{max-width:32ch;}
}

/* Blog kartlarinda ozet en fazla 3 satir: CMS'ten gelen uzun otomatik ozetler
   onaylanmis kart yuksekligini bozmasin diye guvenlik siniri. Statik icerik
   zaten 3 satirin altinda oldugu icin mevcut tasarimda hicbir degisiklik olmaz. */
.ins-body p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}


/* ============================================================
   17) MOBIL SON REVIZELER  (yalnizca <=480px — masaustu/tablet aynen kalir)
   ============================================================ */
@media (max-width:480px){

  /* --- 1) Section ritmi: bloklar birbirine yapisik gorunuyordu --- */
  :root{
    --sp-section:56px;      /* 40 -> 56 : section ust/alt nefesi        */
    --sp-section-in:48px;   /* 36 -> 48 : koyu panel ic padding'i       */
    --sp-panel-gap:24px;    /* 14 -> 24 : iki full-bleed panel arasi    */
    --sp-head:15px;         /* 12 -> 15 : label -> baslik -> aciklama   */
    --sp-head-gap:30px;     /* 22 -> 30 : baslik blogu -> icerik/grid   */
    --sp-sub:32px;          /* 24 -> 32 : icerik -> ara label           */
    --sp-lg:32px;           /* 26 -> 32                                  */
    --sp-md:24px;           /* kart/gorsel -> sonraki icerik            */
  }
  /* hero ve koyu panel sonrasi gecisler biraz daha acik olsun */
  section.block.after-dark,
  .philo + section.block,.metrics + section.block,.banner + section.block,
  .page-hero + section.block,.hero + section.block{
    padding-top:calc(var(--sp-section) + 14px);}
  /* ust uste gelen iki acik section fazla sikismasin */
  section.block + section.block{padding-top:calc(var(--sp-section) * .72);}
  .final-inner{gap:20px;}
  .sectors{padding:34px 0 6px;}

  /* --- 2) Breadcrumb tek satirda kalsin --- */
  /* "ANA SAYFA / HIZMETLER / FINANSAL RAPORLAMA DANISMANLIGI" iki satira
     kiriliyordu. Font ve harf araligi kisilir, ogeler bolunmez;
     cok uzun bir breadcrumb olursa sayfa degil kendi icinde kayar. */
  .crumb{
    font-size:.62rem;
    letter-spacing:.04em;
    gap:6px;
    white-space:nowrap;
    flex-wrap:nowrap;
    max-width:100%;
    overflow-x:auto;
    overflow-y:hidden;
    scrollbar-width:none;
    -ms-overflow-style:none;
    -webkit-overflow-scrolling:touch;
  }
  .crumb::-webkit-scrollbar{display:none;}
  .crumb > *{flex:none;}

  /* --- 3) Header kapsul gorunumunden cikarilir --- */
  /* Arkadaki hero/panel radius'u mobilde 26px; header ondan biraz daha kucuk. */
  .nav-bar{border-radius:20px;}
  header.nav.shrunk .nav-bar{border-radius:18px;}
  .burger{border-radius:50%;}   /* hamburger yuvarlak kalir */

  /* --- 4) Header logosu buyutulur (bar yuksekligi degismez: burger 46px belirliyor) --- */
  .nav-logo{height:45px;}
  header.nav.shrunk .nav-logo{height:36px;}

  /* --- 5) Footer logosu buyutulur --- */
  .foot-col .foot-logo{height:46px;margin-bottom:12px;}
}

/* ============================================================================
   Mobil yatay tasma kilidi
   ----------------------------------------------------------------------------
   .rv-r reveal animasyonu, eleman gorunur alana girene kadar iceriği 40px saga
   oteler (translateX(40px)). Dar ekranlarda tam genislikteki bir .rv-r blogu
   (orn. hizmetler.html .ap-visual, hizmet-bagimsiz-denetim.html .need-side)
   dokumani ~20px genisletiyor ve sayfa yana kaydirilabiliyordu.
   Kaydirma <html> seviyesinde kirpilir; animasyon, layout ve sticky davranisi
   aynen korunur (mobilde html'e bagli sticky eleman yok).
   ========================================================================== */
@media (max-width:760px){
  html{overflow-x:hidden;}
}

/* ============================================================================
   Sosyal medya — footer marka blogu + iletisim sayfasi
   ----------------------------------------------------------------------------
   Ikon dili mevcut .mnav-close'tan alinir: seffaf zemin, ince kenarlik,
   hover'da lime. Lime yalnizca hover/focus'ta kullanilir, dinlenme halinde
   footer'in koyu yesil dengesi bozulmaz.
   Dokunma hedefi mobilde 44x44'e cikar (WCAG 2.5.8).
   ========================================================================== */
.foot-social{display:flex;flex-direction:column;gap:11px;margin-top:20px;}
.foot-social .fs-label{font-family:var(--fm);font-weight:500;font-size:.66rem;
  letter-spacing:.14em;text-transform:uppercase;color:rgba(244,241,232,.5);}
.fs-icons{display:flex;gap:10px;flex-wrap:wrap;}
.fs-icons a{width:38px;height:38px;flex:0 0 auto;border-radius:50%;
  border:1px solid rgba(244,241,232,.18);color:rgba(244,241,232,.72);
  display:inline-flex;align-items:center;justify-content:center;
  transition:color .2s,border-color .2s,background .2s,transform .25s var(--ease);}
.fs-icons a svg{width:15px;height:15px;fill:currentColor;display:block;}
.fs-icons a:hover{color:var(--lime);border-color:var(--lime);
  background:rgba(200,232,106,.08);transform:translateY(-2px);}
.fs-icons a:focus-visible{outline:2px solid var(--lime);outline-offset:3px;}

/* Iletisim sayfasi — acik zeminli kompakt satir */
.office-social{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:16px;}
.office-social .os-label{font-family:var(--fm);font-weight:500;font-size:.68rem;
  letter-spacing:.12em;text-transform:uppercase;color:var(--grey-l);}
.os-icons{display:flex;gap:8px;flex-wrap:wrap;}
.os-icons a{width:38px;height:38px;flex:0 0 auto;border-radius:50%;
  border:1px solid var(--border);color:var(--green-800);background:#fff;
  display:inline-flex;align-items:center;justify-content:center;
  transition:color .2s,border-color .2s,background .2s,transform .25s var(--ease);}
.os-icons a svg{width:15px;height:15px;fill:currentColor;display:block;}
.os-icons a:hover{background:var(--green-900);border-color:var(--green-900);
  color:var(--lime);transform:translateY(-2px);}
.os-icons a:focus-visible{outline:2px solid var(--green-800);outline-offset:3px;}

@media (max-width:760px){
  .fs-icons{gap:12px;}
  .fs-icons a,.os-icons a{width:44px;height:44px;}
  .fs-icons a svg,.os-icons a svg{width:17px;height:17px;}
  .office-social{gap:12px;}
}

/* Genislikten bagimsiz olarak dokunmatik cihazlarda tam 44px hedef
   (orn. 768px tablet, 760px mobil kirilimin ustunde kaliyor). */
@media (pointer:coarse){
  .fs-icons a,.os-icons a{width:44px;height:44px;}
  .fs-icons a svg,.os-icons a svg{width:17px;height:17px;}
}
