/* ARTMIM prototip — sablon uzerine ince katman. Marka rengi #007871 (belgeyle dogrulandi). */
:root{ --artmim:#007871; --artmim-koyu:#00564f; --artmim-header-offset:142px; }
html{ scroll-padding-top:calc(var(--artmim-header-offset) + 18px); }

/* Stable header geometry and an opaque surface over scrolling/crossfading photos. */
.site-header,.site-header.is-scrolled{
  background:#0c1620; border-bottom-color:#ffffff1a;
  backdrop-filter:none; -webkit-backdrop-filter:none; transition:none;
  box-shadow:0 8px 24px -18px #0009;
}
.site-header .utility-inner,.site-header.is-scrolled .utility-inner{
  min-height:54px; transition:none;
}
.site-header .header-inner,.site-header.is-scrolled .header-inner{
  min-height:86px; transition:none;
}
@media(max-width:760px){
  .site-header .header-inner,.site-header.is-scrolled .header-inner{ min-height:72px; }
}

/* Expertise details: shared palette, readable editorial layout, native navigation. */
.service-card--foto .service-detail-link::after{ content:""; position:absolute; inset:0; z-index:3; }
.service-card--foto:focus-within{ outline:3px solid #63d7ca; outline-offset:4px; }
.service-card--foto .service-detail-link:focus-visible{ outline:none; }
.service-card--foto .service-detail-cta{ display:flex; justify-content:space-between; align-items:center;
  margin:0 1.25rem 1.2rem; padding-top:.9rem; border-top:1px solid #ffffff26;
  color:#78d6cb; font-size:.86rem; font-weight:700; min-height:44px; }
.service-detail-cta b{ font-size:1.25rem; }
.projeler-sayfa .section-heading h1{ margin:0; font-size:2.55rem; line-height:1.12; }
.expertise-page{ background:#f7f7f2; color:#172530; }
.expertise-page h1,.expertise-page h2,.expertise-page h3{ text-wrap:balance; }
.expertise-page h2{ margin:0 0 1.25rem; font-size:clamp(1.65rem,2.6vw,2.5rem); line-height:1.2; letter-spacing:-.035em; }
.expertise-page h3{ margin:0 0 .8rem; font-size:1.1rem; line-height:1.45; }
.expertise-page p{ line-height:1.8; }
.expertise-page a:focus-visible,.expertise-page summary:focus-visible{ outline:3px solid #00867c; outline-offset:5px; }
.expertise-page .btn-primary{ color:#fff; }
.expertise-masthead{ background:#0d1821; color:#fff; padding:1.25rem 0 4rem; }
.expertise-breadcrumb ol{ display:flex; flex-wrap:wrap; align-items:center; gap:0 .7rem;
  margin:0 0 1.25rem; padding:0; list-style:none; color:#b7c7d0; font-size:.8rem; }
.expertise-breadcrumb li{ display:flex; align-items:center; min-height:44px; }
.expertise-breadcrumb li+li::before{ content:"/"; color:#738997; margin-right:.7rem; }
.expertise-breadcrumb a{ display:inline-flex; align-items:center; min-height:44px; }
.expertise-breadcrumb a:hover{ color:#fff; text-decoration:underline; }
.expertise-selector{ display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:8px;
  padding-bottom:1.7rem; border-bottom:1px solid #ffffff20; }
.expertise-selector a{ display:flex; gap:.6rem; align-items:center; padding:.85rem .85rem;
  border:1px solid #ffffff26; border-radius:7px; font-size:.8rem; font-weight:600;
  min-height:52px; line-height:1.45; color:#d4e0e5; }
.expertise-selector a span{ color:#87a2af; font-size:.7rem; }
.expertise-selector a:hover{ background:#ffffff0d; border-color:#60c9bc; }
.expertise-selector a[aria-current="page"]{ background:#145c57; border-color:#3b9d90; color:#fff; }
.expertise-selector a[aria-current="page"] span{ color:#a9e6de; }
.expertise-hero{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(2rem,5vw,5rem);
  align-items:center; padding-top:3.5rem; }
.expertise-page .expertise-eyebrow{ font-size:.73rem; line-height:1.6; font-weight:800;
  letter-spacing:.14em; text-transform:uppercase; color:#006c64; margin:0 0 1.1rem; }
.expertise-masthead .expertise-eyebrow,.expertise-contact .expertise-eyebrow{ color:#83d6ca; }
.expertise-hero h1{ font-size:clamp(2.1rem,3.8vw,3.8rem); line-height:1.1; letter-spacing:-.045em;
  margin:0 0 1.4rem; max-width:17ch; }
.expertise-lead{ color:#ced9df; font-size:1rem; margin:0 0 1.8rem; max-width:58ch; }
.expertise-index{ margin-top:2rem; font-size:2.6rem; line-height:1; color:#93c4bd; letter-spacing:-.04em; }
.expertise-index span{ font-size:1rem; color:#8098a6; letter-spacing:.04em; }
.expertise-hero-image{ margin:0; min-width:0; }
.expertise-hero-image img{ display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover;
  border-radius:10px 10px 0 0; }
.expertise-hero-image figcaption{ padding:1rem 1.2rem; font-size:.78rem; line-height:1.65;
  color:#c5d2da; border:1px solid #ffffff20; border-top:0; border-radius:0 0 10px 10px; }
.expertise-hero-image figcaption span{ display:block; color:#88d3c8; font-size:.64rem;
  letter-spacing:.12em; text-transform:uppercase; margin-bottom:.3rem; }
.expertise-layout{ display:grid; grid-template-columns:210px minmax(0,1fr); gap:clamp(2.5rem,6vw,6rem);
  padding-top:4.5rem; padding-bottom:4.5rem; }
.expertise-sidebar nav{ position:sticky; top:calc(var(--artmim-header-offset) + 24px); }
.expertise-sidebar p{ color:#566774; font-size:.72rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.expertise-sidebar a{ display:flex; align-items:center; min-height:48px; padding:.7rem 0;
  border-bottom:1px solid #dce2de; font-size:.88rem; font-weight:600; }
.expertise-sidebar a:hover{ color:#006c64; }
.expertise-article{ min-width:0; max-width:860px; }
.expertise-article p{ color:#495b65; margin:.6rem 0 0; }
.expertise-intro>p:last-child{ font-size:1.06rem; }
.expertise-block{ margin-top:3.5rem; scroll-margin-top:24px; }
.expertise-scope-item{ display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr); gap:2rem;
  padding:1.6rem 0; border-top:1px solid #d7ded9; }
.expertise-scope-item p{ margin:0; font-size:.95rem; }
.expertise-scope-heading{ min-width:0; }
.expertise-editorial-image{ overflow:hidden; background:#dce2da; }
.expertise-editorial-image img{ display:block; width:100%; height:auto; object-fit:cover; aspect-ratio:16/10; }
.expertise-scope-heading .expertise-editorial-image{ border-radius:6px; margin-top:1rem; }
.expertise-scope-heading .expertise-editorial-image img{ aspect-ratio:16/9; }
.expertise-article .expertise-media-note{ color:#5d6b66; font-size:.78rem; line-height:1.6; margin:.65rem 0 1.4rem; }
.expertise-steps{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem;
  list-style:none; margin:1.6rem 0 0; padding:0; }
.expertise-steps li{ background:#edf0e9; border:1px solid #dce2d7; border-radius:8px; overflow:hidden; }
.expertise-step-copy{ padding:1.45rem; }
.expertise-step-copy>span{ display:block; font-size:.8rem; font-weight:800; color:#007269; margin-bottom:1rem; }
.expertise-steps h3{ margin-bottom:.6rem; }
.expertise-steps p{ font-size:.9rem; }
@media(hover:hover) and (prefers-reduced-motion:no-preference){
  .expertise-editorial-image img{ transition:transform .65s cubic-bezier(.2,.65,.3,1); }
  .expertise-scope-item:hover .expertise-editorial-image img,
  .expertise-steps li:hover .expertise-editorial-image img{ transform:scale(1.045); }
}
.expertise-decision{ padding:clamp(1.4rem,3vw,2.5rem); border-left:3px solid #00867c; background:#e6eeea; }
.expertise-decision h2{ font-size:clamp(1.5rem,2.2vw,2rem); }
.expertise-project-link{ display:block; margin-top:1.5rem; border:1px solid #d7ded9; border-radius:10px;
  overflow:hidden; background:#fff; }
.expertise-project-link img{ display:block; width:100%; height:auto; aspect-ratio:16/10; object-fit:cover; }
.expertise-project-link>span{ display:flex; justify-content:space-between; align-items:center; min-height:56px;
  padding:1rem 1.3rem; font-weight:700; font-size:.9rem; color:#006b63; }
.expertise-project-link:hover>span{ background:#edf5f1; }
.expertise-faq details{ border-top:1px solid #ccd7d0; }
.expertise-faq details:last-child{ border-bottom:1px solid #ccd7d0; }
.expertise-faq summary{ position:relative; padding:1.3rem 2.6rem 1.3rem 0; font-weight:700;
  line-height:1.6; cursor:pointer; list-style:none; min-height:56px; }
.expertise-faq summary::-webkit-details-marker{ display:none; }
.expertise-faq summary::after{ content:"+"; position:absolute; right:.5rem; top:1.1rem; color:#006b63; font-size:1.35rem; }
.expertise-faq details[open] summary::after{ content:"−"; }
.expertise-faq details[open] summary{ color:#006b63; }
.expertise-faq details>p{ margin:0; padding:0 1.8rem 1.4rem 0; }
.expertise-contact{ display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center;
  gap:2rem; padding:clamp(1.5rem,4vw,3.5rem); background:#112c32; color:#fff; border-radius:12px; }
.expertise-contact h2{ max-width:24ch; }
.expertise-contact p:last-child{ margin-bottom:0; max-width:60ch; color:#c3d8da; }
.expertise-contact-actions{ display:flex; flex-direction:column; gap:.9rem; align-items:center; }
.expertise-contact-actions>a{ min-height:48px; display:flex; align-items:center; }
.expertise-contact-actions>a:last-child{ font-size:.9rem; text-decoration:underline; text-underline-offset:5px; color:#b9e7df; }
.expertise-related{ padding-top:3.5rem; padding-bottom:4.5rem; }
.expertise-related h2{ font-size:1.1rem; }
.expertise-related>div{ display:flex; flex-wrap:wrap; gap:.7rem; }
.expertise-related a{ display:flex; align-items:center; gap:1.5rem; min-height:48px; padding:.7rem 1rem;
  border:1px solid #c5d3ca; border-radius:6px; font-size:.86rem; color:#16443f; font-weight:600; }
.expertise-related a:hover{ background:#e4eee8; }
@media(max-width:1100px){
  .expertise-selector{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  .expertise-layout{ grid-template-columns:175px minmax(0,1fr); gap:2rem; }
}
@media(max-width:760px){
  .expertise-hero{ grid-template-columns:minmax(0,1fr); padding-top:2rem; gap:2rem; }
  .expertise-hero h1{ max-width:23ch; }
  .expertise-index{ display:none; }
  .expertise-masthead{ padding-bottom:2rem; }
  .expertise-layout{ grid-template-columns:minmax(0,1fr); padding-top:2rem; padding-bottom:2.5rem; }
  .expertise-sidebar nav{ position:static; }
  .expertise-sidebar nav{ display:flex; flex-wrap:wrap; gap:.25rem 1.1rem; }
  .expertise-sidebar p{ width:100%; margin:0; }
  .expertise-sidebar a{ font-size:.8rem; min-height:44px; }
  .expertise-scope-item{ grid-template-columns:minmax(0,1fr); gap:0; }
  .expertise-scope-heading .expertise-editorial-image{ margin-bottom:1.2rem; }
  .expertise-block{ margin-top:2.5rem; }
  .expertise-contact{ grid-template-columns:minmax(0,1fr); }
  .expertise-contact-actions{ align-items:flex-start; }
}
@media(max-width:480px){
  .expertise-selector{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .expertise-selector a{ font-size:.76rem; padding:.75rem .6rem; gap:.45rem; }
  .expertise-steps{ grid-template-columns:minmax(0,1fr); }
  .expertise-hero h1{ font-size:2.1rem; }
  .expertise-lead{ font-size:.94rem; }
}

/* --- marka rengi sablonun altin vurgusunun yerine --- */
.btn-primary{ background:var(--artmim); border-color:var(--artmim); }
.btn-primary:hover{ background:var(--artmim-koyu); border-color:var(--artmim-koyu); }
.section-kicker,.eyebrow{ color:var(--artmim); letter-spacing:.14em; }
.stat-number{ color:var(--artmim); }
.brand img{ height:52px; width:auto; }
.footer-brand img{ height:58px; width:auto; }
.header-cta{ padding:.6rem 1.3rem; font-size:.85rem; }

/* --- foto hero (video yok: arsivde video malzemesi yok) --- */
.hero--foto{ position:relative; overflow:hidden; }
.hero-foto{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; }
.hero--foto .hero-inner{ position:relative; z-index:2; }
.hero--foto::after{ content:""; position:absolute; inset:0; z-index:1;
  background:linear-gradient(100deg, rgba(8,12,14,.90) 0%, rgba(8,12,14,.74) 30%,
              rgba(8,12,14,.34) 62%, rgba(8,12,14,.10) 88%); }

/* The original building photograph fills the screen; copy follows below. */
.about-fullscreen-section{ padding:0 0 4.5rem; }
.about-building{ position:relative; margin:0; width:100%;
  height:calc(100svh - var(--artmim-header-offset)); min-height:320px; overflow:hidden; background:#202524; }
.about-building img{ display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.about-intro{ display:grid; grid-template-columns:1fr 1.12fr; gap:clamp(2rem,6vw,6rem);
  align-items:start; margin-top:clamp(2.5rem,5vw,5rem); margin-bottom:3rem; }
.about-intro h2{ color:var(--metin-koyu); font-size:clamp(2rem,3vw,2.75rem); line-height:1.15;
  max-width:19ch; letter-spacing:-.035em; }
.about-intro-copy p{ color:#495b65; line-height:1.8; margin:0 0 1.1rem; }
.about-intro-copy p:last-child{ margin-bottom:0; }
@media(max-width:760px){
  .about-intro{ grid-template-columns:1fr; gap:1.4rem; margin-bottom:2rem; }
  .about-intro h2{ max-width:22ch; }
}

/* --- uzmanlik kareleri: GERCEK foto (sitedekiler GPT-4o uretimiydi) --- */
.services-section--foto .services-grid{ grid-template-columns:repeat(auto-fit,minmax(288px,1fr)); }
/* 2026-09-09 · Kart yeniden kuruldu. ONCEKI HAL: gorsel mutlak konumda tam kart, ustune
   koyu perde, yazi perdenin uzerinde. Uzmanlik metinleri Operator istegiyle uzayinca
   (tek satir -> 3-4 satir) perde yukari tirmandi ve GORSELLERI BOGDU — poliuretan
   kabartmasi neredeyse gorunmez olmustu. Metni uzatmakla gorseli gostermek ayni
   kutuda cakisiyordu; bu yuzden ikisi AYRILDI:
     ust  = gorsel, 4:3, perdesiz, tam gorunur
     alt  = yazi, kartin kendi zemininde, kontrast sabit
   Boylece metin daha da uzasa gorseli etkilemez. */
.service-card--foto{ position:relative; overflow:hidden; padding:0; border-radius:14px;
  display:flex; flex-direction:column; isolation:isolate;
  background:rgba(255,255,255,.045); border:1px solid rgba(255,255,255,.09); }
.service-card--foto img{ position:static; width:100%; aspect-ratio:4/3; height:auto;
  object-fit:cover; display:block; z-index:auto; }
.service-card--foto::after{ content:none; }                 /* perde kalkti */
.service-card--foto h3{ color:#fff; margin:1.05rem 0 .5rem; padding:0 1.25rem; font-size:1.16rem; }
.service-card--foto p{ color:rgba(255,255,255,.82); margin:0 0 auto; padding:0 1.25rem 1.4rem;
  font-size:.92rem; line-height:1.55; }

/* Continuous reference ribbon; one accessible set, with a decorative JS clone. */
.reference-ribbon{ position:relative; margin:2rem 0 3rem; }
.reference-window{ overflow-x:auto; scrollbar-width:thin; }
.reference-window:focus-visible{ outline:2px solid var(--artmim); outline-offset:-2px; }
.reference-track{ display:flex; width:max-content; }
.reference-group{ display:flex; align-items:center; flex:none; min-width:100vw; padding:1rem 0; }
.reference-group figure{ margin:0; flex:1 0 240px; height:120px; display:flex; align-items:center; justify-content:center; }
.reference-group img{ width:auto; height:100px; max-width:210px; object-fit:contain;
  filter:grayscale(1) contrast(1.15); opacity:.95; }
.reference-group figcaption{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }
.reference-group[aria-hidden]{ display:none; }
.reference-ribbon.is-animated .reference-window{ overflow:hidden; }
.reference-ribbon.is-animated .reference-track{ animation:reference-flow 48s linear infinite; }
.reference-ribbon.is-animated .reference-group[aria-hidden]{ display:flex; }
@keyframes reference-flow{ to{ transform:translateX(-50%); } }
@media(hover:hover){ .reference-ribbon:hover .reference-track{ animation-play-state:paused; } }
@media(max-width:760px){
  .reference-group figure{ flex-basis:200px; height:104px; }
  .reference-group img{ height:90px; max-width:190px; }
}
@media(prefers-reduced-motion:reduce){
  .reference-ribbon.is-animated .reference-track{ animation:none; }
  .reference-ribbon.is-animated .reference-window{ overflow-x:auto; }
  .reference-ribbon.is-animated .reference-group[aria-hidden]{ display:none; }
}

/* --- OTEL TURU (3D soketin yerine; arsivde 3D/CAD sifir, foto omurga) --- */
.tur-section{ padding:0; }
.tur-sticky{ position:relative; height:100vh; overflow:hidden;
  display:flex; align-items:flex-end; background:#080b0d; }
.tur-sahne{ position:absolute; inset:0; }
.tur-kare{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover;
  opacity:0; transition:opacity .55s ease; }
.tur-kare.is-aktif{ opacity:1; }
.tur-metin{ position:relative; z-index:2; padding-bottom:clamp(2rem,6vh,4.5rem);
  color:#fff; max-width:640px; }
.tur-metin::before{ content:""; position:absolute; inset:-46vh -50vw -12vh -50vw; z-index:-1;
  background:linear-gradient(to top, rgba(5,8,10,.97) 0%, rgba(5,8,10,.88) 22%,
              rgba(5,8,10,.58) 52%, rgba(5,8,10,.16) 82%, transparent 100%); }
.tur-metin h2{ color:#fff; margin:.3rem 0 1.3rem; font-family:"Fraunces",Georgia,serif;
  font-size:clamp(1.65rem,2.6vw,2.6rem); font-weight:400; font-style:italic;
  line-height:1.25; letter-spacing:-.02em; }
.tur-metin p{ color:rgba(255,255,255,.86); }
.tur-sayac{ font-variant-numeric:tabular-nums; letter-spacing:.18em; font-size:.82rem;
  color:var(--artmim); margin-top:1.1rem; }

/* --- proje karti: kunye satiri --- */
.project-card span{ color:var(--artmim); }
.footer-demo{ opacity:.6; font-size:.78rem; }

@media (prefers-reduced-motion: reduce){
  .tur-kare{ transition:none; }
}
@media (max-width:900px){
  .tur-sticky{ height:88vh; }
}

/* --- logo: sablon .brand img'a background:#fff basiyordu (kendi logosu JPEG'di);
       bizimki seffaf BEYAZ amblem -> beyaz kutuya gomuluyordu. Olculdu: %100 acik piksel. --- */
.brand img,.footer-brand img,.mobile-drawer__top img{ background:transparent; border-radius:0; }
.brand{ gap:.7rem; }
.brand-yazi{ display:flex; flex-direction:column; line-height:1.05; }
.brand-yazi b{ font-size:1.02rem; letter-spacing:.18em; font-weight:700; color:#fff; }
.brand-yazi small{ font-size:.6rem; letter-spacing:.22em; text-transform:uppercase;
  color:var(--artmim); filter:brightness(1.45); margin-top:.24rem; }
.footer-brand .brand-yazi b{ color:#fff; }
/* site.css'teki `.footer-grid span{display:block}` (ozgulluk 0,1,1) yukaridaki
   `.brand-yazi{display:flex}` (0,1,0) kuralini eziyordu => footer'da marka yazisi
   alt alta degil bitisik yan yana basiliyordu ("ARTMIMhotel design group"). */
.footer-brand .brand-yazi{ display:flex; flex-direction:column; }

/* --- kanit seridi: 6 kucuk kare kalabalik duruyordu -> 3'e dus, buyut --- */
.proof-strip{ grid-template-columns:repeat(3,1fr) !important; gap:1.1rem; }
.proof-strip figure:nth-child(n+4){ display:none; }
.proof-strip img{ aspect-ratio:4/3; object-fit:cover; width:100%; }

/* Mobile drawer branding on its light background. */
@media (max-width:900px){
  .mobile-drawer__top .brand-yazi b{ color:var(--lacivert-800,#0f1c26); }
  .mobile-drawer__top .brand-yazi small{ filter:none; }
}

/* --- dokunma hedefleri: olculdu, 14 baglanti 44px altindaydi (21-26px). Playbook §17e:
       ::after ile genisletme DENETLENEMEZ -> gercek yukseklik verilir. --- */
@media (max-width:900px){
  .site-footer nav a, .site-footer > .container > div > a,
  .mobile-accordion__panel a, .mobile-drawer nav > a,
  .contact-copy address a, .contact-social a, .utility-inner a{
    display:flex; align-items:center; min-height:44px;
  }
  .footer-grid a{ min-height:44px; display:flex; align-items:center; }
}

/* ============================================================
   BAGIMSIZ QA DUZELTMELERI (Codex, 2026-09-08) — hepsi kendim dogrulandi
   ============================================================ */

/* [1 yuksek] DUZ MOD: hareket-azaltmada tur 331px'e cokuyor, tek kare gorunuyor,
   sayac "1/8" yalan soyluyordu. Kareler artik gercekten alt alta akar. */
.tur--duz .tur-sticky{ height:auto; overflow:visible; display:block; }
.tur--duz .tur-sahne{ position:static; display:grid; gap:2px; }
.tur--duz .tur-kare{ position:static; opacity:1; width:100%; height:auto;
  aspect-ratio:16/9; object-fit:cover; transition:none; }
.tur--duz .tur-metin{ padding:2.4rem 0 1.6rem; max-width:none; color:inherit; }
.tur--duz .tur-metin::before{ display:none; }
.tur--duz .tur-metin h2{ color:var(--lacivert-900,#0b1620); }
.tur--duz .tur-metin p{ color:var(--lacivert-700,#334); }
.tur--duz{ background:#fff; }

/* Native sticky entry follows document flow even when earlier content resizes. */
.tur--scroll{ height:calc(100svh + var(--selection-travel,550svh)); }
.tur--scroll .tur-sticky{ position:sticky; top:0; height:100svh; }

/* [4 orta] Kisa yatay ekranda tur metni kirpiliyordu (sabit 100vh + overflow:hidden). */
.tur-sticky{ min-height:520px; }
@media (max-height:560px) and (min-width:901px){
  .tur-sticky{ height:auto; min-height:0; overflow:visible; }
  .tur-sahne{ position:relative; height:78vh; }
  .tur-metin{ padding:1.6rem 0; }
  .tur-metin::before{ display:none; }
  .tur-metin h2,.tur-metin p{ color:var(--lacivert-900,#0b1620); }
  .tur-section{ background:#fff; }
}

/* --- proje karti: galeri tetigi --- */
.project-card [data-galeri-ac]{ all:unset; cursor:pointer; display:block; }
.project-card [data-galeri-ac]:focus-visible{ outline:3px solid var(--artmim); outline-offset:3px; }

/* --- isik kutusu --- */
body.galeri-acik{ overflow:hidden; }
.galeri-kutu{ position:fixed; inset:0; z-index:9999; background:rgba(5,8,10,.94);
  display:flex; align-items:center; justify-content:center; padding:clamp(.75rem,3vw,2.5rem); }
.galeri-kutu[hidden]{ display:none; }
.galeri-ic{ position:relative; width:min(1200px,100%); max-height:100%;
  display:flex; flex-direction:column; align-items:center; gap:.9rem; }
.galeri-sahne{ margin:0; max-height:78vh; display:flex; flex-direction:column; gap:.7rem; }
.galeri-sahne img{ max-width:100%; max-height:72vh; object-fit:contain;
  border-radius:6px; background:#111; }
.galeri-sahne figcaption{ color:#fff; font-size:.95rem; text-align:center; }
.galeri-sayac{ color:var(--artmim); filter:brightness(1.5); font-size:.82rem;
  letter-spacing:.16em; margin:0; font-variant-numeric:tabular-nums; }
.galeri-kapat,.galeri-ok{ position:absolute; z-index:2; background:rgba(255,255,255,.1);
  color:#fff; border:1px solid rgba(255,255,255,.28); border-radius:999px;
  width:48px; height:48px; font-size:1.5rem; line-height:1; cursor:pointer; }
.galeri-kapat{ top:-6px; right:0; }
.galeri-ok{ top:50%; transform:translateY(-50%); }
.galeri-ok--geri{ left:-6px; } .galeri-ok--ileri{ right:-6px; }
.galeri-kapat:hover,.galeri-ok:hover{ background:rgba(255,255,255,.22); }
.galeri-kapat:focus-visible,.galeri-ok:focus-visible{ outline:3px solid var(--artmim); outline-offset:2px; }
@media (max-width:900px){
  .galeri-ok{ top:auto; bottom:-4px; transform:none; }
  .galeri-ok--geri{ left:12%; } .galeri-ok--ileri{ right:12%; }
  .galeri-sahne img{ max-height:60vh; }
}

/* --- RENDER ⟷ UYGULAMA --- */
.render-section{ background:var(--lacivert-900,#0b1620); color:#fff; }
.render-section .section-kicker{ color:var(--artmim); filter:brightness(1.5); }
.render-section h2{ color:#fff; }
.render-section .section-heading p{ color:rgba(255,255,255,.74); }
.cift-grid{ display:grid; grid-template-columns:1fr 1fr; gap:1.2rem; margin:2.2rem auto 1rem; }
.cift-grid figure{ margin:0; position:relative; }
.cift-grid img{ width:100%; aspect-ratio:3/2; object-fit:cover; border-radius:10px; display:block;
  background:#e8e4dd; }  /* yuklenirken bembeyaz kutu gorunmesin */
.cift-etiket{ position:absolute; top:.8rem; left:.8rem; padding:.32rem .8rem; border-radius:999px;
  font-size:.72rem; letter-spacing:.14em; font-weight:700; background:rgba(5,8,10,.78); color:#fff;
  border:1px solid rgba(255,255,255,.3); }
.cift-etiket--yapilmis{ background:var(--artmim); border-color:transparent; }
.render-serit{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:1rem; }
.render-serit figure{ margin:0; aspect-ratio:4/3; overflow:hidden; border-radius:8px; }
.render-serit img{ width:100%; height:100%; object-fit:cover; display:block; }
.cift-kunye{ grid-column:1 / -1; margin:.15rem 0 0; font-size:.8rem; letter-spacing:.06em;
  color:rgba(255,255,255,.62); }
/* Alt sira: kucuk ciftler yan yana. Iki cift = 4 kare tek satirda; karelerin kendisi 1:1
   (render neredeyse kare; 3:2 ya avizeyi ya masayi kesiyordu). */
.cift-serit{ display:grid; grid-template-columns:1fr 1fr; gap:1.2rem; margin-top:1.6rem; }
.cift-grid--kucuk{ display:grid; grid-template-columns:1fr 1fr; gap:.8rem; margin:0; }
.cift-grid--kucuk img{ aspect-ratio:1/1; border-radius:8px; }
.cift-grid--kucuk .cift-etiket{ top:.55rem; left:.55rem; padding:.22rem .6rem; font-size:.62rem; }
.cift-grid--kucuk .cift-kunye{ font-size:.74rem; }
@media (max-width:820px){ .cift-serit{ grid-template-columns:1fr; gap:1.8rem; } }
@media (max-width:820px){ .cift-grid{ grid-template-columns:1fr; } }

/* Shared Instagram card and language selector. */
.site-header .utility-inner{ min-height:54px; padding-block:5px; }
.utility-inner>a{ display:flex; align-items:center; min-height:44px; }
.utility-social{ display:flex; align-items:center; gap:8px; }
.utility-social a{ display:inline-flex; align-items:center; justify-content:center; gap:9px;
  width:auto; height:44px; min-width:44px; padding:0 15px; border-radius:0;
  font-size:.78rem; font-weight:500; letter-spacing:.015em; background:transparent;
  border:1px solid #ffffff24; color:#dce6e6; transition:background .2s ease,border-color .2s ease,color .2s ease; }
.utility-social svg,.drawer-language svg{ width:19px; height:19px; flex:none; }
.utility-social .instagram-card{ border-color:#ffffff24; background:transparent; }
.utility-social .instagram-card:hover,.utility-social .dil-link:hover{
  border-color:#83c9bf88; background:#83c9bf0d; color:#fff; }
.utility-social svg{ color:#83c9bf; }
.utility-social a:focus-visible{ outline:2px solid #8bddce; outline-offset:3px; }
.utility-social .language-code{ display:none; }
.mobile-drawer nav .drawer-language{ display:flex; align-items:center; gap:12px; font-weight:600; }
.hero #hero-title{ font-size:clamp(2rem,4vw,3.65rem); line-height:1.12; letter-spacing:-.035em; }
.hero #hero-title span{ font-family:inherit; font-weight:inherit; font-style:normal;
  background:none; color:#d9bd8e; -webkit-text-fill-color:currentColor; }
.hero .eyebrow{ color:#83c9bf; }
@media(max-width:760px){
  :root{ --artmim-header-offset:128px; }
  .site-header .utility-inner{ flex-wrap:nowrap; justify-content:space-between; gap:8px; }
  .utility-inner>span{ display:none; }
  .utility-social .instagram-card{ padding:0; width:44px; }
  .instagram-card>span,.utility-social .language-name{ display:none; }
  .utility-social .language-code{ display:inline; }
  .utility-social .dil-link{ padding-inline:10px; gap:6px; }
}
/* galeri basligi (kaynak dosya mekani adlandiriyorsa) */
.galeri-sahne figcaption{ opacity:.92; }

/* Otel turu artik TEK otel degil: 10 ayri otelden birer kare (2026-09-09, Operator).
   Kare degistikce otel adi da degisir; sayacin hemen ustunde durur. */
.tur-otel{ margin:.9rem 0 .15rem; color:#fff; font-weight:600; font-size:1.02rem;
  letter-spacing:.01em; text-shadow:0 1px 12px rgba(0,0,0,.55); }
.tur-otel[hidden]{ display:none; }

/* ===== PROJE SAYFALARI (2026-09-09) =========================================
   Operator: "projeler kismi direkt landing page'de olmasin gerekirse, projeye ait
   daha fazla fotograf eklenebilmeli; 10ar tane koymusuz, yapilan is gosterilmiyor."
   Landing'de 6'lik secki kaldi; her proje kendi sayfasina tasindi (~40 kare).
   Kart artik isik kutusu degil SAYFA acar; isik kutusu proje sayfasinin izgarasinda. */
.project-card a{ all:unset; cursor:pointer; display:block; }
.project-card a:focus-visible{ outline:3px solid var(--artmim); outline-offset:3px; }
.portfolio-more{ display:flex; justify-content:center; margin-top:2.4rem; }

/* Square controls with fine borders and a simple arrow divider. */
.site-header .header-cta,.portfolio-more .project-more-link{
  border-radius:0; font-weight:600; letter-spacing:.015em;
  box-shadow:none; transform:none; transition:background .2s ease,border-color .2s ease,color .2s ease;
}
.site-header .header-cta{ min-height:46px; padding:5px 14px 5px 20px; gap:17px;
  color:#e7f4f1; background:#0b5551; border-color:#77c5b84d; }
.site-header .header-cta:hover,.site-header .header-cta:focus-visible{
  color:#fff; background:#126963; border-color:#8ed5c7; box-shadow:none; transform:none; }
.portfolio-more .project-more-link{ min-height:54px; padding:7px 18px 7px 24px; gap:14px;
  color:#145953; background:transparent; border-color:#14595355; }
.portfolio-more .project-more-link:hover,.portfolio-more .project-more-link:focus-visible{
  color:#104a45; background:#fff; border-color:#145953; box-shadow:none; transform:none; }
.project-more-count{ padding-left:0;
  color:#5d7774; font-size:.75rem; font-weight:500; font-variant-numeric:tabular-nums; }
.site-header .header-cta::after,.portfolio-more .project-more-link::after{ display:none; }
.site-header .header-cta .btn-arrow,.portfolio-more .project-more-link .btn-arrow{
  display:grid; place-items:center; flex:none; margin:0; padding-left:14px; width:32px; height:24px;
  border-radius:0; border-left:1px solid #ffffff30; color:inherit; background:transparent; transform:none; }
.portfolio-more .project-more-link .btn-arrow{ border-left-color:#14595333; }

.proje-hero{ position:relative; min-height:min(62vh,560px); display:flex; align-items:flex-end;
  overflow:hidden; background:#080b0d; }
.proje-hero img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.proje-hero::after{ content:""; position:absolute; inset:0;
  background:linear-gradient(to top, rgba(5,8,10,.92) 0%, rgba(5,8,10,.55) 45%, rgba(5,8,10,.12) 100%); }
.proje-hero__yazi{ position:relative; z-index:1; padding-block:clamp(2rem,6vh,4rem); color:#fff; }
.proje-hero__yazi h1{ color:#fff; margin:.35rem 0 .6rem; font-size:clamp(2rem,5vw,3.4rem); }
.proje-hero__yazi p{ color:rgba(255,255,255,.86); margin:0; }

.proje-geri{ display:inline-block; margin-bottom:1.6rem; font-weight:600; color:var(--artmim); }
.proje-kunye{ display:grid; gap:1.2rem 2.4rem; margin:0;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); }
.proje-kunye dt{ font-size:.74rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase;
  color:var(--artmim); margin-bottom:.35rem; }
.proje-kunye>div>*+*{ margin:0; font-size:1.05rem; font-weight:600; color:#22303d; }

.proje-galeri-bolum h2{ margin-bottom:1.4rem; }
.proje-galeri{ display:grid; gap:10px;
  grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr)); }
.proje-galeri button{ all:unset; cursor:zoom-in; position:relative; display:block;
  overflow:hidden; border-radius:10px; background:#0d151c; }
.proje-galeri button:focus-visible{ outline:3px solid var(--artmim); outline-offset:3px; }
.proje-galeri img{ width:100%; aspect-ratio:4/3; object-fit:cover; display:block;
  transition:transform .45s ease, opacity .3s ease; }
.proje-galeri button:hover img{ transform:scale(1.045); }
.proje-galeri span{ position:absolute; left:0; right:0; bottom:0; padding:.55rem .7rem;
  font-size:.78rem; color:#fff; background:linear-gradient(to top,rgba(5,8,10,.86),transparent);
  pointer-events:none; }

.proje-gezin{ display:grid; gap:1rem; grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  padding-block:2.6rem 4rem; }
.proje-gezin a{ display:block; padding:1.1rem 1.3rem; border:1px solid #dce4eb; border-radius:12px;
  background:#fff; transition:border-color .25s ease, transform .25s ease; }
.proje-gezin a:hover{ border-color:var(--artmim); transform:translateY(-2px); }
.proje-gezin span{ display:block; font-size:.72rem; font-weight:800; letter-spacing:.1em;
  text-transform:uppercase; color:var(--artmim); margin-bottom:.3rem; }
.proje-gezin b{ color:#22303d; font-size:1.02rem; }
.proje-gezin__sonraki{ text-align:right; }

@media (prefers-reduced-motion: reduce){
  .proje-galeri img,.proje-gezin a{ transition:none; }
  .proje-galeri button:hover img{ transform:none; }
}

/* Landing'de 6 proje var; 4 sutunlu izgarada 4+2 diziliyordu (dengesiz kuyruk).
   Secki 3 sutunda 3+3 olur. Tum projeler sayfasi (14 kart) genis izgarada kalir. */
@media (min-width:1100px){
  .portfolio-section:not(.projeler-sayfa) .portfolio-grid{ grid-template-columns:repeat(3,1fr); }
}

/* Mobilde secki projeler: parmakla kaydirilan serit (Operator 2026-09-14, "instadaki gibi").
   Yalniz LANDING seckisi (6 kart). Tum projeler sayfasi (.projeler-sayfa, 14 kart) izgarada
   KALIR — 14 karti seritte gezdirmek genel gorunumu oldururdu.
   Saf CSS scroll-snap: parmak kaydirmasi tarayicinin kendi isi, JS yok, reduced-motion'a
   dokunmuyor (kullanici surukluyor, animasyon degil). Klavye: kartlar zaten <a>, Tab ile
   gezilince tarayici serit icinde kendiliginden kaydiriyor. */
@media (max-width:760px){
  .portfolio-section:not(.projeler-sayfa) .portfolio-grid{
    display:flex;
    grid-template-columns:none;
    /* .container genisligini ez: serit ekran kenarina kadar aksin */
    width:100%;
    max-width:none;
    gap:.9rem;
    overflow-x:auto;
    overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    /* ilk kart yazilarla ayni hizada dursun (.container 24px bosluk birakiyor) */
    padding-inline:24px;
    scroll-padding-inline:24px;
    padding-block:.2rem .7rem;
    scrollbar-width:none;
  }
  .portfolio-section:not(.projeler-sayfa) .portfolio-grid::-webkit-scrollbar{ display:none; }
  /* son kartin sag boslugu: flex scroll kabinde padding-inline-end bazi tarayicilarda dusuyor */
  .portfolio-section:not(.projeler-sayfa) .portfolio-grid::after{
    content:''; flex:0 0 1px;
  }
  .portfolio-section:not(.projeler-sayfa) .portfolio-grid > .project-card{
    flex:0 0 80%;            /* sonraki kart kenardan gorunsun = kaydirilabilir oldugu belli olsun */
    scroll-snap-align:start;
  }
  /* tembel yuklenen kart serite kayarken bembeyaz parlamasin (bkz. gorsellestirme dersi) */
  .portfolio-section:not(.projeler-sayfa) .project-card img{ background:#e8e4dd; }
}
