/* Doreman v2 — header, iç sayfa üst alanı, kartlar ve mobil düzen */
html, body { background: #0a0605; }

.dm-header { position: relative; gap: 2rem; }
.dm-header__brand { display: inline-flex; align-items: center; flex-shrink: 0; }
.dm-header__logo { height: 40px; width: auto; display: block; }
.dm-header__nav a { transition: color .2s ease; }
.dm-header__nav a:hover { color: #d4b87a !important; }
.dm-header__toggle { display: none; width: 44px; height: 44px; border: 1px solid rgba(186, 156, 86, .3); border-radius: 4px; background: transparent; cursor: pointer; flex-direction: column; align-items: center; justify-content: center; gap: 5px; }
.dm-header__toggle span { display: block; width: 18px; height: 1.5px; background: #d4b87a; transition: transform .2s ease, opacity .2s ease; }
.dm-header__toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
.dm-header__toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.dm-header__toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }
.dm-mobile-nav { position: absolute; top: 100%; left: 0; right: 0; display: flex; flex-direction: column; padding: .5rem 1.5rem 1.5rem; background: #0a0605; border-top: 1px solid rgba(186, 156, 86, .12); border-bottom: 1px solid rgba(186, 156, 86, .12); box-shadow: 0 30px 60px rgba(0, 0, 0, .6); }
.dm-mobile-nav.hidden { display: none; }
.dm-mobile-nav a { padding: 1rem 0; font-size: 1.125rem; color: #c8b48a; border-bottom: 1px solid rgba(186, 156, 86, .08); }
.dm-mobile-nav a[aria-current="page"] { color: #d4b87a; }
.dm-mobile-nav .dm-mobile-nav__cta { margin-top: 1.25rem; border: 0; text-align: center; border-radius: 2px; font-size: .9375rem; font-weight: 500; color: #0a0605; background: linear-gradient(135deg, #ba9c56, #d4b87a); }

.dm-footer__logo { height: 38px; width: auto; display: block; }
.dm-footer a:hover { color: #d4b87a !important; }

/* app.css derlemesinde olmayan yardımcı sınıflar */
.block { display: block; }
.inline-block { display: inline-block; }
.py-20 { padding-top: 5rem; padding-bottom: 5rem; }
.py-24 { padding-top: 6rem; padding-bottom: 6rem; }
.pb-12 { padding-bottom: 3rem; }
.pb-32 { padding-bottom: 8rem; }
.mt-6 { margin-top: 1.5rem; }
.mt-10 { margin-top: 2.5rem; }
.p-5 { padding: 1.25rem; }
.col-span-4 { grid-column: span 4 / span 4; }

/* İç sayfalar: header içeriğin üstüne biniyor (layout margin-bottom: -100px) */
.dm-breadcrumb { padding-top: 140px; padding-bottom: 1.5rem; background: #0a0605; letter-spacing: .12em; }
.dm-breadcrumb a:hover { color: #d4b87a !important; }
.dm-page-hero { padding-top: 160px; }
.dm-breadcrumb + .dm-page-hero { padding-top: 2.5rem; }
.dm-page-hero__title { font-size: clamp(2.25rem, 5vw, 3rem); }
.dm-section-title { font-size: clamp(1.75rem, 4vw, 2.5rem); line-height: 1.15; }

.dm-card { background: linear-gradient(135deg, rgba(30, 20, 16, .9) 0%, rgba(18, 11, 7, .95) 100%); border: 1px solid rgba(186, 156, 86, .12); box-shadow: 0 4px 40px rgba(0, 0, 0, .4); }
a.dm-card:hover { border-color: rgba(186, 156, 86, .35); }

.dm-prose { color: #b8a684; font-size: 1.0625rem; line-height: 1.8; }
.dm-prose p { margin: 0 0 1.25rem; }
.dm-prose h2, .dm-prose h3 { color: #f5edd8; font-weight: 700; margin: 2rem 0 1rem; }
.dm-prose ul { list-style: disc; padding-left: 1.25rem; margin: 0 0 1.25rem; }

@media (max-width: 1023px) {
  .dm-header__toggle { display: inline-flex; }
  .dm-v2-shell header .dm-mobile-nav:not(.hidden) { display: flex; }
  .dm-header { padding-top: 1rem !important; padding-bottom: 1rem !important; }
  .dm-header__logo { height: 32px; }
  .dm-v2-shell .grid-cols-2 { grid-template-columns: repeat(1, minmax(0, 1fr)) !important; gap: 3rem !important; }
  .dm-v2-shell .dm-portfolio-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .dm-v2-shell .grid-cols-3[style*="gap: 2px"] { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  .dm-service-detail .dm-service-detail__body { grid-column: auto !important; }
  .dm-breadcrumb { padding-top: 110px; }
  .dm-page-hero { padding-top: 130px; }
}

@media (max-width: 640px) {
  .dm-header__cta { display: none; }
  .dm-v2-shell section { padding-top: 4.5rem !important; padding-bottom: 4.5rem !important; }
  .dm-v2-shell .dm-breadcrumb + .dm-page-hero { padding-top: 1.5rem !important; }
  .dm-v2-shell .dm-page-hero { padding-bottom: 3rem !important; }
  .dm-v2-shell h1[style*="font-size"] { font-size: clamp(2.25rem, 10.5vw, 2.75rem) !important; }
  .dm-v2-shell h2[style*="font-size"] { font-size: clamp(1.75rem, 8vw, 2.125rem) !important; }
  .dm-v2-shell .grid-cols-4, .dm-v2-shell .dm-portfolio-grid, .dm-v2-shell .grid-cols-3 { grid-template-columns: repeat(1, minmax(0, 1fr)) !important; }
  .dm-v2-shell .grid-cols-3[style*="gap: 2px"] { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  .dm-v2-shell .grid-cols-5 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .dm-hero-tags { flex-wrap: wrap; justify-content: center; gap: .5rem !important; }
  .dm-hero-tags > div > div { padding: .5rem .875rem !important; }
  .dm-cta-actions { flex-direction: column; align-items: stretch !important; }
  .dm-cta-actions > a { justify-content: center; text-align: center; }
  .dm-footer__bottom { flex-direction: column; gap: .75rem; align-items: flex-start !important; }
}

/* Gerçek içerik: marka karoları, kart linkleri */
.dm-brand-tile { transition: background .2s ease; }
a.dm-brand-tile:hover { background: rgba(186, 156, 86, .06) !important; }
.dm-brand-tile__name { font-size: .9375rem; letter-spacing: .02em; }
.dm-case-card { transition: transform .2s ease, border-color .2s ease; }
a.dm-case-card:hover { transform: translateY(-3px); border-color: rgba(186, 156, 86, .35) !important; }
.dm-card__link::after { content: ""; position: absolute; inset: 0; }

/* Instagram akışı */
.dm-ig__grid { gap: 6px; }
.dm-ig__item { position: relative; display: block; aspect-ratio: 1 / 1; overflow: hidden; border-radius: 6px; background: linear-gradient(135deg, #1e1410, #0a0605); }
.dm-ig__item img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.dm-ig__badge { position: absolute; top: 10px; right: 10px; width: 28px; height: 28px; border-radius: 50%; display: flex; align-items: center; justify-content: center; color: #f5edd8; background: rgba(10, 6, 5, .65); }
.dm-ig__caption { position: absolute; inset: auto 0 0 0; padding: 2.5rem 1rem 1rem; font-size: .8125rem; line-height: 1.45; color: #f5edd8; background: linear-gradient(180deg, transparent, rgba(10, 6, 5, .92)); opacity: 0; transition: opacity .25s ease; }
@media (hover: hover) {
  .dm-ig__item:hover img { transform: scale(1.04); }
  .dm-ig__item:hover .dm-ig__caption, .dm-ig__item:focus-visible .dm-ig__caption { opacity: 1; }
}
@media (max-width: 640px) {
  .dm-v2-shell .dm-ig__grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 3px; }
  .dm-ig__caption { display: none; }
}
.dm-ig__profile { display: inline-flex; align-items: center; gap: .5rem; }

/* Hizmet kartları */
.dm-service-card { display: flex; flex-direction: column; height: 100%; padding: 1.75rem; transition: border-color .2s ease, transform .2s ease; }
a.dm-service-card:hover { transform: translateY(-3px); }
.dm-service-card__top { display: flex; align-items: center; justify-content: space-between; gap: .75rem; margin-bottom: 1.5rem; }
.dm-service-card__icon { width: 48px; height: 48px; border-radius: 12px; display: inline-flex; align-items: center; justify-content: center; color: #d4b87a; background: linear-gradient(135deg, rgba(186, 156, 86, .16), rgba(186, 156, 86, .04)); border: 1px solid rgba(186, 156, 86, .22); flex-shrink: 0; }
.dm-service-card__badge { font-size: .6875rem; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; color: #ba9c56; padding: .3rem .65rem; border-radius: 999px; background: rgba(186, 156, 86, .08); border: 1px solid rgba(186, 156, 86, .16); white-space: nowrap; }
.dm-service-card__title { font-size: 1.25rem; line-height: 1.25; color: #f5edd8; margin: 0 0 .625rem; }
.dm-service-card__text { font-size: .9375rem; line-height: 1.6; color: #9a8a6a; margin: 0 0 1.5rem; }
.dm-service-card__more { margin-top: auto; display: inline-flex; align-items: center; gap: .4rem; font-size: .8125rem; font-weight: 500; color: #ba9c56; }
a.dm-service-card:hover .dm-service-card__more { color: #d4b87a; }
@media (max-width: 1023px) { .dm-v2-shell .dm-services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width: 640px) { .dm-v2-shell .dm-services-grid { grid-template-columns: repeat(1, minmax(0, 1fr)) !important; } .dm-service-card { padding: 1.5rem; } }
