:root {
    --ana: #b5793a;
    --ana-koyu: #8f5c27;
    --koyu: #1f2a2e;
    --metin: #4a5458;
    --acik: #f7f3ee;
    --beyaz: #fff;
    --cizgi: #e8e1d8;
    --golge: 0 10px 30px rgba(31, 42, 46, .08);
    --r: 16px;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { font-family: 'Inter', system-ui, sans-serif; color: var(--metin); background: var(--beyaz); line-height: 1.65; }
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
h1, h2, h3 { font-family: 'Playfair Display', Georgia, serif; color: var(--koyu); line-height: 1.2; }
h2 { font-size: clamp(1.8rem, 3.5vw, 2.5rem); margin-bottom: 1rem; }
h3 { font-size: 1.3rem; margin-bottom: .5rem; }
p + p { margin-top: 1rem; }
.kap { width: min(1180px, 100% - 32px); margin-inline: auto; }
.ikon { width: 1.15em; height: 1.15em; flex-shrink: 0; }

/* Butonlar */
.dugme { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; padding: .85rem 1.6rem; border-radius: 999px; background: var(--ana); color: var(--beyaz); font-weight: 600; border: 2px solid var(--ana); cursor: pointer; font: inherit; font-weight: 600; transition: .25s; }
.dugme:hover { background: var(--ana-koyu); border-color: var(--ana-koyu); transform: translateY(-2px); }
.dugme-kucuk { padding: .55rem 1.1rem; font-size: .9rem; }
.dugme-cizgi { background: transparent; border-color: rgba(255,255,255,.8); }
.dugme-cizgi:hover { background: var(--beyaz); color: var(--koyu); border-color: var(--beyaz); }
.dugme-cizgi-koyu { background: transparent; color: var(--koyu); border-color: var(--koyu); }
.dugme-cizgi-koyu:hover { background: var(--koyu); color: var(--beyaz); border-color: var(--koyu); }
.dugme-beyaz { background: var(--beyaz); color: var(--koyu); border-color: var(--beyaz); }
.dugme-beyaz:hover { background: var(--acik); border-color: var(--acik); }
.dugme-tam { width: 100%; }
.dugmeler { display: flex; flex-wrap: wrap; gap: 1rem; }

/* Üst menü */
.ust { position: sticky; top: 0; z-index: 50; background: rgba(255,255,255,.95); backdrop-filter: blur(10px); border-bottom: 1px solid transparent; transition: .3s; }
.ust.kaydi { border-color: var(--cizgi); box-shadow: var(--golge); }
.ust-ic { display: flex; align-items: center; justify-content: space-between; height: 78px; }
.marka { display: flex; align-items: center; gap: .75rem; }
.marka img { width: 48px; height: 48px; object-fit: cover; border-radius: 12px; }
.marka strong { display: block; font-family: 'Playfair Display', serif; color: var(--koyu); font-size: 1.2rem; line-height: 1.1; }
.marka small { color: var(--ana); font-size: .8rem; font-weight: 500; }
.menu { display: flex; align-items: center; gap: 1.75rem; }
.menu > a:not(.dugme) { font-weight: 500; color: var(--koyu); position: relative; padding: .25rem 0; }
.menu > a:not(.dugme)::after { content: ''; position: absolute; left: 0; bottom: -2px; width: 0; height: 2px; background: var(--ana); transition: .25s; }
.menu > a:hover::after, .menu > a.aktif::after { width: 100%; }
.menu > a.aktif { color: var(--ana); }
.menu-dugme { display: none; background: none; border: 0; width: 44px; height: 44px; cursor: pointer; flex-direction: column; justify-content: center; gap: 5px; padding: 10px; }
.menu-dugme span { height: 2px; background: var(--koyu); border-radius: 2px; transition: .3s; }
.menu-acik .menu-dugme span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.menu-acik .menu-dugme span:nth-child(2) { opacity: 0; }
.menu-acik .menu-dugme span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* Kahraman alanı */
.kahraman, .sayfa-baslik { --ortu: linear-gradient(100deg, rgba(20,28,31,.85) 0%, rgba(20,28,31,.45) 60%, rgba(20,28,31,.25)); background-color: var(--koyu); background-position: center; background-size: cover; background-repeat: no-repeat; color: var(--beyaz); }
.kahraman { background-position: 35% center; min-height: calc(100vh - 78px); max-height: 820px; display: flex; align-items: center; padding: 5rem 0; }
.kahraman-ic { max-width: 1180px; }
.kahraman h1 { color: var(--beyaz); font-size: clamp(2.3rem, 6vw, 4.2rem); margin: 1rem 0 1.25rem; max-width: 14ch; }
.kahraman p { font-size: 1.15rem; max-width: 46ch; opacity: .92; margin-bottom: 2rem; }
.etiket { display: inline-block; color: var(--ana); font-weight: 600; font-size: .85rem; letter-spacing: .12em; text-transform: uppercase; margin-bottom: .5rem; }
.kahraman .etiket { background: rgba(255,255,255,.15); color: var(--beyaz); padding: .4rem 1rem; border-radius: 999px; backdrop-filter: blur(6px); }
.sayfa-baslik { padding: 6rem 0 5rem; text-align: center; }
.sayfa-baslik h1 { color: var(--beyaz); font-size: clamp(2.2rem, 5vw, 3.4rem); }
.sayfa-baslik p { opacity: .9; margin-top: .5rem; }

/* Bölümler */
.bolum { padding: 6rem 0; }
.bolum-acik { background: var(--acik); }
.bolum-baslik { text-align: center; max-width: 640px; margin: 0 auto 3rem; }
.izgara-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.75rem; }
.iki-kolon { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; }
.orta { text-align: center; margin-top: 2.5rem; }

.hizmet { background: var(--beyaz); padding: 2.25rem 2rem; border-radius: var(--r); border: 1px solid var(--cizgi); transition: .3s; }
.hizmet:hover { transform: translateY(-6px); box-shadow: var(--golge); border-color: transparent; }
.hizmet-ikon { width: 60px; height: 60px; border-radius: 16px; background: var(--acik); color: var(--ana); display: grid; place-items: center; margin-bottom: 1.25rem; }
.hizmet-ikon .ikon { width: 28px; height: 28px; }

.kolaj { display: grid; grid-template-columns: 1.2fr 1fr; gap: 1rem; align-items: end; }
.kolaj img { border-radius: var(--r); object-fit: cover; width: 100%; aspect-ratio: 3/4; box-shadow: var(--golge); }
.kolaj img:last-child { aspect-ratio: 4/5; margin-bottom: 2.5rem; }
.tikli { list-style: none; margin: 1.5rem 0 2rem; display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; }
.tikli li { padding-left: 1.75rem; position: relative; color: var(--koyu); font-weight: 500; }
.tikli li::before { content: '✓'; position: absolute; left: 0; top: 0; color: var(--beyaz); background: var(--ana); width: 1.25rem; height: 1.25rem; border-radius: 50%; display: grid; place-items: center; font-size: .75rem; margin-top: .2rem; }

/* Oda kartları */
.oda { background: var(--beyaz); border-radius: var(--r); overflow: hidden; box-shadow: var(--golge); display: flex; flex-direction: column; transition: .3s; }
.oda:hover { transform: translateY(-6px); }
.oda-gorsel { aspect-ratio: 4/3; overflow: hidden; }
.oda-gorsel img { width: 100%; height: 100%; object-fit: cover; transition: .6s; }
.oda:hover .oda-gorsel img { transform: scale(1.06); }
.oda-ic { padding: 1.75rem; display: flex; flex-direction: column; flex: 1; }
.oda-ozellik { list-style: none; margin: 1.25rem 0 1.5rem; display: grid; gap: .55rem; font-size: .93rem; flex: 1; }
.oda-ozellik li { display: flex; gap: .6rem; align-items: flex-start; }
.oda-ozellik .ikon { color: var(--ana); margin-top: .2rem; }
.bilgi-kutusu { margin-top: 4rem; background: var(--acik); border-radius: var(--r); padding: 2.5rem; }
.bilgi-kutusu h3 { margin-bottom: 1.5rem; }
.mini-hizmet { display: flex; gap: .75rem; }
.mini-hizmet .ikon { color: var(--ana); width: 1.5em; height: 1.5em; }
.mini-hizmet strong { display: block; color: var(--koyu); }

/* Galeri */
.galeri { columns: 3 280px; column-gap: 1rem; }
.galeri-oge { display: block; margin-bottom: 1rem; border-radius: 12px; overflow: hidden; break-inside: avoid; position: relative; cursor: zoom-in; }
.galeri-oge img { width: 100%; transition: .5s; }
.galeri-oge:hover img { transform: scale(1.05); }
.galeri-oge::after { content: ''; position: absolute; inset: 0; background: rgba(31,42,46,0); transition: .3s; }
.galeri-oge:hover::after { background: rgba(31,42,46,.15); }
.galeri-kisa .galeri-oge img { aspect-ratio: 4/3; object-fit: cover; }
.isik-kutusu { position: fixed; inset: 0; background: rgba(10,14,16,.94); z-index: 100; display: grid; place-items: center; padding: 3rem 4rem; }
.isik-kutusu[hidden] { display: none; }
.isik-kutusu img { max-height: 88vh; max-width: 100%; border-radius: 8px; }
.isik-kutusu button { position: absolute; background: rgba(255,255,255,.1); color: #fff; border: 0; width: 48px; height: 48px; border-radius: 50%; font-size: 1.8rem; cursor: pointer; line-height: 1; }
.isik-kutusu button:hover { background: rgba(255,255,255,.25); }
.isik-kutusu .kapat { top: 1rem; right: 1rem; }
.isik-kutusu .onceki { left: 1rem; top: 50%; transform: translateY(-50%); }
.isik-kutusu .sonraki { right: 1rem; top: 50%; transform: translateY(-50%); }

.rakamlar { text-align: center; }
.rakamlar strong { display: block; font-family: 'Playfair Display', serif; font-size: 3rem; color: var(--ana); }
.rakamlar span { color: var(--koyu); font-weight: 500; }

/* Çağrı bandı */
.cagri { background: var(--koyu); color: var(--beyaz); padding: 4.5rem 0; }
.cagri-ic { display: flex; align-items: center; justify-content: space-between; gap: 2rem; flex-wrap: wrap; }
.cagri h2 { color: var(--beyaz); margin-bottom: .5rem; }
.cagri p { opacity: .8; }

/* İletişim */
.iletisim { align-items: start; }
.iletisim-liste { display: grid; gap: 1rem; margin: 1.5rem 0 2rem; }
.iletisim-liste > * { display: flex; gap: 1rem; align-items: center; padding: 1rem 1.25rem; background: var(--acik); border-radius: 12px; color: var(--koyu); font-weight: 600; transition: .25s; }
.iletisim-liste a:hover { background: var(--cizgi); }
.iletisim-liste .ikon { width: 22px; height: 22px; color: var(--ana); }
.iletisim-liste small { display: block; color: var(--metin); font-weight: 400; font-size: .8rem; }
.harita { border-radius: var(--r); overflow: hidden; aspect-ratio: 16/10; }
.harita iframe { width: 100%; height: 100%; border: 0; }
.form { background: var(--beyaz); padding: 2.5rem; border-radius: var(--r); box-shadow: var(--golge); border: 1px solid var(--cizgi); display: grid; gap: 1rem; }
.form-not { font-size: .92rem; margin-top: -.5rem; }
.form label { display: grid; gap: .35rem; font-weight: 500; color: var(--koyu); font-size: .92rem; }
.form input, .form select, .form textarea { font: inherit; padding: .8rem 1rem; border: 1px solid var(--cizgi); border-radius: 10px; background: var(--acik); color: var(--koyu); width: 100%; }
.form input:focus, .form select:focus, .form textarea:focus { outline: 2px solid var(--ana); outline-offset: 1px; background: var(--beyaz); }
.form-satir { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.uyari { background: #fdecea; color: #a12b1f; padding: .9rem 1rem; border-radius: 10px; font-size: .92rem; }

/* Alt bilgi */
.alt { background: #172024; color: rgba(255,255,255,.7); padding: 4.5rem 0 0; }
.alt-izgara { display: grid; grid-template-columns: 1.4fr 1fr 1.2fr; gap: 3rem; padding-bottom: 3rem; }
.alt .alt-baslik { font-family: inherit; font-size: 1rem; line-height: 1.4; } .alt .alt-baslik { color: var(--beyaz); font-size: 1rem; margin-bottom: 1rem; }
.alt-izgara > div > a:not(.marka), .alt-izgara > div > span { display: flex; align-items: center; gap: .5rem; margin-bottom: .6rem; transition: .2s; }
.alt-izgara a:hover { color: var(--beyaz); }
.alt p { margin-top: 1rem; max-width: 36ch; }
.marka-acik strong { color: var(--beyaz); }
.telif { border-top: 1px solid rgba(255,255,255,.1); padding: 1.5rem 0; font-size: .88rem; text-align: center; }

.wp-sabit { position: fixed; right: 20px; bottom: 20px; width: 58px; height: 58px; border-radius: 50%; background: #25d366; color: #fff; display: grid; place-items: center; box-shadow: 0 8px 24px rgba(37,211,102,.45); z-index: 60; transition: .25s; }
.wp-sabit:hover { transform: scale(1.08); }
.wp-sabit .ikon { width: 30px; height: 30px; }

/* ===== Animasyonlar (yalnızca transform / opacity: akıcı ve hafif) ===== */
@keyframes sayfaGiris { from { opacity: 0; } }
@keyframes yukariGel { from { opacity: 0; transform: translateY(28px); } }
@keyframes kenBurns { from { scale: 1.12; } to { scale: 1; } }
@keyframes nabiz { 0% { transform: scale(1); opacity: .55; } 100% { transform: scale(1.7); opacity: 0; } }
@keyframes kaydirIpucu { 0%, 100% { transform: translateY(0); opacity: .9; } 50% { transform: translateY(8px); opacity: .4; } }
@keyframes kutuAc { from { opacity: 0; transform: scale(.94); } }

main, .ust { animation: sayfaGiris .6s ease both; }

/* Kaydırma ilerleme çubuğu */
.ilerleme { position: fixed; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, var(--ana), #e0a96d); transform-origin: 0 50%; transform: scaleX(0); z-index: 70; pointer-events: none; }

/* Üst menü kaydırınca küçülür */
.ust-ic, .marka img, .marka strong { transition: height .35s ease, width .35s ease, font-size .35s ease; }
.ust.kaydi .ust-ic { height: 64px; }
.ust.kaydi .marka img { width: 40px; height: 40px; }
.ust.kaydi .marka strong { font-size: 1.08rem; }

/* Kahraman alanı: yavaş yakınlaşma + parallax + kademeli metin girişi */
.kahraman, .sayfa-baslik { position: relative; overflow: hidden; isolation: isolate; }
.kahraman::before, .sayfa-baslik::before { content: ''; position: absolute; inset: -6% 0; background: inherit; z-index: -1; translate: 0 var(--py, 0px); animation: kenBurns 14s cubic-bezier(.2,.6,.3,1) both; will-change: transform; }
.kahraman-ic > *, .sayfa-baslik .kap > * { animation: yukariGel .9s cubic-bezier(.2,.7,.2,1) both; }
.kahraman-ic > :nth-child(2), .sayfa-baslik .kap > :nth-child(2) { animation-delay: .15s; }
.kahraman-ic > :nth-child(3) { animation-delay: .3s; }
.kahraman-ic > :nth-child(4) { animation-delay: .45s; }
.kaydir-ipucu { position: absolute; left: 50%; bottom: 28px; width: 26px; height: 42px; margin-left: -13px; border: 2px solid rgba(255,255,255,.7); border-radius: 14px; }
.kaydir-ipucu::after { content: ''; position: absolute; left: 50%; top: 8px; width: 4px; height: 8px; margin-left: -2px; border-radius: 2px; background: #fff; animation: kaydirIpucu 1.8s ease-in-out infinite; }

/* Butonlar: parlama geçişi */
.dugme { position: relative; overflow: hidden; isolation: isolate; }
.dugme::after { content: ''; position: absolute; top: 0; left: -75%; width: 50%; height: 100%; background: linear-gradient(110deg, transparent, rgba(255,255,255,.35), transparent); transform: skewX(-20deg); transition: left .6s ease; z-index: -1; pointer-events: none; }
.dugme:hover::after { left: 130%; }
.dugme .ikon { transition: transform .3s ease; }
.dugme:hover .ikon { transform: scale(1.15) rotate(-8deg); }

/* Hizmet kartları */
.hizmet-ikon { transition: background .35s ease, color .35s ease, transform .45s cubic-bezier(.3,1.6,.5,1); }
.hizmet:hover .hizmet-ikon { background: var(--ana); color: var(--beyaz); transform: rotate(-8deg) scale(1.08); }

/* Oda kartları: yükselme + görsel yakınlaşma + alt çizgi */
.oda { position: relative; }
.oda::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: var(--ana); transform: scaleX(0); transform-origin: left; transition: transform .45s ease; }
.oda:hover::after { transform: scaleX(1); }
.oda:hover { box-shadow: 0 22px 44px rgba(31,42,46,.14); }

/* Galeri: büyüteç simgeli kaplama */
.galeri-oge::before { content: '+'; position: absolute; left: 50%; top: 50%; z-index: 2; width: 52px; height: 52px; margin: -26px 0 0 -26px; border-radius: 50%; background: rgba(255,255,255,.92); color: var(--koyu); font-size: 1.8rem; line-height: 50px; text-align: center; opacity: 0; transform: scale(.6); transition: opacity .3s ease, transform .35s cubic-bezier(.3,1.6,.5,1); }
.galeri-oge:hover::before { opacity: 1; transform: scale(1); }

/* Kolaj görselleri hafif yüzer */
.kolaj img { transition: transform .6s ease, box-shadow .6s ease; }
.kolaj img:hover { transform: translateY(-6px) scale(1.02); box-shadow: 0 24px 48px rgba(31,42,46,.18); }

/* Bölüm etiketi altında büyüyen çizgi */
.bolum-baslik .etiket::after { content: ''; display: block; width: 40px; height: 2px; margin: .5rem auto 0; background: var(--ana); transform: scaleX(0); transition: transform .8s .3s ease; }
.bolum-baslik.gorundu .etiket::after, .bolum-baslik:not(.belir) .etiket::after { transform: scaleX(1); }

/* WhatsApp düğmesi nabız halkası */
.wp-sabit::before { content: ''; position: absolute; inset: 0; border-radius: 50%; background: #25d366; z-index: -1; animation: nabiz 2.2s ease-out infinite; }

/* Işık kutusu açılışı */
.isik-kutusu:not([hidden]) { animation: sayfaGiris .25s ease; }
.isik-kutusu:not([hidden]) img { animation: kutuAc .35s cubic-bezier(.2,.7,.2,1); }

/* Görünür olunca belirme (JS ekler, iş bitince sınıfı kaldırır) */
.belir { opacity: 0; transform: translateY(32px); transition: opacity .8s ease, transform .8s cubic-bezier(.2,.7,.2,1); transition-delay: var(--gecikme, 0s); }
.belir.soldan { transform: translateX(-40px); }
.belir.sagdan { transform: translateX(40px); }
.belir.buyut { transform: scale(.92); }
.belir.gorundu { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation: none !important; transition-duration: .01ms !important; transition-delay: 0s !important; scroll-behavior: auto !important; }
    .belir { opacity: 1; transform: none; }
    .ilerleme, .kaydir-ipucu { display: none; }
}

/* Mobil */
@media (max-width: 960px) {
    .menu-dugme { display: flex; }
    .menu { position: fixed; top: 78px; left: 0; right: 0; background: var(--beyaz); flex-direction: column; align-items: stretch; gap: 0; padding: 1rem 16px 1.5rem; box-shadow: var(--golge); transform: translateY(-120%); transition: .35s; z-index: -1; }
    .menu-acik .menu { transform: none; }
    .menu > a:not(.dugme) { padding: .9rem 0; border-bottom: 1px solid var(--cizgi); }
    .menu > a::after { display: none; }
    .menu .dugme { margin-top: 1rem; }
    .izgara-3 { grid-template-columns: 1fr; }
    .iki-kolon { grid-template-columns: 1fr; gap: 2.5rem; }
    .alt-izgara { grid-template-columns: 1fr; gap: 2rem; }
    .bolum { padding: 4rem 0; }
}
@media (min-width: 640px) and (max-width: 960px) {
    .izgara-3 { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 520px) {
    .tikli, .form-satir { grid-template-columns: 1fr; }
    .form { padding: 1.5rem; }
    .kahraman { background-position: 35% center; min-height: 0; padding: 4rem 0; }
    .isik-kutusu { padding: 3.5rem 1rem; }
}

/* ===== Yeni kahraman alanı ===== */
@keyframes kelimeGel { from { transform: translateY(110%) rotate(4deg); opacity: 0; } }
@keyframes yuz1 { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-12px); } }
@keyframes yuz2 { 0%, 100% { transform: translateY(0) rotate(-1deg); } 50% { transform: translateY(10px) rotate(1deg); } }
@keyframes kureGez { 0% { transform: translate(0, 0) scale(1); } 50% { transform: translate(40px, -30px) scale(1.15); } 100% { transform: translate(0, 0) scale(1); } }
@keyframes tozUc { 0% { transform: translate(0, 0); opacity: 0; } 15% { opacity: .9; } 100% { transform: translate(var(--x, 20px), -70vh); opacity: 0; } }
@keyframes noktaNabiz { 0% { box-shadow: 0 0 0 0 rgba(74,222,128,.7); } 100% { box-shadow: 0 0 0 10px rgba(74,222,128,0); } }
@keyframes isilti { from { background-position: 0% 50%; } to { background-position: 200% 50%; } }
@keyframes kartGel { from { opacity: 0; transform: translateY(40px) scale(.96); } }

.kahraman { background: var(--koyu) !important; min-height: calc(100svh - 78px); max-height: none; padding: 6rem 0 9rem; --mx: 0; --my: 0; }
.kahraman::before { content: none; }
.kahraman-arka { position: absolute; inset: -40px; background-size: cover; background-position: 35% center; z-index: -3; animation: kenBurns 16s cubic-bezier(.2,.6,.3,1) both; translate: calc(var(--mx) * -18px) calc(var(--py, 0px) + var(--my) * -12px); will-change: transform; }
.kahraman-ortu { position: absolute; inset: 0; z-index: -2; pointer-events: none;
    background:
        radial-gradient(120% 90% at 50% 40%, transparent 40%, rgba(10,14,16,.7) 100%),
        linear-gradient(100deg, rgba(16,22,25,.92) 0%, rgba(16,22,25,.7) 38%, rgba(16,22,25,.25) 70%, rgba(16,22,25,.45) 100%),
        linear-gradient(180deg, rgba(181,121,58,.18), transparent 40%, rgba(16,22,25,.5)); }
.isiklar { position: absolute; inset: 0; z-index: -1; pointer-events: none; overflow: hidden; translate: calc(var(--mx) * 14px) calc(var(--my) * 10px); }
.kure { position: absolute; border-radius: 50%; filter: blur(60px); opacity: .45; animation: kureGez 18s ease-in-out infinite; }
.kure-1 { width: 380px; height: 380px; left: -80px; top: 10%; background: #b5793a; }
.kure-2 { width: 300px; height: 300px; right: 8%; top: -60px; background: #e0a96d; opacity: .3; animation-duration: 22s; animation-delay: -6s; }
.kure-3 { width: 260px; height: 260px; right: 30%; bottom: 0; background: #7a8f96; opacity: .25; animation-duration: 26s; animation-delay: -12s; }
.isiklar i { position: absolute; bottom: -10px; width: 4px; height: 4px; border-radius: 50%; background: #f3d19c; box-shadow: 0 0 8px 2px rgba(243,209,156,.6); animation: tozUc 12s linear infinite; opacity: 0; }
.isiklar i:nth-child(4) { left: 6%; animation-delay: 0s; --x: 30px; }
.isiklar i:nth-child(5) { left: 14%; animation-delay: -3s; --x: -20px; width: 3px; height: 3px; }
.isiklar i:nth-child(6) { left: 22%; animation-delay: -7s; --x: 40px; }
.isiklar i:nth-child(7) { left: 31%; animation-delay: -1.5s; --x: -30px; width: 2px; height: 2px; }
.isiklar i:nth-child(8) { left: 40%; animation-delay: -9s; --x: 20px; }
.isiklar i:nth-child(9) { left: 49%; animation-delay: -5s; --x: -40px; width: 3px; height: 3px; }
.isiklar i:nth-child(10) { left: 58%; animation-delay: -11s; --x: 30px; }
.isiklar i:nth-child(11) { left: 66%; animation-delay: -2.5s; --x: -20px; width: 2px; height: 2px; }
.isiklar i:nth-child(12) { left: 74%; animation-delay: -8s; --x: 35px; }
.isiklar i:nth-child(13) { left: 82%; animation-delay: -4s; --x: -25px; width: 3px; height: 3px; }
.isiklar i:nth-child(14) { left: 90%; animation-delay: -10s; --x: 20px; }
.isiklar i:nth-child(15) { left: 96%; animation-delay: -6.5s; --x: -30px; width: 2px; height: 2px; }

.kahraman-ic { display: grid; grid-template-columns: 1.15fr .85fr; gap: 3rem; align-items: center; width: min(1180px, 100% - 32px); }
.kahraman-ic > * { animation: none; }
.kahraman-metin > * { animation: yukariGel .9s cubic-bezier(.2,.7,.2,1) both; }
.kahraman-metin > :nth-child(1) { animation-delay: .1s; }
.kahraman-metin > :nth-child(3) { animation-delay: .9s; }
.kahraman-metin > :nth-child(4) { animation-delay: 1.05s; }
.kahraman-metin > :nth-child(5) { animation-delay: 1.2s; }
.kahraman h1.kelimeli { animation: none; max-width: 15ch; font-size: clamp(2.5rem, 6.2vw, 4.8rem); line-height: 1.08; letter-spacing: -.01em; margin: 1.25rem 0 1.5rem; text-shadow: 0 4px 30px rgba(0,0,0,.35); }
.kelimeli em { font-style: italic; }
.kelimeli em .kelime > span, .kelimeli em:not(:has(.kelime)) { background: linear-gradient(90deg, #e0a96d, #f6dcb0, #c88a48, #e0a96d); background-size: 200% 100%; -webkit-background-clip: text; background-clip: text; color: transparent; animation: kelimeGel .9s cubic-bezier(.2,.8,.2,1) calc(.25s + var(--i, 0) * .09s) both, isilti 6s linear infinite; }
.kelime { display: inline-block; overflow: hidden; vertical-align: top; padding-bottom: .08em; margin-bottom: -.08em; }
.kelime > span { display: inline-block; animation: kelimeGel .9s cubic-bezier(.2,.8,.2,1) both; animation-delay: calc(.25s + var(--i) * .09s); }

.etiket-canli { display: inline-flex !important; align-items: center; gap: .6rem; background: rgba(255,255,255,.1) !important; border: 1px solid rgba(255,255,255,.2); }
.nokta { width: 8px; height: 8px; border-radius: 50%; background: #4ade80; animation: noktaNabiz 1.8s ease-out infinite; }

.donen-satir { font-size: 1.2rem !important; display: flex; flex-wrap: wrap; gap: .45rem; align-items: baseline; margin-bottom: 2.25rem !important; opacity: 1 !important; color: rgba(255,255,255,.85); }
.donen { display: inline-grid; color: #f3d19c; font-weight: 600; overflow: hidden; }
.donen > span { grid-area: 1 / 1; transform: translateY(100%); opacity: 0; transition: transform .6s cubic-bezier(.2,.8,.2,1), opacity .6s ease; white-space: nowrap; border-bottom: 2px solid rgba(243,209,156,.5); }
.donen > span.aktif { transform: none; opacity: 1; }
.donen > span.cikan { transform: translateY(-100%); opacity: 0; }

.dugme-buyuk { padding: 1.05rem 2rem; font-size: 1.05rem; box-shadow: 0 12px 30px rgba(181,121,58,.45); }
.dugme-buyuk:hover { box-shadow: 0 16px 40px rgba(181,121,58,.6); }
.dugme-cam { background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.35); color: #fff; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); padding: 1.05rem 1.8rem; font-size: 1.05rem; }
.dugme-cam:hover { background: #fff; color: var(--koyu); border-color: #fff; }
.dugme-cam:hover .ikon { transform: translateX(4px); }

.kahraman-rakam { list-style: none; display: flex; gap: 2.5rem; margin-top: 2.75rem; padding-top: 1.75rem; border-top: 1px solid rgba(255,255,255,.15); }
.kahraman-rakam strong { display: block; font-family: 'Playfair Display', serif; font-size: 1.7rem; color: #fff; line-height: 1.1; }
.kahraman-rakam span { font-size: .85rem; color: rgba(255,255,255,.7); }

.kahraman-kartlar { position: relative; height: 460px; translate: calc(var(--mx) * 22px) calc(var(--my) * 16px); }
.polaroid { position: absolute; right: 8%; top: 20px; width: 70%; background: #fff; padding: 12px 12px 14px; border-radius: 14px; box-shadow: 0 30px 60px rgba(0,0,0,.4); rotate: 4deg; animation: kartGel 1s .6s cubic-bezier(.2,.7,.2,1) both, yuz2 7s 1.6s ease-in-out infinite; }
.polaroid img { width: 100%; aspect-ratio: 4/3; object-fit: cover; border-radius: 8px; height: auto; }
.polaroid figcaption { font-family: 'Playfair Display', serif; color: var(--koyu); text-align: center; margin-top: .6rem; font-size: 1.05rem; }
.cam-rozet { position: absolute; display: flex; align-items: center; gap: .85rem; padding: .85rem 1.15rem; border-radius: 16px; color: #fff; font-weight: 600; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.25); backdrop-filter: blur(14px) saturate(140%); -webkit-backdrop-filter: blur(14px) saturate(140%); box-shadow: 0 16px 40px rgba(0,0,0,.25); white-space: nowrap; }
.cam-rozet small { display: block; font-weight: 400; font-size: .75rem; color: rgba(255,255,255,.75); }
.rozet-ikon { width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; background: var(--ana); flex-shrink: 0; }
.rozet-ikon .ikon { width: 20px; height: 20px; }
.rozet-1 { left: 0; top: 40px; animation: kartGel .9s .9s cubic-bezier(.2,.7,.2,1) both, yuz1 6s 1.8s ease-in-out infinite; transition: background .3s; }
.rozet-1:hover { background: rgba(255,255,255,.22); }
.rozet-2 { right: 0; bottom: 70px; animation: kartGel .9s 1.1s cubic-bezier(.2,.7,.2,1) both, yuz1 7s 2.2s ease-in-out infinite reverse; }
.rozet-3 { left: 6%; bottom: 0; animation: kartGel .9s 1.3s cubic-bezier(.2,.7,.2,1) both, yuz1 8s 2.6s ease-in-out infinite; }

.dalga { position: absolute; left: 0; right: 0; bottom: -1px; width: 100%; height: 90px; z-index: 1; pointer-events: none; }
.dalga path { fill: var(--beyaz); }
.dalga .dalga-arka { fill: rgba(255,255,255,.35); }
.kahraman .kaydir-ipucu { bottom: 100px; z-index: 2; }

@media (max-width: 960px) {
    .kahraman-ic { grid-template-columns: 1fr; gap: 2.5rem; }
    .kahraman-kartlar { height: 300px; max-width: 460px; }
    .polaroid { width: 62%; right: 4%; }
    .rozet-2 { bottom: 30px; }
    .rozet-3 { display: none; }
    .kahraman .kaydir-ipucu { display: none; }
}
@media (max-width: 520px) {
    .kahraman { padding: 3.5rem 0 6rem; }
    .kahraman-rakam { gap: 1.5rem; }
    .kahraman-rakam strong { font-size: 1.35rem; }
    .kahraman-kartlar { height: 260px; }
    .cam-rozet { padding: .65rem .9rem; font-size: .9rem; }
    .rozet-ikon { width: 34px; height: 34px; }
    .dalga { height: 50px; }
    .kure { filter: blur(40px); }
}

html, body { overflow-x: clip; }
@media (max-width: 520px) {
    .etiket-canli { font-size: .7rem; letter-spacing: .08em; }
}
@media (max-width: 960px) {
    /* Telefonda kapak fotoğrafı pansiyonun giriş kapısına odaklanır */
    .kahraman-arka { background-position: 60% 70%; }
}

/* ===== SEO düzeltmeleri: görsel oranı, fiyat ve SSS bölümü ===== */
img { height: auto; }
.galeri-oge img { display: block; }
.kahraman h1.kelimeli { font-size: clamp(2.3rem, 5.4vw, 4.2rem); max-width: 17ch; }
.kelime > span { animation-delay: calc(.05s + var(--i) * .05s); }
.kelimeli em .kelime > span { animation-delay: calc(.05s + var(--i, 0) * .05s), 0s; }
.bolum-baslik p { margin-top: .5rem; }
.fiyat-ic { align-items: start; }
.fiyat-bolum .dugmeler { margin-top: .5rem; }
.sss { display: grid; gap: .75rem; }
.sss-baslik { font-size: 1.5rem; margin-bottom: .25rem; }
.sss-oge { background: var(--acik); border-radius: 12px; padding: 0 1.25rem; transition: background .3s; }
.sss-oge[open] { background: var(--beyaz); box-shadow: var(--golge); }
.sss-oge summary { cursor: pointer; list-style: none; padding: 1rem 2rem 1rem 0; font-weight: 600; color: var(--koyu); position: relative; }
.sss-oge summary::-webkit-details-marker { display: none; }
.sss-oge summary::after { content: '+'; position: absolute; right: 0; top: 50%; translate: 0 -50%; font-size: 1.4rem; color: var(--ana); transition: rotate .3s ease; }
.sss-oge[open] summary::after { rotate: 45deg; }
.sss-oge p { padding-bottom: 1.1rem; }

/* Mobil: hero kartları üst üste binmesin, akışta dizilsin */
@media (max-width: 960px) {
    .kahraman-kartlar { height: auto; display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; margin-inline: auto; width: 100%; }
    .kahraman-kartlar .polaroid { position: relative; inset: auto; grid-column: 1 / -1; justify-self: center; width: min(78%, 340px); margin-bottom: .75rem; }
    .kahraman-kartlar .cam-rozet { position: relative; inset: auto; white-space: normal; min-width: 0; }
}
@media (max-width: 400px) {
    .kahraman-kartlar .cam-rozet { gap: .55rem; padding: .6rem .7rem; font-size: .82rem; }
    .kahraman-kartlar .rozet-ikon { display: none; }
    .kahraman-kartlar .cam-rozet { white-space: nowrap; }
}
