/* Consolidated Copilot / override styles
   Moved from inline <style> blocks in index.html
   Purpose: make header/menu area fully #0b1220 and keep buttons/menu readable
*/

/* --- custom-header-darken (broad header overrides) --- */
.elementor-element-265b08d,
.elementor-element-265b08d .e-con-inner,
.elementor-element-265b08d .e-con,
.elementor-element-265b08d .e-con-inner > .elementor-element,
.elementor-element-265b08d .elementor-widget-container,
.elementor-element-265b08d .wpr-nav-menu-container,
.elementor-element-265b08d .wpr-nav-menu-horizontal,
.elementor-element-265b08d .wpr-mobile-nav-menu-container,
.elementor-element-265b08d .wpr-mobile-toggle-wrap {
    background-image: none !important;
    background: #0b1220 !important;
    background-color: #0b1220 !important;
    box-shadow: none !important;
    border: none !important;
}
.elementor-element-265b08d hr,
.elementor-element-265b08d .wpr-nav-menu:before,
.elementor-element-265b08d .wpr-nav-menu:after {
    display: none !important;
}
.elementor-element-265b08d .wpr-nav-menu a,
.elementor-element-265b08d .elementor-button,
.elementor-element-265b08d a,
.elementor-element-265b08d .wpr-button-text {
    color: #ffffff !important;
}
.elementor-element-265b08d .elementor-widget-image,
.elementor-element-265b08d .elementor-widget-image img {
    background: transparent !important;
}
.wpr-main-menu-align-center .wpr-nav-menu-container,
.wpr-nav-menu-container,
.wpr-nav-menu-horizontal,
.wpr-main-menu-align--tabletright,
.wpr-main-menu-align--laptopleft {
    background: #0b1220 !important;
}
header, .header, .site-header {
    background: #0b1220 !important;
}

/* --- copilot-header-fix2 (defensive pseudo-element & z-index fixes) --- */
.elementor-element-265b08d,
.elementor-element-265b08d *,
.elementor-element-265b08d *::before,
.elementor-element-265b08d *::after,
.elementor-element-265b08d .e-con,
.elementor-element-265b08d .e-con-inner,
.elementor-element-265b08d .e-con-boxed {
    background-image: none !important;
    background-color: #0b1220 !important;
    background: #0b1220 !important;
    box-shadow: none !important;
    border: none !important;
}
.elementor-element-265b08d > .e-con-inner > .elementor-element,
.elementor-element-265b08d .wpr-nav-menu-container,
.elementor-element-265b08d .wpr-nav-menu-horizontal {
    background: #0b1220 !important;
}
.elementor-element-265b08d *::before,
.elementor-element-265b08d *::after {
    background: transparent !important;
    background-image: none !important;
    content: none !important;
}
.elementor-element-265b08d {
    position: relative !important;
    z-index: 9999 !important;
}
.elementor.elementor-689 > .elementor-element-265b08d,
body .elementor-element-265b08d {
    background: #0b1220 !important;
}

/* --- copilot-header-overlay (full-cover overlay but allow clicks through) --- */
.elementor-element-265b08d {
    position: relative !important;
}
.elementor-element-265b08d::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: #0b1220 !important;
    background-image: none !important;
    box-shadow: none !important;
    border: none !important;
    pointer-events: none !important;
    z-index: 0 !important;
}
.elementor-element-265b08d .elementor-widget-image,
.elementor-element-265b08d .wpr-nav-menu-container,
.elementor-element-265b08d .wpr-mobile-nav-menu-container,
.elementor-element-265b08d .elementor-widget-container,
.elementor-element-265b08d nav,
.elementor-element-265b08d .wpr-button-wrap {
    position: relative !important;
    z-index: 2 !important;
}
.elementor-element-265b08d *::before,
.elementor-element-265b08d *::after {
    background: transparent !important;
    background-image: none !important;
}

/* --- copilot-phone-button-fix (phone button styling) --- */
.elementor-element-265b08d .elementor-button,
.elementor-element-265b08d .elementor-button.elementor-size-sm,
.elementor-element-265b08d .elementor-element-188b214 .elementor-button,
.elementor-element-265b08d .wpr-button-wrap .wpr-button,
.elementor-element-265b08d .wpr-button {
    background: #0b1220 !important;
    background-image: none !important;
    color: #ffffff !important;
    border: none !important;
    box-shadow: none !important;
}

/* --- Telefon Et: make it a clear, tappable button (desktop & mobile) --- */
/* Target the specific elementor header button widget (elementor-element-188b214) */
.elementor-element-188b214 .elementor-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 10px 16px !important;
    border-radius: 28px !important;
    background: linear-gradient(90deg,#ff6b00,#ff8a00) !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    text-decoration: none !important;
    box-shadow: 0 8px 20px rgba(0,0,0,0.18) !important;
    border: 0 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    -webkit-text-fill-color: #ffffff !important;
}

.elementor-element-188b214 .elementor-button .elementor-button-icon svg,
.elementor-element-188b214 .elementor-button .e-font-icon-svg { fill: currentColor !important; color: inherit !important; }

/* Make sure the button is visible on mobile and doesn't get hidden by responsive rules */
@media (max-width: 768px){
    .elementor-element-188b214 { display: block !important; }
    .elementor-element-188b214 .elementor-button { padding: 12px 18px !important; font-size: 16px !important; border-radius: 999px !important; }
}

/* Ensure anchor inside keeps full button sizing and clickable area */
.elementor-element-188b214 .elementor-button-link { display: inline-flex !important; align-items: center !important; padding: 10px 16px !important; }

/* Strong override to remove unwanted text-decoration (some plugin CSS sets line-through !important) */
.elementor-element-188b214 .elementor-button-link,
.elementor-element-188b214 .elementor-button,
.elementor-element-188b214 .elementor-button-text {
    text-decoration: none !important;
    -webkit-text-decoration-line: none !important;
    text-decoration-line: none !important;
}

/* Ensure the anchor receives the background, radius and clickable area (in some exports the inner span is styled instead) */
.elementor-element-188b214 .elementor-button-link {
    background: linear-gradient(90deg,#ff6b00,#ff8a00) !important;
    color: #ffffff !important;
    border-radius: 28px !important;
    padding: 10px 16px !important;
}

/* Safety: force the displayed element to be inline-flex so it behaves as a button */
.elementor-element-188b214 .elementor-button { display: inline-flex !important; align-items: center !important; justify-content: center !important; }

/* Accessibility: focus/hover states */
.elementor-element-188b214 .elementor-button:focus,
.elementor-element-188b214 .elementor-button:hover { transform: translateY(-1px) !important; box-shadow: 0 10px 30px rgba(0,0,0,0.22) !important; outline: 3px solid rgba(255,107,0,0.14) !important; }

/* If any plugin sets the button to transparent, override it */
.elementor-element-188b214 .elementor-button[style],
.elementor-element-188b214 .elementor-button-link[style] { background: linear-gradient(90deg,#ff6b00,#ff8a00) !important; color: #fff !important; }

/* End Telefon Et button styles */
.elementor-element-265b08d .elementor-button .e-font-icon-svg path,
.elementor-element-265b08d .wpr-button .e-font-icon-svg path {
    fill: #ffffff !important;
}
.elementor-element-265b08d .elementor-button,
.elementor-element-265b08d .wpr-button-wrap {
    position: relative !important;
    z-index: 3 !important;
}
.elementor-element-265b08d .elementor-button:before,
.elementor-element-265b08d .elementor-button:after,
.elementor-element-265b08d .wpr-button:before,
.elementor-element-265b08d .wpr-button:after {
    display: none !important;
    content: none !important;
}

/* --- copilot-header-force-all (aggressive fallback) --- */
.elementor-element-265b08d *:not(img):not(svg):not(path):not(.wpr-button-text) {
    background-color: #0b1220 !important;
    background: #0b1220 !important;
    background-image: none !important;
    box-shadow: none !important;
    border-color: transparent !important;
}
.elementor-element-265b08d .wpr-nav-menu,
.elementor-element-265b08d .wpr-nav-menu li,
.elementor-element-265b08d .wpr-nav-menu a,
.elementor-element-265b08d .wpr-mobile-nav-menu,
.elementor-element-265b08d .wpr-mobile-nav-menu li {
    background: #0b1220 !important;
}
.elementor-element-265b08d a,
.elementor-element-265b08d .wpr-button-text,
.elementor-element-265b08d .elementor-button-text {
    color: #ffffff !important;
}

/* End of custom-overrides.css */

/* --- Contact card (ct-saraytesisat-contact) dark theme overrides --- */
/* Make the contact card match the near-black site background while keeping text/buttons readable */
.ct-saraytesisat-contact .ct-card {
    background: #0b1220 !important;
    background-image: none !important;
    border: 1px solid rgba(255,255,255,0.03) !important;
    box-shadow: 0 6px 22px rgba(2,6,23,0.6) !important;
}
.ct-saraytesisat-contact .ct-title {
    color: #f3f4f6 !important; /* light title */
}
.ct-saraytesisat-contact .ct-sub {
    color: #94a3b8 !important; /* muted light */
}
.ct-saraytesisat-contact .ct-link,
.ct-saraytesisat-contact .ct-link:visited {
    color: #ffffff !important;
}
.ct-saraytesisat-contact .ct-icon{
    background:#0f1724 !important;
    box-shadow: 0 1px 4px rgba(0,0,0,0.5) !important;
    color: #ffffff !important;
}
.ct-saraytesisat-contact .ct-btn-call{
    background: transparent !important;
    color: #ffffff !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    box-shadow: none !important;
}
.ct-saraytesisat-contact .ct-btn-wp{
    /* keep green WhatsApp feel but reduce glow for dark background */
    background: linear-gradient(90deg,#16a34a,#059669) !important;
    color: #ffffff !important;
    box-shadow: 0 6px 20px rgba(5,150,105,0.12) !important;
}

@media (max-width:768px){
  .ct-saraytesisat-contact .ct-card{padding:16px !important}
}

/* --- Kayan Bant: Özel Siteler Bölümü Stilleri (kullanıcı sağladığı) --- */
.ozel-siteler-banner {
    width: 100%;
    position: relative;
    z-index: 10050 !important;
    transition: all 0.3s ease;
    padding: 10px 0;
    overflow: hidden;
    will-change: transform;
    background-color: transparent !important;
    backdrop-filter: none !important;
    border-top: 1px solid rgba(255, 255, 255, 0.03);
    border-bottom: 1px solid rgba(255, 255, 255, 0.03);
}

.ozel-siteler-banner.fixed {
    position: fixed;
    top: 70px;
    left: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(4px);
    box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3);
    transition: all ease 0.4s;
}

.kayan-bant-spacer { display:none; height:62px }
.kayan-bant-spacer.active { display:block }

.ozel-siteler-container { width:100%; margin:0 auto; position:relative; overflow:hidden }
.ozel-siteler-slider { display:flex; gap:15px; padding:5px 0; overflow:hidden; position:relative; width:100% }

/* Continuous marquee: move half the duplicated track every cycle for seamless looping */
@keyframes marquee-desktop { 0% { transform: translateX(0%);} 100% { transform: translateX(-50%);} }
@keyframes marquee-mobile { 0% { transform: translateX(0%);} 100% { transform: translateX(-50%);} }

.slider-content { display:flex; gap:40px; padding:5px 0; white-space:nowrap; width:max-content; position:relative; will-change:transform; animation: marquee-desktop 20s linear infinite !important; animation-play-state: running !important; }

/* Visibility helpers to ensure the slider isn't hidden by other layers */
.ozel-siteler-banner, .slider-content, .site-item { display:block !important; visibility:visible !important; opacity:1 !important }
.ozel-siteler-banner { min-height:56px !important }

.site-item { display:inline-flex; align-items:center; padding:6px 12px; border-radius:10px; background-color: rgba(255,255,255,0.95) !important; transition: transform 0.12s ease; text-decoration:none; position:relative; overflow:hidden; --band-color:#FF9900; --band-color-rgb:255,153,0 }
.site-item:before { content:""; position:absolute; top:0; left:0; right:0; bottom:0; background: linear-gradient(90deg, transparent 10%, rgba(var(--band-color-rgb), 0.08) 60%, rgba(var(--band-color-rgb), 0.15) 100%); z-index:-1; transition: opacity 0.18s ease }
.site-item:hover { background-color: rgba(255,255,255,1) !important; transform: translateY(-2px) }
.site-item:hover:before{ opacity:0.25 }
.site-item img{ height:40px; width:auto; margin-right:10px; border-radius:5px }
.giris-btn{ background:#ffffff !important; text-align:center; border-radius:30px; height:30px; font-size:12px; font-weight:bold; padding:0 15px; display:flex; align-items:center; justify-content:center; color:#000000 !important; white-space:nowrap; transition: transform 0.12s ease }
.site-item:hover .giris-btn{ transform: scale(1.02) }

@media (max-width:768px){
    .ozel-siteler-banner{ padding:6px 0 }
    .ozel-siteler-banner.fixed{ top:70px }
    .kayan-bant-spacer{ height:52px }
    .slider-content{ gap:15px; animation: marquee-mobile 20s linear infinite }
    .site-item{ padding:3px 10px }
    .site-item img{ height:30px; margin-right:8px }
    .giris-btn{ padding:3px 8px; font-size:10px }
}

@media (max-width:480px){
    .ozel-siteler-banner.fixed{ top:50px }
    .site-item img{ height:25px; margin-right:6px }
    .slider-content{ animation: marquee-mobile 20s linear infinite }
}

@media (prefers-reduced-motion: reduce){ .slider-content{ animation:none !important } }

/* --- Kuvvetli override: kayan bantın YATAY ve merkezlenmiş görünmesi için --- */
/* Bu kurallar diğer eklenti/elementor stillerini geçersiz kılmak üzere !important kullanır */
.ozel-siteler-banner {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    padding: 8px 0 !important;
    box-sizing: border-box !important;
}
.ozel-siteler-container {
    display: block !important;
     /* Make the container span the full viewport so the banner is full-bleed */
     max-width: 100% !important;
     width: 100% !important;
     margin: 0 !important;
     padding: 0 8px !important;
    overflow: visible !important;
}
.ozel-siteler-slider {
    display: block !important;
    width: 100% !important;
    overflow: hidden !important;
}
.slider-content {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    /* ensure slider uses its intrinsic width (max-content) so duplication/translate -50% works */
    /* removed forced 100vw/margin-left which broke seamless looping */
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 24px !important;
    width: max-content !important;
    margin: 0 auto !important;
    padding: 6px 0 !important;
}
.site-item {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 6px 12px !important;
    border-radius: 10px !important;
}
.ozel-siteler-banner.full-bleed {
    position: relative !important;
    /* Use margin-centering only to avoid double translation from left/transform */
    width: 100vw !important;
    max-width: 100vw !important;
    box-sizing: border-box !important;
    padding: 0 !important; /* remove any inner gap */
    /* cancel out page/container centering so banner reaches both edges */
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    overflow-x: hidden !important;
}
.ozel-siteler-container.full-bleed {
    max-width:100% !important;
    /* ensure the inner container also spans the viewport and cancels page centering */
    width:100vw !important;
    max-width:100vw !important;
    padding:0 !important; /* ensure no extra container padding */
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    overflow: hidden !important;
}
/* Masaüstü için küçük sağ kaydırma: 12px */
@media (min-width: 992px) {
    .ozel-siteler-banner.full-bleed {
        transform: translateX(12px) !important;
    }
}
/* Aggressive desktop fix: expand banner slightly to cover any remaining right gap */
@media (min-width: 992px){
    .ozel-siteler-banner.full-bleed {
        /* increase width by the translation amount so right edge reaches viewport */
        width: calc(100vw + 12px) !important;
        /* shift the left margin back so center remains visually aligned */
        margin-left: calc(50% - 50vw - 12px) !important;
        margin-right: calc(50% - 50vw - 12px) !important;
        overflow-x: hidden !important;
    }
    /* fallback: prevent any horizontal scroll caused by minor rounding */
    html, body { overflow-x: hidden !important; }
}
.site-item img { height: 48px !important; width: auto !important; margin: 0 !important; }
.ozel-siteler-banner .giris-btn { margin-left: 8px !important; }

/* site-item label (text instead of logo) */
.site-item-label { display:inline-block; font-weight:600; font-size:16px; margin-right:12px; color:#000000 !important; }

/* Logo text replacement styling */
.site-logo-text {
    color: #fff !important;
    font-weight: 700 !important;
    font-size: 28px !important;
    letter-spacing: 0.5px !important;
}

/* Shift the header logo a bit to the right for visual alignment (desktop) */
.elementor-element-dd08540 .elementor-widget-container a {
    display: inline-block !important;
    margin-left: 10px !important;
}

/* Mobilde biraz daha sıkışık görünmemesi için ayarlar */
@media (max-width:768px){
    .slider-content{ gap:12px !important }
    .site-item img{ height:34px !important }
    .site-item{ padding:4px 8px !important }
}

/* Mobile: center the header logo for small screens */
@media (max-width:768px){
    /* center the image widget that contains the logo */
    .elementor-element-dd08540 .elementor-widget-container,
    .elementor-element-265b08d .elementor-widget-image { text-align: center !important; }
    .elementor-element-dd08540 .elementor-widget-container img,
    .elementor-element-265b08d .elementor-widget-image img { display: inline-block !important; margin: 0 auto !important; }
}

/* Mobilde logoyu biraz daha aşağı almak için güvenli üst boşluk (kullanıcı isteği) */
@media (max-width:768px){
    .elementor-element-dd08540 { margin-top:100px !important; }
    /* mobilde linkin içi merkezi korunsun */
    .elementor-element-dd08540 .elementor-widget-container a { display: inline-block !important; }
}

/* --- Header: minimal safe rules to avoid logo clipping and keep spacing reasonable --- */
@media (min-width:769px){
    /* allow header container to show overflowed logo if needed */
    .elementor-element-265b08d { overflow: visible !important; }

    /* ensure logo image is not transformed or clipped and give a small right gap */
    .elementor-element-dd08540 .elementor-widget-container img {
        transform: none !important;
        margin: 0 12px 0 0 !important;
        display: inline-block !important;
        max-width: 220px !important;
        height: auto !important;
    }

    /* keep the header inner container aligned without forcing aggressive layout changes */
    .elementor-element-7b5dbbf.e-con-full.e-flex { align-items: center !important; }
}

/* More aggressive: parent flex container centering for mobile */
@media (max-width:768px){
    .elementor-element-7b5dbbf.e-con-full.e-flex,
    .elementor-element-265b08d .e-con-inner,
    .elementor-element-265b08d .e-con {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
    }
    /* ensure nav/menu below keeps its spacing by forcing flex-direction column on small screens */
    .elementor-element-265b08d .e-con-inner { flex-direction: column !important; gap: 12px !important; }
}

/* Ensure text inside items is dark to match white buttons */
.ozel-siteler-banner .site-item,
.ozel-siteler-banner .site-item * { color: #000 !important; }

/* Prevent hover from pausing the marquee */
.slider-content:hover { animation-play-state: running !important; }

/* --- Logo boyutunu büyütme: masaüstü ve mobil için güvenli override --- */
/* Masaüstü: daha büyük logo, buton/menu ile çakışmayı önlemek için max-height sınırı */
@media (min-width:769px){
    .elementor-element-dd08540 .elementor-widget-container img,
    .elementor-element-265b08d .elementor-widget-image img {
        max-width: 1000px !important; /* daha geniş izin ver */
        max-height: 1000px !important; /* yüksekliği sınırlı tut */
        width: auto !important;
        height: auto !important;
        display: inline-block !important;
    }

    /* Eğer tema başka kurallarla küçültüyorsa, ölçeği izin ver */
    .elementor-element-dd08540 { overflow: visible !important; }
}

/* Tablet / Mobil: uygun daha büyük fakat sıkışmayan boyutlar */
@media (max-width:768px){
    .elementor-element-dd08540 .elementor-widget-container img,
    .elementor-element-265b08d .elementor-widget-image img {
        max-width: 1000px !important;
        max-height: 1000px !important;
        width: auto !important;
        height: auto !important;
        display: inline-block !important;
    }

    /* Mobilde logo çok büyük gelirse kullanıcının merkezleme isteklerini bozmamak için margin'leri koru */
    .elementor-element-dd08540 .elementor-widget-container a { margin-left: 0 !important; }
}

/* Son: eğer site logo yerine metin gösteriliyorsa, metin de orantılı olsun */
.site-logo-text { font-size: 34px !important; line-height: 1 !important; }

/* --- Very specific, high-priority logo rule to prevent other CSS from shrinking it --- */
/* Targets the exact image element used in the header and forces sensible max size */
.elementor-element-dd08540 .elementor-widget-container img.attachment-large.wp-image-1811,
.elementor-element-265b08d .elementor-widget-image img.attachment-large.wp-image-1811 {
    width: auto !important;
    height: auto !important;
    max-width: 360px !important;   /* allow larger logo */
    max-height: 140px !important;  /* prevent it from being excessively tall */
    display: inline-block !important;
}

/* Also override any inline style rules that might set width/height via style attribute */
.elementor-element-dd08540 .elementor-widget-container img[style],
.elementor-element-265b08d .elementor-widget-image img[style] {
    max-width: 360px !important;
    max-height: 140px !important;
    width: auto !important;
    height: auto !important;
}

/* Ensure logo is fully visible (no clipping) and parents allow overflow */
.elementor-element-dd08540,
.elementor-element-7b5dbbf,
.elementor-element-265b08d,
.elementor-element-dd08540 .elementor-widget-container,
.elementor-element-265b08d .elementor-widget-image {
    overflow: visible !important;
    height: auto !important;
    min-height: 1px !important;
}

.elementor-element-dd08540 .elementor-widget-container a {
    display: inline-block !important;
    overflow: visible !important;
}

/* Make the logo image fully visible and use contain to avoid cropping */
.elementor-element-dd08540 .elementor-widget-container img.attachment-large.wp-image-1811,
.elementor-element-265b08d .elementor-widget-image img.attachment-large.wp-image-1811 {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center top !important;
}

/* --- Light theme / white background overrides --- */
/* Make header and main top area white, and switch text/buttons to dark colors */
.elementor-element-265b08d,
.elementor-element-265b08d .e-con-inner,
.elementor-element-265b08d .e-con,
.elementor-element-265b08d .elementor-widget-container,
header, .site-header, .wpr-header, .wpr-topbar {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #0b1220 !important; /* dark text */
}

/* links, menu items, buttons in header should be dark on white */
.elementor-element-265b08d .wpr-nav-menu a,
.elementor-element-265b08d .wpr-mobile-nav-menu a,
.elementor-element-265b08d .wpr-nav-menu li a,
.elementor-element-265b08d a,
.elementor-element-265b08d .wpr-button-text,
.elementor-element-265b08d .elementor-button-text {
    color: #0b1220 !important;
}

/* ===== Mobile: compact logo rules ===== */
@media (max-width:480px){
    /* reduce large top gap that created excessive logo area */
    .elementor-element-dd08540 { margin-top: 8px !important; }

    /* constrain logo image to a small, usable size on phones */
    .elementor-element-dd08540 .elementor-widget-container img,
    .elementor-element-265b08d .elementor-widget-image img {
        max-width: 160px !important;
        max-height: 56px !important;
        width: auto !important;
        height: auto !important;
        display: inline-block !important;
        object-fit: contain !important;
    }

    /* remove extra padding that may add vertical space */
    .elementor-element-dd08540 .elementor-widget-container,
    .elementor-element-265b08d .elementor-widget-image { padding: 0 !important; margin: 0 auto !important; text-align:center !important; }

    /* ensure header flex containers don't stretch logo area vertically */
    .elementor-element-7b5dbbf.e-con-full.e-flex,
    .elementor-element-265b08d .e-con-inner { align-items: center !important; }
}

/* small tablet: slightly larger but still compact */
@media (min-width:481px) and (max-width:768px){
    .elementor-element-dd08540 { margin-top: 14px !important; }
    .elementor-element-dd08540 .elementor-widget-container img,
    .elementor-element-265b08d .elementor-widget-image img { max-width: 220px !important; max-height: 80px !important; }
}

/* Completely hide the header 'Telefon Et' container and its button (desktop + mobile) */
.elementor-element-3c5ce98,
.elementor-element-3c5ce98 * {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Make the header phone button visible on mobile/tablet even if Elementor added hidden classes */
@media (max-width:768px){
    .elementor-element-3c5ce98.elementor-hidden-tablet.elementor-hidden-mobile,
    .elementor-element-3c5ce98.elementor-hidden-mobile {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        height: auto !important;
    }
    .elementor-element-3c5ce98 .elementor-button-wrapper { display: inline-block !important; }
    .elementor-element-3c5ce98 .elementor-button { pointer-events: auto !important; }
}

/* Make the header phone button legible and tappable on all viewports */
.elementor-element-3c5ce98 .elementor-button{
    background:#ff6b00 !important;
    color:#ffffff !important;
    -webkit-text-fill-color: #ff0000 !important;
    mix-blend-mode: normal !important;
    opacity: 1 !important;
    z-index: 2147483648 !important;
    border:none !important;
    padding:10px 16px !important;
    border-radius:14px !important;
    box-shadow:0 8px 24px rgba(255,107,0,0.16) !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:110px !important;
}
.elementor-element-3c5ce98 .elementor-button .elementor-button-text{ color:#fff !important; font-weight:700 !important; font-size:15px !important; text-shadow:0 2px 6px rgba(0,0,0,0.35) !important; }
.elementor-element-3c5ce98 .elementor-button .e-font-icon-svg path{ fill:#fff !important; }

@media (max-width:480px){
    .elementor-element-3c5ce98 .elementor-button{ padding:12px 18px !important; min-width:120px !important; border-radius:12px !important; }
    .elementor-element-3c5ce98 .elementor-button .elementor-button-text{ font-size:16px !important; }
}

/* style header buttons as outlined / dark text on white */
.elementor-element-265b08d .elementor-button,
.elementor-element-265b08d .wpr-button {
    background: transparent !important;
    color: #0b1220 !important;
    border: 1px solid rgba(11,18,32,0.06) !important;
    box-shadow: none !important;
}
.elementor-element-265b08d .elementor-button .e-font-icon-svg path,
.elementor-element-265b08d .wpr-button .e-font-icon-svg path {
    fill: #0b1220 !important;
}

/* Page background to white, primary text dark */
body, .site, .elementor, .elementor-page {
    background: #ffffff !important;
    color: #0b1220 !important;
}

/* Contact card: white background and readable dark text on white */
.ct-saraytesisat-contact .ct-card {
    background: #ffffff !important;
    color: #0b1220 !important;
    border: 1px solid rgba(11,18,32,0.06) !important;
    box-shadow: 0 6px 22px rgba(2,6,23,0.04) !important;
}
.ct-saraytesisat-contact .ct-title { color: #0b1220 !important; }
.ct-saraytesisat-contact .ct-sub { color: #475569 !important; }
.ct-saraytesisat-contact .ct-link, .ct-saraytesisat-contact .ct-link:visited { color: #0b1220 !important; }
.ct-saraytesisat-contact .ct-icon { background: transparent !important; color: #0b1220 !important; box-shadow:none !important }
.ct-saraytesisat-contact .ct-btn-call { background: transparent !important; color: #0b1220 !important; border:1px solid rgba(11,18,32,0.06) !important }
.ct-saraytesisat-contact .ct-btn-wp { box-shadow:none !important }

/* Ensure headings within the header and hero are dark on white */
.elementor-element-265b08d h1,
.elementor-element-265b08d h2,
.elementor-element-265b08d h3,
.elementor-element-265b08d p,
.elementor-element-265b08d .elementor-widget-heading .elementor-heading-title {
    color: #0b1220 !important;
}

/* Links site-wide: darker and visible on white */
a, a:visited { color: #0b1220 !important; }

/* Reduce strong white-on-dark shadows on other components to fit white background */
.ozel-siteler-banner, .site-item { background-color: transparent !important; }

@media (max-width:768px){
    /* keep mobile header readable */
    .elementor-element-265b08d .wpr-mobile-nav-menu-container { background: #ffffff !important; }
}

/* --- Quick fix: Force header / menu text visible (dark) --- */
/* Some earlier aggressive rules set text to white; override them with very-specific selectors */
.elementor-element-265b08d .wpr-nav-menu a,
.elementor-element-265b08d .wpr-mobile-nav-menu a,
.elementor-element-265b08d .wpr-nav-menu li a,
.elementor-element-265b08d a,
.elementor-element-265b08d .wpr-button-text,
.elementor-element-265b08d .elementor-button-text,
.elementor-element-102b155 .wpr-nav-menu a,
.elementor-element-102b155 .elementor-item,
.wpr-nav-menu a,
.wpr-mobile-nav-menu a,
.wpr-nav-menu .elementor-item {
    color: #0b1220 !important;
    -webkit-text-fill-color: #0b1220 !important;
    text-fill-color: #0b1220 !important;
    opacity: 1 !important;
}

/* Ensure inner elements inherit color (icons/text within links) */
.elementor-element-265b08d .wpr-nav-menu a * { color: inherit !important; fill: currentColor !important; }

/* Prevent blend-mode or transparency from hiding the text */
.elementor-element-265b08d .wpr-nav-menu a,
.elementor-element-265b08d .wpr-nav-menu li a {
    mix-blend-mode: normal !important;
    opacity: 1 !important;
}

/* Keep menu above header overlay and ensure it's clickable */
.elementor-element-265b08d .wpr-nav-menu-container,
.elementor-element-265b08d .wpr-nav-menu { z-index: 3 !important; position: relative !important; }

/* Slightly increase weight for readability */
.elementor-element-265b08d .wpr-nav-menu a, .wpr-nav-menu a { font-weight: 700 !important; }

/* Mobile-specific: ensure mobile menu links are visible */
@media (max-width:768px){
    .wpr-mobile-nav-menu a { color: #0b1220 !important; -webkit-text-fill-color: #0b1220 !important; }
}

/* End quick header/menu visibility fixes */

/* Debug block removed: tests complete. */

/* --- FORCE (desktop only): Make nav readable on dark header --- */
@media (min-width:769px){
    .elementor-element-265b08d,
    .elementor-element-265b08d .wpr-nav-menu-container,
    .elementor-element-265b08d .wpr-nav-menu-horizontal,
    .elementor-element-265b08d .wpr-mobile-nav-menu-container {
        background: #0b1220 !important;
        background-color: #0b1220 !important;
    }

    .elementor-element-265b08d .wpr-nav-menu-container .wpr-nav-menu > li > a,
    .elementor-element-265b08d .wpr-nav-menu a.wpr-menu-item,
    .wpr-nav-menu a.wpr-menu-item {
        color: #ffffff !important;
        -webkit-text-fill-color: #ffffff !important;
        text-shadow: none !important;
        opacity: 1 !important;
        filter: none !important;
        mix-blend-mode: normal !important;
    }

    /* Ensure icons and inner spans inherit visible color */
    .elementor-element-265b08d .wpr-nav-menu a * { color: inherit !important; fill: currentColor !important; }

    /* Make the phone button clearly visible on desktop */
    .elementor-element-188b214 .elementor-button,
    .elementor-element-188b214 .elementor-button .elementor-button-text {
        background: #ff6b00 !important;
        color: #ffffff !important;
        border: none !important;
        box-shadow: 0 6px 18px rgba(0,0,0,0.18) !important;
    }

    /* Force mobile toggle lines and mobile menu icon to be visible on desktop nav area */
    .wpr-mobile-toggle-line { background: #ffffff !important; }

    /* Remove accidental transparency on nav children */
    .elementor-element-265b08d * { opacity: 1 !important; }
}

/* Mobile: removed forced desktop rules so native mobile styling applies */

/* mark task done */

/* --- Global typography: readable, high-contrast fonts for white background --- */
/* Use Poppins / Roboto stack (Google Fonts already enqueued) with sensible fallbacks */
body, html, .site, .elementor, .elementor-widget, .elementor-widget-wrap {
    font-family: 'Poppins', 'Roboto', system-ui, -apple-system, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.55 !important;
    color: #0b1220 !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
}

/* Headings: slightly heavier and more compact */
h1, h2, h3, h4, h5, h6 {
    font-family: 'Roboto Slab', 'Poppins', 'Roboto', serif !important;
    color: #07101a !important;
    font-weight: 700 !important;
    line-height: 1.18 !important;
    letter-spacing: 0.2px !important;
}

/* --- Footer: make copyright / site-info text white --- */
footer, #colophon, .site-footer, .footer, .site-info, .copyright, .elementor-widget-theme-site-info {
    color: #ffffff !important;
    text-shadow: 0 1px 0 rgba(0,0,0,0.45) !important;
}

footer a, #colophon a, .site-footer a, .footer a, .site-info a, .copyright a, .elementor-widget-theme-site-info a {
    color: #ffffff !important;
    text-decoration: underline !important;
}

/* Ensure small meta text inside footer remains readable */
.site-footer .site-info, .footer .site-info, .site-info { color: #ffffff !important; }
.site-footer .site-info a, .footer .site-info a { color: #ffffff !important; }

/* If the footer has a dark background image, strengthen contrast for the copyright text */
footer, .site-footer { mix-blend-mode: normal !important; }

/* --- Aggressive footer color enforcement (fallback if other rules override) --- */
footer, footer *:not(img):not(svg):not(path), #colophon, #colophon *:not(img):not(svg):not(path), .site-footer, .site-footer *:not(img):not(svg):not(path), .footer, .footer *:not(img):not(svg):not(path) {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    fill: #ffffff !important;
    opacity: 1 !important;
    mix-blend-mode: normal !important;
    filter: none !important;
    text-shadow: 0 1px 0 rgba(0,0,0,0.6) !important;
}

/* Ensure typical footer text containers are forced white */
.site-info, .site-info *, .elementor-widget-theme-site-info, .elementor-widget-theme-site-info *,
.elementor-widget-container .elementor-text-editor, .elementor-widget-container .elementor-text-editor *,
.elementor-widget-container .elementor-widget-wrap, .elementor-widget-container .elementor-widget-wrap * {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* If the footer uses pseudo-elements for text, force their color too */
footer::before, footer::after, .site-footer::before, .site-footer::after { color: #ffffff !important; }

/* --- Specific override: footer text widget (elementor widget data-id=21873c1) --- */
/* This targets the exact widget found by inspection and forces text/links to white,
   also neutralizes potential pseudo-element overlays on its container */
.elementor-element-21873c1,
.elementor-element-21873c1 .elementor-widget-container,
.elementor-element-21873c1 p,
.elementor-element-21873c1 p a,
.elementor-element-21873c1 a {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
    mix-blend-mode: normal !important;
    text-shadow: 0 1px 0 rgba(0,0,0,0.6) !important;
}

/* Ensure any parent container that contains the text can't darken it via overlays */
.elementor-element-2f928b1::before,
.elementor-element-2f928b1 .elementor-background-overlay,
.elementor-element-2f928b1 .elementor-background-overlay::before,
.elementor-element-2f928b1 .elementor-background-overlay::after {
    background: transparent !important;
    background-image: none !important;
    opacity: 1 !important;
    pointer-events: none !important;
    visibility: visible !important;
}

/* Force black text for footer widget */
.elementor-967 .elementor-element-21873c1,
.elementor-967 .elementor-element-21873c1 *:not(img):not(svg):not(path) {
    color: #000000 !important;
    -webkit-text-fill-color: #000000 !important;
}

/* Ensure the footer text is above overlays */
.elementor-element-21873c1 {
    position: relative !important;
    z-index: 2147483647 !important;
    isolation: isolate !important;
}

.elementor-element-21873c1,
.elementor-element-21873c1 p,
.elementor-element-21873c1 a {
    color: #000000 !important;
    -webkit-text-fill-color: #000000 !important;
    opacity: 1 !important;
    mix-blend-mode: normal !important;
    filter: none !important;
    text-shadow: none !important;
}

/* Remove overlays — but DON'T block clicks */
.elementor-element-2f928b1::before,
.elementor-element-2f928b1::after,
.elementor-element-2f928b1 .elementor-background-overlay,
.elementor-element-2f928b1 .elementor-background-overlay::before,
.elementor-element-2f928b1 .elementor-background-overlay::after {
    background: transparent !important;
    background-image: none !important;
    opacity: 1 !important;
    filter: none !important;

    /* <-- bak burası değişti */
    pointer-events: none !important;
}

/* But allow normal clicking on content */
.elementor-element-2f928b1 {
    pointer-events: auto !important;
}

/* Override inline anchor colors */
.elementor-element-21873c1 a[style] {
    color: #000000 !important;
    -webkit-text-fill-color: #000000 !important;
}

/* Override inline style colors in all children */
.elementor-element-21873c1 *[style*="color"] {
    color: #000000 !important;
    -webkit-text-fill-color: #000000 !important;
}






/* Hero/title sizing tweaks (desktop) */
@media (min-width:769px){
    h1 { font-size: 42px !important; }
    h2 { font-size: 28px !important; }
}

/* Navigation/menu: clear, semi-bold */
.wpr-nav-menu a, .wpr-mobile-nav-menu a, .wpr-nav-menu-container .wpr-menu-item {
    font-family: 'Poppins', 'Roboto', sans-serif !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    letter-spacing: 0.2px !important;
    color: #0b1220 !important;
}

/* Buttons: strong readable labels */
.elementor-button, .wpr-button, .butonlu-btn {
    font-family: 'Poppins', 'Roboto', sans-serif !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    letter-spacing: 0.2px !important;
}

/* Paragraphs and small text */
p, li, .elementor-widget-text-editor, .ct-sub, .butonlu-desc { font-size: 16px !important; color: #273043 !important; }

/* Mobile: slightly smaller base font for compact layout */
@media (max-width:768px){
    body, html, .site, .elementor { font-size: 15px !important; line-height: 1.45 !important; }
    h1 { font-size: 30px !important; }
    h2 { font-size: 22px !important; }
}

/* Ensure contrast on interactive elements */
a, a:visited { color: #0b1220 !important; }
.elementor-widget a.button, .elementor-widget a { color: #0b1220 !important; }

/* Minor: make sure form inputs are legible on white */
input, textarea, select { font-family: inherit !important; color: #0b1220 !important; }

/* End typography rules */

/* --- Apply typography and dark text color site-wide (exclude SVG/icons) --- */
/* This block enforces font-family and readable text color across common elements. */
html, body, .site, .elementor, .elementor *:not(svg):not(path):not(.e-font-icon-svg) {
    font-family: 'Poppins', 'Roboto', system-ui, -apple-system, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif !important;
    color: #0b1220 !important;
}

/* Specific text-bearing elements */
p, li, span, label, small, strong, b, em, cite, blockquote, tt, code,
.elementor-widget-text-editor, .elementor-widget-wrap, .elementor-widget-container,
.elementor-widget .elementor-heading-title, .elementor-widget .elementor-widget-container * {
    font-family: inherit !important;
    color: inherit !important;
}

/* Ensure form labels and inputs are readable */
label, input, textarea, select, option, button { color: #0b1220 !important; font-family: inherit !important; }

/* Links: dark by default, slightly darker on hover */
a, a:visited { color: #0b1220 !important; }
a:hover, a:focus { color: #07101a !important; text-decoration: underline !important; }

/* Menu and widget titles */
.wpr-nav-menu a, .wpr-mobile-nav-menu a, .elementor-widget-heading .elementor-heading-title { color: #0b1220 !important; font-family: inherit !important; }

/* Buttons: keep background rules but ensure label color is set */
.elementor-button .elementor-button-text, .wpr-button .wpr-button-text, .butonlu-btn { color: inherit !important; font-family: inherit !important; }

/* Ensure small text and meta info are legible */
.post-meta, .meta, .entry-meta, .ct-sub, .butonlu-desc { color: #475569 !important; }

/* Avoid forcing color on icons or SVGs */
.elementor * svg, .elementor * path, i, .fa, .fab { color: inherit; fill: currentColor; }

/* If any plugin uses !important colored backgrounds for text, provide a fallback container color adjustment */
.text-override-bg, .elementor-widget-text-editor p { background-color: transparent !important; }

/* Mark the overall task completed */

/* --- Menu improvements: spacing, hover, sticky header, mobile touch targets --- */
/* Desktop: clearer spacing and stronger hover underline */
.wpr-nav-menu { display: flex !important; align-items: center !important; gap: 18px !important; }
.wpr-nav-menu li { margin: 0 !important; padding: 0 !important; list-style: none !important; }
.wpr-nav-menu a { padding: 10px 6px !important; font-size: 16px !important; font-weight: 700 !important; color: #0b1220 !important; border-bottom: 3px solid transparent !important; transition: color .14s ease, border-color .14s ease, transform .06s ease !important; }
.wpr-nav-menu a:hover, .wpr-nav-menu a:focus { color: #07101a !important; border-bottom-color: #07101a !important; transform: translateY(-1px) !important; }

/* Make header sticky on desktop so menu stays visible */
@media (min-width:769px){
    .elementor-element-265b08d { position: sticky !important; top: 0 !important; z-index: 99999 !important; box-shadow: 0 4px 18px rgba(2,6,23,0.06) !important; }
}

/* Mobile: larger touch targets and clear background */
.wpr-mobile-nav-menu-container { background: #ffffff !important; }
.wpr-mobile-nav-menu li { border-bottom: 1px solid rgba(11,18,32,0.04) !important; }
.wpr-mobile-nav-menu a { display: block !important; padding: 14px 18px !important; font-size: 16px !important; font-weight: 600 !important; color: #0b1220 !important; }
.wpr-mobile-toggle { background: transparent !important; }

/* Active menu item visual stronger */
.wpr-nav-menu li.current-menu-item > a, .wpr-mobile-nav-menu li.current-menu-item > a { color: #0b1220 !important; border-bottom-color: #0b1220 !important; }

/* Accessibility: focus outlines */
.wpr-nav-menu a:focus, .wpr-mobile-nav-menu a:focus { outline: 3px solid rgba(7,16,26,0.08) !important; outline-offset: 3px !important; }

/* Small screens: don't keep header sticky (avoid overlap) */
@media (max-width:768px){
    .elementor-element-265b08d { position: relative !important; box-shadow: none !important; }
}






/* --- Hero banner fix: force local banner.jpg and neutralize Elementor motion layer --- */
/* The CSS file lives in `css/` so image path is ../img/banner.jpg */
.elementor-7 .elementor-element.elementor-element-893cc7b {
    background-image: url('../img/banner.jpg') !important;
    background-size: cover !important;
    background-position: center right !important;
    background-repeat: no-repeat !important;
    background-color: transparent !important;
    position: relative !important;
    z-index: 1 !important;
}

/* Hide/neutralize Elementor's motion-effects layer which can sit above the parent background */
.elementor-7 .elementor-element.elementor-element-893cc7b > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-image: none !important;
    background-color: transparent !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: none !important;
}

/* Ensure the worker image remains above the background */
.elementor-element-8306274 { position: relative !important; z-index: 5 !important; }

/* Defensive: remove any pseudo-element overlays coming from Elementor for this block */
.elementor-7 .elementor-element.elementor-element-893cc7b::before,
.elementor-7 .elementor-element.elementor-element-893cc7b *::before,
.elementor-7 .elementor-element.elementor-element-893cc7b *::after {
    background: transparent !important;
    background-image: none !important;
    content: none !important;
}

/* --- Marquee / Kayan Bant: renk, font ve buton düzeltmeleri (sonunda) --- */
/* Amaç: koyu hero arka planı üzerinde yüksek kontrast, tutarlı buton görünümü ve responsive fontlar */
.ozel-siteler-banner {
    background: transparent !important;
    padding: 8px 6px !important;
    box-shadow: none !important;
    border-top: none !important;
    border-bottom: none !important;
}

.ozel-siteler-container { padding: 0 12px !important; }

.slider-content {
    align-items: center !important;
    gap: 18px !important;
    animation: marquee-desktop 20s linear infinite !important;
    color: #ffffff !important; /* varsayılan metin beyaz */
    font-family: inherit !important;
    font-weight: 600 !important;
}

.site-item {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 8px 12px !important;
    border-radius: 999px !important;
    background-color: rgba(255,255,255,0.06) !important; /* hafif şeffaf beyaz */
    color: #ffffff !important;
    box-shadow: 0 6px 18px rgba(2,6,23,0.22) !important;
    border: 1px solid rgba(255,255,255,0.04) !important;
    text-decoration: none !important;
}

.site-item img { height:40px !important; width:auto !important; margin-right:10px !important; border-radius:6px !important; }

.site-item-label { color: #ffffff !important; font-weight:700 !important; font-size:15px !important; margin-right:10px !important; }

.ozel-siteler-banner .giris-btn,
.site-item .giris-btn {
    background: linear-gradient(90deg,#ff6b00,#ff8a00) !important;
    color: #ffffff !important;
    border-radius: 30px !important;
    padding: 6px 12px !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    box-shadow: 0 8px 20px rgba(0,0,0,0.18) !important;
    border: 0 !important;
    white-space: nowrap !important;
}

.site-item:hover { transform: translateY(-3px) !important; }
.site-item:active { transform: translateY(-1px) !important; }

@media (max-width:768px){
    .site-item { padding:6px 10px !important; gap:8px !important }
    .site-item img { height:30px !important }
    .site-item-label { font-size:13px !important }
    .ozel-siteler-banner { padding:6px 4px !important }
    .ozel-siteler-banner.fixed { top:64px !important }
}

/* Eğer 'light' sınıfı ile beyaz arka plan kullanılırsa okunurluk için yedek stil */
.site-item.light { background-color: rgba(255,255,255,0.94) !important; color:#0b1220 !important }
.site-item.light .giris-btn { background: linear-gradient(90deg,#ff6b00,#ff8a00) !important; color:#fff !important }

/* Güçlü görünürlük: kayan bant içine uygulanmış gizleme/opacity kurallarını geçersiz kıl */
.ozel-siteler-banner, .ozel-siteler-banner * { visibility: visible !important; opacity: 1 !important }

/* --- Hero text color improvements --- */
/* Make headings and paragraph text readable over the dark banner */
.elementor-7 .elementor-element.elementor-element-893cc7b,
.elementor-7 .elementor-element.elementor-element-893cc7b .elementor-widget-wrap {
    color: #ffffff !important;
}
.elementor-7 .elementor-element.elementor-element-893cc7b .elementor-heading-title.orange,
.elementor-7 .elementor-element.elementor-element-893cc7b .elementor-heading-title.hero-accent,
.elementor-7 .elementor-element.elementor-element-893cc7b h1.orange,
.elementor-7 .elementor-element.elementor-element-893cc7b h2.orange,
.elementor-7 .elementor-element.elementor-element-893cc7b h3.orange,
.elementor-7 .elementor-element.elementor-element-893cc7b .elementor-widget-wrap .hero-accent {
    color: #ff8a00 !important; /* turuncu vurgu */
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.28) !important;
}

/* Removed fallback that forced the first heading orange (was causing unwanted color changes) */
/* If you want a specific heading orange, add class="hero-accent" to that element in `index.html` and I'll style it. */
.elementor-7 .elementor-element.elementor-element-893cc7b h1,
.elementor-7 .elementor-element.elementor-element-893cc7b h2,
.elementor-7 .elementor-element.elementor-element-893cc7b h3,
.elementor-7 .elementor-element.elementor-element-893cc7b .elementor-heading-title {
    color: #ffffff !important;
    text-shadow: 0 2px 6px rgba(0,0,0,0.48) !important;
}
.elementor-7 .elementor-element.elementor-element-893cc7b p,
.elementor-7 .elementor-element.elementor-element-893cc7b .elementor-widget-text-editor,
.elementor-7 .elementor-element.elementor-element-893cc7b .elementor-widget-container span {
    color: rgba(255,255,255,0.94) !important;
}

/* Reduce overlay darkness behind headings if present (soften heavy overlays) */
.elementor-7 .elementor-element.elementor-element-893cc7b .elementor-background-overlay,
.elementor-7 .elementor-element.elementor-element-893cc7b .elementor-background-overlay::before {
    background-color: rgba(0,0,0,0.28) !important;
    mix-blend-mode: normal !important;
}

@media (max-width:768px){
    .elementor-7 .elementor-element.elementor-element-893cc7b h1,
    .elementor-7 .elementor-element.elementor-element-893cc7b h2 {
        text-shadow: 0 1px 4px rgba(0,0,0,0.44) !important;
    }
}

/* --- Animated hero services: make rotating <b> items orange and readable --- */
.wpr-anim-text .wpr-anim-text-inner b,
.wpr-advanced-text .wpr-anim-text-inner b,
.wpr-anim-text-inner b {
    color: #ff8a00 !important;
    font-weight: 700 !important;
    text-shadow: 0 1px 0 rgba(0,0,0,0.32) !important;
    -webkit-font-smoothing: antialiased !important;
}

@media (max-width:768px){
    .wpr-anim-text .wpr-anim-text-inner b,
    .wpr-anim-text-inner b { font-size: 18px !important; }
}

/* Very specific: target the exact animated text widget in index.html (data-id 9834952) */
.elementor-element-9834952 .wpr-anim-text-inner b {
    color: #fbff00 !important;
    -webkit-text-fill-color: #fbff00 !important;
    font-weight: 800 !important;
    text-shadow: 0 1px 0 rgba(0,0,0,0.28) !important;
}



/* --- Marquee refinement: glass-style, contrast and hover polish --- */
/* Make the items blend with the dark hero while remaining highly readable */
.ozel-siteler-banner .site-item {
    background: rgba(8,20,35,0.46) !important; /* deep navy glass */
    color: #ffffff !important;
    border: 1px solid rgba(255,255,255,0.05) !important;
    padding: 10px 14px !important;
    border-radius: 999px !important;
    box-shadow: 0 8px 26px rgba(2,6,23,0.28) !important;
    backdrop-filter: blur(6px) saturate(120%) !important;
    -webkit-backdrop-filter: blur(6px) saturate(120%) !important;
    transition: transform .18s ease, background .18s ease, box-shadow .18s ease !important;
}

.ozel-siteler-banner .site-item .site-item-label {
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    text-shadow: 0 1px 0 rgba(0,0,0,0.32) !important;
}

.ozel-siteler-banner .site-item img { height:44px !important; margin-right:12px !important; }

.ozel-siteler-banner .site-item .giris-btn,
.ozel-siteler-banner .giris-btn {
    background: linear-gradient(90deg,#ff6b00,#ff8a00) !important;
    color: #ffffff !important;
    border-radius: 28px !important;
    padding: 6px 14px !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    box-shadow: 0 8px 20px rgba(0,0,0,0.28) !important;
    border: 1px solid rgba(255,255,255,0.04) !important;
}

.ozel-siteler-banner .site-item:hover {
    transform: translateY(-4px) !important;
    background: rgba(8,20,35,0.64) !important;
    box-shadow: 0 18px 40px rgba(2,6,23,0.36) !important;
}

/* Light variant for places where the items are placed on a white background */
.ozel-siteler-banner .site-item.light {
    background: rgba(255,255,255,0.96) !important;
    color: #0b1220 !important;
    border: 1px solid rgba(11,18,32,0.06) !important;
    box-shadow: 0 6px 18px rgba(2,6,23,0.06) !important;
}

/* When banner is fixed, slightly stronger overlay so items remain readable while scrolling */
.ozel-siteler-banner.fixed {
    background-color: rgba(7,18,32,0.48) !important;
    backdrop-filter: blur(4px) !important;
}

@media (max-width:768px){
    .ozel-siteler-banner .site-item { padding:8px 10px !important; gap:8px !important }
    .ozel-siteler-banner .site-item .site-item-label { font-size:13px !important }
    .ozel-siteler-banner .site-item img { height:30px !important }
}

/* Ensure any earlier rule forcing black text is overridden by more specific selector */
.ozel-siteler-banner .site-item, .ozel-siteler-banner .site-item * { color: inherit !important }

/* --- Contact section: use altbanner.jpeg as full-column background --- */
/* Apply background at the container level so it spans the full column */
/* CSS file is in css/, image is in img/ => use ../img/altbanner.jpeg */
.elementor-element-5e3219b {
    position: relative !important;
    z-index: 1 !important;
    background-image: url('../img/altbanner.jpeg') !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    /* ensure the container has enough vertical padding to show the image */
    padding: 40px 0 !important;
}

/* Stronger specificity to override Elementor-generated background/color rules */
.elementor-7 .elementor-element.elementor-element-5e3219b:not(.elementor-motion-effects-element-type-background),
.elementor-7 .elementor-element.elementor-element-5e3219b > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-image: url('../img/altbanner.jpeg') !important;
    background-color: transparent !important;
    background-position: center center !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
}

/* Neutralize any overlay pseudo-elements coming from generated CSS */
.elementor-7 .elementor-element.elementor-element-5e3219b::before,
.elementor-7 .elementor-element.elementor-element-5e3219b .elementor-background-overlay,
.elementor-7 .elementor-element.elementor-element-5e3219b .elementor-background-overlay::before,
.elementor-7 .elementor-element.elementor-element-5e3219b .elementor-background-overlay::after {
    background: transparent !important;
    background-image: none !important;
    background-color: transparent !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: none !important;
}

/* Ensure inner contact content sits above the background image */
.elementor-7 .elementor-element.elementor-element-5e3219b .ct-delentesisat-contact,
.elementor-7 .elementor-element.elementor-element-5e3219b .ct-delentesisat-contact .ct-card,
.elementor-7 .elementor-element.elementor-element-5e3219b .ct-delentesisat-contact .ct-left,
.elementor-7 .elementor-element.elementor-element-5e3219b .ct-delentesisat-contact .ct-text {
    position: relative !important;
    z-index: 2 !important;
    background: transparent !important;
}

/* overlay to ensure text remains readable across the full column */
.elementor-element-5e3219b::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(180deg, rgba(0,0,0,0.30) 0%, rgba(0,0,0,0.38) 100%) !important;
    z-index: 0 !important;
}

/* bring inner card content above overlay and make card backgrounds transparent */
.elementor-element-5e3219b .ct-delentesisat-contact,
.elementor-element-5e3219b .ct-delentesisat-contact .ct-card,
.elementor-element-5e3219b .ct-delentesisat-contact .ct-left,
.elementor-element-5e3219b .ct-delentesisat-contact .ct-text { position: relative !important; z-index: 2 !important; background: transparent !important; box-shadow: none !important; }

/* ensure title/sub/links are readable on the image */
.elementor-element-5e3219b .ct-delentesisat-contact .ct-title,
.elementor-element-5e3219b .ct-delentesisat-contact .ct-sub,
.elementor-element-5e3219b .ct-delentesisat-contact .ct-link,
.elementor-element-5e3219b .ct-delentesisat-contact .ct-label {
    color: #ffffff !important;
}

/* make phone links stand out */
.elementor-element-5e3219b .ct-delentesisat-contact .ct-link { font-weight:700 !important; }


/* --- Marquee item text: orange tone (sırayla gelen yazılar) --- */
.ozel-siteler-banner .site-item-label,
.ozel-siteler-banner .site-item .site-item-label {
    color: #ff8a00 !important; /* turuncu */
    text-shadow: 0 1px 0 rgba(0,0,0,0.32) !important;
}

/* Ensure icons or small text inside site-item don't accidentally inherit dark colors */
.ozel-siteler-banner .site-item, .ozel-siteler-banner .site-item * { color: inherit !important }

/* --- FINAL OVERRIDES: Ensure rotating services are orange and hero motion layers cannot cover background --- */
/* Specific override for the animated services widget (data-id 9834952) - stronger than earlier rules */
.elementor-element-9834952 .wpr-anim-text-inner b {
    color: #ff8a00 !important;
    -webkit-text-fill-color: #ff8a00 !important;
    font-weight: 800 !important;
    text-shadow: 0 1px 0 rgba(0,0,0,0.28) !important;
}

/* STRONG NEUTRALIZATION: Ensure any motion-effects / overlay layers do not cover the forced background */
.elementor-7 .elementor-element.elementor-element-893cc7b .elementor-motion-effects-layer,
.elementor-7 .elementor-element.elementor-element-893cc7b .elementor-motion-effects-container,
.elementor-7 .elementor-element.elementor-element-893cc7b .elementor-motion-effects-element,
.elementor-7 .elementor-element.elementor-element-893cc7b .elementor-background-overlay,
.elementor-7 .elementor-element.elementor-element-893cc7b .elementor-background-overlay::before,
.elementor-7 .elementor-element.elementor-element-893cc7b .elementor-background-overlay::after {
    background-image: none !important;
    background: transparent !important;
    background-color: transparent !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: none !important;
    z-index: 0 !important;
}

/* Make sure hero content sits above neutralized layers */
.elementor-7 .elementor-element.elementor-element-893cc7b .elementor-widget-wrap,
.elementor-7 .elementor-element.elementor-element-893cc7b .elementor-widget,
.elementor-7 .elementor-element.elementor-element-893cc7b .elementor-container {
    position: relative !important;
    z-index: 2 !important;
}

/* --- Make the 'Bizimle İletişime Geçin' inner block white and readable --- */
.elementor-7 .elementor-element.elementor-element-5e3219b .ct-delentesisat-contact {
    background: #ffffff !important;
    color: #07101a !important;
    padding: 28px !important;
    border-radius: 12px !important;
    box-shadow: 0 12px 36px rgba(2,6,23,0.08) !important;
    max-width: 780px !important;
    margin: 0 auto !important;
    position: relative !important;
    z-index: 6 !important; /* place above overlay and background image */
}

/* --- Popup: force 'Bir daha gösterme' label and close icon to white --- */
.saray-popup__actions label,
.saray-popup label,
.saray-popup label * {
    color: #ffffff !important;
}

/* Ensure the close (×) icon is white and visible */
.saray-popup__close {
    color: #ffffff !important;
    background: rgba(0,0,0,0.5) !important;
}

/* If the label has inline color styles, override them */
label[for^="saray-popup"], #saray-popup label, #saray-popup .saray-popup__actions label { color: #ffffff !important; }

/* Stronger close button styling to ensure visibility above image */
.saray-popup__close {
    color: #ffffff !important;
    background: rgba(0,0,0,0.72) !important;
    z-index: 2147483649 !important;
    width: 48px !important;
    height: 48px !important;
    font-size: 22px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50% !important;
    border: 2px solid rgba(255,255,255,0.06) !important;
    box-shadow: 0 12px 30px rgba(0,0,0,0.55) !important;
    pointer-events: auto !important;
}

.saray-popup__close span, .saray-popup__close::before, .saray-popup__close::after { color: #ffffff !important; }

@media (max-width:480px){
    .saray-popup__close { width:40px !important; height:40px !important; font-size:18px !important; }
}

/* Extra: ensure the × character is rendered white and not affected by blend modes */
.saray-popup__close {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    mix-blend-mode: normal !important;
    text-shadow: 0 1px 0 rgba(0,0,0,0.6) !important;
    font-weight: 700 !important;
}
.saray-popup__close::before,
.saray-popup__close::after { color: #ffffff !important; -webkit-text-fill-color: #ffffff !important; }

/* If the close button's text is being hidden, force the character via pseudo-element */
.saray-popup__close:not(:empty) { line-height: 1 !important; }
.saray-popup__close:empty::after { content: '\00D7' !important; color: #ffffff !important; font-size: 22px !important; }


.elementor-7 .elementor-element.elementor-element-5e3219b .ct-delentesisat-contact .ct-card,
.elementor-7 .elementor-element.elementor-element-5e3219b .ct-delentesisat-contact .ct-left,
.elementor-7 .elementor-element.elementor-element-5e3219b .ct-delentesisat-contact .ct-text {
    background: transparent !important;
    box-shadow: none !important;
    color: inherit !important;
}

.elementor-7 .elementor-element.elementor-element-5e3219b .ct-delentesisat-contact .ct-title {
    color: #07101a !important;
}
.elementor-7 .elementor-element.elementor-element-5e3219b .ct-delentesisat-contact .ct-sub,
.elementor-7 .elementor-element.elementor-element-5e3219b .ct-delentesisat-contact .ct-link,
.elementor-7 .elementor-element.elementor-element-5e3219b .ct-delentesisat-contact .ct-label {
    color: #475569 !important;
}

/* Buttons on white background */
.elementor-7 .elementor-element.elementor-element-5e3219b .ct-delentesisat-contact .ct-btn-call {
    background: linear-gradient(90deg,#0b1220,#243449) !important;
    color: #ffffff !important;
    border: none !important;
}
.elementor-7 .elementor-element.elementor-element-5e3219b .ct-delentesisat-contact .ct-btn-wp {
    background: linear-gradient(90deg,#16a34a,#059669) !important;
    color: #ffffff !important;
}

@media (max-width:768px){
    .elementor-7 .elementor-element.elementor-element-5e3219b .ct-delentesisat-contact { padding: 18px !important; }
}







