/* İlhan Portfolyo — albüm listesi, masonry, büyütme */
.ip-gruplar{display:flex;flex-direction:column;gap:clamp(40px,6vw,72px);margin:2.4em 0 0}
.ip-grup-baslik{display:flex;align-items:baseline;justify-content:space-between;gap:16px;border-bottom:1px solid var(--cizgi,#D9CDB8);padding-bottom:12px;margin-bottom:22px}
.ip-grup-baslik span{font:500 13px var(--sans,sans-serif);letter-spacing:.14em;text-transform:uppercase;color:var(--gri,#5E554A)}
.ip-grup-aciklama{color:var(--gri,#5E554A);margin-top:-8px}
.ip-kartlar{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:clamp(18px,2.4vw,30px)}
.ip-kart{display:flex;flex-direction:column;gap:4px;color:var(--murekkep,#1E1B18);text-decoration:none}
.ip-kart-gorsel{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--zemin-2,#EAE1D1);border-radius:3px;margin-bottom:10px}
.ip-kart-gorsel img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease,filter .5s ease}
.ip-kart:hover .ip-kart-gorsel img,.ip-kart:focus-visible .ip-kart-gorsel img{transform:scale(1.035)}
.ip-kart-ad{font-family:var(--serif,serif);font-size:21px;line-height:1.25}
.ip-kart:hover .ip-kart-ad{color:var(--gok,#1F5C5E)}
.ip-kart-sayi{font-size:14px;color:var(--gri,#5E554A)}
.ip-bos{color:var(--gri,#5E554A);font-style:italic}

/* Portfolyo kartları */
.ip-portfolyolar{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:clamp(24px,3vw,40px);margin:2em 0}
.ip-portfolyo{display:flex;flex-direction:column;gap:6px;color:var(--murekkep,#1E1B18);text-decoration:none}
.ip-portfolyo-gorsel{display:block;aspect-ratio:3/2;overflow:hidden;background:var(--zemin-2,#EAE1D1);border-radius:3px;margin-bottom:12px}
.ip-portfolyo-gorsel img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.ip-portfolyo:hover img{transform:scale(1.03)}
.ip-portfolyo-ad{font-family:var(--serif,serif);font-size:28px;line-height:1.2}
.ip-portfolyo:hover .ip-portfolyo-ad{color:var(--gok,#1F5C5E)}
.ip-portfolyo-oz{color:var(--gri,#5E554A);font-size:16px}
.ip-yer-tutucu{display:block;width:100%;height:100%;background:linear-gradient(180deg,var(--gok,#1F5C5E) 50%,var(--yer,#4A3626) 50%);opacity:.18}

/* Masonry: yatay/dikey oranlar korunur */
.ip-masonry{column-count:3;column-gap:14px;margin:8px 0 0}
.ip-masonry .ip-oge{break-inside:avoid;margin:0 0 14px;page-break-inside:avoid}
.ip-oge a{display:block;background:var(--zemin-2,#EAE1D1);border-radius:2px;overflow:hidden;cursor:zoom-in}
.ip-oge img{width:100%;height:auto;transition:opacity .3s ease}
.ip-oge a:hover img{opacity:.88}
@media (min-width:1500px){.ip-masonry{column-count:4}}
@media (max-width:1000px){.ip-masonry{column-count:2;column-gap:10px}.ip-masonry .ip-oge{margin:0 0 10px}}

.ip-yol a{color:inherit;text-decoration:none}
.ip-yol a:hover{color:var(--gok,#1F5C5E)}
.ip-yol span{margin:0 6px;color:var(--gri-acik,#8A7F70)}
.ip-album-bilgi{display:flex;gap:18px;flex-wrap:wrap;color:var(--gri,#5E554A);font-size:15px;margin-top:-4px}
.ip-album-aciklama{max-width:720px;color:var(--gri,#5E554A);font-size:18px;margin-top:18px}

.ip-komsular{display:grid;grid-template-columns:1fr 1fr;gap:24px;border-top:1px solid var(--cizgi,#D9CDB8);margin-top:clamp(40px,6vw,72px);padding-top:24px}
.ip-komsular a{display:flex;flex-direction:column;gap:2px;font-family:var(--serif,serif);font-size:20px;color:var(--murekkep,#1E1B18);text-decoration:none}
.ip-komsular a span{font:500 12px var(--sans,sans-serif);letter-spacing:.16em;text-transform:uppercase;color:var(--gri,#5E554A)}
.ip-komsular a:hover{color:var(--gok,#1F5C5E)}
.ip-sonraki{text-align:right;align-items:flex-end}

/* Büyütme penceresi */
.ip-lb{position:fixed;inset:0;z-index:100000;background:rgba(18,16,14,.96);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease;touch-action:pan-y}
.ip-lb.acik{opacity:1}
.ip-lb-cerceve{margin:0;display:flex;flex-direction:column;align-items:center;gap:12px;max-width:calc(100vw - 32px)}
.ip-lb img{max-width:calc(100vw - 160px);max-height:calc(100vh - 110px);width:auto;height:auto;object-fit:contain;box-shadow:0 10px 40px rgba(0,0,0,.35);transition:opacity .2s ease;user-select:none;-webkit-user-drag:none}
.ip-lb img.yukleniyor{opacity:.25}
.ip-lb-alt{display:flex;gap:18px;align-items:baseline;color:#D8CFC2;font:400 15px var(--sans,sans-serif);min-height:22px}
.ip-lb-baslik{font-family:var(--serif,serif);font-size:18px;color:#F2EBDD}
.ip-lb button{position:absolute;background:rgba(242,235,221,.08);border:1px solid rgba(242,235,221,.18);color:#F2EBDD;width:52px;height:52px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}
.ip-lb button:hover,.ip-lb button:focus-visible{background:rgba(242,235,221,.2)}
.ip-lb button svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ip-lb-kapat{top:18px;right:18px}
.ip-lb-onceki{left:24px;top:50%;transform:translateY(-50%)}
.ip-lb-sonraki{right:24px;top:50%;transform:translateY(-50%)}
@media (max-width:700px){
  .ip-lb img{max-width:100vw;max-height:calc(100vh - 150px);box-shadow:none}
  .ip-lb-onceki,.ip-lb-sonraki{top:auto;bottom:22px;transform:none}
  .ip-lb-onceki{left:calc(50% - 64px)}.ip-lb-sonraki{right:calc(50% - 64px)}
  .ip-lb-cerceve{max-width:100vw;margin-bottom:60px}
}
html.ip-kilit{overflow:hidden}

/* Tanıtım albümü: metnin altında, metin sütunundan geniş */
.ip-tanitim{margin:2.4em 0 1em}
.kap-dar .ip-tanitim{width:calc(min(var(--genislik,1180px),100vw) - 2*var(--bosluk,24px));position:relative;left:50%;transform:translateX(-50%)}
.ip-tanitim .ip-masonry{column-count:4}
@media (max-width:1000px){.ip-tanitim .ip-masonry{column-count:3}}
@media (max-width:600px){.ip-tanitim .ip-masonry{column-count:2}}
