/* ============================================================
   RENKLER — Tüm sitenin rengi buradan değişir.
   Lacivert tonunu beğenmezseniz sadece --navy satırını değiştirin.
   ============================================================ */
:root{
  --navy:      #005AA8;   /* marka mavisi */
  --ink:       #032F52;   /* koyu lacivert, footer ve pano zemini */
  --navy-soft: #2C7BC0;   /* çizgi ve kenarlıklar */
  --paper:     #EEF3F8;   /* açık arka plan */
  --paper-2:   #FFFFFF;   /* kart zeminleri */
  --accent:    #8FD1FF;   /* açık gök mavisi vurgu — altın yerine */
  --slate:     #5B7186;   /* ikincil yazı */
  --radius:    14px;      /* köşe yuvarlaklığı — tüm site buradan ayarlanır */
  --radius-sm: 8px;

  --display: "Baloo 2", system-ui, sans-serif;
  --body:    "Baloo 2", system-ui, sans-serif;
  --mono:    "Baloo 2", system-ui, sans-serif;

  --pad: clamp(1.25rem, 5vw, 5rem);
  --max: 1240px;
}

*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0;
  font-family:var(--body);
  font-size:1rem;
  line-height:1.65;
  color:var(--navy);
  background:var(--paper);
  -webkit-font-smoothing:antialiased;
}
img{ max-width:100%; display:block; }
a{ color:inherit; }

.wrap{ max-width:var(--max); margin:0 auto; padding-inline:var(--pad); }

/* ---------- Tipografi ---------- */
.display{
  font-family:var(--display);
  font-weight:700;
  line-height:1.05;
  letter-spacing:-0.02em;
  text-transform:none;
  margin:0;
}
.eyebrow{
  font-family:var(--mono);
  font-size:0.72rem;
  letter-spacing:0.22em;
  text-transform:uppercase;
  color:var(--navy);
  margin:0 0 1.25rem;
}
.hero .eyebrow, .contact .eyebrow, .photo-band-content .eyebrow{ color:var(--accent); }
.section-title{
  font-family:var(--display);
  font-weight:700;
  font-size:clamp(2rem, 4.2vw, 3.1rem);
  text-transform:none;
  letter-spacing:-0.02em;
  line-height:1.12;
  margin:0 0 1.5rem;
}
.lede{ font-size:clamp(1.05rem,1.6vw,1.2rem); color:var(--slate); max-width:56ch; }

/* ---------- Üst menü ---------- */
.nav{
  position:sticky; top:0; z-index:50;
  background:#fff;
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(0,32,64,.08);
  box-shadow:0 1px 0 rgba(0,32,64,.04);
}
.nav-inner{ display:flex; align-items:center; justify-content:space-between; height:92px; gap:1.5rem; }
.brand{
  display:flex; align-items:center; gap:.6rem;
  text-decoration:none; color:var(--navy);
  flex:0 1 auto; min-width:0;
}
.brand img{ height:64px; width:auto; max-width:100%; display:block; }
.nav-links{
  display:flex; gap:clamp(1.1rem,2.4vw,2rem); align-items:center;
  flex-wrap:nowrap; flex-shrink:0;
}
.nav-links a{
  color:var(--navy); text-decoration:none; white-space:nowrap;
  font-size:.9rem; font-weight:500; letter-spacing:.02em; padding:.4rem 0;
  border-bottom:1px solid transparent; transition:.2s;
  flex:0 0 auto;
}
.nav-links a:hover, .nav-links a:focus-visible{ color:var(--navy-soft); border-bottom-color:var(--navy-soft); }
.nav-links a.nav-cta{
  display:inline-flex; align-items:center; justify-content:center;
  box-sizing:border-box; width:auto; min-width:max-content;
  background:var(--navy); color:#fff;
  padding:1rem 2rem; font-weight:600; font-size:.9rem;
  white-space:nowrap; flex:0 0 auto; line-height:1.1;
  border-bottom:none; border-radius:999px;
  box-shadow:0 6px 16px -6px rgba(0,90,168,.55);
  transition:transform .2s ease, background .2s ease, box-shadow .2s ease;
}
.nav-links a.nav-cta:hover{ background:#00477F; color:#fff; border-bottom-color:transparent; transform:translateY(-1px); box-shadow:0 10px 20px -6px rgba(0,90,168,.6); }
.nav-links a.nav-icon{
  display:inline-flex; align-items:center; justify-content:center;
  color:var(--navy); flex:0 0 auto; border-bottom:none; padding:.4rem;
  transition:color .2s ease, transform .2s ease;
}
.nav-links a.nav-icon svg{ width:22px; height:22px; }
.nav-links a.nav-icon:hover{ color:var(--navy-soft); transform:translateY(-1px); }
.burger{ display:none; background:none; border:0; color:var(--navy); padding:.5rem; cursor:pointer; flex:none; }
.burger svg{ width:26px; height:26px; }

/* ---------- Hero (tam ekran fotoğraf + degrade) ---------- */
.hero{ background:var(--navy); color:#fff; position:relative; overflow:hidden; min-height:88vh; display:flex; align-items:flex-end; }
.hero-bg{ position:absolute; inset:0; z-index:0; }
.hero-bg .slide{ position:absolute; inset:0; opacity:0; transition:opacity 1.4s ease; }
.hero-bg .slide.active{ opacity:1; }
.hero-bg .slide .photo{
  width:100%; height:100%; border-radius:0; border:0; aspect-ratio:auto;
  animation:kenburns 12s ease-in-out infinite alternate;
  will-change:transform;
}
.hero-bg .slide:not(.active) .photo{ animation-play-state:paused; }
@keyframes kenburns{ 0%{ transform:scale(1); } 100%{ transform:scale(1.08); } }
.hero-overlay{
  position:absolute; inset:0; z-index:1;
  background:
    linear-gradient(0deg, var(--ink) 0%, rgba(2,49,88,.88) 38%, rgba(0,60,112,.62) 65%, rgba(0,60,112,.78) 100%);
}
.hero-content{
  position:relative; z-index:2;
  width:100%; padding-block:clamp(3rem,7vw,5.5rem);
}
.hero-slider-nav{
  position:absolute; z-index:3; top:1.75rem; right:var(--pad);
  display:flex; align-items:center; gap:.6rem;
}
.hero h1{
  font-size:clamp(3rem, 8.5vw, 5.75rem);
  font-weight:700;
  color:#fff;
}
.hero h1 em{ font-style:normal; color:var(--accent); }
.hero p{ color:rgba(255,255,255,.78); max-width:46ch; margin:1.5rem 0 2.25rem; font-size:1.1rem; }
.hero-actions{ display:flex; gap:.85rem; flex-wrap:wrap; }
.btn{
  display:inline-flex; align-items:center; gap:.55rem; padding:.9rem 1.7rem; text-decoration:none;
  font-weight:600; font-size:.95rem; transition:transform .2s ease, background .2s ease, border-color .2s ease;
  border:1px solid transparent; border-radius:999px;
}
.btn svg{ width:18px; height:18px; flex:none; }
.btn-primary{ background:var(--navy); color:#fff; }
.btn-primary:hover{ background:#00477F; transform:translateY(-2px); }
.btn-ghost{ border-color:rgba(255,255,255,.35); color:#fff; }
.btn-ghost:hover{ border-color:#fff; background:rgba(255,255,255,.08); transform:translateY(-2px); }

/* ---------- Görsel yuvaları ----------
   Kendi fotoğrafınızı koymak için ilgili <div class="photo">...</div>
   bloğunu şununla değiştirin:  <img src="images/bina.jpg" alt="Midgard binası">
   O ana kadar canlı durması için hafif hareketli bir degrade + ikon var.
------------------------------------------------------------------ */
@keyframes floaty{
  0%, 100%{ transform:translateY(0); }
  50%{ transform:translateY(-10px); }
}
.photo{
  position:relative; overflow:hidden;
  aspect-ratio:4/5; width:100%;
  background:
    linear-gradient(120deg, transparent 30%, rgba(143,209,255,.18) 45%, transparent 60%),
    linear-gradient(160deg, var(--navy-soft), var(--navy) 70%);
  border:1px solid rgba(255,255,255,.18);
  border-radius:var(--radius);
  display:grid; place-content:center; text-align:center; padding:1.5rem;
}
/* Gerçek fotoğraf eklendiğinde (div.photo içine <img> konunca) otomatik uygulanır */
.photo img{ width:100%; height:100%; object-fit:cover; display:block; }
.photo iframe{ width:100%; height:100%; border:0; display:block; }
.photo:has(> iframe){ display:block; padding:0; }
.photo:has(> img){ display:block; padding:0; }
.photo::before{
  pointer-events:none;
  content:"";
  position:absolute; inset:0;
  background-image:
    radial-gradient(circle at 22% 28%, rgba(255,255,255,.14) 0, transparent 40%),
    radial-gradient(circle at 78% 74%, rgba(143,209,255,.25) 0, transparent 45%);
}
.photo .icon{
  width:44px; height:44px; margin:0 auto .9rem;
  color:var(--accent); opacity:.85;
  animation:floaty 3.4s ease-in-out infinite;
  position:relative;
}
.photo span{
  position:relative;
  font-family:var(--mono); font-size:.72rem; letter-spacing:.12em;
  text-transform:uppercase; color:rgba(255,255,255,.6);
}
.photo em{ display:block; font-style:normal; font-family:var(--body); font-size:.72rem; color:rgba(255,255,255,.4); margin-top:.35rem; letter-spacing:.02em; text-transform:none; }
.photo.light{
  background:
    linear-gradient(120deg, transparent 30%, rgba(0,32,64,.08) 45%, transparent 60%),
    linear-gradient(160deg, #E4E8EF, #D3DAE5 70%);
  background-size:220% 220%, 100% 100%;
  border-color:rgba(0,32,64,.15);
}
.photo.light::before{
  background-image:
    radial-gradient(circle at 22% 28%, rgba(0,32,64,.08) 0, transparent 40%),
    radial-gradient(circle at 78% 74%, rgba(143,209,255,.28) 0, transparent 45%);
}
.photo.light .icon{ color:var(--navy); }
.photo.light span{ color:var(--navy); }
.photo.light em{ color:var(--slate); }
.photo.wide{ aspect-ratio:16/10; }

/* ---------- Hero slider kontrolleri (tam ekran fon üstünde) ---------- */
.slider-dots{ display:flex; gap:.4rem; }
.slider-dots button{
  width:7px; height:7px; padding:0; border:0; border-radius:50%;
  background:rgba(255,255,255,.4); cursor:pointer; transition:.2s;
}
.slider-dots button.active{ background:var(--accent); width:18px; border-radius:4px; }
.slider-count{
  font-family:var(--mono); font-size:.7rem; color:rgba(255,255,255,.75);
  background:rgba(2,20,38,.45); padding:.3rem .6rem; backdrop-filter:blur(4px);
  border-radius:999px;
}

/* ---------- Tam genişlik fotoğraf şeridi (sayfa içinde canlı geçiş) ---------- */
.photo-band{ position:relative; height:clamp(220px, 22vw, 340px); overflow:hidden; display:flex; align-items:center; }
.photo-band.cta{ height:clamp(280px, 32vw, 460px); }
.photo-band .photo{
  position:absolute; inset:0; border-radius:0; border:0;
  animation:kenburns 13s ease-in-out infinite alternate;
  will-change:transform;
}
.photo-band-overlay{
  position:absolute; inset:0;
  background:linear-gradient(90deg, rgba(2,49,88,.93) 0%, rgba(0,90,168,.6) 55%, rgba(0,90,168,.22) 100%);
}
.photo-band-content{ position:relative; z-index:2; color:#fff; padding-block:3rem; max-width:34ch; }
.photo-band-content .eyebrow{ margin-bottom:1rem; }
.photo-band-content h3{
  font-family:var(--display); font-weight:700;
  text-transform:none; letter-spacing:-0.02em; font-size:clamp(1.7rem,3.7vw,2.6rem); margin:0 0 1rem; line-height:1.1;
}
.photo-band-content p{ color:rgba(255,255,255,.8); margin:0; }

/* ---------- Genel bölüm boşlukları ---------- */
.section{ padding-block:clamp(3.5rem,8vw,6rem); }
.section-head{ max-width:60ch; margin-bottom:clamp(2rem,4vw,3.25rem); }

/* ---------- Hakkımızda ---------- */
.about-grid{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(2rem,5vw,4rem); align-items:stretch; }
.about-text p{ margin:0 0 1.15rem; }
.about-text p:last-child{ margin-bottom:0; }

/* ---------- Ortak alan fotoğraf albümü (kart yığını) ---------- */
.stack-carousel{
  position:relative;
  height:100%;
  min-height:340px;
}
.stack-track{ position:relative; width:100%; height:100%; }

.stack-card{
  position:absolute; inset:0;
  border-radius:var(--radius);
  overflow:hidden;
  box-shadow:0 30px 60px -30px rgba(0,32,64,.4);
  transition:transform .55s cubic-bezier(.22,.61,.36,1), opacity .55s ease;
  opacity:0; pointer-events:none;
}
.stack-card img{ width:100%; height:100%; object-fit:cover; display:block; }

.stack-card.is-active{
  transform:translate(0,0) scale(1) rotate(0deg);
  z-index:3; opacity:1; pointer-events:auto;
}
.stack-card.is-next{
  transform:translate(7%,5%) scale(.9) rotate(4deg);
  z-index:2; opacity:1;
}
.stack-card.is-prev{
  transform:translate(-7%,5%) scale(.9) rotate(-4deg);
  z-index:2; opacity:1;
}
.stack-card.is-hidden{
  transform:translate(0,8%) scale(.82) rotate(0deg);
  z-index:1; opacity:0;
}

.stack-arrow{
  position:absolute; top:50%; z-index:5;
  width:44px; height:44px; border-radius:50%;
  background:#fff; border:0; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  color:var(--navy);
  box-shadow:0 10px 24px -10px rgba(0,32,64,.45);
  transform:translateY(-50%);
  transition:transform .2s ease, background .2s ease, color .2s ease;
}
.stack-arrow:hover{ background:var(--navy); color:#fff; transform:translateY(-50%) scale(1.08); }
.stack-arrow svg{ width:20px; height:20px; }
.stack-arrow.prev{ left:-1.1rem; }
.stack-arrow.next{ right:-1.1rem; }

.photo-badge{
  position:absolute; left:1.25rem; bottom:1.25rem; z-index:6;
  background:#fff; border-radius:var(--radius);
  padding:1rem 1.4rem; box-shadow:0 20px 40px -16px rgba(0,32,64,.4);
  text-align:center;
}
.photo-badge strong{ display:block; font-family:var(--display); font-size:1.7rem; font-weight:700; color:var(--navy); line-height:1; }
.photo-badge span{ display:block; margin-top:.2rem; font-size:.72rem; color:var(--slate); text-transform:uppercase; letter-spacing:.06em; }

@media (max-width:640px){
  .stack-arrow.prev{ left:.4rem; }
  .stack-arrow.next{ right:.4rem; }
}

/* ---------- Ofis tipi kartları ---------- */
.types{ display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin-bottom:clamp(2.5rem,5vw,4rem); }
.type{
  background:var(--paper-2); padding:.85rem;
  border:1px solid rgba(0,32,64,.08); border-radius:var(--radius);
  box-shadow:0 2px 10px -6px rgba(0,32,64,.15);
  transition:transform .3s ease, box-shadow .3s ease; position:relative; z-index:1;
  overflow:hidden; display:flex; flex-direction:column;
}
.type:hover{
  transform:translateY(-6px);
  box-shadow:0 20px 40px -20px rgba(0,32,64,.35);
}
.type-photo{ aspect-ratio:4/3; overflow:hidden; border-radius:calc(var(--radius) - .45rem); }
.type-photo img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .4s ease; }
.type:hover .type-photo img{ transform:scale(1.06); }
.type-body{ padding:1.6rem .4rem .3rem; flex:1; display:flex; flex-direction:column; }
.type-body p{ flex:0; }
.type-body .num{
  align-self:flex-start; display:inline-block;
  background:var(--navy); color:#fff;
  font-family:var(--mono); font-size:.7rem; letter-spacing:.14em; text-transform:uppercase;
  padding:.45rem .9rem; border-radius:999px;
  margin:-2.35rem 0 1.1rem; position:relative; z-index:2;
  box-shadow:0 8px 18px -6px rgba(0,32,64,.45);
}
.type-body .link-arrow{
  margin-top:1.1rem; padding-top:1rem;
  border-top:1px solid rgba(0,32,64,.1);
}
.type h3{
  font-family:var(--display); font-weight:700;
  text-transform:none; letter-spacing:-0.01em; font-size:1.35rem; margin:.75rem 0 .6rem;
}
.type p{ color:var(--slate); font-size:.94rem; margin:0 0 1.1rem; }

/* ---------- Olanaklar ---------- */
.amenities{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; }
.amenity{
  background:var(--paper-2); border:1px solid rgba(0,32,64,.08); border-radius:var(--radius);
  padding:2.25rem 1.85rem; text-align:center;
  box-shadow:0 6px 22px -14px rgba(0,32,64,.2);
  transition:transform .25s ease, box-shadow .25s ease;
}
.amenity:hover{ transform:translateY(-6px); box-shadow:0 20px 38px -18px rgba(0,32,64,.32); }
.amenity .icon-badge{
  width:68px; height:68px; margin:0 auto 1.25rem;
  background:var(--navy); border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  color:#fff; box-shadow:0 8px 18px -8px rgba(0,90,168,.55);
}
.amenity .icon-badge svg{ width:30px; height:30px; }
.amenity h4{ margin:0 0 .5rem; font-family:var(--display); font-size:1.2rem; font-weight:700; color:var(--navy); }
.amenity p{ margin:0; font-size:.95rem; color:var(--slate); line-height:1.55; }

/* ---------- İletişim ---------- */
.contact{ background:var(--navy); color:#fff; }
.contact .section-title{ color:#fff; }
.contact-grid{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(2rem,5vw,4rem); }
.info-list{ list-style:none; padding:0; margin:0 0 2rem; }
.info-list li{ padding:1.25rem 0; border-bottom:1px solid rgba(255,255,255,.14); }
.info-list dt, .info-list .lbl{
  font-family:var(--mono); font-size:.7rem; letter-spacing:.18em;
  text-transform:uppercase; color:#B9E6FF; font-weight:700; margin-bottom:.45rem;
}
.info-list .val{ font-size:1.08rem; }
.info-list .val .sep{ color:rgba(255,255,255,.35); margin:0 .75rem; font-weight:300; }
.info-list a{ text-decoration:none; border-bottom:1px solid rgba(143,209,255,.55); }
.info-list a:hover{ color:var(--accent); }

.form{
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.12);
  border-radius:var(--radius);
  padding:clamp(1.5rem,3vw,2.25rem);
}
.form label{ display:block; margin-bottom:1.3rem; }
.form .lbl{
  font-family:var(--mono); font-size:.7rem; letter-spacing:.18em;
  text-transform:uppercase; color:#B9E6FF; font-weight:700; display:block; margin-bottom:.5rem;
}
.form input::placeholder,
.form textarea::placeholder{ color:rgba(255,255,255,.4); }
.form input, .form textarea, .form select{
  width:100%; padding:.95rem 1.15rem;
  background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.22);
  color:#fff; font-family:var(--body); font-size:.98rem; border-radius:var(--radius-sm);
  transition:border-color .2s ease, background .2s ease;
}
.form input:hover, .form textarea:hover{ border-color:rgba(255,255,255,.35); }
.form input:focus, .form textarea:focus, .form select:focus{
  outline:2px solid var(--accent); outline-offset:1px; background:rgba(255,255,255,.11);
  border-color:var(--accent);
}
.form option{ background:var(--navy); color:#fff; }
.form textarea{ min-height:120px; resize:vertical; }
.form button{
  position:relative; overflow:hidden; isolation:isolate;
  background:#fff; color:var(--navy); border:0; cursor:pointer;
  padding:1.05rem 2.25rem; font-family:var(--body); font-weight:700; font-size:.98rem;
  border-radius:999px; margin-top:.35rem;
  box-shadow:0 10px 24px -10px rgba(0,0,0,.4);
  transition:transform .2s ease, box-shadow .2s ease;
}
.form button:hover{ transform:translateY(-2px); box-shadow:0 16px 32px -12px rgba(0,0,0,.5); }
.form button::before{
  content:"";
  position:absolute; left:50%; top:50%;
  width:0; height:0;
  background:radial-gradient(circle, rgba(0,90,168,.55) 0%, rgba(0,90,168,.3) 55%, transparent 75%);
  border-radius:50%;
  transform:translate(-50%,-50%);
  transition:width .7s cubic-bezier(.22,.61,.36,1), height .7s cubic-bezier(.22,.61,.36,1);
  filter:blur(3px);
  z-index:0;
}
.form button:hover::before{ width:260%; height:260%; }
.form button:hover{ box-shadow:0 4px 14px rgba(0,90,168,.25); }
.form button span{ position:relative; z-index:1; }

/* ---------- Footer ---------- */
.footer{ background:var(--ink); color:rgba(255,255,255,.55); padding-block:2.5rem; font-size:.85rem; }
.footer-inner{ display:flex; justify-content:space-between; gap:1.5rem; flex-wrap:wrap; align-items:center; }
.footer a{ color:rgba(255,255,255,.7); text-decoration:none; }
.footer a:hover{ color:var(--accent); }

/* ---------- Hareket (scroll ile beliren öğeler) ---------- */
.reveal{ opacity:0; transform:translateY(18px); transition:opacity .6s ease, transform .6s ease; }
.reveal.in{ opacity:1; transform:none; }

:focus-visible{ outline:2px solid var(--accent); outline-offset:3px; }

/* ---------- Mobil ---------- */
@media (max-width:1180px) and (min-width:1025px){
  .nav-inner{ height:84px; }
  .brand img{ height:56px; }
  .nav-links{ gap:1rem; }
  .nav-links a{ font-size:.82rem; }
  .nav-links a.nav-cta{ padding:.85rem 1.5rem; font-size:.82rem; }
}

@media (max-width:1024px){
  .about-grid, .contact-grid{ grid-template-columns:1fr; }
  .hero{ min-height:78vh; }
  .photo-band{ height:44vh; }
  .types, .amenities{ grid-template-columns:1fr; }
  .nav-inner{ height:80px; }
  .brand img{ height:54px; }
  .nav-links{
    position:absolute; top:80px; left:0; right:0;
    background:#fff; flex-direction:column; align-items:stretch;
    gap:0; padding:.5rem var(--pad) 1.5rem; display:none;
    border-bottom:1px solid rgba(0,32,64,.1);
    box-shadow:0 12px 24px -12px rgba(0,32,64,.25);
  }
  .nav-links.open{ display:flex; }
  .nav-links a{ padding:.95rem 0; border-bottom:1px solid rgba(0,32,64,.08); }
  .nav-links a.nav-cta{ justify-content:center; margin-top:1rem; padding:1rem 1.6rem; width:100%; }
  .nav-links a.nav-icon{ justify-content:center; padding:.85rem 0; border-bottom:1px solid rgba(0,32,64,.08); }
  .burger{ display:block; }
}

@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
  .reveal{ opacity:1; transform:none; transition:none; }
  *{ animation-duration:.01ms!important; transition-duration:.01ms!important; }
}
/* ---------- Sahte açılır menü (native select yerine, tam kontrollü) ---------- */
.select-fake{ position:relative; }

.select-fake .select-fake-trigger{
  position:static; overflow:visible; isolation:auto; box-shadow:none;
  width:100%; display:flex; align-items:center; justify-content:space-between; gap:.75rem;
  padding:.85rem 1.1rem;
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.2);
  border-radius:var(--radius-sm);
  color:#fff; font-family:var(--body); font-size:.98rem; font-weight:500;
  cursor:pointer; text-align:left;
  transition:border-color .2s ease, background .2s ease;
}
.select-fake .select-fake-trigger::before{ content:none; }
.select-fake .select-fake-trigger svg{
  width:18px; height:18px; flex:none; color:rgba(255,255,255,.6);
  transition:transform .25s ease;
}
.select-fake.is-open .select-fake-trigger{ border-color:var(--accent); background:rgba(255,255,255,.1); }
.select-fake.is-open .select-fake-trigger svg{ transform:rotate(180deg); }

.select-fake-panel{
  position:absolute; left:0; right:0; top:calc(100% + .5rem); z-index:20;
  background:var(--ink);
  border:1px solid rgba(255,255,255,.14);
  border-radius:var(--radius-sm);
  padding:.4rem;
  box-shadow:0 20px 40px -16px rgba(0,0,0,.5);
  opacity:0; transform:translateY(-6px);
  pointer-events:none;
  transition:opacity .2s ease, transform .2s ease;
}
.select-fake.is-open .select-fake-panel{ opacity:1; transform:translateY(0); pointer-events:auto; }

.select-fake-panel .select-fake-option{
  position:static; overflow:visible; isolation:auto; box-shadow:none;
  display:block; width:100%; text-align:left;
  padding:.7rem .85rem; border:0; background:transparent;
  color:rgba(255,255,255,.78); font-family:var(--body); font-size:.92rem; font-weight:400;
  border-radius:var(--radius-sm); cursor:pointer;
  transition:background .15s ease, color .15s ease;
}
.select-fake-panel .select-fake-option::before{ content:none; }
.select-fake-panel .select-fake-option:hover{ background:rgba(143,209,255,.14); color:#fff; }
.select-fake-panel .select-fake-option.is-selected{ background:rgba(143,209,255,.16); color:var(--accent); font-weight:600; }
/* ---------- Alt sayfa başlığı (Ofisler gibi detay sayfaları için) ---------- */
.page-hero{
  position:relative; overflow:hidden;
  background:var(--navy); padding-block:clamp(4.5rem,10vw,7.5rem);
}
.page-hero-bg{ position:absolute; inset:0; z-index:0; }
.page-hero-bg img{ width:100%; height:100%; object-fit:cover; display:block; }
.page-hero-overlay{
  position:absolute; inset:0; z-index:1;
  background:linear-gradient(0deg, var(--ink) 0%, rgba(2,49,88,.85) 45%, rgba(0,60,112,.5) 100%);
}
.page-hero .wrap{ position:relative; z-index:2; }
.page-hero .eyebrow{ color:var(--accent); }
.page-hero h1{
  font-family:var(--display); font-weight:700; text-transform:none; letter-spacing:-0.02em;
  font-size:clamp(2.3rem,6.2vw,3.9rem); color:#fff; margin:0 0 1rem; line-height:1.1;
}
.page-hero p{ color:rgba(255,255,255,.8); max-width:62ch; font-size:1.05rem; margin:0; }

/* ---------- Ofis tipi detay bölümleri (metin + fotoğraf, sırayla dönüşümlü) ---------- */
.office-detail{ padding-block:clamp(3rem,7vw,5rem); }
.office-detail:nth-of-type(even){ background:var(--paper-2); }
.office-detail-grid{
  display:grid; grid-template-columns:1fr 1fr; gap:clamp(2rem,5vw,4rem); align-items:center;
}
.office-detail-grid.reverse .office-detail-text{ order:2; }
.office-detail-grid.reverse .office-detail-photo{ order:1; }
.office-detail-text p{ color:var(--slate); margin:0 0 1rem; }
.office-detail-text p strong{ color:var(--navy); }
.office-detail-photo .photo{ aspect-ratio:4/5; }

.feature-list{
  list-style:none; padding:0; margin:1.5rem 0 0;
  display:grid; grid-template-columns:1fr 1fr; gap:.85rem 1.5rem;
}
.feature-list li{ display:flex; align-items:flex-start; gap:.6rem; font-size:.92rem; color:var(--slate); }
.feature-list svg{ width:18px; height:18px; flex:none; color:var(--navy-soft); margin-top:.15rem; }

.office-price{ display:flex; align-items:center; gap:1.25rem; margin-top:2rem; flex-wrap:wrap; }
.office-price .amount{ font-family:var(--display); font-size:1.5rem; font-weight:400; color:var(--navy); }
.office-price .period{ display:block; font-size:.8rem; color:var(--slate); margin-top:.1rem; }

@media (max-width:900px){
  .office-detail-grid{ grid-template-columns:1fr; }
  .office-detail-grid.reverse .office-detail-text,
  .office-detail-grid.reverse .office-detail-photo{ order:initial; }
  .feature-list{ grid-template-columns:1fr; }
}

/* ---------- Ok'lu metin linki (yeniden kullanılabilir) ---------- */
.link-arrow{
  display:inline-flex; align-items:center; gap:.4rem;
  color:var(--navy); font-weight:600; font-size:.9rem; text-decoration:none;
}
.link-arrow svg{ width:16px; height:16px; transition:transform .2s ease; }
.link-arrow:hover svg{ transform:translateX(3px); }

.photo-band-content.centered{ max-width:60ch; margin-inline:auto; text-align:center; }
.photo-band-content.centered p{ margin-inline:auto; }

/* ---------- Form gönderim durum mesajı ---------- */
.form-status{
  padding:1rem 1.25rem; border-radius:var(--radius-sm);
  margin-bottom:1.25rem; font-size:.92rem; font-weight:500;
}
.form-status.ok{ background:rgba(143,209,255,.16); color:#fff; border:1px solid rgba(143,209,255,.5); }
.form-status.err{ background:rgba(255,120,120,.15); color:#fff; border:1px solid rgba(255,120,120,.5); }

/* ---------- Form gönderim toast bildirimi (sağ altta, süreli) ---------- */
.form-toast{
  position:fixed; right:1.5rem; bottom:1.5rem; z-index:300;
  max-width:min(360px, calc(100vw - 3rem));
  padding:1rem 1.25rem; border-radius:var(--radius-sm);
  font-size:.92rem; font-weight:500; line-height:1.4;
  background:var(--navy); color:#fff;
  box-shadow:0 16px 34px -14px rgba(0,32,64,.5);
  opacity:0; transform:translateY(12px);
  transition:opacity .35s ease, transform .35s ease;
  pointer-events:none;
}
.form-toast.is-visible{ opacity:1; transform:translateY(0); }
.form-toast.ok{ background:var(--navy); border:1px solid rgba(143,209,255,.5); }
.form-toast.err{ background:#7A1F1F; border:1px solid rgba(255,120,120,.5); }
@media (max-width:640px){
  .form-toast{ right:1rem; bottom:1rem; left:1rem; max-width:none; }
}

/* ---------- Footer sosyal ikonlar ---------- */
.footer-social{ display:flex; gap:1rem; align-items:center; }
.footer-social a{ color:rgba(255,255,255,.7); display:flex; transition:color .2s ease, transform .2s ease; }
.footer-social a:hover{ color:var(--accent); transform:translateY(-2px); }
.footer-social svg{ width:20px; height:20px; }

/* ---------- Yüzen WhatsApp butonu ---------- */
.whatsapp-float{
  position:fixed; right:1.5rem; bottom:1.5rem; z-index:200;
  width:58px; height:58px; border-radius:50%;
  background:#25D366; color:#fff;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 10px 26px -6px rgba(0,0,0,.4);
  transition:transform .2s ease, box-shadow .2s ease;
}
.whatsapp-float:hover{ transform:scale(1.08); box-shadow:0 14px 32px -6px rgba(0,0,0,.45); }
.whatsapp-float svg{ width:30px; height:30px; }
@media (max-width:640px){
  .whatsapp-float{ right:1rem; bottom:1rem; width:52px; height:52px; }
  .whatsapp-float svg{ width:26px; height:26px; }
}

/* ---------- Ofis tipleri akordeonu ---------- */
/* ---------- İlave hizmet etiketleri (chip) ---------- */
.addon-chips{ display:flex; flex-wrap:wrap; gap:.65rem; }
.chip{
  display:inline-block; padding:.6rem 1.15rem; border-radius:999px;
  border:1px solid rgba(0,90,168,.28); color:var(--navy); font-size:.88rem; font-weight:500;
  background:rgba(0,90,168,.045);
}

/* ---------- Anasayfa öne çıkanlar şeridi ---------- */
.highlight-strip{
  display:flex; flex-wrap:wrap; justify-content:center;
  gap:1.5rem 3rem; padding-block:clamp(2rem,4vw,3rem);
  border-bottom:1px solid rgba(0,32,64,.08);
}
.highlight-item{ display:flex; align-items:center; gap:.65rem; color:var(--navy); font-weight:600; font-size:.92rem; }
.highlight-item svg{ width:22px; height:22px; color:var(--navy-soft); flex:none; }
@media (max-width:640px){
  .highlight-strip{ gap:1.1rem 1.75rem; }
  .highlight-item{ font-size:.85rem; }
}

/* ---------- Neden Midgard (koyu, öne çıkan kart bölümü) ---------- */
.amenity.on-dark{
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.14);
  box-shadow:none;
}
.amenity.on-dark:hover{ background:rgba(255,255,255,.1); box-shadow:0 18px 34px -18px rgba(0,0,0,.4); }
.amenity.on-dark .icon-badge{ background:var(--accent); color:var(--ink); }
.amenity.on-dark h4{ color:#fff; }
.amenity.on-dark p{ color:rgba(255,255,255,.75); }

.neden-midgard-head{ text-align:center; max-width:44rem; margin-inline:auto; }
.neden-midgard-head .eyebrow{ color:var(--navy-soft); font-size:.85rem; letter-spacing:.28em; }
.neden-midgard-head .section-title{
  color:var(--navy); font-size:clamp(2.4rem,5.5vw,3.75rem); line-height:1;
}

/* ---------- Koyu (navy) zemin üstünde kullanılacak beyaz buton ---------- */
.btn-on-navy{ background:#fff; color:var(--navy); }
.btn-on-navy:hover{ background:var(--paper); color:var(--navy); transform:translateY(-2px); }

/* ---------- İletişim sayfası üst etiketi ---------- */
.contact-tagline{
  text-align:center; font-family:var(--display); font-weight:700;
  font-size:clamp(1.4rem,2.8vw,1.85rem); color:var(--accent);
  margin:0 0 clamp(2.5rem,5vw,3.5rem);
}
/* ---------- Beyaz zemin uzerinde mavi baloncuk karti ---------- */
.bubble-card{
  background:var(--navy); color:#fff;
  border-radius:2.25rem;
  padding:clamp(2.5rem,5vw,4rem) clamp(2rem,5vw,3.5rem);
  max-width:640px; margin-inline:auto; text-align:center;
  box-shadow:0 30px 60px -30px rgba(0,32,64,.4);
}
.bubble-card .eyebrow{ color:var(--accent); }
.bubble-card h3{
  color:#fff; font-family:var(--display); font-weight:700;
  font-size:clamp(1.7rem,3.5vw,2.4rem); margin:0 0 1rem; line-height:1.15;
}
.bubble-card p{ color:rgba(255,255,255,.85); margin:0; }

/* ---------- Ofis tipleri: genis kartlar, "devamini oku" ile acilan detay ---------- */
.office-cards{ display:flex; flex-direction:column; gap:clamp(1.75rem,3.5vw,2.5rem); margin-bottom:clamp(2.5rem,5vw,4rem); }
.office-card{
  background:var(--paper-2); border-radius:var(--radius);
  border:1px solid rgba(0,32,64,.08);
  box-shadow:0 6px 24px -14px rgba(0,32,64,.2);
  overflow:hidden; padding:clamp(1.5rem,3vw,2.25rem);
  transition:box-shadow .3s ease;
}
.office-card:hover{ box-shadow:0 20px 44px -20px rgba(0,32,64,.3); }
.office-card-grid{
  display:grid; grid-template-columns:1fr 1.35fr; gap:clamp(1.75rem,4vw,3rem); align-items:center;
}
.office-card-grid.reverse .office-card-text{ order:2; }
.office-card-grid.reverse .office-card-photo{ order:1; }
.office-card-photo .photo{ aspect-ratio:4/3; border-radius:calc(var(--radius) - .5rem); }

.office-card-text .eyebrow{ color:var(--navy-soft); font-size:.75rem; }
.office-card-text h3{
  font-family:var(--display); font-weight:700; font-size:clamp(1.4rem,2.6vw,1.9rem);
  color:var(--navy); margin:.2rem 0 .75rem; line-height:1.15;
}
.office-card-summary{ color:var(--slate); font-size:1.02rem; margin:0 0 1.25rem; }
.office-card-meta{ font-family:var(--mono); font-size:.8rem; color:var(--navy-soft); margin:0 0 .75rem; letter-spacing:.02em; }

.office-card-more{
  max-height:0; overflow:hidden; opacity:0;
  transition:max-height .5s ease, opacity .4s ease, margin .5s ease;
}
.office-card.is-expanded .office-card-more{ max-height:1100px; opacity:1; margin-bottom:1.25rem; }
.office-card-more p{ color:var(--slate); margin:0 0 1rem; }
.office-card-more p strong{ color:var(--navy); }
.office-card-more .feature-list{ margin-top:0; }

.office-card-actions{ display:flex; align-items:center; gap:1.25rem; flex-wrap:wrap; margin-top:.25rem; }
.read-more-btn{
  background:none; border:0; padding:0; cursor:pointer;
  color:var(--navy); font-weight:600; font-size:.95rem; font-family:var(--body);
  display:inline-flex; align-items:center; gap:.4rem;
}
.read-more-btn svg{ width:16px; height:16px; transition:transform .3s ease; }
.office-card.is-expanded .read-more-btn svg{ transform:rotate(180deg); }
.office-card.is-expanded .read-more-btn .rm-label-more{ display:none; }
.office-card:not(.is-expanded) .read-more-btn .rm-label-less{ display:none; }

@media (max-width:860px){
  .office-card-grid{ grid-template-columns:1fr; }
  .office-card-grid.reverse .office-card-text,
  .office-card-grid.reverse .office-card-photo{ order:initial; }
}

/* ---------- Ofis karti foto galerisi: kapali=kaydirmali, acik=alt alta ---------- */
.office-gallery{ position:relative; aspect-ratio:4/3; border-radius:calc(var(--radius) - .5rem); overflow:hidden; }
.office-gallery-track{ display:flex; height:100%; transition:transform .45s ease; }
.office-gallery-track .photo{ flex:0 0 100%; height:100%; border-radius:0; }
.office-gallery-nav-btn{
  position:absolute; top:50%; transform:translateY(-50%); z-index:3;
  width:36px; height:36px; border-radius:50%; background:rgba(255,255,255,.92);
  border:0; display:flex; align-items:center; justify-content:center; color:var(--navy); cursor:pointer;
  box-shadow:0 4px 14px -4px rgba(0,32,64,.35);
}
.office-gallery-nav-btn svg{ width:18px; height:18px; }
.office-gallery-nav-btn.prev{ left:.6rem; }
.office-gallery-nav-btn.next{ right:.6rem; }
.office-gallery-dots{ position:absolute; bottom:.7rem; left:50%; transform:translateX(-50%); z-index:3; display:flex; gap:.4rem; }
.office-gallery-dots span{ width:6px; height:6px; border-radius:50%; background:rgba(255,255,255,.55); transition:background .2s ease; }
.office-gallery-dots span.is-active{ background:#fff; }

.office-gallery-stack{ display:none; flex-direction:column; gap:.85rem; }
.office-gallery-stack .photo{ aspect-ratio:4/3; border-radius:calc(var(--radius) - .5rem); }

.office-card.is-expanded .office-gallery{ display:none; }
.office-card.is-expanded .office-gallery-stack{ display:flex; }

/* Sanal Ofis gibi fotografsiz kartlar icin tam genislik metin */
.office-card.no-photo .office-card-grid{ display:block; }
/* ---------- Ofisler: ek hizmet listesi (madde madde) ---------- */
.addon-list{
  list-style:none; margin:0; padding:0;
  display:grid; grid-template-columns:repeat(auto-fit, minmax(280px,1fr));
  gap:1.1rem 1.5rem; max-width:940px; margin-inline:auto;
}
.addon-list li{
  display:flex; align-items:center; gap:1rem;
  background:var(--paper); border:1px solid rgba(0,32,64,.08); border-radius:1.1rem;
  padding:1.1rem 1.3rem; font-size:1rem; color:var(--ink); font-weight:500;
  box-shadow:0 4px 16px -10px rgba(0,32,64,.18);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.addon-list li:hover{
  transform:translateY(-4px);
  box-shadow:0 16px 30px -16px rgba(0,32,64,.3);
  border-color:rgba(0,90,168,.25);
}
.addon-list svg{
  flex:none; width:20px; height:20px; padding:8px; box-sizing:content-box;
  background:linear-gradient(135deg, var(--accent), var(--navy));
  color:#fff; border-radius:50%;
}