.oa-hero, .oa-bolum, .oa-cta { font-family: var(--oa-font, inherit); }
.oa-buton {
	display: inline-block;
	padding: 14px 24px;
	border-radius: calc(var(--oa-yaricap) * .6);
	background: var(--oa-ana);
	color: #fff;
	font-weight: 600;
	text-decoration: none;
}
.oa-buton:hover { color: #fff; filter: brightness(1.08); }
.oa-buton:focus-visible, .oa-sss summary:focus-visible, .oa-once-sonra input:focus-visible {
	outline: 3px solid var(--oa-vurgu);
	outline-offset: 3px;
}

.oa-hero {
	position: relative;
	display: grid;
	align-items: center;
	min-height: min(88vh, 860px);
	padding: clamp(32px, 6vw, 88px);
	overflow: hidden;
	isolation: isolate;
	color: #fff;
	background: var(--oa-koyu);
}
.oa-hero__medya { position: absolute; inset: 0; z-index: -1; }
.oa-hero__yedek { width: 100%; height: 100%; object-fit: cover; }
.oa-hero__tuval { position: absolute; inset: 0 0 0 40%; opacity: 0; transition: opacity .8s ease; }
.oa-hazir .oa-hero__tuval { opacity: 1; }
.oa-hero__icerik {
	max-width: 620px;
	padding: clamp(24px, 3vw, 40px);
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: var(--oa-yaricap);
	background: rgba(12, 16, 32, .68);
	-webkit-backdrop-filter: blur(var(--oa-blur));
	backdrop-filter: blur(var(--oa-blur));
}
.oa-hero__baslik { margin: 0 0 16px; color: inherit; font-size: clamp(36px, 5vw, 64px); line-height: 1.08; }
.oa-hero__metin { font-size: 18px; line-height: 1.6; }

.oa-bolum { padding-block: clamp(24px, 4vw, 48px); }
.oa-bolum-baslik { margin: 0 0 24px; }
.oa-izgara { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: 24px; }
.oa-cam-kart {
	margin: 0;
	padding: 28px;
	border: 1px solid color-mix(in srgb, var(--oa-koyu) 12%, transparent);
	border-radius: var(--oa-yaricap);
	background: rgba(255, 255, 255, .74);
	color: var(--oa-koyu);
	-webkit-backdrop-filter: blur(var(--oa-blur));
	backdrop-filter: blur(var(--oa-blur));
	transition: transform .25s ease, border-color .25s ease;
}
.oa-cam-kart:hover { transform: translateY(-4px); border-color: var(--oa-ana); }
.oa-cam-kart__baslik, .oa-hizmet h3 { margin: 0 0 10px; color: inherit; }
.oa-hizmet img { width: 100%; height: auto; margin-bottom: 16px; border-radius: calc(var(--oa-yaricap) * .6); }
.oa-hizmet p:last-child { margin-bottom: 0; }

.oa-surec { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 24px; margin: 0; padding: 0; list-style: none; counter-reset: oa-adim; }
.oa-surec li { margin: 0; padding-top: 16px; border-top: 2px solid var(--oa-ana); counter-increment: oa-adim; }
.oa-surec li::before { content: counter(oa-adim, decimal-leading-zero); color: var(--oa-ana); font-weight: 700; }
.oa-surec h3 { margin: 8px 0; }

.oa-sss { border-bottom: 1px solid color-mix(in srgb, var(--oa-koyu) 15%, transparent); }
.oa-sss summary { padding: 16px 0; font-weight: 600; cursor: pointer; }
.oa-sss > div { padding-bottom: 12px; }

.oa-once-sonra { position: relative; margin: 0; overflow: hidden; border-radius: var(--oa-yaricap); --oa-konum: 50%; }
.oa-once-sonra img { display: block; width: 100%; height: auto; }
.oa-once-sonra__once { position: absolute; inset: 0; clip-path: inset(0 calc(100% - var(--oa-konum)) 0 0); }
.oa-once-sonra__once img { height: 100%; object-fit: cover; }
.oa-once-sonra input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: ew-resize; }
.oa-once-sonra::after { content: ""; position: absolute; top: 0; bottom: 0; left: var(--oa-konum); width: 3px; background: #fff; pointer-events: none; }

.oa-referans blockquote { margin: 0 0 16px; padding: 0; border: 0; font-size: 18px; line-height: 1.55; }

.oa-cta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding: clamp(28px, 5vw, 56px);
	border-radius: var(--oa-yaricap);
	background: var(--oa-koyu);
	color: #fff;
}
.oa-cta .oa-bolum-baslik { margin-bottom: 8px; color: inherit; }
.oa-cta p:last-child { margin-bottom: 0; }

@media (max-width: 767px) {
	.oa-hero { align-items: end; }
	.oa-hero__tuval { inset: 0 0 45% 0; }
}
@media (prefers-reduced-motion: reduce) {
	.oa-cam-kart, .oa-hero__tuval { transition: none; }
	.oa-cam-kart:hover { transform: none; }
}

/* Hareket elementleri */
.oa-olcu, .oa-yatay, .oa-anlati, .oa-bant, .oa-katalog, .oa-iletisim, .oa-serit { font-family: var(--oa-font, inherit); color: var(--oa-koyu); box-sizing: border-box; }
.oa-olcu *, .oa-yatay *, .oa-anlati *, .oa-katalog * { box-sizing: border-box; }
.oa-butonlar { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.oa-buton--cizgi { background: transparent; color: var(--oa-koyu); box-shadow: inset 0 0 0 1.5px var(--oa-koyu); }
.oa-buton--cizgi:hover { background: var(--oa-koyu); color: #fff; }
.oa-ust { display: flex; align-items: center; gap: 14px; margin: 0 0 24px; font-size: 15px; font-weight: 600; letter-spacing: .02em; }
.oa-ust::before { content: ""; width: 44px; height: 2px; background: var(--oa-vurgu); }

.oa-gosterge { display: inline-grid; grid-template-columns: auto auto; align-items: baseline; column-gap: 10px; padding: 16px 22px; border-radius: 8px; background: var(--oa-koyu); color: #fff; box-shadow: 0 18px 44px rgba(9, 20, 48, .28); }
.oa-gosterge__etiket { grid-column: 1 / -1; margin-bottom: 4px; color: #c9d2e6; font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.oa-gosterge b { min-width: 4ch; color: #ff5a4d; font-size: clamp(36px, 4vw, 56px); font-weight: 600; font-variant-numeric: tabular-nums; line-height: 1; text-align: right; text-shadow: 0 0 18px rgba(255, 90, 77, .55); }
.oa-gosterge__birim { color: #c9d2e6; font-size: 16px; }

.oa-olcu { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr); min-height: min(calc(100svh - 76px), 860px); background: var(--oa-acik, #f6f5f1); }
.oa-olcu__metin { align-self: center; padding: clamp(40px, 6vw, 96px) clamp(20px, 5vw, 80px); }
.oa-olcu__baslik { margin: 0; color: inherit; font-size: clamp(40px, 5.6vw, 84px); font-weight: 700; letter-spacing: -.03em; line-height: 1.02; }
.oa-k { display: inline-block; overflow: hidden; padding-bottom: .1em; margin-bottom: -.1em; vertical-align: bottom; }
.oa-k > span { display: inline-block; animation: oa-kelime .9s cubic-bezier(.16, 1, .3, 1) both; animation-delay: calc(var(--i) * 70ms); }
.oa-olcu__yazi { max-width: 34em; margin-top: 24px; font-size: 18px; line-height: 1.6; }
.oa-olcu__yazi p:last-child { margin-bottom: 0; }
.oa-olcu__foto { position: relative; margin: 0; overflow: hidden; animation: oa-perde 1.2s cubic-bezier(.76, 0, .24, 1) both; }
.oa-olcu__foto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transform: scale(1.08); will-change: transform; }
.oa-olcu__foto .oa-gosterge { position: absolute; left: clamp(16px, 3vw, 40px); bottom: clamp(16px, 3vw, 40px); }
@keyframes oa-kelime { from { transform: translateY(110%); } to { transform: none; } }
@keyframes oa-perde { from { clip-path: inset(0 0 0 100%); } to { clip-path: inset(0); } }

.oa-serit { display: flex; overflow: hidden; padding: 20px 0; border-block: 1px solid color-mix(in srgb, var(--oa-koyu) 14%, transparent); background: #fff; }
.oa-serit ul { display: flex; flex: none; gap: 56px; margin: 0; padding: 0 28px; list-style: none; animation: oa-serit 42s linear infinite; }
.oa-serit li { margin: 0; font-size: clamp(20px, 2.2vw, 30px); font-weight: 600; letter-spacing: -.01em; white-space: nowrap; }
.oa-serit:hover ul { animation-play-state: paused; }
@keyframes oa-serit { to { transform: translateX(-100%); } }

.oa-yatay { background: #fff; }
.oa-yatay__sahne { display: flex; flex-direction: column; justify-content: center; gap: 32px; padding: clamp(48px, 7vw, 88px) 0; overflow: hidden; }
.oa-yatay--aktif .oa-yatay__sahne { position: sticky; top: 0; height: 100vh; }
.oa-yatay__bas { max-width: 760px; padding-inline: clamp(20px, 5vw, 80px); }
.oa-yatay__bas .oa-bolum-baslik, .oa-anlati .oa-bolum-baslik, .oa-katalog .oa-bolum-baslik { margin: 0 0 12px; color: inherit; font-size: clamp(32px, 4vw, 56px); letter-spacing: -.025em; line-height: 1.08; }
.oa-yatay__bas p { margin: 0; font-size: 18px; }
.oa-yatay__ray { display: flex; gap: 20px; padding-inline: clamp(20px, 5vw, 80px); overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; will-change: transform; }
.oa-yatay--aktif .oa-yatay__ray { overflow: visible; width: 100%; }
.oa-yatay__kart { position: relative; flex: 0 0 min(78vw, 360px); padding: 24px; border: 1px solid color-mix(in srgb, var(--oa-koyu) 12%, transparent); border-radius: 8px; background: #fff; scroll-snap-align: center; transition: border-color .3s ease, transform .4s cubic-bezier(.16, 1, .3, 1); }
.oa-yatay__kart:hover { border-color: var(--oa-vurgu); transform: translateY(-6px); }
.oa-yatay__no { font-size: 14px; font-weight: 600; font-variant-numeric: tabular-nums; }
.oa-yatay__kart img { display: block; width: 100%; height: clamp(170px, 30vh, 280px); object-fit: contain; margin: 8px 0 16px; transition: transform .6s cubic-bezier(.16, 1, .3, 1); }
.oa-yatay__kart:hover img { transform: scale(1.05); }
.oa-yatay__kart h3 { margin: 0 0 6px; color: inherit; font-size: 22px; }
.oa-yatay__kart h3 a { color: inherit; text-decoration: none; }
.oa-yatay__kart h3 a::after { content: ""; position: absolute; inset: 0; }
.oa-yatay__kart p { margin: 0; font-size: 15px; line-height: 1.5; }

.oa-anlati { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: clamp(32px, 6vw, 96px); padding: clamp(48px, 7vw, 96px) clamp(20px, 5vw, 80px); background: var(--oa-acik, #f6f5f1); }
.oa-anlati__sahne { position: sticky; top: 12vh; align-self: start; height: 76vh; }
.oa-anlati__medya { position: absolute; inset: 0; overflow: hidden; border-radius: 8px; background: var(--oa-koyu); }
.oa-anlati__medya img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transform: scale(1.06); transition: opacity .7s ease, transform 1.2s cubic-bezier(.16, 1, .3, 1); }
.oa-anlati__medya img.oa-etkin { opacity: 1; transform: none; }
.oa-anlati__sahne .oa-gosterge { position: absolute; right: 20px; bottom: 20px; }
.oa-anlati ol { margin: 0; padding: 0; list-style: none; }
.oa-anlati li { display: flex; flex-direction: column; justify-content: center; min-height: 62vh; margin: 0; border-top: 1px solid color-mix(in srgb, var(--oa-koyu) 18%, transparent); transition: opacity .4s ease; }
.oa-anlati--aktif li { opacity: .38; }
.oa-anlati--aktif li.oa-etkin { opacity: 1; }
.oa-anlati li h3 { margin: 0 0 12px; color: inherit; font-size: clamp(30px, 3.4vw, 48px); letter-spacing: -.02em; }
.oa-anlati li p { max-width: 30em; margin: 0; font-size: 18px; line-height: 1.6; }

.oa-bant { position: relative; display: grid; place-items: end start; min-height: 76vh; overflow: hidden; background: var(--oa-koyu); }
.oa-bant img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transform: scale(1.08); will-change: transform; }
.oa-bant::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(9, 20, 48, .86), rgba(9, 20, 48, .05) 62%); }
.oa-bant__yazi { position: relative; z-index: 1; max-width: 18em; padding: clamp(24px, 5vw, 80px); color: #fff; font-size: clamp(32px, 4.4vw, 64px); }
.oa-bant__yazi .oa-bolum-baslik { margin: 0; color: inherit; font-size: inherit; letter-spacing: -.025em; line-height: 1.08; }

.oa-katalog { padding: clamp(40px, 6vw, 80px) clamp(20px, 5vw, 80px); }
.oa-katalog__ara { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; margin-top: 20px; }
.oa-katalog__suz { display: flex; flex-wrap: wrap; gap: 8px; }
.oa-katalog__suz button { min-height: 44px; padding: 8px 16px; border: 1px solid color-mix(in srgb, var(--oa-koyu) 22%, transparent); border-radius: 999px; background: #fff; color: var(--oa-koyu); font: inherit; font-size: 15px; cursor: pointer; }
.oa-katalog__suz button[aria-pressed="true"] { border-color: var(--oa-koyu); background: var(--oa-koyu); color: #fff; }
.oa-katalog label span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.oa-katalog input { width: min(100%, 300px); min-height: 44px; padding: 8px 14px; border: 1px solid color-mix(in srgb, var(--oa-koyu) 22%, transparent); border-radius: 8px; font: inherit; }
.oa-katalog__sayi { min-height: 1.5em; margin: 16px 0; font-size: 15px; }
.oa-katalog__liste { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(46%, 240px), 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
.oa-katalog__liste li { display: flex; flex-direction: column; margin: 0; padding: 16px; border: 1px solid color-mix(in srgb, var(--oa-koyu) 10%, transparent); border-radius: 8px; background: #fff; transition: border-color .25s ease; }
.oa-katalog__liste li[hidden] { display: none; }
.oa-katalog__liste li:hover { border-color: var(--oa-vurgu); }
.oa-katalog__liste img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; }
.oa-katalog__liste small { margin-top: 10px; font-size: 13px; }
.oa-katalog__liste h3 { flex: 1; margin: 4px 0 12px; color: inherit; font-size: 17px; line-height: 1.3; }
.oa-katalog__liste a { align-self: flex-start; color: var(--oa-koyu); font-size: 15px; font-weight: 600; text-underline-offset: 4px; }

.oa-iletisim { padding: clamp(40px, 6vw, 80px) clamp(20px, 5vw, 80px); }
.oa-iletisim__izgara { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: 32px; }
.oa-iletisim__izgara > div { padding-top: 16px; border-top: 2px solid var(--oa-vurgu); }
.oa-iletisim__izgara span { display: block; margin-bottom: 8px; font-size: 14px; }
.oa-iletisim__izgara a, .oa-iletisim__izgara address { color: inherit; font-size: 22px; font-style: normal; font-weight: 600; line-height: 1.35; text-decoration: none; }

.oa-bekle { opacity: 0; transform: translateY(32px); }
.oa-acildi { opacity: 1; transform: none; transition: opacity .8s ease, transform .9s cubic-bezier(.16, 1, .3, 1); }

@media (max-width: 899px) {
	.oa-olcu { grid-template-columns: 1fr; min-height: 0; }
	.oa-olcu__foto { min-height: 62vw; }
	.oa-anlati { grid-template-columns: 1fr; }
	.oa-anlati__sahne { top: 8px; z-index: 2; height: 42vh; }
	.oa-anlati li { min-height: 46vh; }
	.oa-bant { min-height: 60vh; }
}
@media (prefers-reduced-motion: reduce) {
	.oa-k > span, .oa-olcu__foto, .oa-serit ul { animation: none; }
	.oa-anlati__medya img, .oa-yatay__kart, .oa-yatay__kart img { transition: none; }
	.oa-serit { overflow-x: auto; }
}
.oa-bant img { object-position: 50% 78%; }
