/* =====================================================================
   Fuar Davetiyem — genel site stilleri
   Harici bağımlılık yoktur; tipografi sistem yazı tiplerinden gelir.
   ===================================================================== */

:root {
    /* Ana palet */
    --mor-700:   #5b21b6;
    --mor-600:   #7c3aed;
    --mor-500:   #8b5cf6;
    --mor-50:    #f5f3ff;

    --indigo-700:#4338ca;
    --indigo-600:#4f46e5;
    --indigo-50: #eef2ff;

    --camgobegi-600: #0891b2;
    --camgobegi-500: #06b6d4;
    --camgobegi-50:  #ecfeff;

    --pembe-500: #ec4899;
    --pembe-50:  #fdf2f8;

    --turuncu-500: #f97316;
    --turuncu-50:  #fff7ed;

    --yesil-600: #059669;
    --yesil-500: #10b981;
    --yesil-50:  #ecfdf5;

    --sari-500:  #eab308;
    --sari-50:   #fefce8;

    --kirmizi-600: #dc2626;
    --kirmizi-50:  #fef2f2;

    /* Degradeler */
    --degrade-ana:   linear-gradient(135deg, #4f46e5 0%, #7c3aed 50%, #06b6d4 100%);
    --degrade-sicak: linear-gradient(135deg, #ec4899 0%, #f97316 100%);
    --degrade-serin: linear-gradient(135deg, #06b6d4 0%, #10b981 100%);

    /* Nötrler */
    --metin:       #1e1b35;
    --metin-soluk: #5c5775;
    --metin-silik: #8c87a3;

    --cizgi:      #e8e6f2;
    --cizgi-koyu: #d2cfe3;
    --zemin:      #f7f6fc;
    --kart:       #ffffff;

    --golge-sm: 0 1px 2px rgba(45, 30, 90, .06);
    --golge:    0 4px 14px rgba(45, 30, 90, .08), 0 1px 3px rgba(45, 30, 90, .05);
    --golge-lg: 0 16px 44px rgba(45, 30, 90, .14);
    --golge-renk: 0 8px 22px rgba(124, 58, 237, .25);

    --yuvarlak-sm: 8px;
    --yuvarlak:    12px;
    --yuvarlak-lg: 20px;
}

*, *::before, *::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }

body {
    margin: 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
                 "Helvetica Neue", Arial, "Noto Sans", sans-serif;
    font-size: 15px;
    line-height: 1.6;
    color: var(--metin);
    background:
        radial-gradient(1200px 400px at 10% -5%, rgba(124, 58, 237, .10), transparent 60%),
        radial-gradient(900px 360px at 95% 0%,  rgba(6, 182, 212, .10),  transparent 60%),
        var(--zemin);
    background-attachment: fixed;
    -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4 { margin: 0 0 .5rem; line-height: 1.25; font-weight: 700; letter-spacing: -.015em; }
h1 { font-size: 1.7rem; }
h2 { font-size: 1.3rem; }
h3 { font-size: 1.05rem; }
p  { margin: 0 0 .75rem; }

a { color: var(--indigo-600); text-decoration: none; font-weight: 550; }
a:hover { text-decoration: underline; }

/* ----------------------------------------------------------- Yerleşim */
.kabuk { min-height: 100vh; display: flex; flex-direction: column; }

.sarmal { width: 100%; max-width: 880px; margin: 0 auto; padding: 0 16px; }
.sarmal-genis { max-width: 1140px; }
.sarmal-dar   { max-width: 640px; }

/* ----------------------------------------------------------- Üst bant */
.ust-bant {
    background: var(--degrade-ana);
    color: #fff;
    padding: 14px 0;
    position: relative;
    overflow: hidden;
}

/* Hafif ışık dokusu */
.ust-bant::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(420px 120px at 18% 120%, rgba(255,255,255,.22), transparent 70%),
        radial-gradient(360px 140px at 82% -30%, rgba(255,255,255,.18), transparent 70%);
    pointer-events: none;
}

.ust-bant-ic {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    position: relative;
    z-index: 1;
}

.marka {
    display: flex;
    align-items: center;
    gap: 11px;
    color: #fff;
    font-weight: 700;
    font-size: 1rem;
    letter-spacing: -.015em;
}
.marka:hover { text-decoration: none; opacity: .92; }

.marka-isaret {
    width: 34px; height: 34px;
    border-radius: 10px;
    background: rgba(255, 255, 255, .2);
    border: 1px solid rgba(255,255,255,.28);
    display: grid; place-items: center;
    font-size: 16px;
    backdrop-filter: blur(4px);
}

/* Üst bantta fuar logosu */
/* Organizatör logosu — koyu zemin üzerinde açık renkli sürüm kullanılır */
.ust-logo {
    height: 38px;
    width: auto;
    max-width: 190px;
    object-fit: contain;
    display: block;
}

/* Dil değiştirici */
.dil-secim {
    display: flex; gap: 3px;
    background: rgba(255,255,255,.18);
    border: 1px solid rgba(255,255,255,.22);
    padding: 3px; border-radius: 999px;
}

.dil-secim a {
    color: rgba(255,255,255,.82);
    font-size: .78rem;
    font-weight: 700;
    padding: 4px 13px;
    border-radius: 999px;
    letter-spacing: .03em;
}
.dil-secim a:hover { color: #fff; text-decoration: none; }
.dil-secim a.etkin { background: #fff; color: var(--mor-700); box-shadow: var(--golge-sm); }

/* ----------------------------------------------------------- İçerik */
.govde { flex: 1; padding: 28px 0 56px; }

/* ----------------------------------------------------------- Kart */
.kart {
    background: var(--kart);
    border: 1px solid var(--cizgi);
    border-radius: var(--yuvarlak-lg);
    box-shadow: var(--golge);
    overflow: hidden;
}

.kart + .kart { margin-top: 20px; }

/* Üstte renkli ince şerit */
.kart-renkli::before {
    content: "";
    display: block;
    height: 5px;
    background: var(--degrade-ana);
}

.kart-baslik {
    padding: 20px 24px;
    border-bottom: 1px solid var(--cizgi);
    background: linear-gradient(180deg, #fff, #faf9ff);
}

.kart-govde { padding: 24px; }

@media (max-width: 560px) {
    .kart-baslik, .kart-govde { padding: 16px; }
}

/* ----------------------------------------------------------- Fuar başlığı */
.fuar-kapak { text-align: center; }

.fuar-afis {
    display: block;
    width: 100%;
    height: auto;
    border-radius: var(--yuvarlak);
    box-shadow: var(--golge);
    margin-bottom: 18px;
}

/* Form üstündeki afiş, kartın köşelerine yaslanır */
.afis-serit { margin: 0; line-height: 0; background: var(--mor-50); }
.afis-serit img { width: 100%; height: auto; display: block; }

.fuar-logo {
    height: 64px;
    width: auto;
    max-width: 240px;
    object-fit: contain;
    margin-bottom: 12px;
}

.fuar-adi {
    font-size: 1.55rem;
    font-weight: 750;
    background: var(--degrade-ana);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    margin-bottom: 6px;
}

.fuar-sezon {
    display: inline-block;
    font-size: .74rem;
    font-weight: 750;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #fff;
    background: var(--degrade-sicak);
    padding: 4px 12px;
    border-radius: 999px;
    margin-bottom: 10px;
    box-shadow: 0 2px 8px rgba(236, 72, 153, .3);
}

/* Bilgi satırları: tarih / saat / yer */
.bilgi-listesi { display: grid; gap: 10px; margin-top: 18px; }

.bilgi-satir {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    padding: 13px 15px;
    border-radius: var(--yuvarlak);
    text-align: left;
    border: 1px solid transparent;
}

.bilgi-satir .simge {
    flex: 0 0 auto;
    width: 30px; height: 30px;
    border-radius: 9px;
    display: grid; place-items: center;
    font-size: 15px;
    background: #fff;
}

.bilgi-satir .ic { flex: 1; min-width: 0; }

.bilgi-satir .etiket {
    display: block;
    font-size: .7rem;
    font-weight: 750;
    text-transform: uppercase;
    letter-spacing: .07em;
    opacity: .75;
}

.bilgi-satir .deger { font-weight: 600; }

.bilgi-tarih { background: var(--indigo-50);     border-color: #dcdffb; color: #312a9c; }
.bilgi-saat  { background: var(--camgobegi-50);  border-color: #c9f0f7; color: #0b6980; }
.bilgi-yer   { background: var(--turuncu-50);    border-color: #fbdfc3; color: #9a4a0c; }

/* ----------------------------------------------------------- Form */
.form-bolum + .form-bolum {
    margin-top: 30px;
    padding-top: 26px;
    border-top: 1px dashed var(--cizgi-koyu);
}

.bolum-basligi {
    display: flex;
    align-items: center;
    gap: 11px;
    font-size: .95rem;
    font-weight: 750;
    letter-spacing: -.01em;
    color: var(--metin);
    margin-bottom: 20px;
}

.bolum-basligi .rozet-simge {
    width: 32px; height: 32px;
    border-radius: 10px;
    display: grid; place-items: center;
    font-size: 15px;
    color: #fff;
    flex: 0 0 auto;
    box-shadow: var(--golge-sm);
}

.bolum-basligi .cizgi { flex: 1; height: 1px; background: var(--cizgi); }

.simge-mor      { background: linear-gradient(135deg, #7c3aed, #a855f7); }
.simge-camgobegi{ background: linear-gradient(135deg, #0891b2, #06b6d4); }
.simge-turuncu  { background: linear-gradient(135deg, #f97316, #fb923c); }
.simge-yesil    { background: linear-gradient(135deg, #059669, #10b981); }
.simge-pembe    { background: linear-gradient(135deg, #db2777, #ec4899); }

.alan-izgara {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.alan-izgara .tam { grid-column: 1 / -1; }

@media (max-width: 640px) { .alan-izgara { grid-template-columns: 1fr; } }

.alan { display: flex; flex-direction: column; gap: 6px; }

.alan label, .alan .baslik { font-size: .83rem; font-weight: 650; color: var(--metin); }
.alan .zorunlu { color: var(--pembe-500); margin-left: 2px; font-weight: 800; }
.alan .ipucu { font-size: .76rem; color: var(--metin-soluk); line-height: 1.45; }

input[type="text"], input[type="email"], input[type="tel"], input[type="password"],
input[type="date"], input[type="datetime-local"], input[type="number"],
select, textarea {
    width: 100%;
    font: inherit;
    font-size: .92rem;
    color: var(--metin);
    background: #fff;
    border: 1.5px solid var(--cizgi-koyu);
    border-radius: var(--yuvarlak-sm);
    padding: 10px 12px;
    transition: border-color .15s, box-shadow .15s;
    appearance: none;
}

textarea { min-height: 86px; resize: vertical; }

select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%237c3aed' d='M1.4 0 6 4.6 10.6 0 12 1.4 6 7.4 0 1.4z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    padding-right: 34px;
}

input:focus, select:focus, textarea:focus {
    outline: none;
    border-color: var(--mor-500);
    box-shadow: 0 0 0 4px rgba(139, 92, 246, .16);
}

input:disabled, select:disabled, textarea:disabled {
    background: #f6f5fb;
    color: var(--metin-silik);
    cursor: not-allowed;
}

.alan.hatali input, .alan.hatali select, .alan.hatali textarea {
    border-color: var(--kirmizi-600);
    background: var(--kirmizi-50);
}

.alan-hata { font-size: .76rem; font-weight: 650; color: var(--kirmizi-600); display: none; }
.alan.hatali .alan-hata { display: block; }

/* Onay kutuları ve radyolar */
.secim-listesi {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(255px, 1fr));
    gap: 9px;
}

.secim {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 11px 13px;
    border: 1.5px solid var(--cizgi);
    border-radius: var(--yuvarlak-sm);
    background: #fff;
    cursor: pointer;
    transition: border-color .15s, background .15s, transform .08s, box-shadow .15s;
    font-size: .88rem;
    line-height: 1.45;
}

.secim:hover { border-color: var(--mor-500); background: var(--mor-50); transform: translateY(-1px); }

.secim input { margin: 2px 0 0; width: 17px; height: 17px; accent-color: var(--mor-600); flex: 0 0 auto; }

.secim.secili {
    border-color: var(--mor-600);
    background: var(--mor-50);
    box-shadow: 0 2px 10px rgba(124, 58, 237, .14);
}

/* Renkli ilgi alanı kartları — sırayla farklı tonlar */
.secim-listesi .secim:nth-child(6n+1).secili { border-color: var(--mor-600);       background: var(--mor-50); }
.secim-listesi .secim:nth-child(6n+2).secili { border-color: var(--camgobegi-600); background: var(--camgobegi-50); }
.secim-listesi .secim:nth-child(6n+3).secili { border-color: var(--pembe-500);     background: var(--pembe-50); }
.secim-listesi .secim:nth-child(6n+4).secili { border-color: var(--turuncu-500);   background: var(--turuncu-50); }
.secim-listesi .secim:nth-child(6n+5).secili { border-color: var(--yesil-600);     background: var(--yesil-50); }
.secim-listesi .secim:nth-child(6n+6).secili { border-color: var(--indigo-600);    background: var(--indigo-50); }

.secim-satir { display: flex; flex-wrap: wrap; gap: 9px; }
.secim-satir .secim { flex: 0 1 auto; }

.alan.hatali .secim { border-color: var(--kirmizi-600); }

/* Onay bloğu (KVKK vb.) */
.onay-kutu {
    display: flex;
    gap: 11px;
    align-items: flex-start;
    padding: 15px;
    background: linear-gradient(135deg, var(--mor-50), var(--camgobegi-50));
    border: 1.5px solid #e3dcfa;
    border-radius: var(--yuvarlak);
    font-size: .86rem;
    line-height: 1.5;
    cursor: pointer;
}

.onay-kutu input { margin: 2px 0 0; width: 18px; height: 18px; accent-color: var(--mor-600); flex: 0 0 auto; }
.onay-kutu + .onay-kutu { margin-top: 10px; }
.alan.hatali .onay-kutu { border-color: var(--kirmizi-600); background: var(--kirmizi-50); }

/* ----------------------------------------------------------- Düğmeler */
.dugme {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font: inherit;
    font-size: .93rem;
    font-weight: 700;
    padding: 12px 26px;
    border-radius: var(--yuvarlak-sm);
    border: 1.5px solid transparent;
    cursor: pointer;
    transition: filter .15s, box-shadow .15s, transform .06s, background .15s;
    text-decoration: none;
    white-space: nowrap;
}

.dugme:hover { text-decoration: none; }
.dugme:active { transform: translateY(1px); }

.dugme-ana {
    background: var(--degrade-ana);
    color: #fff;
    box-shadow: var(--golge-renk);
}
.dugme-ana:hover { filter: brightness(1.08); color: #fff; }

.dugme-ikincil { background: #fff; color: var(--metin); border-color: var(--cizgi-koyu); }
.dugme-ikincil:hover { background: var(--mor-50); border-color: var(--mor-500); color: var(--mor-700); }

.dugme-basari { background: var(--degrade-serin); color: #fff; box-shadow: 0 8px 22px rgba(16, 185, 129, .26); }
.dugme-basari:hover { filter: brightness(1.08); color: #fff; }

.dugme[disabled] { opacity: .6; cursor: not-allowed; box-shadow: none; }
.dugme-genis { width: 100%; }

.dugme-satir {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    align-items: center;
    margin-top: 26px;
    padding-top: 22px;
    border-top: 1px dashed var(--cizgi-koyu);
}

.dugme-satir .bosluk { flex: 1; }

@media (max-width: 560px) {
    .dugme-satir { flex-direction: column-reverse; align-items: stretch; }
    .dugme-satir .bosluk { display: none; }
    .dugme { width: 100%; }
}

/* ----------------------------------------------------------- Uyarılar */
.uyari-kutu {
    display: flex;
    gap: 12px;
    padding: 14px 16px;
    border-radius: var(--yuvarlak);
    border: 1.5px solid;
    font-size: .88rem;
    line-height: 1.5;
    margin-bottom: 18px;
}

.uyari-kutu .simge { flex: 0 0 auto; font-size: 1.05rem; line-height: 1.35; }
.uyari-kutu strong { display: block; margin-bottom: 2px; }

.uyari-basari { background: var(--yesil-50);    border-color: #a7ebcd; color: #056044; }
.uyari-hata   { background: var(--kirmizi-50);  border-color: #f7bfbf; color: #a11d1d; }
.uyari-bilgi  { background: var(--indigo-50);   border-color: #c9ccfa; color: #3730a3; }
.uyari-dikkat { background: var(--sari-50);     border-color: #f2e2a4; color: #7f6208; }

/* ----------------------------------------------------------- Rozetler */
.rozet {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: .72rem;
    font-weight: 750;
    letter-spacing: .03em;
    padding: 3px 10px;
    border-radius: 999px;
    text-transform: uppercase;
}

.rozet-basari { background: var(--yesil-50);   color: #056044; }
.rozet-hata   { background: var(--kirmizi-50); color: #a11d1d; }
.rozet-bilgi  { background: var(--indigo-50);  color: #3730a3; }
.rozet-mor    { background: var(--mor-50);     color: var(--mor-700); }
.rozet-notr   { background: var(--zemin);      color: var(--metin-soluk); }

/* ----------------------------------------------------------- Davetiye */
.davetiye-kart {
    background: #fff;
    border-radius: var(--yuvarlak-lg);
    box-shadow: var(--golge-lg);
    overflow: hidden;
}

.davetiye-ust {
    background: var(--degrade-ana);
    color: #fff;
    padding: 28px 24px;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.davetiye-ust::after {
    content: "";
    position: absolute; inset: 0;
    background:
        radial-gradient(300px 120px at 15% 110%, rgba(255,255,255,.22), transparent 70%),
        radial-gradient(260px 120px at 88% -20%, rgba(255,255,255,.2), transparent 70%);
    pointer-events: none;
}

.davetiye-ust > * { position: relative; z-index: 1; }

.davetiye-ust .etiket {
    font-size: .72rem;
    letter-spacing: .2em;
    text-transform: uppercase;
    opacity: .85;
    margin-bottom: 8px;
}

.davetiye-ust h2 { color: #fff; font-size: 1.3rem; margin: 0; }

.davetiye-ust .logo {
    height: 54px; width: auto; max-width: 200px;
    object-fit: contain;
    background: rgba(255,255,255,.95);
    border-radius: 10px;
    padding: 6px 10px;
    margin-bottom: 14px;
}

.davetiye-govde { padding: 26px 24px; }

.davetiye-qr {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 11px;
    padding: 24px;
    background: linear-gradient(135deg, var(--mor-50), var(--camgobegi-50));
    border: 2px dashed #cdbdf7;
    border-radius: var(--yuvarlak);
    margin-bottom: 22px;
}

.davetiye-qr img { width: 190px; height: 190px; display: block; background: #fff; padding: 8px; border-radius: 10px; }

.davetiye-no {
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 1.1rem;
    font-weight: 800;
    letter-spacing: .1em;
    color: var(--mor-700);
}

/* Özet tablo */
.ozet { width: 100%; border-collapse: collapse; font-size: .88rem; }

.ozet th, .ozet td {
    padding: 10px 2px;
    text-align: left;
    vertical-align: top;
    border-bottom: 1px solid var(--cizgi);
}

.ozet th { width: 38%; font-weight: 650; color: var(--metin-soluk); }
.ozet tr:last-child th, .ozet tr:last-child td { border-bottom: none; }

@media (max-width: 480px) { .ozet th { width: 44%; } }

/* ----------------------------------------------------------- Liste */
.fuar-listesi { display: grid; gap: 14px; }

.fuar-oge {
    display: flex;
    gap: 16px;
    align-items: center;
    padding: 16px 18px;
    background: #fff;
    border: 1.5px solid var(--cizgi);
    border-radius: var(--yuvarlak);
    box-shadow: var(--golge-sm);
    transition: border-color .15s, box-shadow .15s, transform .08s;
}

.fuar-oge:hover {
    border-color: var(--mor-500);
    box-shadow: var(--golge);
    transform: translateY(-2px);
    text-decoration: none;
}

.fuar-oge .logo {
    width: 54px; height: 54px;
    object-fit: contain;
    border-radius: 10px;
    background: var(--zemin);
    padding: 5px;
    flex: 0 0 auto;
}

.fuar-oge .ic { flex: 1; min-width: 0; }
.fuar-oge .ad { font-weight: 700; color: var(--metin); margin-bottom: 2px; }
.fuar-oge .alt { font-size: .82rem; color: var(--metin-soluk); }

/* ----------------------------------------------------------- Durum ekranı */
.durum-ekran { text-align: center; padding: 48px 20px; }

.durum-ekran .simge {
    width: 70px; height: 70px;
    margin: 0 auto 18px;
    border-radius: 50%;
    display: grid; place-items: center;
    font-size: 30px;
    color: #fff;
}

.durum-ekran .simge.basari { background: var(--degrade-serin); box-shadow: 0 8px 22px rgba(16,185,129,.3); }
.durum-ekran .simge.hata   { background: linear-gradient(135deg,#dc2626,#f97316); box-shadow: 0 8px 22px rgba(220,38,38,.28); }
.durum-ekran .simge.bilgi  { background: var(--degrade-ana); box-shadow: var(--golge-renk); }

.durum-ekran h1 { margin-bottom: 8px; }
.durum-ekran p  { color: var(--metin-soluk); max-width: 46ch; margin-left: auto; margin-right: auto; }

/* ----------------------------------------------------------- Alt bant */
.alt-bant {
    padding: 22px 0;
    border-top: 1px solid var(--cizgi);
    background: #fff;
    font-size: .8rem;
    color: var(--metin-silik);
}

.alt-bant-ic { display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; }

/* ----------------------------------------------------------- Yardımcılar */
.gizli { display: none !important; }
.gorsel-gizli { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.orta  { text-align: center; }
.soluk { color: var(--metin-soluk); }
.kucuk { font-size: .82rem; }
.ust-bosluk { margin-top: 18px; }
.alt-bosluk { margin-bottom: 18px; }

@keyframes don { to { transform: rotate(360deg); } }

/* ----------------------------------------------------------- Yazdırma */
@media print {
    body { background: #fff; }
    .ust-bant, .alt-bant, .dugme, .dugme-satir, .basma-gizle { display: none !important; }
    .kart, .davetiye-kart { border: none; box-shadow: none; }
    .davetiye-ust, .davetiye-qr {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
}

/* ----------------------------------------------------------- Tanıtım bloğu */
.tanitim-metni { margin-top: 26px; }
.tanitim-metni p { color: var(--metin-soluk); }

.galeri {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
    gap: 12px;
}

.galeri-oge {
    margin: 0;
    border-radius: var(--yuvarlak);
    overflow: hidden;
    border: 1.5px solid var(--cizgi);
    background: #fff;
    box-shadow: var(--golge-sm);
    transition: transform .15s, box-shadow .15s, border-color .15s;
}

.galeri-oge:hover {
    transform: translateY(-3px);
    box-shadow: var(--golge);
    border-color: var(--mor-500);
}

.galeri-oge img {
    display: block;
    width: 100%;
    height: 160px;
    object-fit: cover;
    background: var(--zemin);
}

.galeri-oge figcaption {
    padding: 10px 12px;
    font-size: .8rem;
    line-height: 1.4;
}

.galeri-oge .baslik { display: block; font-weight: 650; color: var(--metin); }

.galeri-oge .kunye {
    display: block;
    margin-top: 3px;
    font-size: .68rem;
    color: var(--metin-silik);
}

.galeri-oge .kunye a { color: inherit; font-weight: 500; }

.plan-gorsel {
    display: block;
    width: 100%;
    height: auto;
    border-radius: var(--yuvarlak);
    border: 1.5px solid var(--cizgi);
    background: #fff;
    box-shadow: var(--golge-sm);
    transition: box-shadow .15s;
}

.plan-gorsel:hover { box-shadow: var(--golge); }

/* ===================================================================
   Kurumsal ana sayfa — organizatör ve fuar listesi
   =================================================================== */

.kurumsal-giris {
    text-align: center;
    padding: 10px 0 30px;
}

.kurumsal-logo {
    display: inline-block;
    background: linear-gradient(135deg, #1e1b35, #3b2f6b);
    border-radius: var(--yuvarlak);
    padding: 16px 26px;
    margin-bottom: 18px;
    box-shadow: var(--golge);
}

.kurumsal-logo img { height: 46px; width: auto; max-width: 240px; object-fit: contain; display: block; }

.kurumsal-giris h1 {
    font-size: 1.9rem;
    background: var(--degrade-ana);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    margin-bottom: 6px;
}

.kurumsal-giris .slogan {
    font-size: .8rem;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--mor-600);
    margin-bottom: 14px;
}

.kurumsal-giris .hakkinda {
    max-width: 62ch;
    margin: 0 auto;
    color: var(--metin-soluk);
}

/* Bölüm başlığı — geniş yerleşimde */
.bolum-genis { margin-bottom: 16px; }

/* Fuar kartları */
.fuar-izgara {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
    gap: 18px;
}

.fuar-kart {
    background: var(--kart);
    border: 1px solid var(--cizgi);
    border-radius: var(--yuvarlak-lg);
    box-shadow: var(--golge);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: transform .14s, box-shadow .14s, border-color .14s;
}

.fuar-kart:hover {
    transform: translateY(-3px);
    box-shadow: var(--golge-lg);
    border-color: var(--mor-500);
}

.fuar-kart.one-cikan { margin-bottom: 8px; }

.fuar-kart .kart-afis { display: block; line-height: 0; background: var(--mor-50); }
.fuar-kart .kart-afis img { width: 100%; height: auto; display: block; }

.fuar-kart .kart-ic { padding: 20px; display: flex; flex-direction: column; flex: 1; gap: 12px; }

.fuar-kart .kart-ust {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 38px;
}

.fuar-kart .kart-logo {
    height: 38px;
    width: auto;
    max-width: 190px;
    object-fit: contain;
    object-position: left center;
}

.fuar-kart .kart-ad { font-size: 1.12rem; margin: 0; line-height: 1.3; }
.fuar-kart .kart-ad a { color: var(--metin); font-weight: 700; }
.fuar-kart .kart-ad a:hover { color: var(--mor-700); text-decoration: none; }

.fuar-kart.one-cikan .kart-ad { font-size: 1.35rem; }

.fuar-kart .kart-ozet { color: var(--metin-soluk); font-size: .9rem; margin: 0; }

.fuar-kart .kart-bilgi { margin: 0; display: grid; gap: 7px; }

.fuar-kart .kart-bilgi > div {
    display: flex;
    gap: 9px;
    align-items: flex-start;
    font-size: .86rem;
}

.fuar-kart .kart-bilgi dt { margin: 0; flex: 0 0 auto; }
.fuar-kart .kart-bilgi dd { margin: 0; font-weight: 600; }

.fuar-kart .kart-eylem {
    display: flex;
    gap: 9px;
    flex-wrap: wrap;
    margin-top: auto;
    padding-top: 6px;
}

.fuar-kart .kart-eylem .dugme { flex: 1 1 auto; }

@media (max-width: 480px) {
    .fuar-kart .kart-eylem { flex-direction: column; }
    .fuar-kart .kart-eylem .dugme { width: 100%; }
}

/* Yol izi */
.yol-izi {
    display: flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap;
    font-size: .82rem;
    color: var(--metin-soluk);
    margin-bottom: 14px;
}

.yol-izi a { color: var(--mor-700); font-weight: 600; }
.yol-izi span[aria-hidden] { color: var(--metin-silik); }
.yol-izi [aria-current] { color: var(--metin); font-weight: 600; }
