/* base.css — ortak stiller (tüm sayfalar) */
:root{
  --ink:#1a1a1a; --ink-muted:#5c5c5c; --ink-light:#767676;
  --surface:#ffffff; --surface-warm:#faf9f7; --surface-deep:#f3f1ec;
  --accent:#2d6a4f; --accent-light:#52b788; --accent-pale:#e8f5ee;
  --gold:#8a6320; --gold-pale:#fdf4e3;
  --border:rgba(26,26,26,0.10); --border-strong:rgba(26,26,26,0.18);
  --serif:'Playfair Display', Georgia, serif; --sans:'DM Sans', system-ui, sans-serif;
  --radius:3px; --shadow:0 2px 20px rgba(0,0,0,0.07); --shadow-lg:0 8px 48px rgba(0,0,0,0.10);
}
html{ scroll-padding-top:80px; }
html, body{ max-width:100%; overflow-x:hidden; }
.skip-link{ position:absolute; left:-9999px; top:0; background:var(--accent); color:#fff; padding:10px 16px; z-index:200; }
.skip-link:focus{ left:0; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, summary:focus-visible{ outline:2px solid var(--accent); outline-offset:3px; }
.nav-contact{ text-decoration:none; }
.nav-toggle{ display:none; background:none; border:0; cursor:pointer; width:44px; height:44px; flex-direction:column; justify-content:center; align-items:center; gap:5px; }
.nav-toggle span{ display:block; width:24px; height:2px; background:var(--ink); transition:.3s; }
.nav-toggle[aria-expanded="true"] span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.nav-toggle[aria-expanded="true"] span:nth-child(2){ opacity:0; }
.nav-toggle[aria-expanded="true"] span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }
@media (max-width:900px){
  .nav-toggle{ display:flex; }
  .nav-contact{ display:none; }
  .nav-links{ display:none; position:fixed; top:64px; left:0; right:0; flex-direction:column; gap:0; background:var(--surface-warm); border-bottom:1px solid var(--border); box-shadow:var(--shadow-lg); padding:.5rem 1.5rem 1rem; }
  .nav-links.open{ display:flex; }
  .nav-links li{ width:100%; }
  .nav-links a{ display:block; padding:14px 2px; border-bottom:1px solid var(--border); }
}
@media (prefers-reduced-motion: reduce){ *{ animation-duration:.001ms!important; transition-duration:.001ms!important; scroll-behavior:auto!important; } }

/* ── Açılır alt menü (dropdown) navigasyonu ───────────────── */
.nav-links > li{ position:relative; }
.nav-links > li > a{ display:flex; align-items:center; gap:7px; height:64px; }
.has-dropdown > a{ cursor:pointer; }
.has-dropdown > a::after{ content:""; width:6px; height:6px; border-right:1.6px solid currentColor; border-bottom:1.6px solid currentColor; transform:rotate(45deg); margin-top:-3px; opacity:.6; transition:transform .2s ease, opacity .2s ease; }
.has-dropdown:hover > a::after,
.has-dropdown:focus-within > a::after,
.has-dropdown.open > a::after{ transform:rotate(-135deg); margin-top:2px; opacity:1; }
.dropdown-menu{
  position:absolute; top:100%; left:0; min-width:238px; margin:0; padding:.4rem 0; list-style:none;
  background:var(--surface-warm); border:1px solid var(--border); border-top:2px solid var(--accent);
  border-radius:0 0 var(--radius) var(--radius); box-shadow:var(--shadow-lg);
  opacity:0; visibility:hidden; transform:translateY(8px);
  transition:opacity .18s ease, transform .18s ease, visibility .18s; z-index:120;
}
.has-dropdown:hover > .dropdown-menu,
.has-dropdown:focus-within > .dropdown-menu,
.has-dropdown.open > .dropdown-menu{ opacity:1; visibility:visible; transform:translateY(0); }
.nav-links .dropdown-menu li{ width:100%; }
.nav-links .dropdown-menu a{
  display:block; height:auto; padding:11px 22px; border:0;
  font-size:12.5px; letter-spacing:.02em; text-transform:none; line-height:1.35;
  color:var(--ink-muted); white-space:nowrap;
}
.nav-links .dropdown-menu a:hover,
.nav-links .dropdown-menu a:focus{ color:var(--accent); background:var(--accent-pale); }

@media (max-width:900px){
  .nav-links > li > a{ height:auto; justify-content:space-between; }
  .dropdown-menu{
    position:static; opacity:1; visibility:visible; transform:none;
    border:0; border-top:0; box-shadow:none; background:transparent;
    padding:0; max-height:0; overflow:hidden; transition:max-height .28s ease; min-width:0;
  }
  .has-dropdown.open > .dropdown-menu{ max-height:560px; }
  .nav-links .dropdown-menu a{ padding:12px 2px 12px 20px; border-bottom:1px solid var(--border); font-size:13px; white-space:normal; }
  .has-dropdown > a::after{ margin-top:0; }
}
