/* ninsv2 — Nins Trafik teması (önek ns-) */
:root {
	--ns-mavi: #1d498b;
	--ns-turuncu: #fe9400;
	--ns-koyu: #3e3e3e;
	--ns-gri: #676767;
	--ns-acik: #8e8e8e;
	--ns-cizgi: #d9d9d9;
	--ns-golge: 0 0 20px 0 rgba(162, 162, 162, .35);
	--ns-egri: cubic-bezier(.68, 0, .265, 1);
}

*, *::before, *::after { box-sizing: border-box; }
html, body, div, span, iframe, h1, h2, h3, h4, h5, h6, p, a, img, strong, b, i, ol, ul, li, form, label, main, footer, header, nav, section { margin: 0; padding: 0; border: 0; font: inherit; vertical-align: baseline; }
body { font-family: "Outfit", Arial, sans-serif; font-weight: 500; font-size: 16px; line-height: 1; color: #0d0d0d; background-color: #f9f9f9; overflow-x: clip; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
b, strong { font-weight: 700; }
ol, ul { list-style: none; }
a { color: inherit; text-decoration: none; transition: .25s; }
img, svg { vertical-align: middle; max-width: 100%; }
button, input, textarea, select { font-family: inherit; font-size: 1rem; }
p { line-height: 1.5; }
:focus-visible { outline: 2px dashed var(--ns-mavi); outline-offset: 3px; }
.ns-gizli { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.ns-kap { width: 100%; padding: 0 12px; margin: 0 auto; }
@media (min-width: 576px) { .ns-kap { max-width: 540px; } }
@media (min-width: 768px) { .ns-kap { max-width: 720px; } }
@media (min-width: 992px) { .ns-kap { max-width: 960px; } }
@media (min-width: 1200px) { .ns-kap { max-width: 1140px; } }
@media (min-width: 1400px) { .ns-kap { max-width: 1320px; } }

/* yazıların aşağıdan gelişi */
@keyframes ns-gel { 0% { transform: translate3d(0, 100px, 0); opacity: 0; } 99% { transform: translate3d(0, 0, 0); opacity: 1; } 100% { transform: none; opacity: 1; } }
@keyframes ns-belir { 0% { opacity: 0; visibility: hidden; } 99% { opacity: 1; visibility: visible; } 100% { opacity: 1; visibility: visible; } }
@keyframes ns-salla { 0%, 100% { transform: translateX(0); } 50% { transform: translateX(10px); } }
@keyframes ns-oynat { 0%, 50%, 100% { transform: translateY(0); } 25% { transform: translateY(3px); } 75% { transform: translateY(-3px); } }
@keyframes ns-halka { 0% { opacity: 0; } 1% { opacity: 1; } 100% { transform: scale(2.5); opacity: 0; } }

/* ---------- düğmeler ---------- */
.ns-dugme { display: inline-flex; align-items: center; justify-content: center; height: 50px; border-radius: 10px; color: #fff; font-size: 16px; padding: 10px 25px; background: var(--ns-mavi); border: 1px solid var(--ns-mavi); position: relative; overflow: hidden; z-index: 1; transition: .65s; cursor: pointer; }
.ns-dugme::before { content: ""; position: absolute; width: 110%; height: 110%; bottom: 0; left: 50%; background: var(--ns-turuncu); transform: translateX(-50%) translateY(-110%); z-index: -1; transition: .65s; pointer-events: none; }
.ns-dugme:hover { border-color: var(--ns-turuncu); color: #fff; }
.ns-dugme:hover::before { transform: translateX(-50%) translateY(0); }
.ns-dugme svg { width: 26px; height: 26px; margin-right: 10px; fill: currentColor; }
.ns-dugme-yesil { background: #52c85f; border-color: #52c85f; }
.ns-dugme-cizgi { background: transparent; color: var(--ns-gri); border-color: var(--ns-gri); padding: 10px 50px; }
.ns-dugme-cizgi::before { background: var(--ns-mavi); }
.ns-dugme-cizgi:hover { border-color: var(--ns-mavi); }
.ns-satis { display: flex; align-items: center; height: 45px; padding: 6px 6px 6px 10px; border-radius: 10px; background: var(--ns-mavi); color: #fff !important; font-size: 14px; transition: .2s ease-in-out; }
.ns-satis-ikon { display: flex; flex-shrink: 0; border-radius: 5px; padding: 6px; background: var(--ns-mavi); transition: .2s ease-in-out; }
.ns-satis-ikon svg { width: 23px; height: 21px; max-width: none; fill: #fff; flex-shrink: 0; }
.ns-satis-yazi { margin: 0 15px; font-weight: 500; white-space: nowrap; }
.ns-satis:hover, .ns-satis:hover .ns-satis-ikon { background: var(--ns-turuncu); }

/* ok düğmeleri (çizgi + uç) */
.ns-oklar { display: flex; align-items: center; }
.ns-ok { cursor: pointer; background: none; border: 0; padding: 0; transition: .3s; display: flex; }
.ns-ok svg { width: 28px; height: 18px; overflow: visible; }
.ns-ok svg path { fill: #c9c9c9; transition: .3s; }
.ns-ok .ns-ok-cizgi { transition: .3s; }
.ns-ok-geri { transform-origin: 0 50%; }
.ns-ok-ileri { margin-left: 10px; transform-origin: 100% 50%; }
.ns-ok:hover svg path { fill: var(--ns-mavi); }
.ns-ok:hover .ns-ok-cizgi { transform: scaleX(1.25); }
.ns-ok-geri:hover { transform: translateX(-5px); }
.ns-ok-ileri:hover { transform: translateX(5px); }
.ns-ok-ileri:hover .ns-ok-uc { transform: translateX(5px); }
.ns-noktalar { display: flex; align-items: center; }
.ns-noktalar button { width: 6px; height: 6px; padding: 0; border: 0; border-radius: 50px; margin: 0 3px; background-color: #7b7b7b; cursor: pointer; transition: .2s ease-in-out; }
.ns-noktalar button.is-aktif { width: 23px; background-color: var(--ns-mavi); }

/* bölüm başlığı (çizgili) */
.ns-baslik-satir { display: flex; align-items: center; justify-content: space-between; margin-bottom: 40px; }
.ns-baslik { display: flex; align-items: center; }
.ns-baslik h2, .ns-baslik .ns-baslik-yazi { color: var(--ns-mavi); font-size: 48px; line-height: 1.25; font-weight: 500; margin: 0 30px 0 0; padding-right: 30px; position: relative; white-space: nowrap; }
.ns-baslik h2::before, .ns-baslik .ns-baslik-yazi::before { content: ""; position: absolute; right: 0; top: 0; bottom: 0; margin: auto; width: 1px; height: calc(100% - 20px); background-color: rgba(103, 103, 103, .2); }
.ns-baslik-link { display: flex; align-items: center; font-size: 16px; line-height: 1.5; color: var(--ns-gri); }
.ns-baslik-link svg { margin-left: 10px; width: 7px; height: 12px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ns-baslik-link:hover { color: var(--ns-mavi); }
.ns-baslik-sag { display: flex; align-items: center; gap: 60px; padding-right: 20px; }

/* ---------- üst bilgi ---------- */
.ns-ust { position: fixed; z-index: 151; left: 0; right: 0; top: 30px; margin: auto; width: calc(100% - 60px); padding: 45px 140px; border-radius: 20px; background: #fff; transition: .5s; }
.ns-ust.is-sabit { top: 0; width: 100%; border-radius: 0; box-shadow: var(--ns-golge); }
.ns-ust.is-gizli { transform: translateY(calc(-100% - 25px)); }
.ns-ust-ic { display: flex; align-items: center; justify-content: space-between; }
.ns-logo { display: flex; align-items: center; flex: 0 0 auto; position: relative; z-index: 2; }
.ns-logo img { width: auto; max-width: 280px; height: auto; }
.ns-ust-sag { display: flex; justify-content: flex-end; align-items: center; flex: 1; }
.ns-menu { display: flex; justify-content: flex-end; align-items: center; white-space: nowrap; }
.ns-menu > li { display: flex; align-items: center; padding: 0 5px; position: relative; flex-shrink: 0; }
.ns-menu > li > a { font-size: 18px; color: var(--ns-koyu); line-height: 1.5; font-weight: 700; padding: .3rem; position: relative; z-index: 2; }
.ns-menu > li > a:hover { color: var(--ns-mavi); }
.ns-menu-ac { display: none; }
/* açılır alt menü */
.ns-alt-menu { position: absolute; top: 80%; left: 100%; transform: translateX(-50%); min-width: 260px; padding: 30px 20px; border-radius: 20px; background: #fff; opacity: 0; visibility: hidden; transition: .2s ease-in-out; }
.ns-alt-menu::before { content: ""; position: absolute; width: 50%; height: 80px; top: -80px; left: 50%; transform: translateX(-50%); }
.ns-alt-menu.is-acik { animation: ns-belir 250ms var(--ns-egri) both; }
.ns-alt-menu li { margin-bottom: 25px; }
.ns-alt-menu li:last-child { margin-bottom: 0; }
.ns-isaretli a, .ns-alt-menu a { color: var(--ns-gri); font-size: 18px; line-height: 1.5; position: relative; overflow: hidden; display: inline-block; }
.ns-isaretli a::before, .ns-alt-menu a::before { content: ""; position: absolute; left: -9px; top: 50%; transform: translateY(-50%); width: 9px; height: 15px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 14'%3E%3Cpath d='M1.5 1.5 6.5 7l-5 5.5' fill='none' stroke='%231d498b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") left center / 8px auto no-repeat; transition: .2s ease-in-out; }
.ns-isaretli a:hover, .ns-isaretli a.is-aktif, .ns-alt-menu a:hover { color: var(--ns-mavi); padding-left: 20px; }
.ns-isaretli a:hover::before, .ns-isaretli a.is-aktif::before, .ns-alt-menu a:hover::before { left: 1px; }
/* mega menü */
.ns-menu > li.ns-mega { position: static; }
.ns-mega-kutu { position: absolute; top: 0; left: 50%; transform: translateX(-50%) translateY(160px); width: 1350px; max-width: calc(100vw - 60px); padding: 20px; border-radius: 20px; background: #fff; opacity: 0; visibility: hidden; z-index: 1; transition: .2s ease-in-out; display: grid; grid-template-columns: 5fr 7fr; gap: 24px; white-space: normal; }
.ns-mega-kutu::before { content: ""; position: absolute; width: 100%; height: 80px; top: -80px; left: 0; }
.ns-mega-kutu.is-acik { animation: ns-belir 250ms var(--ns-egri) both; }
.ns-mega-basliklar { padding: 20px; border-radius: 20px; background-color: #efefef; max-height: var(--ns-mega-yuk, 480px); overflow: hidden auto; }
.ns-mega-basliklar li { margin-bottom: 13px; }
.ns-mega-basliklar li:last-child { margin-bottom: 0; }
.ns-mega-sag { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.ns-mega-alt { padding-top: 20px; }
.ns-mega-alt ul { display: none; max-height: var(--ns-mega-yuk, 480px); overflow: hidden auto; padding-right: 10px; }
.ns-mega-alt ul.is-aktif { display: block; }
.ns-mega-alt li { margin-bottom: 13px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; animation: ns-gel var(--ns-sure, 750ms) var(--ns-egri) both; }
.ns-mega-alt li:last-child { margin-bottom: 0; }
.ns-mega-resim { border-radius: 20px; box-shadow: 0 0 20px 0 rgba(162, 162, 162, .35); }
.ns-mega-resim div { display: none; height: var(--ns-mega-resim, 370px); border-radius: 20px; overflow: hidden; position: relative; }
.ns-mega-resim div.is-aktif { display: block; animation: ns-belir 350ms var(--ns-egri) both; }
.ns-mega-resim img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ns-mega-basliklar::-webkit-scrollbar, .ns-mega-alt ul::-webkit-scrollbar { width: 10px; }
.ns-mega-basliklar::-webkit-scrollbar-track, .ns-mega-alt ul::-webkit-scrollbar-track { background: #f1f1f1; border-radius: 50px; }
.ns-mega-basliklar::-webkit-scrollbar-thumb, .ns-mega-alt ul::-webkit-scrollbar-thumb { background: #888; border-radius: 50px; }
/* dil */
.ns-dil { margin-left: 10px; margin-right: -15px; flex-shrink: 0; }
.ns-dil-kutu { display: flex; align-items: center; gap: 4px; height: 35px; padding: 8px; border-radius: 5px; background-color: var(--ns-gri); box-shadow: 0 0 0 7px #c9c9c9; }
.ns-dil-kutu button { background: none; border: 0; padding: 0; cursor: pointer; display: flex; flex-shrink: 0; }
.ns-dil-kutu svg { width: 29px; height: 19px; max-width: none; display: block; }
.ns-dil-mobil, .ns-menu > li.ns-dil-mobil { display: none; }
/* mobil menü düğmesi */
.ns-hamb { display: none; position: relative; z-index: 1111; border: 1px solid var(--ns-mavi); height: 42px; width: 50px; padding: 9px 12px; border-radius: 10px; background: none; cursor: pointer; }
.ns-hamb span { display: block; position: absolute; left: 12px; width: 24px; height: 3px; background: var(--ns-mavi); border-radius: 9px; transition: .25s ease-in-out; }
.ns-hamb span:nth-child(1) { top: 10px; }
.ns-hamb span:nth-child(2), .ns-hamb span:nth-child(3) { top: 17px; }
.ns-hamb span:nth-child(4) { top: 24px; }
.ns-hamb.is-acik span:nth-child(1), .ns-hamb.is-acik span:nth-child(4) { top: 17px; width: 0; left: 50%; }
.ns-hamb.is-acik span:nth-child(2) { transform: rotate(45deg); }
.ns-hamb.is-acik span:nth-child(3) { transform: rotate(-45deg); }
.ns-perde { position: fixed; inset: 0; z-index: 150; background: rgba(0, 0, 0, .5); opacity: 0; visibility: hidden; transition: .2s ease-in-out; }
.ns-perde.is-acik { opacity: 1; visibility: visible; }

/* ---------- sayfa başlık bandı ---------- */
.ns-bant { padding-top: 225px; padding-bottom: 80px; margin: 30px 30px 60px; border-radius: 40px; background-color: #ececec; background-image: radial-gradient(ellipse 34% 30% at 50% 46%, rgba(170, 170, 170, .55), rgba(170, 170, 170, 0) 70%), radial-gradient(ellipse 18% 60% at 8% 40%, rgba(255, 255, 255, .9), rgba(255, 255, 255, 0) 70%), radial-gradient(ellipse 18% 60% at 92% 40%, rgba(255, 255, 255, .9), rgba(255, 255, 255, 0) 70%), linear-gradient(180deg, #f7f7f7 0%, #e3e3e3 55%, #f1f1f1 100%); }
.ns-bant-ic { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.ns-bant-ad, .ns-bant-ad h1 { font-size: 48px; color: var(--ns-koyu); line-height: 1.25; font-weight: 500; margin: 0; position: relative; z-index: 1; }
.ns-bant-sade { background: none; padding-bottom: 0; }
.ns-bant-orta .ns-bant-ic { justify-content: center; text-align: center; }
.ns-yol { display: flex; flex-wrap: wrap; justify-content: flex-end; }
.ns-yol a { font-size: 16px; line-height: 1.5; color: rgba(62, 62, 62, .6); position: relative; margin-right: 20px; padding-right: 20px; display: flex; align-items: center; }
.ns-yol a::after { content: ""; position: absolute; right: -4px; width: 8px; height: 20px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7 12'%3E%3Cpath d='M1.4 1.4 5.7 6l-4.3 4.6' fill='none' stroke='%238c8e8c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") left center / 7px auto no-repeat; }
.ns-yol a:hover { color: var(--ns-koyu); }
.ns-yol span { font-size: 16px; line-height: 1.5; color: var(--ns-koyu); }

/* ---------- ana sayfa: slayt ---------- */
.ns-ana .ns-bant { padding-bottom: 550px; }
.ns-slayt { padding: 0 150px 100px; margin-top: -650px; position: relative; }
.ns-slayt-ic { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; position: relative; }
.ns-slayt-sol { position: relative; z-index: 21; }
.ns-slayt-yazilar { position: relative; top: 50%; transform: translateY(-74%); }
.ns-slayt-yazi { display: none; margin-right: 300px; margin-bottom: 13px; }
.ns-slayt-yazi.is-aktif { display: block; }
.ns-gel > * { animation: ns-gel 850ms var(--ns-egri) both; }
.ns-gel > *:nth-child(2) { animation-duration: 950ms; }
.ns-gel > *:nth-child(3) { animation-duration: 1050ms; }
.ns-gel > *:nth-child(4) { animation-duration: 1150ms; display: flex; }
.ns-slayt-yazi h2 { color: var(--ns-koyu); font-size: 60px; line-height: 1.25; font-weight: 500; margin-bottom: 24px; }
.ns-slayt-yazi .ns-slayt-ozet { color: gray; font-size: 16px; line-height: 1.25; margin-bottom: 32px; }
.ns-slayt-yazi .ns-slayt-ozet p { line-height: 1.25; margin: 0; }
.ns-hap { display: inline-flex; align-items: center; color: var(--ns-mavi); font-size: 16px; line-height: 1.25; border: 1px solid var(--ns-mavi); border-radius: 50px; padding: 12px 30px; margin-bottom: 12px; }
.ns-hap svg { margin-left: 10px; width: 7px; height: 12px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ns-hap:hover { background-color: var(--ns-mavi); color: #fff; }
.ns-hap:hover svg { animation: ns-salla 1s linear infinite; }
.ns-hap-beyaz { color: #fff; border-color: #fff; font-size: 14px; }
.ns-slayt-sayac { position: relative; margin-top: 30px; display: flex; align-items: center; color: var(--ns-koyu); }
.ns-slayt-sayac b { font-size: 20px; }
.ns-slayt-sayac span { font-size: 16px; font-weight: 500; }
.ns-slayt-sayac .ns-noktalar { margin-left: 18px; transform: translateY(1px); }
.ns-slayt-sayac .ns-noktalar button { background-color: #cbcbcb; }
.ns-slayt-sayac .ns-noktalar button.is-aktif { width: 24px; background-color: var(--ns-mavi); }
.ns-slayt-sag { position: relative; z-index: 20; overflow: hidden; border-radius: 20px; }
.ns-slayt-ray { display: flex; transition: transform 1s ease; will-change: transform; }
.ns-slayt-kare { flex: 0 0 100%; margin-right: 30px; opacity: 0; transform: scale(.9); transition: .45s; }
.ns-slayt-kare.is-komsu { opacity: .5; }
.ns-slayt-kare.is-aktif { opacity: 1; transform: scale(1); }
.ns-slayt-resim { height: 737px; border-radius: 20px; overflow: hidden; position: relative; display: flex; align-items: center; justify-content: center; }
.ns-slayt-resim img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ns-slayt-resim-yazi { display: none; position: relative; z-index: 2; margin: 0 20px; color: #fff; }
.ns-slayt-resim-yazi h2 { font-size: 30px; line-height: 1.25; margin-bottom: 15px; font-weight: 500; }
.ns-slayt-resim-yazi .ns-slayt-ozet { font-size: 14px; line-height: 1.25; margin-bottom: 22px; }
.ns-slayt-oklar { position: absolute; left: 0; right: 0; top: calc(50% - 87px); margin: auto; z-index: 22; width: 0; }
.ns-slayt-oklar button { position: absolute; width: 60px; height: 50px; background: #fff; border: 0; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: .2s ease-in-out; }
.ns-slayt-oklar button svg { width: 14px; height: 26px; fill: none; stroke: #204b89; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ns-slayt-oklar .ns-slayt-geri { left: -78px; border-radius: 10px 0 0 10px; }
.ns-slayt-oklar .ns-slayt-geri svg { opacity: .5; }
.ns-slayt-oklar .ns-slayt-ileri { left: -18px; border-radius: 0 10px 10px 0; }
.ns-slayt-oklar button:hover { background: var(--ns-mavi); }
.ns-slayt-oklar button:hover svg { stroke: #fff; }
.ns-slayt-alt { position: absolute; bottom: 0; left: 0; right: 0; z-index: 10; pointer-events: none; }
.ns-slayt-alt > * { pointer-events: auto; }
.ns-asagi { position: absolute; left: -47px; bottom: 75px; cursor: pointer; display: flex; background: none; border: 0; padding: 0; }
.ns-asagi svg { width: 24px; height: 37px; animation: ns-oynat 1s linear infinite; fill: none; stroke: var(--ns-gri); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ns-asagi:hover svg { stroke: var(--ns-mavi); }
.ns-slayt-iletisim { display: flex; align-items: center; width: 50%; padding-right: 12px; margin-bottom: -5px; }
.ns-temas { display: flex; }
.ns-temas li { display: flex; align-items: center; margin: 0 15px 0 0; padding-right: 15px; border-right: 1px solid #e5e5e5; }
.ns-temas a { display: flex; align-items: center; color: var(--ns-gri); font-size: 16px; }
.ns-temas a:hover { color: var(--ns-mavi); }
.ns-temas svg { width: 20px; height: 20px; min-width: 20px; margin-right: 10px; fill: none; stroke: #066432; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.ns-slayt-iletisim .ns-temas a span { min-width: 120px; white-space: nowrap; }
.ns-sosyal { display: flex; align-items: center; }
.ns-sosyal li { margin: 0 8px; display: flex; }
.ns-sosyal a { display: flex; }
.ns-sosyal svg { width: 24px; height: 24px; fill: var(--ns-gri); transition: .2s ease-in-out; }
.ns-sosyal a:hover svg { fill: var(--ns-mavi); }
.ns-teklif { display: none; margin-left: 12px; }

/* ---------- ana sayfa: faaliyet alanları ---------- */
.ns-faaliyet { min-height: 100vh; }
.ns-faaliyet > .ns-kap { padding-top: 10vh; padding-bottom: 10vh; }
.ns-faaliyet .ns-noktalar { transform: translateX(0); }
.ns-faaliyet-liste { border-radius: 40px; overflow: hidden; height: calc(80vh - 60px); min-height: 420px; position: relative; background-size: cover; background-position: center; }
.ns-faaliyet-gecis { position: absolute; inset: 0; background-size: cover; background-position: center; opacity: 0; transform: scale(.75); visibility: hidden; transition: transform .3s, opacity .3s; }
.ns-faaliyet-gecis.is-aktif { opacity: 1; transform: scale(1); visibility: visible; }
.ns-faaliyet .ns-serit { height: 100%; position: relative; z-index: 1; }
.ns-faaliyet .ns-serit-oge { height: 100%; }
.ns-panel { height: 100%; padding: 30px; border-right: 1px solid rgba(255, 255, 255, .6); position: relative; transition: background .2s; overflow: hidden; }
.ns-panel-no { font-size: 150px; color: #fff; line-height: 120px; opacity: .2; position: absolute; right: -30px; top: 40px; width: 200px; transform: rotate(-90deg); transition: .2s ease-in-out; font-weight: 500; }
.ns-panel-yazi { position: absolute; left: 30px; right: 30px; bottom: 30px; opacity: 0; visibility: hidden; transform: translateY(200px); transition: .45s; color: #fff; }
.ns-panel-yazi h3 { font-size: 30px; line-height: 1.25; font-weight: 700; margin-bottom: 20px; }
.ns-panel-yazi p { color: rgba(255, 255, 255, .85); font-size: 16px; line-height: 1.5; margin: 0; }
.ns-panel-dugme { margin: 33px 0 13px; }
.ns-panel-dugme a { display: flex; align-items: center; width: max-content; font-size: 16px; color: #fff; line-height: 1; border-radius: 60px; padding: 12px 25px; border: 1px solid #fff; }
.ns-panel-dugme a svg { margin-left: 15px; width: 7px; height: 12px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ns-panel-dugme a:hover { background: #fff; color: var(--ns-mavi); }
.ns-panel.is-aktif { background: rgba(251, 194, 111, .7); }
.ns-panel.is-aktif .ns-panel-no { opacity: 1; }
.ns-panel.is-aktif .ns-panel-yazi { opacity: 1; visibility: visible; transform: translateY(0); }
.ns-faaliyet-mobil { display: none; }
.ns-mpanel { height: 350px; border-radius: 20px; overflow: hidden; background-size: cover; background-position: center; }
.ns-mpanel-ic { height: 100%; padding: 30px; position: relative; background: rgba(0, 0, 0, .5); }
.ns-mpanel-no { font-size: 100px; color: #fff; line-height: 110px; position: absolute; right: 10px; top: 10px; font-weight: 500; }
.ns-mpanel .ns-panel-yazi { opacity: 1; visibility: visible; transform: none; }
.ns-mpanel .ns-panel-yazi h3 { font-size: 24px; }

/* ---------- ana sayfa: hakkımızda ---------- */
.ns-hakkinda { margin: 2rem 0 4rem; }
.ns-hakkinda-ic { display: grid; grid-template-columns: 6fr 1fr 5fr; gap: 0 24px; }
.ns-hakkinda-resim { position: relative; }
.ns-hakkinda-resim-kutu { height: 100%; border-radius: 20px; overflow: hidden; position: relative; box-shadow: var(--ns-golge); min-height: 540px; }
.ns-hakkinda-resim-kutu img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ns-buzlu { position: absolute; top: 0; bottom: 0; right: -60px; margin: auto; display: flex; align-items: center; }
.ns-buzlu div { border-radius: 16px; padding: 35px; background-color: rgba(181, 177, 164, .2); -webkit-backdrop-filter: blur(50px); backdrop-filter: blur(50px); }
.ns-buzlu img { width: 252px; height: auto; display: block; }
.ns-hakkinda-yazi { grid-column: 3; display: flex; flex-direction: column; justify-content: flex-end; }
.ns-hakkinda-yazi h1 { font-size: 60px; font-weight: 700; color: var(--ns-koyu); margin-bottom: 35px; line-height: 1.25; }
.ns-hakkinda-yazi h1 strong { color: var(--ns-mavi); }
.ns-hakkinda-yazi .ns-hakkinda-ozet { font-size: 23px; color: gray; margin-bottom: 40px; line-height: 1.5; font-weight: 500; }
.ns-video { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.ns-video-kart { display: flex; align-items: flex-end; position: relative; width: 100%; }
.ns-video-resim { width: 100%; height: 250px; border-radius: 10px; overflow: hidden; position: relative; box-shadow: var(--ns-golge); }
.ns-video-resim img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ns-video-resim::before { content: ""; position: absolute; inset: 0; background-color: rgba(0, 0, 0, .3); z-index: 1; }
.ns-oynat { position: absolute; inset: 0; z-index: 2; display: flex; align-items: center; justify-content: center; }
.ns-oynat svg { width: 61px; height: 61px; position: relative; z-index: 1; }
.ns-oynat svg circle { fill: none; stroke: #fff; stroke-width: 2; transition: .2s ease-in-out; }
.ns-oynat svg path { fill: #fff; transition: .2s ease-in-out; }
.ns-oynat::before, .ns-oynat::after { content: ""; position: absolute; width: 61px; height: 61px; border-radius: 100%; box-shadow: 0 0 0 1px rgba(255, 255, 255, .25); opacity: 0; animation: ns-halka 2s linear infinite; }
.ns-oynat::after { animation-delay: 1s; }
.ns-video-kart:hover .ns-oynat svg circle { fill: #fff; }
.ns-video-kart:hover .ns-oynat svg path { fill: var(--ns-mavi); }
.ns-video-yt { position: absolute; bottom: -15px; right: -15px; z-index: 2; width: 70px; height: 60px; padding: 10px; border-radius: 5px; background-color: rgba(255, 192, 0, .5); display: flex; align-items: center; justify-content: center; transition: .2s ease-in-out; }
.ns-video-yt svg { width: 38px; height: 24px; fill: #fff; }
.ns-video-yt:hover { background-color: var(--ns-mavi); }
.ns-video-yazi { margin-left: 20px; }
.ns-video-yazi .ns-video-baslik { font-size: 48px; margin-bottom: 25px; line-height: 1.25; font-weight: 500; color: #0d0d0d; }
.ns-video-yazi .ns-video-baslik strong { font-weight: 700; }
.ns-video-yazi p { font-size: 20px; color: gray; line-height: 1.5; font-weight: 500; }

/* ---------- ana sayfa: projeler ---------- */
.ns-projeler { margin-bottom: 100px; }
.ns-projeler-ic { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.ns-pkart { position: relative; border-radius: 20px; box-shadow: var(--ns-golge); height: 100%; display: block; overflow: hidden; }
.ns-pkart-resim { height: 560px; border-radius: 20px; overflow: hidden; position: relative; display: block; }
.ns-pkart-resim img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ns-pkart-resim::before { content: ""; position: absolute; inset: 0; z-index: 1; background-color: rgba(0, 101, 48, .45); transition: .2s ease-in-out; }
.ns-pkart:hover .ns-pkart-resim::before { background-color: rgba(0, 101, 48, .65); }
.ns-etiket { position: absolute; z-index: 3; }
.ns-etiket a, .ns-etiket span { display: inline-block; background-color: var(--ns-mavi); font-size: 16px; color: #fff; padding: 5px 24px; border-radius: 5px; line-height: 1.25; transition: .2s ease-in-out; }
.ns-etiket a:hover { background-color: var(--ns-turuncu); }
.ns-pkart .ns-etiket { left: 30px; bottom: 185px; }
.ns-pkart-yazi { position: absolute; bottom: 30px; left: 30px; right: 30px; z-index: 3; color: #fff; }
.ns-pkart-yazi h3 { font-size: 32px; line-height: 1.25; font-weight: 500; margin-bottom: 15px; }
.ns-pkart-yazi h3 a:hover { color: var(--ns-turuncu); }
.ns-pkart-yazi p { font-size: 16px; line-height: 1.5; margin: 0; }
.ns-dikey { height: 560px; overflow: hidden; position: relative; }
.ns-dikey-ray { display: flex; flex-direction: column; transition: transform 1s ease; will-change: transform; }
.ns-dikey-oge { height: 265px; }
.ns-dikey .ns-pkart-resim { height: 265px; }
.ns-dikey .ns-pkart-resim::before { background: rgba(26, 26, 26, .45); }
.ns-dikey .ns-pkart:hover .ns-pkart-resim::before { background: rgba(26, 26, 26, .65); }
.ns-dikey .ns-etiket { right: 30px; top: 30px; left: auto; bottom: auto; }
.ns-dikey .ns-pkart-yazi { bottom: 20px; left: 20px; right: 20px; }
.ns-dikey .ns-pkart-yazi h3 { font-size: 22px; margin-bottom: 0; }

/* ---------- yatay şerit ---------- */
.ns-serit { overflow: hidden; position: relative; touch-action: pan-y; }
.ns-serit-ray { display: flex; height: 100%; transition-property: transform; transition-timing-function: ease; will-change: transform; }
.ns-serit-oge { flex-shrink: 0; position: relative; }
.ns-serit.is-surukle .ns-serit-ray { transition-duration: 0s !important; }
.ns-serit.is-surukle a { pointer-events: none; }

/* ---------- alt bilgi ---------- */
.ns-alt-bosluk { height: 170px; }
.ns-alt-linkler { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0 24px; }
.ns-alt-linkler h2 { font-size: 20px; color: var(--ns-koyu); margin-bottom: 30px; font-weight: 700; line-height: 1.5; }
.ns-alt-linkler li { margin-bottom: 20px; line-height: 1.25; overflow: hidden; }
.ns-alt-linkler li:last-child { margin-bottom: 0; }
.ns-alt-linkler li a { font-size: 16px; color: var(--ns-acik); position: relative; font-weight: 500; line-height: 1.5; display: inline-block; }
.ns-alt-linkler li a::before { content: ""; position: absolute; left: 0; top: 0; width: 20px; height: 100%; transform: translateX(-20px); background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 10'%3E%3Cpath d='M1 1l4 4-4 4' fill='none' stroke='%231d498b' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") left center / 7px auto no-repeat; transition: .2s ease-in-out; }
.ns-alt-linkler li a:hover { color: var(--ns-mavi); padding-left: 20px; }
.ns-alt-linkler li a:hover::before { transform: translateX(0); }
.ns-alt-ozet { color: #0d0d0d; line-height: 1.5; margin-top: 10px; }
.ns-alt-ozet p { margin-bottom: 15px; }
.ns-referans { margin: 60px 0; }
.ns-referans .ns-serit-oge { border-right: 1px solid #e5e5e5; padding-right: 30px; display: flex; justify-content: center; }
.ns-referans img { width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: contain; border-radius: 1rem; filter: grayscale(1); }
.ns-alt-iletisim { display: grid; grid-template-columns: 2fr 8fr 2fr; gap: 24px; align-items: center; margin-bottom: 30px; padding-bottom: 30px; border-bottom: 1px solid rgba(103, 103, 103, .2); }
.ns-alt-iletisim .ns-alt-logo img { width: 150px; height: auto; }
.ns-alt-iletisim .ns-temas li { margin: 0 15px; }
.ns-alt-iletisim .ns-temas li:first-child { min-width: 180px; }
.ns-alt-iletisim .ns-temas li:last-child { border-right: 0; }
.ns-alt-iletisim .ns-sosyal li { margin: 0 12px; }
.ns-alt-son { display: flex; align-items: center; justify-content: space-between; margin-bottom: 30px; }
.ns-telif { color: #c9c9c9; line-height: 1.5; font-size: 14px; }
.ns-alt-son .sbz-imza { color: var(--ns-gri); }

/* whatsapp düğmesi */
.ns-wa { position: fixed; right: 2rem; bottom: 2rem; z-index: 9999; }
.ns-wa-yazi { background-color: #000; border-radius: 50px; color: #fff; font-size: 8px; font-weight: 700; letter-spacing: .4px; line-height: 10px; margin: 0 0 8px; padding: 4px 6px; position: relative; opacity: 0; animation: ns-belir .4s 1s forwards; }
.ns-wa-yazi::after { content: ""; position: absolute; right: 18px; bottom: -2px; width: 4px; height: 4px; background-color: #000; transform: rotate(45deg); }
.ns-wa a { display: block; width: 44px; height: 44px; border-radius: 50%; box-shadow: 1px 1px 4px rgba(60, 60, 60, .4); }
.ns-wa svg { width: 44px; height: 44px; display: block; }

/* ---------- içerik listeleri ---------- */
.ns-ust-cekim { padding-bottom: 320px; }
.ns-buyuk-slayt { margin-top: -320px; margin-bottom: 50px; position: relative; }
.ns-buyuk-kart { position: relative; }
.ns-buyuk-kart .ns-kresim { height: 560px; }
.ns-buyuk-kart .ns-kresim::before { background-color: rgba(0, 101, 48, .2); }
.ns-buyuk-kart:hover .ns-kresim::before { background-color: rgba(0, 101, 48, .35); }
.ns-buyuk-kart .ns-kyazi { bottom: 50px; left: 20px; right: auto; max-width: 50%; }
.ns-buyuk-kart .ns-etiket { position: static; padding: 24px 0; margin-bottom: 10px; }
.ns-buyuk-alt { position: absolute; z-index: 3; bottom: 19px; right: 20px; display: flex; align-items: center; gap: 30px; }
.ns-buyuk-alt .ns-noktalar button { background-color: rgba(255, 255, 255, .75); }
.ns-buyuk-alt .ns-noktalar button.is-aktif { background-color: #fff; }
.ns-kartlar { display: grid; gap: 0 24px; margin-bottom: 40px; }
.ns-kartlar-4 { grid-template-columns: repeat(4, 1fr); }
.ns-kartlar-3 { grid-template-columns: repeat(3, 1fr); }
.ns-kartlar-2 { grid-template-columns: repeat(2, 1fr); }
.ns-kart { position: relative; margin-bottom: 20px; }
.ns-kresim { height: 320px; border-radius: 20px; overflow: hidden; position: relative; display: block; }
.ns-kresim img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: .65s; }
.ns-kresim::before { content: ""; position: absolute; inset: 0; background: rgba(26, 26, 26, .25); z-index: 1; transition: .2s ease-in-out; pointer-events: none; }
.ns-kart:hover .ns-kresim::before { background: rgba(26, 26, 26, .5); }
.ns-kart .ns-etiket { right: 20px; top: 24px; }
.ns-kyazi { position: absolute; left: 20px; right: 20px; bottom: 20px; z-index: 3; color: #fff; }
.ns-kyazi h2, .ns-kyazi h4 { font-size: 26px; line-height: 1.25; margin-bottom: 10px; font-weight: 500; }
.ns-kyazi h2 a, .ns-kyazi h4 a { color: #fff; }
.ns-kyazi a:hover { color: rgba(255, 255, 255, .8); }
.ns-kyazi p { font-size: 16px; line-height: 1.5; margin: 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ns-sayfala { display: flex; align-items: center; justify-content: center; gap: 12px; margin: 20px 0 0; }
.ns-sayfala a { width: 36px; height: 36px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 16px; color: var(--ns-turuncu); background: #fff; }
.ns-sayfala a:hover, .ns-sayfala a.is-aktif { background-color: var(--ns-turuncu); color: #fff; }
/* video ve bölge satırları */
.ns-satirlar { margin-bottom: 40px; }
.ns-satir { position: relative; margin-bottom: 20px; border-radius: 20px; overflow: hidden; height: 100px; display: flex; align-items: center; justify-content: space-between; padding: 0 20px; color: #fff; background: linear-gradient(170deg, #3680ba 0%, #72aad5 48%, #224a88 100%); }
.ns-satir-video { background: linear-gradient(170deg, #3680ba 0%, #72aad5 48%, #224a88 100%); }
.ns-satir h2 { font-size: 26px; line-height: 1.25; font-weight: 500; position: relative; z-index: 2; margin: 0; }
.ns-satir svg { width: 61px; height: 61px; flex-shrink: 0; }
.ns-satir svg circle { fill: none; stroke: #fff; stroke-width: 2; transition: .2s; }
.ns-satir svg path { fill: #fff; transition: .2s; }
.ns-satir:hover svg circle { fill: #fff; }
.ns-satir:hover svg path { fill: var(--ns-mavi); }
.ns-satir::before { content: ""; position: absolute; inset: 0; background: rgba(26, 26, 26, .15); transition: .2s; }
.ns-satir:hover::before { background: rgba(26, 26, 26, .35); }

/* ---------- içerik detay ---------- */
.ns-detay { margin-bottom: 60px; }
.ns-detay-ic { display: grid; grid-template-columns: 3fr 9fr; gap: 24px; align-items: start; }
.ns-yan { position: sticky; top: 30px; border-radius: 20px; padding: 10px; background: linear-gradient(45deg, #f6f6f6 0%, #fff 100%); }
.ns-yan-baslik { color: var(--ns-mavi); font-size: 30px; line-height: 1.25; padding: 10px 50px 10px 20px; display: block; width: 100%; text-align: left; background: none; border: 0; font-weight: 500; }
.ns-yan li { padding: 10px 50px 10px 20px; margin-bottom: 5px; border-radius: 5px; transition: .2s ease-in-out; }
.ns-yan li:last-child { margin-bottom: 0; }
.ns-yan li:hover, .ns-yan li.is-aktif { background: #ebebeb; }
.ns-yan li a { color: var(--ns-acik); font-size: 16px; line-height: 1.5; }
.ns-yan li.is-aktif a { color: var(--ns-gri); }
.ns-yan li a:hover { color: var(--ns-mavi); }
.ns-metin { color: #787878; }
.ns-metin > img { max-width: 100%; margin-bottom: 20px; border-radius: 10px; }
.ns-metin h1, .ns-metin h2, .ns-metin h3, .ns-metin h4 { color: var(--ns-mavi); line-height: 1.25; margin-bottom: 15px; }
.ns-metin h1 { font-size: 40px; }
.ns-metin h2 { font-size: 36px; }
.ns-metin h3 { font-size: 32px; }
.ns-metin h4 { font-size: 28px; }
.ns-metin p { color: #787878; font-size: 16px; line-height: 1.5; margin-bottom: 10px; }
.ns-metin ul { list-style: disc; padding-left: 20px; margin-bottom: 10px; line-height: 1.5; }
.ns-metin ol { list-style: decimal; padding-left: 20px; margin-bottom: 10px; line-height: 1.5; }
.ns-metin a { color: var(--ns-mavi); text-decoration: underline; }
.ns-metin strong, .ns-metin b { font-weight: 700; }
.ns-metin table { max-width: 100%; }
.ns-metin-orta { max-width: 66.666%; margin: 0 auto; text-align: center; }
.ns-galeri { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0 24px; border-top: 1px solid rgba(0, 0, 0, .25); padding-top: 1rem; margin-top: 1rem; }
.ns-galeri a { display: block; margin-bottom: 2rem; }
.ns-galeri img { width: 100%; border-radius: 10px; }

/* hakkımızda sayfası */
.ns-kurumsal { padding: 50px 0; margin-bottom: 60px; background: #fff; }
.ns-kurumsal-baslik { font-size: 28px; color: #0d0d0d; line-height: 1.25; font-weight: 500; margin: 50px 130px 100px; }
.ns-kurumsal-baslik:empty { display: none; }
.ns-mozaik { display: grid; grid-template-columns: repeat(3, 1fr); grid-template-rows: repeat(3, 220px); gap: 20px; }
.ns-mozaik a { display: block; border-radius: 20px; overflow: hidden; position: relative; box-shadow: var(--ns-golge); transition: .2s ease-in-out; }
.ns-mozaik a:hover { box-shadow: 0 0 20px 0 rgba(162, 162, 162, .55); }
.ns-mozaik img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transform: scale(1); transition: .65s; }
.ns-mozaik a:hover img { transform: scale(1.1); }
.ns-mozaik .ns-m1 { grid-area: 1 / 1 / 4 / 2; }
.ns-mozaik .ns-m2 { grid-area: 1 / 2 / 3 / 3; }
.ns-mozaik .ns-m3 { grid-area: 3 / 2 / 4 / 3; }
.ns-mozaik .ns-m4 { grid-area: 1 / 3 / 2 / 4; }
.ns-mozaik .ns-m5 { grid-area: 2 / 3 / 4 / 4; }
.ns-kurumsal-metin { margin: 90px 130px 0; }
.ns-kurumsal-metin p { text-align: center; font-size: 20px; color: #787878; line-height: 1.5; font-weight: 400; margin-bottom: 40px; }
.ns-kurumsal-metin p:last-child { margin-bottom: 0; }
.ns-misyon { margin-bottom: 60px; }
.ns-misyon h2 { text-align: center; font-size: 36px; color: #787878; line-height: 1.25; font-weight: 500; margin: 0 75px 70px; }
.ns-misyon-kutu { margin: 0 75px; padding: 80px 50px; border-radius: 40px; background: linear-gradient(45deg, #f9f9f9 0%, #f1f1f1 100%); position: relative; z-index: 11; }
.ns-misyon-yazi { position: relative; padding-bottom: 70px; }
.ns-misyon-yazi::before { content: ""; position: absolute; left: 25px; bottom: 0; width: 50%; height: 1px; background: #c9c9c9; }
.ns-misyon-yazi::after { content: ""; position: absolute; left: 25px; bottom: 0; width: 1px; height: 60px; background: #c9c9c9; }
.ns-misyon-yazi p { font-size: 20px; color: rgba(120, 120, 120, .85); line-height: 1.5; margin: 0 70px; }
.ns-misyon-slayt { margin-top: -55px; position: relative; }
.ns-misyon-slayt .ns-serit-oge a { display: block; height: 700px; border-radius: 20px; overflow: hidden; position: relative; }
.ns-misyon-slayt .ns-serit-oge a::before { content: ""; position: absolute; inset: 0; background: rgba(0, 0, 0, .2); z-index: 1; }
.ns-misyon-slayt img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ns-misyon-alt { position: absolute; z-index: 3; bottom: 19px; right: 20px; display: flex; align-items: center; gap: 30px; }
.ns-misyon-alt .ns-noktalar button { background-color: rgba(255, 255, 255, .75); }
.ns-misyon-alt .ns-noktalar button.is-aktif { background-color: #fff; }

/* referanslar */
.ns-logolar { display: grid; grid-template-columns: repeat(6, 1fr); gap: 0 24px; margin-bottom: 40px; }
.ns-logo-kart { background: #fff; padding: 20px; border-radius: 20px; box-shadow: var(--ns-golge); margin-bottom: 20px; }
.ns-logo-kart div { height: 150px; border-radius: 20px; overflow: hidden; position: relative; }
.ns-logo-kart img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: .2s ease-in-out; }
.ns-logo-kart:hover img { transform: scale(1.1); }
.ns-logo-kart p { color: rgba(120, 120, 120, .85); font-size: 20px; line-height: 1.25; margin: 15px 0 0; transition: .2s; }
.ns-logo-kart p:empty { display: none; }
.ns-logo-kart:hover p { color: var(--ns-mavi); }

/* hizmet bölgesi */
.ns-bolge { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-bottom: 60px; align-items: start; }
.ns-akordeon-oge { margin-bottom: 30px; border-radius: 10px; overflow: hidden; border: 1px solid var(--ns-cizgi); }
.ns-akordeon-oge:last-child { margin-bottom: 0; }
.ns-akordeon-oge > button { display: flex; align-items: center; justify-content: space-between; width: 100%; padding: 1rem 1.25rem; color: var(--ns-mavi); background: transparent; border: 0; font-size: 20px; line-height: 1.5; font-weight: 700; text-align: left; cursor: pointer; }
.ns-akordeon-oge > button::after { content: ""; width: 26px; height: 26px; flex-shrink: 0; margin-left: 1rem; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M13 1v24M1 13h24' stroke='%231d498b' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat; transition: .2s; }
.ns-akordeon-oge.is-acik > button::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M1 13h24' stroke='%231d498b' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E"); }
.ns-akordeon-ic { display: none; padding: 1rem 1.25rem; font-size: 16px; font-weight: 400; line-height: 1.5; }
.ns-akordeon-oge.is-acik .ns-akordeon-ic { display: block; }
.ns-akordeon-ic li { padding-left: 20px; position: relative; margin-bottom: 10px; }
.ns-akordeon-ic li::before { content: ""; position: absolute; left: 0; top: 8px; width: 10px; height: 10px; border-radius: 50%; background: #fff; border: 2px solid var(--ns-mavi); }
.ns-akordeon-ic a:hover { color: var(--ns-mavi); }
.ns-form-kutu { background: #fff; padding: 1.3rem; border-radius: 10px; }

/* ---------- ürünler ---------- */
.ns-urunler { margin-bottom: 60px; }
.ns-urun-izgara { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 24px; }
.ns-ukart { background: #fff; padding: 20px; border-radius: 20px; margin-bottom: 20px; border: 1px solid var(--ns-cizgi); transition: .2s ease-in-out; display: block; }
.ns-ukart-resim { height: 260px; border-radius: 20px; overflow: hidden; position: relative; display: flex; align-items: center; justify-content: center; }
.ns-ukart-resim img { position: absolute; inset: 0; margin: auto; width: 100%; max-width: 100%; transition: .65s; }
.ns-ukart-resim::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(0deg, rgba(33, 72, 133, .7) 0%, rgba(49, 127, 188, 0) 100%); opacity: 0; visibility: hidden; transform: translateY(100%); transition: .2s ease-in-out; pointer-events: none; }
.ns-ukart-incele { position: absolute; bottom: 20px; z-index: 2; display: flex; align-items: center; color: #fff; font-size: 16px; line-height: 1.5; padding: 10px 20px; border-radius: 10px; border: 1px solid #fff; opacity: 0; visibility: hidden; transform: translateY(100%); transition: .2s ease-in-out; }
.ns-ukart-incele svg { width: 8px; height: 15px; margin-left: 10px; fill: none; stroke: #fff; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ns-ukart-incele:hover { background-color: var(--ns-mavi); border-color: var(--ns-mavi); }
.ns-ukart-ad { display: block; margin-top: 15px; color: rgba(120, 120, 120, .85); font-size: 16px; line-height: 1.25; transition: .2s ease-in-out; }
.ns-ukart:hover { border-color: var(--ns-mavi); }
.ns-ukart:hover .ns-ukart-ad { color: var(--ns-mavi); }
.ns-ukart:hover .ns-ukart-resim img { transform: scale(1.1); }
.ns-ukart:hover .ns-ukart-resim::before, .ns-ukart:hover .ns-ukart-incele { opacity: 1; visibility: visible; transform: translateY(0); }
.ns-ukart-yok { background: #f1f1f1; }
.ns-ukart-yok img { width: 50%; height: auto; opacity: .35; }
.ns-urun-sayfala { margin-top: 100px; }
.ns-yan-kat ul { margin-top: 30px; }
.ns-yan-kat .ns-yan-baslik { color: #4a90c6; padding-left: 0; }

/* ürün detay */
.ns-urun-ust { margin-top: -320px; margin-bottom: 50px; }
.ns-urun-ic { display: grid; grid-template-columns: 5fr 7fr; gap: 24px; }
.ns-urun-galeri { position: relative; }
.ns-urun-slayt { background: #fff; box-shadow: var(--ns-golge); border-radius: 20px; }
.ns-urun-slayt .ns-serit-oge a { height: 550px; display: flex; align-items: center; justify-content: center; position: relative; }
.ns-urun-slayt img { position: absolute; inset: 0; margin: auto; max-width: 100%; max-height: 100%; border-radius: 20px; }
.ns-urun-gezgin { position: absolute; width: 100%; display: flex; align-items: center; justify-content: space-between; margin-top: 30px; }
.ns-urun-gezgin .ns-oklar { margin-right: 40px; }
.ns-urun-bilgi { margin-left: 25px; display: flex; flex-direction: column; }
.ns-geri-don { min-height: 45px; display: flex; align-items: center; margin-bottom: 30px; }
.ns-geri-don a { display: flex; align-items: center; }
.ns-geri-don svg { width: 28px; height: 14px; margin-right: 10px; fill: none; stroke: var(--ns-gri); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; transition: .2s; }
.ns-geri-don span { color: var(--ns-gri); font-size: 16px; transition: .2s ease-in-out; }
.ns-geri-don a:hover span { color: var(--ns-mavi); }
.ns-geri-don a:hover svg { stroke: var(--ns-mavi); }
.ns-urun-ad { margin-bottom: 60px; }
.ns-urun-ad h1 { font-size: 30px; line-height: 1.25; color: var(--ns-koyu); font-weight: 700; margin-bottom: 15px; }
.ns-urun-ad p { color: #0d0d0d; margin: 0; }
.ns-urun-dugmeler { display: flex; gap: 10px; margin-bottom: 20px; }
.ns-urun-dugmeler .ns-dugme { max-width: 200px; }
.ns-sekme { margin-top: 80px; margin-bottom: 40px; }
.ns-sekme-baslik { display: flex; justify-content: center; margin-bottom: 40px; }
.ns-sekme-baslik span { font-size: 30px; line-height: 1.5; color: var(--ns-koyu); padding: 10px 20px; position: relative; margin-bottom: 5px; }
.ns-sekme-baslik span::before { content: ""; position: absolute; bottom: 0; left: 0; right: 0; margin: auto; width: 50%; height: 1px; background-color: var(--ns-mavi); }
.ns-sekme-ic { background: linear-gradient(45deg, #f9f9f9 0%, #f1f1f1 100%); padding: 60px; border-radius: 40px; }
.ns-sekme-ic, .ns-sekme-ic p { font-size: 16px; color: #787878; line-height: 1.25; }
.ns-sekme-ic p { margin-bottom: 15px; }
.ns-benzer { margin-bottom: 50px; }
.ns-benzer .ns-ukart-resim img { max-width: 80%; border-radius: 10px; }

/* ---------- iletişim ---------- */
.ns-iletisim-bant { margin: 30px 30px 60px; border-radius: 40px; overflow: hidden; position: relative; background-color: #eef0f2; background-size: cover; background-position: center top; }
.ns-iletisim-bant-ic { position: relative; padding-top: 250px; padding-bottom: 520px; }
.ns-iletisim-bant-ic .ns-bant-ad { text-transform: uppercase; }
.ns-iletisim-sis { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(249, 249, 249, .97) 0%, rgba(249, 249, 249, .9) 22%, rgba(249, 249, 249, .35) 48%, rgba(249, 249, 249, .2) 100%); pointer-events: none; }
.ns-iletisim { margin-top: -490px; margin-bottom: 60px; position: relative; z-index: 1; }
.ns-iletisim-ust { display: grid; grid-template-columns: 4fr 1fr 7fr; gap: 24px; }
.ns-iletisim-liste { height: 100%; border-right: 1px solid #a8a8a8; display: flex; flex-direction: column; justify-content: center; }
.ns-iletisim-liste li { display: flex; align-items: center; margin-bottom: 20px; padding-right: 20px; }
.ns-iletisim-liste li:last-child { margin-bottom: 0; }
.ns-iletisim-liste svg { width: 20px; height: 20px; min-width: 20px; fill: none; stroke: #066432; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.ns-iletisim-liste a { font-size: 20px; color: var(--ns-gri); margin-left: 10px; line-height: 1.25; }
.ns-iletisim-liste li:hover a { color: var(--ns-mavi); }
.ns-iletisim-sosyal { display: flex; flex-direction: column; justify-content: center; }
.ns-iletisim-sosyal li { margin-bottom: 15px; text-align: center; }
.ns-iletisim-sosyal li:last-child { margin-bottom: 0; }
.ns-iletisim-sosyal svg { width: 20px; height: 20px; fill: var(--ns-mavi); transition: .2s; }
.ns-iletisim-sosyal a:hover svg { fill: #5bb900; }
.ns-harita-alan { position: relative; min-height: 260px; }
.ns-harita-nokta { position: absolute; left: 74%; top: 62px; width: 60px; height: 60px; border-radius: 50%; border: 10px solid var(--ns-mavi); z-index: 5; }
.ns-harita-nokta::before, .ns-harita-nokta::after { content: ""; position: absolute; inset: 0; border-radius: 100%; box-shadow: 0 0 0 1px rgba(0, 101, 48, .25); opacity: 0; animation: ns-halka 2s linear infinite; }
.ns-harita-nokta::after { animation-delay: 1s; }
.ns-harita-logo { position: absolute; right: 26%; top: 67px; height: 56px; padding: 15px 30px; border-radius: 20px 0 0 20px; background-color: #fff; z-index: 4; display: flex; align-items: center; justify-content: center; }
.ns-harita-logo img { max-width: 180px; height: auto; }
.ns-harita-tarif { position: absolute; left: calc(74% + 30px); top: 67px; height: 56px; padding: 15px 30px 15px 45px; border-radius: 0 20px 20px 0; background-color: #fff; z-index: 3; display: flex; align-items: center; opacity: 0; visibility: hidden; clip-path: inset(0 100% 0 0); transition: 1s; white-space: nowrap; }
.ns-harita-tarif.is-acik { opacity: 1; visibility: visible; clip-path: inset(0 0 0 0); }
.ns-harita-tarif a { color: var(--ns-gri); font-size: 14px; display: flex; align-items: center; }
.ns-harita-tarif svg { width: 19px; height: 19px; margin-right: 5px; fill: none; stroke: #066432; stroke-width: 1.5; }
.ns-harita-tarif a:hover { color: var(--ns-mavi); }
.ns-form-dis { margin-top: 80px; }
.ns-form-alan { margin: 0 115px; padding: 60px; border-radius: 40px; background: linear-gradient(45deg, #f9f9f9 0%, #f1f1f1 100%); }
.ns-form-ic { max-width: 75%; margin: 0 auto; }
.ns-form-baslik { font-size: 30px; color: var(--ns-gri); line-height: 1.25; margin-bottom: 20px; font-weight: 500; }
.ns-form-baslik strong { font-weight: 700; }
.ns-form-not { font-size: 16px; color: var(--ns-gri); line-height: 1.5; margin-bottom: 10px; max-width: 60%; }
/* çekirdek form (v13 işaretlemesi) */
.ns-form form .row { display: grid; grid-template-columns: 1fr 1fr; gap: 0 24px; }
.ns-form form .row > * { min-width: 0; }
.ns-form form .row > .col-12 { grid-column: 1 / -1; }
.ns-form form .row > .col-md-4 { grid-column: auto; }
.ns-form form .row > .col-md-4:first-child { grid-column: 1 / -1; }
.ns-form label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.ns-form .form-control, .ns-form input[type="text"], .ns-form input[type="email"], .ns-form input[type="tel"] { width: 100%; height: 50px; border-radius: 10px; border: 1px solid var(--ns-cizgi); font-size: 16px; line-height: 1.5; color: var(--ns-gri); padding: 0 15px; margin-bottom: 10px; background: transparent; -webkit-appearance: none; appearance: none; transition: .2s; }
.ns-form textarea, .ns-form textarea.form-control { width: 100%; height: 125px; min-height: 100px; max-height: 150px; border-radius: 10px; border: 1px solid var(--ns-cizgi); font-size: 16px; line-height: 1.5; color: var(--ns-gri); padding: 15px; background: transparent; resize: vertical; margin-bottom: 10px; }
.ns-form .form-control::placeholder, .ns-form input::placeholder, .ns-form textarea::placeholder { color: var(--ns-gri); opacity: 1; }
.ns-form .form-control:focus, .ns-form input:focus, .ns-form textarea:focus { border-color: var(--ns-mavi); outline: none; }
.ns-form .g-recaptcha { margin-top: 10px; }
.ns-form form .row > .col-12:last-child { display: flex; justify-content: flex-end; margin-top: 20px; }
.ns-form .btn, .ns-form button[type="submit"] { height: 50px; border-radius: 10px; color: var(--ns-gri); font-size: 16px; padding: 10px 50px; background: transparent; border: 1px solid var(--ns-gri); position: relative; overflow: hidden; z-index: 1; cursor: pointer; transition: .65s; display: inline-flex; align-items: center; }
.ns-form .btn::before, .ns-form button[type="submit"]::before { content: ""; position: absolute; width: 110%; height: 110%; bottom: 0; left: 50%; background: var(--ns-mavi); transform: translateX(-50%) translateY(-110%); z-index: -1; transition: .65s; }
.ns-form .btn::after, .ns-form button[type="submit"]::after { content: ""; width: 7px; height: 12px; margin-left: 10px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7 12'%3E%3Cpath d='M1.4 1.4 5.7 6l-4.3 4.6' fill='none' stroke='%23676767' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; transition: .3s; }
.ns-form .btn:hover, .ns-form button[type="submit"]:hover { color: #fff; border-color: var(--ns-mavi); }
.ns-form .btn:hover::before, .ns-form button[type="submit"]:hover::before { transform: translateX(-50%) translateY(0); }
.ns-form .btn:hover::after, .ns-form button[type="submit"]:hover::after { filter: brightness(0) invert(1); }
.ns-form .alert, .ns-form .form-success { padding: 15px; border-radius: 10px; background: var(--ns-mavi); color: #fff; margin-bottom: 20px; line-height: 1.5; }

/* görüntüleyici */
.ns-isik { position: fixed; inset: 0; z-index: 10000; background: rgba(10, 12, 16, .92); display: none; align-items: center; justify-content: center; padding: 60px 70px; }
.ns-isik.is-acik { display: flex; }
.ns-isik img { max-width: 100%; max-height: 100%; border-radius: 6px; }
.ns-isik iframe { width: min(1100px, 100%); aspect-ratio: 16 / 9; border: 0; border-radius: 6px; background: #000; }
.ns-isik button { position: absolute; background: rgba(255, 255, 255, .12); border: 0; color: #fff; width: 48px; height: 48px; border-radius: 50%; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.ns-isik button:hover { background: rgba(255, 255, 255, .25); }
.ns-isik button svg { width: 20px; height: 20px; fill: none; stroke: #fff; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ns-isik-kapat { top: 16px; right: 16px; }
.ns-isik-geri { left: 12px; top: 50%; margin-top: -24px; }
.ns-isik-ileri { right: 12px; top: 50%; margin-top: -24px; }

/* ============ duyarlı ============ */
@media (max-width: 1700px) {
	.ns-slayt-yazi h2 { font-size: 48px; }
}
@media (max-width: 1650px) {
	.ns-ust { padding: 45px 60px; }
}
@media (max-width: 1500px) {
	.ns-slayt-yazi { margin-right: 0; }
}
@media (max-width: 1440px) {
	.ns-slayt { padding: 0 100px 100px; }
}
@media (max-width: 1366px) {
	.ns-mega-kutu { width: 100%; max-width: 100%; transform: translateX(-50%) translateY(130px); }
	.ns-mega-kutu::before { height: 70px; top: -70px; }
	.ns-slayt { padding: 0 70px 100px; }
	.ns-slayt-oklar { display: none; }
	.ns-asagi { left: -50px; z-index: 21; }
	.ns-iletisim-ust { grid-template-columns: 4fr 1fr; }
	.ns-harita-alan { display: none; }
	.ns-iletisim-liste { border: 0; }
	.ns-iletisim-sosyal { align-items: flex-end; }
	.ns-iletisim-sis { display: none; }
}
@media (min-width: 1200px) and (max-width: 1366px) {
	.ns-ust { padding: 30px 15px; }
	.ns-menu > li { padding: 0 6px; }
	.ns-ana .ns-bant { padding-bottom: 350px; }
	.ns-slayt { margin-top: -450px; padding: 0 45px 60px; }
	.ns-slayt-yazi h2 { font-size: 50px; }
	.ns-slayt-resim { height: 600px; }
	.ns-hakkinda-yazi h1 { font-size: 50px; }
	.ns-hakkinda-yazi .ns-hakkinda-ozet { font-size: 20px; }
	.ns-video-yazi .ns-video-baslik { font-size: 40px; }
	.ns-bant { padding-left: 15px; padding-right: 10px; margin-bottom: 30px; }
	.ns-urun-dugmeler { flex-direction: column; }
}
@media (max-width: 1280px) {
	.ns-slayt { padding: 0 40px 100px; }
}
@media (min-width: 1201px) and (max-width: 1280px) {
	.ns-slayt-iletisim { flex-direction: column; align-items: flex-start; }
	.ns-slayt-iletisim .ns-temas { margin-bottom: 20px; }
}
@media (max-width: 1200px) {
	.ns-ust, .ns-ust.is-sabit { padding: 30px 15px; top: 0; width: 100%; border-radius: 0; box-shadow: var(--ns-golge); }
	.ns-hamb { display: block; }
	.ns-menu { position: absolute; top: 100%; left: 0; width: 100%; display: none; flex-direction: column; align-items: stretch; padding: 0 20px; background: #fff; border-radius: 0 0 20px 20px; max-height: calc(100vh - 120px); overflow-y: auto; }
	.ns-menu.is-acik { display: flex; }
	.ns-menu > li { display: block; padding: 0; }
	.ns-menu > li > a { display: flex; padding: 10px 0; border-bottom: 1px solid #e8e8e8; }
	.ns-menu-ac { display: flex; position: absolute; right: 0; top: 0; width: 39px; height: 45px; align-items: center; justify-content: center; background: none; border: 0; cursor: pointer; transition: .45s; }
	.ns-menu-ac svg { width: 10px; height: 6px; fill: none; stroke: #006530; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; transition: .45s; }
	li.is-acik > .ns-menu-ac svg { transform: rotate(180deg); }
	.ns-alt-menu { position: relative; left: auto; top: auto; transform: none; min-width: 0; display: none; opacity: 1; visibility: visible; border-radius: 0; padding: 0 0 0 20px; margin: 10px 0; max-height: 280px; overflow: hidden auto; }
	.ns-alt-menu::before { display: none; }
	li.is-acik > .ns-alt-menu { display: block; animation: none; }
	.ns-alt-menu li { margin-bottom: 5px; }
	.ns-alt-menu a { color: var(--ns-koyu); padding-bottom: 5px; }
	.ns-alt-menu a:hover { padding-left: 0; }
	.ns-alt-menu a:hover::before { left: -9px; }
	.ns-mega-kutu { display: none !important; }
	.ns-menu .ns-satis-li { display: none; }
	.ns-dil, .ns-menu > li.ns-dil { display: none; }
	.ns-dil-mobil, .ns-menu > li.ns-dil-mobil { display: flex; gap: 12px; padding: 15px 0; }
	.ns-dil-mobil button { padding: 10px; border: 1px solid #c7c7c7; border-radius: 10px; background: none; cursor: pointer; display: flex; }
	.ns-dil-mobil button.is-aktif { border-color: var(--ns-mavi); }
	.ns-dil-mobil svg { width: 27px; height: 18px; filter: grayscale(1); transition: .45s; }
	.ns-dil-mobil button.is-aktif svg { filter: grayscale(0); }
	.ns-slayt { padding: 0 45px 50px; }
	.ns-slayt-alt { position: relative; grid-column: 1 / -1; margin-top: 20px; z-index: 50; }
	.ns-asagi { display: none; }
	.ns-slayt-sol .ns-slayt-sayac { display: none; }
	.ns-slayt-iletisim { width: 100%; justify-content: center; margin-bottom: 20px; padding: 0; }
	.ns-slayt-yazi { margin-right: 0; }
	.ns-slayt-yazi h2 { font-size: 50px; }
	.ns-slayt-resim { height: 500px; }
	.ns-faaliyet { display: none; }
	.ns-faaliyet-mobil { display: block; margin-top: 30px; }
	.ns-hakkinda-yazi h1 { font-size: 40px; }
	.ns-hakkinda-yazi .ns-hakkinda-ozet { font-size: 20px; }
	.ns-video-yazi .ns-video-baslik { font-size: 40px; }
	.ns-buzlu { display: none; }
	.ns-hakkinda-resim-kutu { min-height: 670px; }
	.ns-projeler { margin-bottom: 50px; }
	.ns-bant { padding-left: 15px; padding-right: 15px; }
	.ns-bant-ad, .ns-bant-ad h1 { font-size: 36px; }
	.ns-alt-linkler { grid-template-columns: repeat(2, 1fr); gap: 30px 24px; }
	.ns-alt-iletisim { grid-template-columns: 1fr; justify-items: center; }
	.ns-urun-dugmeler { flex-direction: column; }
	.ns-urun-gezgin .ns-oklar { display: none; }
	.ns-sayfala-sabit { margin: 0 1.2rem; }
}
@media (min-width: 1201px) {
	.ns-slayt-sag .ns-slayt-sayac { display: none; }
}
@media (max-width: 1024px) {
	.ns-bant { background: none !important; padding: 100px 15px 0 !important; margin: 30px !important; }
	.ns-bant-ad, .ns-bant-ad h1 { font-size: 32px; }
	.ns-ust-cekim { padding-bottom: 0 !important; }
	.ns-buyuk-slayt, .ns-urun-ust { margin-top: 0; }
	.ns-slayt { margin-top: 0; padding-bottom: 0 !important; }
	.ns-slayt-yazilar { transform: translateY(-50%); }
	.ns-teklif { display: flex; width: fit-content; }
	.ns-hakkinda-resim { display: none; }
	.ns-hakkinda-ic { grid-template-columns: 1fr; }
	.ns-hakkinda-yazi { grid-column: auto; }
	.ns-iletisim-bant { background-image: none !important; }
	.ns-iletisim-bant-ic { padding: 85px 15px 0; }
	.ns-iletisim { margin-top: 0; }
	.ns-form-alan { margin: 0; }
	.ns-form-dis { margin-top: 40px; }
}
@media (max-width: 991px) {
	.ns-bant-ic { flex-direction: column; text-align: center; gap: 20px; }
	.ns-yol { justify-content: center; }
	.ns-baslik-satir { flex-direction: column; gap: 20px; margin-bottom: 20px; }
	.ns-baslik { justify-content: center; }
	.ns-baslik-sag .ns-oklar { display: none; }
	.ns-slayt { padding: 0 20px 50px; }
	.ns-slayt-ic { grid-template-columns: 1fr; }
	.ns-slayt-sol { position: absolute; inset: 0; z-index: 21; display: flex; align-items: center; pointer-events: none; }
	.ns-slayt-sol a { pointer-events: auto; }
	.ns-slayt-yazilar { transform: none; top: auto; width: 100%; }
	.ns-slayt-yazi { margin: 0 60px; }
	.ns-slayt-yazi h2, .ns-slayt-yazi .ns-slayt-ozet { color: #fff; }
	.ns-slayt-yazi .ns-hap { color: #fff; border-color: #fff; }
	.ns-slayt-resim::before { content: ""; position: absolute; inset: 0; background-color: rgba(0, 0, 0, .5); z-index: 1; }
	.ns-slayt-sag .ns-slayt-sayac { position: absolute; z-index: 111; bottom: 20px; left: 0; right: 0; margin: 0; justify-content: center; color: #fff; }
	.ns-slayt-iletisim .ns-temas { display: none; }
	.ns-hakkinda-yazi { margin-top: 30px; }
	.ns-projeler-ic { grid-template-columns: 1fr; }
	.ns-projeler-ic > .ns-pkart { display: none; }
	.ns-dikey { height: auto; }
	.ns-alt-linkler h2 { margin-bottom: 15px; }
	.ns-detay-ic { grid-template-columns: 1fr; }
	.ns-detay-ic .ns-yan { order: 2; position: static; }
	.ns-urun-ic { grid-template-columns: 1fr; }
	.ns-urun-bilgi { margin: 30px 0 0; }
	.ns-urun-ad { margin-bottom: 30px; }
	.ns-sekme { margin-top: 30px; }
	.ns-sekme-baslik { margin-bottom: 20px; }
	.ns-urun-gezgin { justify-content: center; }
	.ns-kartlar-4, .ns-kartlar-3 { grid-template-columns: repeat(2, 1fr); }
	.ns-urun-izgara { grid-template-columns: repeat(2, 1fr); }
	.ns-ukart-ad { text-align: center; }
	.ns-logolar { grid-template-columns: repeat(3, 1fr); }
	.ns-mozaik { grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); grid-template-rows: none; }
	.ns-mozaik a { grid-area: auto !important; height: 450px !important; }
	.ns-mozaik { grid-template-rows: none; }
	.ns-galeri { grid-template-columns: repeat(3, 1fr); }
	.ns-bolge { grid-template-columns: 1fr; }
	.ns-yan-kat .ns-yan-baslik { position: relative; cursor: pointer; }
	.ns-yan-kat .ns-yan-baslik::after { content: ""; position: absolute; right: 20px; top: 50%; width: 10px; height: 6px; transform: translateY(-50%); background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%231d498b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; transition: .45s; }
	.ns-yan-kat.is-acik .ns-yan-baslik::after { transform: translateY(-50%) rotate(180deg); }
	.ns-yan-kat ul { display: none; margin-top: 10px; }
	.ns-yan-kat.is-acik ul { display: block; }
	.ns-urunler-ic { grid-template-columns: 1fr; }
	.ns-urunler-ic .ns-yan { margin-bottom: 30px; position: static; }
	.ns-misyon h2 { margin-bottom: 30px; }
	.ns-misyon-kutu { margin: 0; }
	.ns-form-not { max-width: 100%; }
	.ns-form-ic { max-width: 100%; }
	.ns-form form .row > .col-12:last-child { justify-content: center; }
}
@media (max-width: 768px) {
	.ns-ust, .ns-ust.is-sabit { padding: 30px 0; }
	.ns-ust-ic { padding: 0 12px; }
	.ns-bant { padding: 115px 15px 0 !important; margin: 30px 30px 20px !important; }
	.ns-bant .ns-yol { display: none; }
	.ns-slayt { padding: 0 0 20px !important; }
	.ns-slayt-sol { display: none; }
	.ns-slayt-resim { height: 450px; }
	.ns-slayt-resim-yazi { display: block; text-align: center; }
	.ns-slayt-resim-yazi h2 { display: none; }
	.ns-slayt-resim-yazi .ns-slayt-ozet { font-size: 16px; line-height: 1.5; }
	.ns-slayt-alt { margin-top: 20px; }
	.ns-slayt-iletisim { display: flex; }
	.ns-slayt-iletisim .ns-sosyal, .ns-slayt-iletisim .ns-teklif-alan { width: 50%; display: flex; justify-content: center; }
	.ns-teklif { margin-left: 0; }
	.ns-video { grid-template-columns: 1fr; }
	.ns-video-yt { display: none; }
	.ns-video-yazi { margin-left: 0; }
	.ns-video-yazi .ns-video-baslik { font-size: 28px; margin-bottom: 20px; }
	.ns-hakkinda-yazi h1 { margin-bottom: 20px; }
	.ns-hakkinda-yazi .ns-hakkinda-ozet { margin-bottom: 20px; }
	.ns-baslik h2, .ns-baslik .ns-baslik-yazi { padding-right: 0; margin-right: 0; text-align: center; }
	.ns-baslik h2::before, .ns-baslik .ns-baslik-yazi::before { display: none; }
	.ns-baslik-link { display: none; }
	.ns-pkart-yazi p { display: none; }
	.ns-buyuk-kart .ns-kyazi { max-width: 100%; }
	.ns-buyuk-alt .ns-oklar, .ns-misyon-alt .ns-oklar { display: none; }
	.ns-buyuk-alt, .ns-misyon-alt { left: 0; right: 0; justify-content: center; }
	.ns-alt-linkler { display: none; }
	.ns-referans { margin: 20px 0; }
	.ns-referans .ns-serit-oge { border: 0; padding: 0; }
	.ns-alt-iletisim .ns-temas { flex-direction: column; }
	.ns-alt-iletisim .ns-temas li { margin: 10px 0; padding: 0; border: 0; }
	.ns-alt-son { flex-direction: column; gap: 20px; text-align: center; }
	.ns-urun-slayt .ns-serit-oge a { height: 300px; }
	.ns-geri-don { justify-content: center; }
	.ns-sekme-ic { padding: 40px 30px; }
	.ns-kurumsal-baslik { font-size: 24px; margin-bottom: 30px; }
	.ns-kurumsal-metin { margin: 40px 0 0; }
	.ns-kurumsal-baslik { margin: 30px 0 40px; font-size: 22px; }
	.ns-kurumsal-metin p { font-size: 18px; margin-bottom: 20px; }
	.ns-misyon h2 { margin: 0 0 20px; font-size: 24px; }
	.ns-misyon-kutu { padding: 40px 30px; }
	.ns-misyon-yazi { padding-bottom: 30px; }
	.ns-misyon-yazi p { margin: 0 30px; }
	.ns-misyon-slayt { margin-top: 30px; }
	.ns-misyon-slayt .ns-serit-oge a { height: 350px; }
	.ns-iletisim-ust { grid-template-columns: 1fr; }
	.ns-iletisim-sosyal { flex-direction: row; justify-content: center; }
	.ns-iletisim-sosyal li { margin: 0 15px; }
	.ns-iletisim { margin-bottom: 30px; }
	.ns-form-alan { padding: 30px; }
	.ns-form form .row { grid-template-columns: 1fr; }
	.ns-logo-kart { padding: 10px; }
	.ns-kyazi h2, .ns-kyazi h4 { line-height: 1; }
	.ns-galeri { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
	.ns-ust, .ns-ust.is-sabit { padding: 20px 0; }
	.ns-bant { padding: 95px 15px 0 !important; }
	.ns-slayt-resim { height: 350px; }
	.ns-kartlar-4, .ns-kartlar-3, .ns-kartlar-2, .ns-urun-izgara { grid-template-columns: 1fr; }
	.ns-logolar { grid-template-columns: repeat(2, 1fr); }
	.ns-satir h2 { font-size: 20px; }
	.ns-satir svg { display: none; }
}
@media (max-width: 480px) {
	.ns-ust, .ns-ust.is-sabit { padding: 15px 0; }
	.ns-bant { padding: 85px 15px 0 !important; }
	.ns-ana .ns-bant { padding: 60px 15px 0 !important; }
	.ns-logo img { max-width: 160px; }
}
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
.ns-urun-ic > *, .ns-detay-ic > *, .ns-projeler-ic > *, .ns-slayt-ic > *, .ns-hakkinda-ic > *, .ns-bolge > *, .ns-iletisim-ust > * { min-width: 0; }
