/*
Theme Name: Kartaca Catering
Theme URI: https://kartacatering.com/
Author: Kartaca Catering
Description: Fuar ve etkinlik catering hizmetleri için hızlı, mobil uyumlu ve SEO odaklı kurumsal WordPress teması.
Version: 1.2.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: kartaca-catering
*/

:root {
	--wine: #7a1f1f;
	--wine-deep: #3f0d12;
	--wine-dark: #28080c;
	--ink: #3a241d;
	--paper: #fff7ea;
	--cream: #fffdf9;
	--cream-deep: #f7ead9;
	--muted: #6e5549;
	--line: #efdccb;
	--gold: #d2a246;
	--gold-light: #f6dfaf;
	--gold-dark: #8b631a;
	--terracotta: #c45a3c;
	--rx: 0deg;
	--ry: 0deg;
	color-scheme: light;
	font-family: "Segoe UI", Arial, sans-serif;
	color: var(--ink);
	background: var(--paper);
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
	scroll-padding-top: 32px;
}

body {
	margin: 0;
	background: var(--paper);
	color: var(--ink);
	font-size: 16px;
	line-height: 1.5;
}

a {
	color: inherit;
	text-decoration: none;
}

button,
input,
textarea,
select {
	font: inherit;
}

a,
button {
	touch-action: manipulation;
	-webkit-tap-highlight-color: transparent;
}

a:focus-visible,
button:focus-visible,
summary:focus-visible {
	outline: 3px solid var(--terracotta);
	outline-offset: 5px;
}

img {
	display: block;
	max-width: 100%;
	height: auto;
}

p,
h1,
h2,
h3 {
	margin-top: 0;
}

.skip-link {
	position: fixed;
	left: 20px;
	top: -100px;
	z-index: 99999;
	background: var(--cream);
	color: var(--wine-deep);
	padding: 14px 18px;
	box-shadow: 0 8px 24px rgb(40 8 12 / 18%);
}

.skip-link:focus {
	top: 20px;
}

.header {
	min-height: 116px;
	padding: 10px 6%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	background: var(--cream);
	border-bottom: 1px solid var(--line);
}

.brand-wordmark {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-width: 152px;
	padding: 5px 0;
	color: var(--wine);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 25px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 2.5px;
	text-shadow: 0 1px 0 #fff, 0 3px 8px rgb(82 20 23 / 12%);
}

.brand-wordmark span {
	position: relative;
	display: block;
	margin-top: 8px;
	padding: 0 19px;
	color: var(--gold-dark);
	font-family: "Segoe UI", Arial, sans-serif;
	font-size: 10px;
	font-weight: 750;
	letter-spacing: 5px;
}

.brand-wordmark span::before,
.brand-wordmark span::after {
	content: "";
	position: absolute;
	top: 50%;
	width: 13px;
	height: 1px;
	background: var(--gold);
}

.brand-wordmark span::before {
	left: 0;
}

.brand-wordmark span::after {
	right: 0;
}

.header nav {
	margin-left: auto;
}

.header nav,
.header nav ul {
	display: flex;
	align-items: center;
	gap: 30px;
}

.header nav ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.header nav a {
	position: relative;
	font-size: 14px;
	font-weight: 600;
}

.header nav a::after {
	content: "";
	position: absolute;
	left: 0;
	right: 100%;
	bottom: -8px;
	height: 2px;
	background: var(--gold);
	transition: right 0.2s ease;
}

.header nav a:hover::after {
	right: 0;
}

.header-cta,
.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 15px 24px;
	border-radius: 7px;
	font-size: 14px;
	font-weight: 750;
	transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.header-cta {
	background: linear-gradient(135deg, #efd078, var(--gold));
	color: var(--wine-dark);
	box-shadow: 0 9px 24px rgb(139 99 26 / 19%);
}

.header-cta:hover,
.button:hover {
	transform: translateY(-3px);
}

.hero {
	position: relative;
	min-height: 740px;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(360px, 0.95fr);
	gap: 6%;
	padding: 75px 6% 114px;
	overflow: hidden;
	background:
		radial-gradient(circle at 77% 38%, rgb(210 162 70 / 19%), transparent 33%),
		linear-gradient(132deg, var(--wine-deep), var(--wine) 58%, #5b1218);
	color: #fff;
}

.hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image: repeating-linear-gradient(118deg, transparent 0 68px, rgb(246 223 175 / 3%) 69px 70px);
	pointer-events: none;
}

.hero-content {
	position: relative;
	z-index: 2;
	align-self: center;
}

.eyebrow {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0 0 28px;
	font-size: 12px;
	font-weight: 750;
	line-height: 1.6;
	letter-spacing: 2px;
	text-transform: uppercase;
}

.eyebrow-line {
	display: block;
	width: 34px;
	height: 1px;
	background: currentColor;
}

.hero .eyebrow {
	color: var(--gold-light);
}

h1,
h2 {
	font-family: Georgia, "Times New Roman", serif;
	font-weight: 400;
}

h1 {
	max-width: 720px;
	margin-bottom: 27px;
	font-size: clamp(50px, 5.7vw, 84px);
	line-height: 1.05;
	letter-spacing: -2.8px;
}

em {
	font-family: Georgia, "Times New Roman", serif;
	font-weight: 400;
}

h1 em {
	display: block;
	color: var(--gold-light);
}

.hero-description {
	max-width: 510px;
	margin-bottom: 31px;
	color: #f3e7dd;
	font-size: 18px;
	line-height: 1.78;
}

.hero-actions {
	display: flex;
	align-items: center;
	gap: 24px;
	flex-wrap: wrap;
}

.button-light {
	background: linear-gradient(135deg, #f7dda0, var(--gold));
	color: var(--wine-dark);
	box-shadow: 0 12px 30px rgb(26 3 5 / 28%);
}

.button-light:hover {
	background: #ffe6aa;
}

.text-link {
	padding: 10px 0;
	border-bottom: 1px solid rgb(246 223 175 / 70%);
	color: #fff;
	font-size: 14px;
	font-weight: 600;
}

.hero-caption {
	display: flex;
	gap: 20px;
	margin-top: 40px;
	color: #e4c891;
	font-size: 11px;
	line-height: 1.6;
	letter-spacing: 1.3px;
	flex-wrap: wrap;
}

.hero-visual {
	position: relative;
	align-self: center;
	min-width: 0;
	perspective: 1200px;
	transform: rotateX(var(--rx)) rotateY(var(--ry));
	transform-style: preserve-3d;
	transition: transform 0.2s ease-out;
	will-change: transform;
}

.hero-visual::after {
	content: "";
	position: absolute;
	inset: 20px -20px -20px 20px;
	border: 1px solid rgb(246 223 175 / 48%);
	border-radius: 52% 52% 8px 8px;
	transform: translateZ(-30px);
	pointer-events: none;
}

.hero-image-wrap {
	position: relative;
	aspect-ratio: 1;
	overflow: hidden;
	border-radius: 52% 52% 8px 8px;
	background: var(--wine-deep);
	box-shadow: 30px 36px 65px rgb(25 2 5 / 45%);
	transform: translateZ(16px);
	animation: hero-float 6s ease-in-out infinite;
}

.hero-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 66%;
}

.hero-image-wrap::after {
	content: "";
	position: absolute;
	inset: 0;
	border: 1px solid rgb(255 255 255 / 17%);
	border-radius: inherit;
	box-shadow: inset 0 -100px 100px rgb(40 8 12 / 16%);
	pointer-events: none;
}

.floating-label {
	position: absolute;
	left: -42px;
	bottom: 52px;
	display: flex;
	align-items: center;
	gap: 17px;
	padding: 20px 24px;
	border: 1px solid #f1d6a4;
	border-radius: 6px;
	background: var(--cream);
	color: var(--wine);
	box-shadow: 8px 20px 50px rgb(30 3 6 / 37%);
	font-size: 15px;
	line-height: 1.45;
	transform: translateZ(70px) rotate(-5deg);
	animation: label-float 5s ease-in-out 0.7s infinite;
}

@keyframes hero-float {
	0%,
	100% {
		transform: translateZ(16px) translateY(0);
	}
	50% {
		transform: translateZ(24px) translateY(-9px);
	}
}

@keyframes label-float {
	0%,
	100% {
		transform: translateZ(70px) rotate(-5deg) translateY(0);
	}
	50% {
		transform: translateZ(78px) rotate(-3deg) translateY(-7px);
	}
}

.label-star {
	color: var(--gold-dark);
	font-size: 36px;
	line-height: 1;
}

.floating-label strong {
	font-family: Georgia, serif;
	font-size: 27px;
	font-weight: 400;
}

.image-caption {
	position: absolute;
	right: 12px;
	bottom: -34px;
	color: var(--gold-light);
	font-size: 11px;
	letter-spacing: 2px;
}

.image-caption span {
	padding: 0 10px;
}

.hero-bottom {
	position: absolute;
	left: 6%;
	right: 6%;
	bottom: 28px;
	display: flex;
	justify-content: space-between;
	gap: 20px;
	padding-top: 21px;
	border-top: 1px solid rgb(255 255 255 / 18%);
	color: #efdcb9;
	font-size: 11px;
	letter-spacing: 1.4px;
}

.hero-bottom a {
	font-size: 13px;
	letter-spacing: 0;
}

.section {
	padding: 100px 6%;
}

.section .eyebrow {
	color: var(--wine);
}

.section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 60px;
	margin-bottom: 54px;
}

h2 {
	margin: 0;
	font-size: clamp(37px, 4vw, 60px);
	line-height: 1.14;
	letter-spacing: -1.6px;
}

h2 em {
	color: var(--wine);
}

.section-heading > p {
	max-width: 380px;
	margin-bottom: 3px;
	color: var(--muted);
	font-size: 16px;
	line-height: 1.8;
}

.service-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	border-top: 1px solid var(--line);
}

.service-grid article {
	padding: 32px 34px 5px 0;
}

.service-grid article + article {
	padding-left: 34px;
	border-left: 1px solid var(--line);
}

.number {
	display: block;
	margin-bottom: 42px;
	color: var(--gold-dark);
	font-size: 13px;
}

.service-grid h3 {
	margin-bottom: 17px;
	font-size: 22px;
	font-weight: 650;
	letter-spacing: -0.4px;
}

.service-grid p {
	max-width: 340px;
	margin-bottom: 0;
	color: var(--muted);
	font-size: 16px;
	line-height: 1.8;
}

.scroll-stage {
	position: relative;
	height: 220svh;
	background:
		radial-gradient(circle at 78% 46%, rgb(210 162 70 / 20%), transparent 32%),
		linear-gradient(135deg, var(--wine-dark), var(--wine) 55%, #4d0e14);
	color: #fff;
	--scene-progress: 0;
	--scene-progress-percent: 0%;
}

.scroll-stage__sticky {
	position: sticky;
	top: 0;
	height: 100svh;
	min-height: 680px;
	display: grid;
	grid-template-columns: minmax(290px, 0.78fr) minmax(430px, 1.22fr);
	align-items: center;
	gap: 6%;
	padding: 5% 6%;
	overflow: hidden;
}

.admin-bar .scroll-stage__sticky {
	top: 32px;
	height: calc(100svh - 32px);
}

.scroll-stage__sticky::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		repeating-linear-gradient(120deg, transparent 0 84px, rgb(246 223 175 / 3%) 85px 86px),
		linear-gradient(90deg, rgb(31 3 6 / 27%), transparent 55%);
	pointer-events: none;
}

.scroll-stage__copy {
	position: relative;
	z-index: 5;
	max-width: 510px;
}

.scroll-stage__copy .eyebrow {
	color: var(--gold-light);
}

.scroll-stage__copy h2 {
	margin-bottom: 24px;
	font-size: clamp(40px, 4.3vw, 64px);
}

.scroll-stage__copy h2 em {
	color: var(--gold-light);
}

.scroll-stage__copy > p:not(.eyebrow):not(.scroll-stage__hint) {
	margin-bottom: 26px;
	color: #f2e2d7;
	font-size: 16px;
	line-height: 1.8;
}

.scroll-stage__meter {
	width: min(330px, 80%);
	height: 2px;
	margin-top: 38px;
	overflow: hidden;
	background: rgb(255 255 255 / 22%);
}

.scroll-stage__meter span {
	display: block;
	width: var(--scene-progress-percent);
	height: 100%;
	background: linear-gradient(90deg, var(--gold), var(--gold-light));
	box-shadow: 0 0 18px rgb(246 223 175 / 45%);
}

.scroll-stage__hint {
	margin: 12px 0 0;
	color: #d7bfaa;
	font-size: 11px;
	letter-spacing: 0.6px;
}

.scroll-scene {
	position: relative;
	z-index: 2;
	height: min(78svh, 720px);
	perspective: 1500px;
	transform-style: preserve-3d;
}

.scene-card {
	position: absolute;
	left: 50%;
	top: 50%;
	width: min(28vw, 400px);
	height: min(65svh, 600px);
	margin: 0;
	overflow: hidden;
	border: 1px solid rgb(246 223 175 / 52%);
	border-radius: 11px;
	background: #3a0b0f;
	box-shadow: 0 35px 80px rgb(17 1 3 / 47%);
	opacity: var(--card-opacity, 0.45);
	transform: translate3d(calc(-50% + var(--card-x, 0px)), calc(-50% + var(--card-y, 0px)), var(--card-z, 0px)) rotateX(var(--card-rx, 0deg)) rotateY(var(--card-ry, 0deg)) rotateZ(var(--card-rz, 0deg)) scale(var(--card-scale, 0.9));
	transform-origin: center center;
	transform-style: preserve-3d;
	will-change: transform, opacity;
}

.scene-card--one {
	--card-x: -95px;
	--card-y: 10px;
	--card-rz: -7deg;
	z-index: 3;
}

.scene-card--two {
	--card-x: 20px;
	--card-y: -18px;
	--card-rz: 2deg;
	z-index: 2;
}

.scene-card--three {
	--card-x: 125px;
	--card-y: 26px;
	--card-rz: 8deg;
	z-index: 1;
}

.scene-card img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.scene-card--two img {
	object-position: 50% 54%;
}

.scene-card--three img {
	object-position: 50% 62%;
}

.scene-card::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 62%, rgb(33 3 6 / 72%));
	pointer-events: none;
}

.scene-card figcaption {
	position: absolute;
	left: 20px;
	bottom: 17px;
	z-index: 2;
	color: #fff7ea;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 1.2px;
	text-transform: uppercase;
}

.motion-off .scroll-stage {
	height: auto;
}

.motion-off .scroll-stage__sticky {
	position: relative;
	height: auto;
	min-height: 0;
	grid-template-columns: minmax(260px, 0.7fr) minmax(0, 1.3fr);
	padding-top: 88px;
	padding-bottom: 88px;
}

.motion-off .scroll-scene {
	height: auto;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 15px;
}

.motion-off .scene-card {
	position: relative;
	left: auto;
	top: auto;
	width: 100%;
	height: 390px;
	opacity: 1;
	transform: none !important;
}

.motion-off .scroll-stage__meter,
.motion-off .scroll-stage__hint {
	display: none;
}

.references {
	background: #f8ecdc;
}

.logo-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	border-top: 1px solid #dfcdbb;
	border-left: 1px solid #dfcdbb;
}

.logo-card {
	position: relative;
	z-index: 1;
	min-height: 174px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 17px;
	padding: 24px;
	border-right: 1px solid #dfcdbb;
	border-bottom: 1px solid #dfcdbb;
	background: var(--cream);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.logo-card:hover {
	z-index: 2;
	transform: perspective(700px) translateZ(15px) rotateX(3deg);
	box-shadow: 0 18px 42px rgb(83 28 22 / 14%);
}

.logo-card img {
	width: auto;
	height: 68px;
	max-width: 92%;
	object-fit: contain;
}

.logo-card span {
	color: var(--muted);
	font-size: 12px;
	text-align: center;
}

.events {
	display: grid;
	grid-template-columns: 1.08fr 1fr;
	align-items: center;
	gap: 7%;
}

.event-image {
	position: relative;
	transform: perspective(1200px) rotateX(var(--rx)) rotateY(var(--ry));
	transform-style: preserve-3d;
	transition: transform 0.2s ease;
}

.event-image img {
	width: 100%;
	height: 440px;
	border-radius: 7px;
	object-fit: cover;
	object-position: 50% 40%;
	box-shadow: 22px 24px 52px rgb(83 28 22 / 16%);
}

.event-image > span {
	position: absolute;
	left: 20px;
	bottom: 20px;
	padding: 12px 17px;
	border: 1px solid var(--line);
	border-radius: 5px;
	background: var(--cream);
	font-size: 11px;
	letter-spacing: 1.5px;
	transform: translateZ(34px);
}

.event-copy h2 {
	margin-bottom: 25px;
	font-size: clamp(35px, 3.6vw, 53px);
}

.event-copy > p:not(.eyebrow) {
	color: var(--muted);
	font-size: 16px;
	line-height: 1.85;
}

.event-details {
	display: flex;
	gap: 9px;
	flex-wrap: wrap;
	margin-top: 28px;
}

.event-details span {
	padding: 10px 12px;
	border: 1px solid var(--line);
	border-radius: 5px;
	background: var(--cream);
	font-size: 12px;
}

.gallery {
	padding-top: 0;
}

.gallery-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.gallery-item {
	min-width: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--ink);
	text-align: left;
	cursor: pointer;
}

.gallery-item img {
	width: 100%;
	aspect-ratio: 3 / 4;
	border-radius: 6px;
	object-fit: cover;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.gallery-item:hover img {
	transform: translateY(-7px);
	box-shadow: 0 17px 38px rgb(77 25 20 / 18%);
}

.gallery-item:nth-child(2) img {
	object-position: 50% 65%;
}

.gallery-item > span {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 17px 0;
	font-size: 14px;
}

.gallery-item b {
	color: var(--gold-dark);
	font-size: 24px;
	font-weight: 400;
}

.faq {
	background: var(--cream);
}

.faq-layout {
	display: grid;
	grid-template-columns: minmax(270px, 0.75fr) minmax(0, 1.25fr);
	gap: 8%;
}

.faq-intro h2 {
	margin-bottom: 24px;
}

.faq-intro > p:not(.eyebrow) {
	max-width: 420px;
	color: var(--muted);
	line-height: 1.8;
}

.faq-list {
	border-top: 1px solid var(--line);
}

.faq-list details {
	border-bottom: 1px solid var(--line);
}

.faq-list summary {
	position: relative;
	padding: 25px 48px 25px 0;
	font-size: 18px;
	font-weight: 650;
	list-style: none;
	cursor: pointer;
}

.faq-list summary::-webkit-details-marker {
	display: none;
}

.faq-list summary::after {
	content: "+";
	position: absolute;
	right: 4px;
	top: 19px;
	color: var(--wine);
	font-family: Georgia, serif;
	font-size: 30px;
	font-weight: 400;
}

.faq-list details[open] summary::after {
	content: "−";
}

.faq-list details p {
	max-width: 680px;
	margin: -5px 0 25px;
	padding-right: 45px;
	color: var(--muted);
	line-height: 1.8;
}

.closing {
	padding-top: 84px;
	padding-bottom: 84px;
	background:
		radial-gradient(circle at 50% 0, rgb(246 223 175 / 18%), transparent 36%),
		linear-gradient(135deg, var(--wine-deep), var(--wine));
	color: #fff;
	text-align: center;
}

.closing .eyebrow {
	justify-content: center;
	margin-bottom: 23px;
	color: var(--gold-light);
}

.closing h2 {
	margin-bottom: 29px;
}

.closing h2 em {
	color: var(--gold-light);
}

.closing > p:not(.eyebrow) {
	margin-bottom: 29px;
	color: #f1dfd5;
	font-size: 16px;
	line-height: 1.8;
}

.contact-actions {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 28px;
	flex-wrap: wrap;
}

.button-dark {
	background: linear-gradient(135deg, #f5d98f, var(--gold));
	color: var(--wine-dark);
	box-shadow: 0 12px 30px rgb(20 2 4 / 28%);
}

.button-dark:hover {
	background: #ffe4a0;
}

.phone {
	color: #fff;
	font-size: 20px;
	letter-spacing: 0.4px;
}

.phone:hover {
	text-decoration: underline;
}

footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 26px;
	padding: 34px 6%;
	background: var(--cream);
}

footer .brand-wordmark {
	min-width: 138px;
	font-size: 21px;
}

footer p {
	margin: 0;
	color: var(--muted);
	font-family: Georgia, serif;
	font-style: italic;
}

footer > span {
	color: var(--muted);
	font-size: 12px;
}

.footer-links {
	display: flex;
	align-items: center;
	gap: 15px;
	flex-wrap: wrap;
}

.footer-links a,
.contact-links a {
	border-bottom: 1px solid currentColor;
	font-size: 13px;
}

.contact-links {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 19px;
	margin-top: 23px;
	flex-wrap: wrap;
	color: #f5e5db;
}

.contact-links a:hover,
.footer-links a:hover {
	color: var(--gold-light);
}

.motion-toggle {
	padding: 8px 0;
	border: 0;
	border-bottom: 1px solid #ccb9a7;
	background: transparent;
	color: var(--muted);
	font-size: 12px;
	cursor: pointer;
}

.floating-whatsapp {
	position: fixed;
	right: 22px;
	bottom: 22px;
	z-index: 20;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 13px 17px;
	border: 1px solid rgb(255 255 255 / 50%);
	border-radius: 999px;
	background: #187c4b;
	color: #fff;
	box-shadow: 0 10px 30px rgb(23 73 49 / 27%);
	font-size: 13px;
	font-weight: 750;
}

.floating-whatsapp::before {
	content: "W";
	display: grid;
	width: 25px;
	height: 25px;
	place-items: center;
	border-radius: 50%;
	background: #fff;
	color: #187c4b;
	font-size: 13px;
}

.lightbox {
	max-width: min(960px, 94vw);
	max-height: 94vh;
	padding: 55px 20px 16px;
	overflow: auto;
	border: 1px solid #a97632;
	border-radius: 8px;
	background: var(--wine-deep);
	color: #fff;
}

.lightbox::backdrop {
	background: rgb(30 3 6 / 92%);
	backdrop-filter: blur(8px);
}

.lightbox-image {
	width: auto;
	max-width: 100%;
	max-height: calc(90vh - 115px);
	margin: auto;
	object-fit: contain;
}

.lightbox-close {
	position: absolute;
	right: 17px;
	top: 12px;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 6px;
	border: 0;
	background: transparent;
	color: #fff;
	font-size: 14px;
	cursor: pointer;
}

.lightbox-close span {
	font-size: 25px;
	line-height: 1;
}

.lightbox p {
	margin: 16px 0 0;
	font-size: 14px;
	text-align: center;
}

.dialog-open {
	overflow: hidden;
}

.motion-off * {
	scroll-behavior: auto !important;
	transition: none !important;
}

.motion-off [data-tilt] {
	transform: none !important;
}

.reveal-ready [data-reveal] {
	opacity: 0;
	filter: blur(9px);
	transform: perspective(1200px) translate3d(var(--reveal-x, 0), 52px, -42px) rotateX(7deg);
	transform-origin: center top;
	transition:
		opacity 0.8s ease var(--reveal-delay, 0ms),
		filter 0.8s ease var(--reveal-delay, 0ms),
		transform 0.95s cubic-bezier(0.18, 0.78, 0.18, 1) var(--reveal-delay, 0ms);
}

.reveal-ready [data-reveal].is-visible {
	opacity: 1;
	filter: blur(0);
	transform: none;
}

.reveal-ready [data-reveal][data-tilt] {
	transform: perspective(1200px) rotateX(var(--rx)) rotateY(var(--ry)) translate3d(var(--reveal-x, 0), 52px, -42px);
}

.reveal-ready [data-reveal][data-tilt].is-visible {
	transform: perspective(1200px) rotateX(var(--rx)) rotateY(var(--ry)) translateY(0) scale(1);
}

.reveal-ready .service-grid article:nth-child(2),
.reveal-ready .logo-card:nth-child(2n),
.reveal-ready .gallery-item:nth-child(2n) {
	transition-delay: 0.08s;
}

.reveal-ready .service-grid article:nth-child(3),
.reveal-ready .logo-card:nth-child(3n),
.reveal-ready .gallery-item:nth-child(3n) {
	transition-delay: 0.16s;
}

/* Sayfa boyunca kaydırmaya bağlı hafif 3B derinlik */
.depth-item {
	--depth-y: 0px;
	--depth-z: 0px;
	--depth-rx: 0deg;
	--depth-ry: 0deg;
	transform: perspective(1200px) translate3d(0, var(--depth-y), var(--depth-z)) rotateX(var(--depth-rx)) rotateY(var(--depth-ry));
	transform-style: preserve-3d;
	will-change: transform;
}

.reveal-ready [data-reveal].is-visible.depth-item {
	transform: perspective(1200px) translate3d(0, var(--depth-y), var(--depth-z)) rotateX(var(--depth-rx)) rotateY(var(--depth-ry));
}

.motion-off .depth-item {
	transform: none !important;
	will-change: auto;
}

.site-main,
.entry {
	max-width: 960px;
	min-height: 55vh;
	margin: 0 auto;
	padding: 70px 6%;
}

.entry-title {
	font-family: Georgia, serif;
	font-size: clamp(36px, 5vw, 58px);
	font-weight: 400;
}

.entry-content {
	line-height: 1.8;
}

.alignwide {
	max-width: 1200px;
}

.alignfull {
	width: 100vw;
	max-width: none;
	margin-left: calc(50% - 50vw);
}

@media (min-width: 1600px) {
	.header,
	.section,
	footer {
		padding-left: max(6%, calc((100vw - 1440px) / 2));
		padding-right: max(6%, calc((100vw - 1440px) / 2));
	}

	.hero {
		min-height: 810px;
		padding-left: max(6%, calc((100vw - 1440px) / 2));
		padding-right: max(6%, calc((100vw - 1440px) / 2));
	}
}

@media (max-width: 1020px) {
	.header {
		min-height: 102px;
	}

	.header nav,
	.header nav ul {
		gap: 18px;
	}

	.header-cta {
		display: none;
	}

	.hero {
		min-height: 660px;
		grid-template-columns: 1fr 0.9fr;
		gap: 4%;
		padding-top: 64px;
	}

	.floating-label {
		left: -20px;
		bottom: 27px;
		padding: 14px 17px;
		font-size: 14px;
	}

	.floating-label strong {
		font-size: 22px;
	}

	.section {
		padding: 78px 6%;
	}

	.scroll-stage__sticky {
		grid-template-columns: minmax(260px, 0.75fr) minmax(350px, 1.25fr);
		gap: 3%;
	}

	.scene-card {
		width: min(34vw, 360px);
	}

	.logo-card {
		min-height: 150px;
		padding: 20px 14px;
	}

	.logo-card img {
		height: 52px;
	}

	.event-image img {
		height: 400px;
	}
}

@media (max-width: 760px) {
	.header {
		min-height: 142px;
		padding: 5px 7% 18px;
		flex-wrap: wrap;
		gap: 0;
	}

	.brand-wordmark {
		margin: 0 auto;
		font-size: 23px;
	}

	.header nav {
		width: 100%;
		margin-left: 0;
		overflow-x: auto;
	}

	.header nav,
	.header nav ul {
		justify-content: space-between;
		gap: 16px;
	}

	.header nav a {
		font-size: 12px;
		white-space: nowrap;
	}

	.hero {
		grid-template-columns: 1fr;
		gap: 46px;
		padding: 46px 7% 86px;
	}

	h1 {
		font-size: clamp(47px, 13vw, 68px);
		letter-spacing: -2px;
	}

	.hero-description {
		max-width: 470px;
		font-size: 16px;
	}

	.hero-caption {
		display: none;
	}

	.hero-visual {
		margin: 0 7% 18px 4%;
	}

	.hero-visual::after {
		inset: 14px -14px -14px 14px;
	}

	.floating-label {
		left: -18px;
		bottom: 24px;
	}

	.image-caption {
		right: 0;
		bottom: -34px;
		font-size: 10px;
		letter-spacing: 1px;
	}

	.hero-bottom {
		bottom: 22px;
		font-size: 10px;
		align-items: center;
	}

	.hero-bottom a {
		max-width: 145px;
		font-size: 11px;
		line-height: 1.5;
		text-align: right;
	}

	.section {
		padding: 64px 7%;
	}

	.scroll-stage {
		height: 215svh;
	}

	.scroll-stage__sticky {
		min-height: 690px;
		display: block;
		padding: 48px 7% 0;
	}

	.scroll-stage__copy {
		max-width: 520px;
	}

	.scroll-stage__copy h2 {
		font-size: 38px;
	}

	.scroll-stage__copy > p:not(.eyebrow):not(.scroll-stage__hint) {
		max-width: 560px;
		font-size: 14px;
		line-height: 1.65;
	}

	.scroll-stage__meter {
		margin-top: 22px;
	}

	.scroll-scene {
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		height: 53%;
	}

	.scene-card {
		width: min(58vw, 300px);
		height: min(48svh, 440px);
	}

	.motion-off .scroll-stage__sticky {
		display: block;
		padding: 65px 7%;
	}

	.motion-off .scroll-scene {
		position: relative;
		display: grid;
		grid-template-columns: 1fr;
		height: auto;
		margin-top: 36px;
	}

	.motion-off .scene-card {
		height: min(112vw, 480px);
	}

	.eyebrow {
		margin-bottom: 23px;
		font-size: 11px;
		letter-spacing: 1.5px;
	}

	.section-heading {
		display: block;
		margin-bottom: 34px;
	}

	.section-heading > p {
		margin-top: 23px;
	}

	h2 {
		font-size: 39px;
		letter-spacing: -1px;
	}

	.service-grid {
		grid-template-columns: 1fr;
	}

	.service-grid article,
	.service-grid article + article {
		padding: 25px 0 29px;
		border-left: 0;
		border-bottom: 1px solid var(--line);
	}

	.number {
		margin-bottom: 19px;
	}

	.logo-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.logo-card {
		min-height: 137px;
		padding: 18px 11px;
	}

	.logo-card img {
		height: 47px;
	}

	.events,
	.faq-layout {
		grid-template-columns: 1fr;
		gap: 42px;
	}

	.event-image img {
		height: 280px;
	}

	.event-copy h2 {
		font-size: 39px;
	}

	.gallery {
		padding-top: 0;
	}

	.gallery-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 14px;
	}

	.gallery-item > span {
		padding-top: 12px;
		font-size: 12px;
	}

	.faq-list summary {
		font-size: 16px;
		line-height: 1.5;
	}

	.closing {
		padding-top: 69px;
		padding-bottom: 69px;
	}

	.closing h2 {
		font-size: 36px;
	}

	.closing > p br {
		display: none;
	}

	footer {
		padding: 28px 7% 86px;
		flex-wrap: wrap;
	}

	footer .brand-wordmark {
		width: 100%;
		align-items: flex-start;
		margin: 0;
	}

	footer p {
		display: none;
	}

	.floating-whatsapp {
		right: 13px;
		bottom: 13px;
		padding: 12px 15px;
	}
}

@media (max-width: 782px) {
	.admin-bar .scroll-stage__sticky {
		top: 46px;
		height: calc(100svh - 46px);
	}

	.admin-bar.motion-off .scroll-stage__sticky {
		height: auto;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		animation: none !important;
		transition: none !important;
	}

	[data-tilt] {
		transform: none !important;
	}

	.hero-image-wrap,
	.floating-label {
		animation: none !important;
	}

	.reveal-ready [data-reveal] {
		opacity: 1;
		transform: none;
	}

	.scroll-stage {
		height: auto;
	}

	.scroll-stage__sticky {
		position: relative;
		height: auto;
		min-height: 0;
		grid-template-columns: minmax(260px, 0.7fr) minmax(0, 1.3fr);
		padding-top: 88px;
		padding-bottom: 88px;
	}

	.scroll-scene {
		height: auto;
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 15px;
	}

	.scene-card {
		position: relative;
		left: auto;
		top: auto;
		width: 100%;
		height: 390px;
		opacity: 1;
		transform: none !important;
	}

	.scroll-stage__meter,
	.scroll-stage__hint {
		display: none;
	}
}
/* Tüm içerik bölümlerinde koyu, katmanlı Kartaca sahnesi */
.services,.process,.references,.events,.gallery,.faq,.closing{position:relative;isolation:isolate;min-height:88svh;overflow:hidden;background:radial-gradient(circle at 82% 16%,rgba(210,162,70,.12),transparent 30%),linear-gradient(145deg,#4B2C24 0%,#3A241D 58%,#512B26 100%);color:#FFF8EE;border-top:1px solid rgba(246,223,175,.13)}
.process,.events,.faq{background:radial-gradient(circle at 12% 82%,rgba(196,90,60,.13),transparent 30%),linear-gradient(155deg,#3A241D 0%,#4B2C24 65%,#321C18 100%)}
.references,.gallery{background:radial-gradient(circle at 85% 20%,rgba(210,162,70,.11),transparent 28%),linear-gradient(145deg,#563128 0%,#42251F 65%,#35201C 100%)}
.services:before,.process:before,.references:before,.events:before,.gallery:before,.faq:before,.closing:before{content:'';position:absolute;z-index:-1;width:min(62vw,760px);height:min(62vw,760px);right:-25vw;top:-32vw;border:1px solid rgba(210,162,70,.2);border-radius:50%;box-shadow:0 0 120px rgba(210,162,70,.045);pointer-events:none}
.process:before,.events:before,.faq:before{right:auto;left:-28vw;top:auto;bottom:-34vw}
.services>*,.process>*,.references>*,.events>*,.gallery>*,.faq>*,.closing>*{position:relative;z-index:1}
.section .eyebrow,.faq-intro .eyebrow{color:#F6DFAF}
.section h2,.section h3,.faq-list summary{color:#FFF8EE}
.section h2 em,.section-heading h2 em,.faq-intro h2 em,.event-copy h2 em,.closing h2 em{color:#F6DFAF}
.section-heading>p,.service-grid p,.process-grid p,.event-copy>p:not(.eyebrow),.faq-intro>p:not(.eyebrow),.faq-list details p,.closing>p:not(.eyebrow){color:#E8D7C9}
.service-grid{gap:18px;border:0;perspective:1200px}
.service-grid article,.service-grid article+article{padding:34px 30px;border:1px solid rgba(210,162,70,.22);border-radius:9px;background:linear-gradient(145deg,rgba(255,248,238,.09),rgba(255,248,238,.025));box-shadow:0 26px 55px rgba(24,9,7,.22);backdrop-filter:blur(4px)}
.number,.process-grid>li>span{color:#F6DFAF}
.process-grid{gap:18px;border:0;perspective:1200px}
.process-grid li,.process-grid li+li{padding:34px 30px;border:1px solid rgba(210,162,70,.22);border-radius:9px;background:linear-gradient(145deg,rgba(255,248,238,.08),rgba(255,248,238,.02));box-shadow:0 24px 52px rgba(24,9,7,.2)}
.logo-grid{gap:14px;border:0;background:transparent;perspective:1200px}
.logo-card,.logo-card:nth-child(n){min-height:164px;border:1px solid rgba(210,162,70,.28);border-radius:8px;background:#FFFDF9;box-shadow:0 24px 52px rgba(24,9,7,.23)}
.logo-card span{color:#6E5549}
.event-image{filter:drop-shadow(0 28px 48px rgba(20,7,5,.35))}
.event-image img{border:1px solid rgba(210,162,70,.28)}
.event-image>span{background:#FFF8EE;color:#7A1F1F}
.event-details span{color:#F6E5D3;border-color:rgba(210,162,70,.3);background:rgba(255,248,238,.06)}
.gallery-grid{perspective:1300px}
.gallery-item{color:#FFF8EE}
.gallery-item img{border:1px solid rgba(210,162,70,.25);box-shadow:0 28px 55px rgba(20,7,5,.28)}
.gallery-item>span{color:#F6E5D3}
.gallery-item b{color:#F6DFAF}
.faq-list details{border-color:rgba(210,162,70,.22);background:rgba(255,248,238,.035);padding:0 22px}
.faq-list details:first-child{border-top-color:rgba(210,162,70,.22)}
.faq-list details:last-child{border-bottom-color:rgba(210,162,70,.22)}
.faq-list summary:after,.faq-list summary::after{color:#D2A246}
.closing{text-align:center;background:radial-gradient(circle at 50% 105%,rgba(210,162,70,.16),transparent 34%),linear-gradient(145deg,#4B2C24,#321B17)}
.closing .button-dark{background:#D2A246;color:#4A2D18;box-shadow:0 15px 36px rgba(20,7,5,.28)}
.closing .button-dark:hover{background:#F6DFAF;color:#4A2D18}
.closing .phone,.closing .contact-links a{color:#F6E5D3}
.closing .contact-links a{border-color:#D2A246}
@media(max-width:680px){.services,.process,.references,.events,.gallery,.faq,.closing{min-height:0}.service-grid,.process-grid{gap:0}.service-grid article,.service-grid article+article,.process-grid li,.process-grid li+li{border-width:1px;margin-bottom:13px;padding:26px 22px}.logo-grid{gap:8px}.logo-card,.logo-card:nth-child(n){min-height:135px}.faq-list details{padding:0 14px}}
@media(max-width:680px){body:not(.motion-off) .scroll-stage .scroll-scene{min-height:0;height:clamp(280px,42svh,370px)}}
/* Dribbble esintili, kaydırmayla yana akan 3B fotoğraf sahnesi */
.horizontal-showcase{position:relative;height:520vh;min-height:100svh;background:radial-gradient(circle at 82% 13%,rgba(210,162,70,.12),transparent 30%),linear-gradient(145deg,#4B2C24 0%,#3A241D 62%,#512B26 100%);color:#FFF8EE;isolation:isolate}
.horizontal-sticky{position:sticky;top:0;height:100svh;min-height:650px;display:grid;grid-template-columns:minmax(260px,.62fr) minmax(0,1.38fr);align-items:center;gap:clamp(28px,4vw,70px);padding:clamp(46px,6vh,72px) 6%;overflow:hidden}
.horizontal-sticky:before{content:'';position:absolute;width:min(64vw,820px);height:min(64vw,820px);right:-22vw;top:-34vw;border:1px solid rgba(210,162,70,.2);border-radius:50%;box-shadow:0 0 130px rgba(210,162,70,.05);pointer-events:none}
.horizontal-copy{position:relative;z-index:5;align-self:center;max-width:430px}
.horizontal-copy .eyebrow{color:#F6DFAF;margin-bottom:22px}
.horizontal-copy h2{font-size:clamp(39px,4.6vw,68px);line-height:1.08;color:#FFF8EE}
.horizontal-copy h2 em{color:#F6DFAF}
.horizontal-copy>p:not(.eyebrow):not(.horizontal-status){max-width:390px;margin:24px 0 20px;color:#E8D7C9;font-size:15px;line-height:1.78}
.horizontal-copy .text-link{display:inline-block;margin:0 0 20px;color:#FFF8EE;border-color:#D2A246}
.horizontal-progress{width:min(330px,100%);height:2px;background:rgba(246,229,211,.16);overflow:hidden}
.horizontal-progress span{display:block;width:100%;height:100%;background:linear-gradient(90deg,#D2A246,#F6DFAF);transform:scaleX(0);transform-origin:left center;will-change:transform}
.horizontal-status{display:flex;align-items:baseline;gap:7px;margin:13px 0 0;color:#D2A246}
.horizontal-status strong{font-family:Georgia,serif;font-size:24px;font-weight:400;color:#F6DFAF}
.horizontal-status span{font-size:12px;letter-spacing:1px}
.horizontal-status small{margin-left:auto;color:#E8D7C9;font-size:11px;letter-spacing:2px;text-transform:uppercase}
.horizontal-viewport{position:relative;z-index:3;width:100%;height:min(72svh,700px);min-height:500px;overflow:hidden;perspective:1700px;transform-style:preserve-3d;mask-image:linear-gradient(90deg,transparent 0,#000 5%,#000 95%,transparent 100%)}
.horizontal-track{--track-x:0px;position:relative;height:100%;display:flex;align-items:center;gap:clamp(16px,2vw,32px);width:max-content;padding:0 70px;transform:translate3d(var(--track-x),0,0);transform-style:preserve-3d;will-change:transform}
.horizontal-card{--card-y:0px;--card-z:0px;--card-rx:0deg;--card-ry:0deg;--card-rz:0deg;--card-scale:.88;--card-opacity:.42;position:relative;flex:0 0 clamp(265px,29vw,410px);height:min(66svh,620px);margin:0;overflow:hidden;border:1px solid rgba(246,223,175,.26);border-radius:12px;background:#271310;box-shadow:0 32px 78px rgba(18,5,4,.42);opacity:var(--card-opacity);transform:translate3d(0,var(--card-y),var(--card-z)) rotateX(var(--card-rx)) rotateY(var(--card-ry)) rotateZ(var(--card-rz)) scale(var(--card-scale));transform-style:preserve-3d;transform-origin:center center;backface-visibility:hidden;will-change:transform,opacity}
.horizontal-card--wide{flex-basis:clamp(390px,45vw,640px);height:min(54svh,500px)}
.horizontal-card img{width:100%;height:100%;object-fit:cover}
.horizontal-card:nth-child(5) img{object-position:50% 58%}
.horizontal-card:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(36,12,9,.86));pointer-events:none}
.horizontal-card figcaption{position:absolute;z-index:2;left:22px;right:22px;bottom:20px;display:flex;align-items:center;gap:12px;color:#FFF8EE;font-size:13px;letter-spacing:1.15px;text-transform:uppercase}
.horizontal-card figcaption span{display:grid;place-items:center;width:31px;height:31px;border:1px solid rgba(246,223,175,.48);border-radius:50%;color:#F6DFAF;font-size:10px}
.motion-off .horizontal-showcase{height:auto!important}
.motion-off .horizontal-sticky{position:relative;height:auto;min-height:0;display:block;padding:88px 6%;overflow:visible}
.motion-off .horizontal-viewport{height:auto;min-height:0;overflow:visible;mask-image:none}
.motion-off .horizontal-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:auto;height:auto;margin-top:42px;padding:0!important;transform:none!important}
.motion-off .horizontal-card,.motion-off .horizontal-card--wide{width:auto;height:430px;opacity:1;transform:none!important}
@media(max-width:900px){.horizontal-sticky{grid-template-columns:minmax(220px,.54fr) minmax(0,1.46fr);gap:24px;padding-left:5%;padding-right:5%}.horizontal-card{flex-basis:min(38vw,340px)}.horizontal-card--wide{flex-basis:min(55vw,520px)}}
@media(max-width:680px){.horizontal-sticky{min-height:100svh;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);align-content:center;gap:12px;padding:42px 7% 24px}.horizontal-copy{max-width:none}.horizontal-copy .eyebrow{margin-bottom:10px}.horizontal-copy h2{font-size:35px}.horizontal-copy>p:not(.eyebrow):not(.horizontal-status){font-size:13px;line-height:1.55;margin:10px 0}.horizontal-copy .text-link{display:none}.horizontal-progress{width:100%}.horizontal-status{margin-top:8px}.horizontal-viewport{height:49svh;min-height:300px;margin-inline:-1%;width:102%}.horizontal-card{flex-basis:min(67vw,270px);height:min(46svh,420px)}.horizontal-card--wide{flex-basis:min(82vw,360px);height:min(39svh,340px)}.horizontal-card figcaption{left:16px;right:16px;bottom:15px;font-size:11px}.horizontal-card figcaption span{width:27px;height:27px}.motion-off .horizontal-sticky{padding:65px 7%}.motion-off .horizontal-track{grid-template-columns:1fr;gap:14px;margin-top:30px}.motion-off .horizontal-card,.motion-off .horizontal-card--wide{height:min(112vw,480px)}}
@media(prefers-reduced-motion:reduce){.horizontal-showcase{height:auto!important}.horizontal-sticky{position:relative;height:auto;min-height:0;display:block;padding:88px 6%;overflow:visible}.horizontal-viewport{height:auto;min-height:0;overflow:visible;mask-image:none}.horizontal-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:auto;height:auto;margin-top:42px;padding:0!important;transform:none!important}.horizontal-card,.horizontal-card--wide{width:auto;height:430px;opacity:1;transform:none!important}}



@media (max-width: 760px) and (prefers-reduced-motion: reduce) {
	.scroll-stage__sticky {
		display: block;
		padding: 65px 7%;
	}

	.scroll-scene {
		position: relative;
		grid-template-columns: 1fr;
		margin-top: 36px;
	}

	.scene-card {
		height: min(112vw, 480px);
	}
}

@media (max-width: 680px) {
	.depth-item {
		will-change: auto;
	}
}

@media (prefers-reduced-motion: reduce) {
	.depth-item {
		transform: none !important;
		will-change: auto;
	}
}

/* Erişilebilir, beş yapraklı 3B menü kataloğu */
.offer-catalog {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background:
		radial-gradient(circle at 12% 13%, rgb(210 162 70 / 16%), transparent 31%),
		linear-gradient(145deg, #321b17 0%, #4b2c24 56%, #542a26 100%);
	color: var(--cream);
	border-top: 1px solid rgb(246 223 175 / 14%);
}

.offer-catalog::before,
.offer-catalog::after {
	content: "";
	position: absolute;
	z-index: -1;
	width: min(70vw, 900px);
	aspect-ratio: 1;
	border: 1px solid rgb(210 162 70 / 14%);
	border-radius: 50%;
	pointer-events: none;
}

.offer-catalog::before {
	right: -38vw;
	top: -34vw;
}

.offer-catalog::after {
	left: -49vw;
	bottom: -52vw;
}

.catalog-heading,
.catalog-shell {
	position: relative;
	z-index: 1;
}

.catalog-heading .eyebrow {
	color: var(--gold-light);
}

.catalog-heading .section-heading {
	margin-bottom: 34px;
}

.catalog-heading h2,
.catalog-heading h2 em {
	color: var(--cream);
}

.catalog-heading h2 em {
	color: var(--gold-light);
}

.catalog-heading .section-heading > p {
	color: #e8d7c9;
}

.catalog-shell {
	max-width: 1240px;
	margin: 0 auto;
}

.catalog-instructions {
	max-width: 760px;
	margin: 0 auto 20px;
	color: #dcc9bc;
	font-size: 13px;
	line-height: 1.65;
	text-align: center;
}

.catalog-stage {
	position: relative;
	display: grid;
	place-items: center;
	width: 100%;
}

/* JavaScript yoksa bütün sayfalar okunabilir bir ızgara olarak kalır. */
.catalog-book {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	width: 100%;
}

.catalog-leaf {
	display: contents;
}

.catalog-page {
	position: relative;
	min-width: 0;
	min-height: 650px;
	display: flex;
	flex-direction: column;
	padding: clamp(26px, 3.1vw, 40px);
	overflow: hidden;
	border: 1px solid #e4cda8;
	border-radius: 3px 12px 12px 3px;
	background:
		linear-gradient(90deg, rgb(106 61 35 / 8%), transparent 6%),
		var(--paper);
	color: var(--ink);
	box-shadow: 0 25px 55px rgb(19 6 4 / 28%);
}

.catalog-page--back {
	border-radius: 12px 3px 3px 12px;
	background:
		linear-gradient(270deg, rgb(106 61 35 / 8%), transparent 6%),
		var(--paper);
}

.catalog-page::before {
	content: "";
	position: absolute;
	inset: 10px;
	border: 1px solid rgb(210 162 70 / 28%);
	border-radius: inherit;
	pointer-events: none;
}

.catalog-page > * {
	position: relative;
	z-index: 1;
}

.catalog-page h3 {
	margin: 0 0 20px;
	color: var(--ink);
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(30px, 3vw, 43px);
	font-weight: 400;
	line-height: 1.04;
	letter-spacing: -1.25px;
}

.catalog-page h3 em {
	color: var(--wine);
	font-weight: 400;
}

.catalog-page h4 {
	margin: 0 0 10px;
	color: var(--wine);
	font-size: 13px;
	letter-spacing: 1.35px;
	text-transform: uppercase;
}

.catalog-page p {
	margin: 0;
}

.catalog-page-head {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 24px;
	color: var(--gold-dark);
	font-size: 10px;
	font-weight: 750;
	letter-spacing: 1.8px;
	text-transform: uppercase;
}

.catalog-page-head span {
	display: grid;
	width: 32px;
	height: 32px;
	place-items: center;
	border: 1px solid var(--gold);
	border-radius: 50%;
}

.catalog-lead {
	max-width: 92%;
	color: var(--muted);
	font-size: 14px;
	line-height: 1.7;
}

.catalog-page-number {
	position: absolute;
	right: 25px;
	bottom: 19px;
	color: var(--gold-light);
	font-size: 11px;
	font-weight: 750;
	letter-spacing: 2px;
}

.catalog-page--cover {
	justify-content: flex-start;
	padding: 46px 42px;
	border-color: #d4a54f;
	background:
		radial-gradient(circle at 50% 18%, rgb(246 223 175 / 17%), transparent 29%),
		linear-gradient(145deg, var(--wine-deep), var(--wine-dark));
	color: #fff;
}

.catalog-page--cover::before {
	border-color: rgb(246 223 175 / 46%);
	box-shadow: inset 0 0 0 4px rgb(56 7 12 / 35%);
}

.catalog-page--cover > img {
	position: absolute;
	z-index: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 61%;
	object-fit: cover;
	object-position: center 43%;
	filter: saturate(0.92) contrast(1.04);
	mask-image: linear-gradient(to bottom, transparent, #000 24%);
}

.catalog-cover-copy {
	max-width: 92%;
}

.catalog-kicker {
	margin-bottom: 18px !important;
	color: var(--gold-light);
	font-size: 10px;
	font-weight: 750;
	letter-spacing: 3px;
	text-transform: uppercase;
}

.catalog-wordmark {
	display: inline-flex;
	flex-direction: column;
	margin-bottom: 22px !important;
	color: var(--gold-light);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 27px;
	font-weight: 700;
	letter-spacing: 2.5px;
	line-height: 1;
}

.catalog-wordmark span {
	margin-top: 8px;
	font-family: "Segoe UI", Arial, sans-serif;
	font-size: 9px;
	letter-spacing: 6px;
}

.catalog-page--cover h3 {
	margin-bottom: 11px;
	color: #fff;
	font-size: clamp(36px, 4vw, 55px);
}

.catalog-page--cover .catalog-cover-copy > p:last-child {
	color: #f0ded0;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 17px;
	font-style: italic;
}

.catalog-feature-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 9px;
	margin: 24px 0 17px;
}

.catalog-feature-grid div {
	display: flex;
	align-items: center;
	gap: 9px;
	min-height: 50px;
	padding: 10px;
	border: 1px solid var(--line);
	background: rgb(255 253 249 / 68%);
}

.catalog-feature-grid strong {
	color: var(--gold-dark);
	font-family: Georgia, serif;
	font-size: 17px;
	font-weight: 400;
}

.catalog-feature-grid span {
	font-size: 11px;
	font-weight: 650;
	line-height: 1.3;
}

.catalog-image-strip {
	min-height: 0;
	flex: 1;
	overflow: hidden;
	border-radius: 5px;
}

.catalog-image-strip img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 53%;
}

.catalog-menu-columns {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 13px;
	margin-bottom: 17px;
}

.catalog-menu-columns > div {
	padding: 15px;
	border-top: 2px solid var(--gold);
	background: #fffdf9;
}

.catalog-menu-columns ul {
	margin: 0;
	padding-left: 17px;
	color: var(--muted);
	font-size: 12px;
	line-height: 1.65;
}

.catalog-note {
	margin-bottom: 16px;
	padding: 13px 15px;
	border-left: 3px solid var(--wine);
	background: #f4e4d1;
}

.catalog-note strong,
.catalog-hot-service strong {
	display: block;
	margin-bottom: 4px;
	color: var(--wine);
	font-size: 11px;
	letter-spacing: 1.15px;
	text-transform: uppercase;
}

.catalog-note p {
	color: var(--muted);
	font-size: 11px;
	line-height: 1.55;
}

.catalog-corner-image,
.catalog-wide-image,
.catalog-bottom-image {
	width: 100%;
	min-height: 0;
	flex: 1;
	object-fit: cover;
	border-radius: 5px;
}

.catalog-corner-image {
	max-height: 155px;
}

.catalog-wide-image {
	max-height: 205px;
	object-position: center 57%;
}

.catalog-chip-row {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin: 0 0 16px;
}

.catalog-chip-row span {
	padding: 7px 9px;
	border: 1px solid #ddc49b;
	border-radius: 999px;
	color: var(--wine);
	font-size: 9px;
	font-weight: 700;
}

.catalog-timeline {
	position: relative;
	display: grid;
	gap: 12px;
	margin-bottom: 18px;
}

.catalog-timeline div {
	display: grid;
	grid-template-columns: 95px 1fr;
	gap: 14px;
	padding-bottom: 11px;
	border-bottom: 1px solid var(--line);
}

.catalog-timeline span {
	color: var(--wine);
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.9px;
	text-transform: uppercase;
}

.catalog-timeline p {
	color: var(--muted);
	font-size: 12px;
	line-height: 1.5;
}

.catalog-timeline--compact {
	gap: 8px;
	margin-bottom: 12px;
}

.catalog-timeline--compact div {
	padding-bottom: 8px;
}

.catalog-photo-pair {
	display: grid;
	grid-template-columns: 1.1fr 0.9fr;
	gap: 9px;
	min-height: 0;
	flex: 1;
}

.catalog-photo-pair img {
	width: 100%;
	height: 100%;
	min-height: 150px;
	object-fit: cover;
	border-radius: 5px;
}

.catalog-bottom-image {
	max-height: 165px;
	object-position: center 56%;
}

.catalog-premium-list {
	display: grid;
	gap: 10px;
	margin-bottom: 15px;
}

.catalog-premium-list p {
	padding-left: 14px;
	border-left: 2px solid var(--gold);
	color: var(--muted);
	font-size: 11px;
	line-height: 1.5;
}

.catalog-premium-list strong {
	display: block;
	margin-bottom: 2px;
	color: var(--wine);
	font-size: 11px;
}

.catalog-hero-photo {
	position: relative;
	min-height: 0;
	flex: 1;
	overflow: hidden;
	border-radius: 5px;
}

.catalog-hero-photo::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, transparent 35%, rgb(46 14 12 / 72%));
}

.catalog-hero-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.catalog-hero-photo span {
	position: absolute;
	z-index: 2;
	right: 18px;
	top: 50%;
	color: #fff;
	font-family: Georgia, serif;
	font-size: 17px;
	font-style: italic;
	line-height: 1.45;
	text-align: right;
	transform: translateY(-50%);
}

.catalog-mosaic {
	display: grid;
	grid-template-columns: 1fr 1.15fr 1fr;
	gap: 7px;
	height: 250px;
	margin-bottom: 16px;
}

.catalog-mosaic figure {
	position: relative;
	margin: 0;
	overflow: hidden;
	border-radius: 4px;
}

.catalog-mosaic figure:nth-child(2) {
	transform: translateY(14px);
}

.catalog-mosaic img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.catalog-mosaic figcaption {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 18px 7px 7px;
	background: linear-gradient(transparent, rgb(44 15 11 / 82%));
	color: #fff;
	font-size: 9px;
	font-weight: 700;
	text-align: center;
}

.catalog-hot-service {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 7px;
	margin-top: auto;
}

.catalog-hot-service strong {
	grid-column: 1 / -1;
}

.catalog-hot-service span {
	padding: 8px;
	border: 1px solid var(--line);
	color: var(--muted);
	font-size: 9px;
	line-height: 1.35;
}

.catalog-logo-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
	margin-top: 22px;
}

.catalog-logo-grid div {
	display: grid;
	height: 72px;
	place-items: center;
	padding: 10px;
	border: 1px solid var(--line);
	background: #fff;
}

.catalog-logo-grid img {
	width: auto;
	max-width: 88%;
	height: 42px;
	object-fit: contain;
}

.catalog-page--contact {
	justify-content: center;
	padding-bottom: 44px;
	background: linear-gradient(145deg, var(--wine-deep), var(--wine-dark));
	color: #fff;
}

.catalog-page--contact::before {
	border-color: rgb(246 223 175 / 40%);
}

.catalog-page--contact > img {
	position: absolute;
	z-index: 0;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0.19;
	filter: saturate(0.7);
}

.catalog-page--contact::after {
	content: "";
	position: absolute;
	z-index: 0;
	inset: 0;
	background: linear-gradient(145deg, rgb(63 13 18 / 91%), rgb(40 8 12 / 95%));
}

.catalog-page--contact > *:not(img) {
	z-index: 2;
}

.catalog-page-head--light {
	position: absolute;
	left: 38px;
	top: 36px;
	color: var(--gold-light);
}

.catalog-contact-copy {
	max-width: 390px;
	margin: auto;
	text-align: center;
}

.catalog-contact-copy .catalog-wordmark {
	align-items: center;
}

.catalog-contact-copy h3 {
	margin-bottom: 20px;
	color: #fff;
	font-size: clamp(38px, 4.2vw, 58px);
}

.catalog-contact-copy h3 em {
	color: var(--gold-light);
}

.catalog-contact-copy > p:not(.catalog-wordmark) {
	color: #ead9cd;
	font-size: 13px;
	line-height: 1.7;
}

.catalog-contact-button {
	display: inline-flex;
	min-height: 46px;
	align-items: center;
	justify-content: center;
	margin: 24px 0 19px;
	padding: 12px 20px;
	border-radius: 5px;
	background: var(--gold);
	color: var(--wine-dark);
	font-size: 12px;
	font-weight: 800;
}

.catalog-contact-copy address {
	display: grid;
	gap: 4px;
	color: #f4e4d9;
	font-size: 11px;
	font-style: normal;
}

.catalog-contact-copy address a:hover {
	color: var(--gold-light);
}

.catalog-controls {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: 24px;
	max-width: 1040px;
	margin: 24px auto 0;
}

.catalog-controls button {
	min-height: 46px;
	border: 1px solid rgb(246 223 175 / 42%);
	border-radius: 999px;
	background: rgb(255 248 238 / 7%);
	color: var(--cream);
	cursor: pointer;
	transition: border-color 0.2s ease, background 0.2s ease, transform 0.2s ease;
}

.catalog-controls button:hover:not(:disabled) {
	border-color: var(--gold-light);
	background: rgb(210 162 70 / 14%);
	transform: translateY(-2px);
}

.catalog-controls button:disabled {
	opacity: 0.38;
	cursor: not-allowed;
}

.catalog-open {
	padding: 11px 22px;
	background: var(--gold) !important;
	color: var(--wine-dark) !important;
	font-size: 12px;
	font-weight: 800;
}

.catalog-pager {
	display: grid;
	grid-template-columns: auto minmax(145px, 1fr) auto;
	align-items: center;
	gap: 14px;
}

.catalog-pager button {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 9px 17px;
	font-size: 12px;
	font-weight: 700;
}

.catalog-pager output {
	color: var(--gold-light);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 14px;
	text-align: center;
}

.offer-catalog:not(.catalog-enhanced) .catalog-controls {
	display: none;
}

/* Geliştirilmiş masaüstü görünümünde yapraklar kitap sırtından döner. */
.catalog-enhanced:not(.catalog-static) .catalog-stage {
	min-height: clamp(610px, 61vw, 760px);
	perspective: 2400px;
	perspective-origin: 50% 44%;
}

.catalog-enhanced:not(.catalog-static) .catalog-book {
	position: relative;
	display: block;
	width: min(1040px, 88vw);
	height: min(670px, 57vw);
	min-height: 560px;
	transform: translateX(-24%) rotateX(2deg) rotateY(-4deg);
	transform-style: preserve-3d;
	transition: transform 0.85s cubic-bezier(0.22, 1, 0.36, 1);
	outline: none;
}

.catalog-enhanced:not(.catalog-static) .catalog-book:focus-visible {
	outline: 3px solid var(--gold-light);
	outline-offset: 11px;
}

.catalog-enhanced:not(.catalog-static) .catalog-book.is-open {
	transform: translateX(0) rotateX(1.4deg);
}

.catalog-enhanced:not(.catalog-static) .catalog-book::after {
	content: "";
	position: absolute;
	z-index: 40;
	left: 50%;
	top: 1.5%;
	bottom: 1.5%;
	width: 8px;
	background: linear-gradient(90deg, rgb(62 28 19 / 42%), rgb(255 239 201 / 45%), rgb(62 28 19 / 38%));
	box-shadow: 0 0 18px rgb(41 15 10 / 34%);
	transform: translateX(-50%) translateZ(4px);
	pointer-events: none;
}

.catalog-enhanced:not(.catalog-static) .catalog-leaf {
	position: absolute;
	left: 50%;
	top: 0;
	width: 50%;
	height: 100%;
	display: block;
	transform: rotateY(0deg);
	transform-origin: left center;
	transform-style: preserve-3d;
	transition: transform 0.9s cubic-bezier(0.2, 0.7, 0.18, 1), filter 0.9s ease;
	will-change: transform;
}

.catalog-enhanced:not(.catalog-static) .catalog-leaf::after {
	content: "";
	position: absolute;
	z-index: 4;
	inset: 0 auto 0 0;
	width: 22px;
	background: linear-gradient(90deg, rgb(43 19 12 / 30%), transparent);
	opacity: 0.7;
	transform: translateZ(3px);
	pointer-events: none;
}

.catalog-enhanced:not(.catalog-static) .catalog-leaf.is-flipped {
	transform: rotateY(-180deg);
}

.catalog-enhanced:not(.catalog-static) .catalog-page {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	min-height: 0;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
	box-shadow: 0 24px 50px rgb(17 5 3 / 30%);
	transform-style: preserve-3d;
}

.catalog-enhanced:not(.catalog-static) .catalog-page--front {
	transform: rotateY(0deg) translateZ(1px);
}

.catalog-enhanced:not(.catalog-static) .catalog-page--back {
	transform: rotateY(180deg) translateZ(1px);
}

.catalog-enhanced:not(.catalog-static) .catalog-book:not(.is-open) .catalog-leaf:not(:first-child) {
	opacity: 0;
	pointer-events: none;
}

.catalog-static .catalog-instructions {
	max-width: 820px;
}

.catalog-static .catalog-controls {
	display: none;
}

.catalog-static .catalog-stage {
	min-height: 0;
}

.catalog-static .catalog-book {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	width: 100%;
	height: auto;
	transform: none !important;
}

.catalog-static .catalog-leaf {
	display: contents;
}

.catalog-static .catalog-page {
	position: relative;
	inset: auto;
	display: flex;
	width: auto;
	height: auto;
	min-height: 650px;
	opacity: 1;
	transform: none !important;
}

@media (max-width: 1080px) and (min-width: 821px) {
	.catalog-enhanced:not(.catalog-static) .catalog-page {
		padding: 27px;
	}

	.catalog-enhanced:not(.catalog-static) .catalog-page h3 {
		font-size: 30px;
	}

	.catalog-enhanced:not(.catalog-static) .catalog-page-head {
		margin-bottom: 16px;
	}

	.catalog-enhanced:not(.catalog-static) .catalog-menu-columns ul,
	.catalog-enhanced:not(.catalog-static) .catalog-timeline p {
		font-size: 10px;
	}

	.catalog-enhanced:not(.catalog-static) .catalog-mosaic {
		height: 205px;
	}
}

@media (max-width: 820px) {
	.offer-catalog {
		padding-left: 5%;
		padding-right: 5%;
	}

	.catalog-heading .section-heading {
		margin-bottom: 27px;
	}

	.catalog-instructions {
		padding: 0 3%;
	}

	.catalog-enhanced:not(.catalog-static) .catalog-stage {
		min-height: clamp(590px, 148vw, 680px);
		perspective: none;
	}

	.catalog-enhanced:not(.catalog-static) .catalog-book {
		position: relative;
		display: block;
		width: min(440px, 92vw);
		height: clamp(590px, 148vw, 680px);
		min-height: 0;
		transform: none !important;
	}

	.catalog-enhanced:not(.catalog-static) .catalog-book::after {
		display: none;
	}

	.catalog-enhanced:not(.catalog-static) .catalog-leaf {
		position: static;
		display: contents;
		transform: none !important;
		transition: none;
	}

	.catalog-enhanced:not(.catalog-static) .catalog-leaf::after {
		display: none;
	}

	.catalog-enhanced:not(.catalog-static) .catalog-page,
	.catalog-enhanced:not(.catalog-static) .catalog-page--front,
	.catalog-enhanced:not(.catalog-static) .catalog-page--back {
		position: absolute;
		inset: 0;
		display: none;
		width: 100%;
		height: 100%;
		padding: 29px 27px;
		transform: none;
		backface-visibility: visible;
		-webkit-backface-visibility: visible;
	}

	.catalog-enhanced:not(.catalog-static) .catalog-page.is-current {
		display: flex;
		animation: catalog-page-in 0.38s ease both;
	}

	.catalog-enhanced:not(.catalog-static) .catalog-book:not(.is-open) .catalog-page--cover {
		display: flex;
	}

	.catalog-controls {
		grid-template-columns: 1fr;
		gap: 13px;
		max-width: 440px;
		margin-top: 18px;
	}

	.catalog-open {
		width: 100%;
	}

	.catalog-pager {
		grid-template-columns: auto 1fr auto;
		gap: 8px;
	}

	.catalog-pager button {
		padding: 9px 14px;
	}

	.catalog-static .catalog-book {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 470px) {
	.catalog-page h3,
	.catalog-enhanced:not(.catalog-static) .catalog-page h3 {
		font-size: 29px;
	}

	.catalog-page--cover,
	.catalog-enhanced:not(.catalog-static) .catalog-page--cover {
		padding: 36px 28px;
	}

	.catalog-page--cover h3,
	.catalog-contact-copy h3 {
		font-size: 38px !important;
	}

	.catalog-page-head {
		margin-bottom: 17px;
	}

	.catalog-menu-columns {
		gap: 7px;
	}

	.catalog-menu-columns > div {
		padding: 11px;
	}

	.catalog-menu-columns ul {
		padding-left: 14px;
		font-size: 10px;
	}

	.catalog-timeline div {
		grid-template-columns: 78px 1fr;
		gap: 9px;
	}

	.catalog-timeline p,
	.catalog-premium-list p {
		font-size: 10px;
	}

	.catalog-feature-grid span {
		font-size: 10px;
	}

	.catalog-mosaic {
		height: 220px;
	}

	.catalog-logo-grid div {
		height: 62px;
	}

	.catalog-logo-grid img {
		height: 34px;
	}

	.catalog-pager button span {
		display: none;
	}
}

@keyframes catalog-page-in {
	from {
		opacity: 0;
		transform: translateX(16px) scale(0.985);
	}
	to {
		opacity: 1;
		transform: translateX(0) scale(1);
	}
}

@media (prefers-reduced-motion: reduce) {
	.offer-catalog .catalog-book,
	.offer-catalog .catalog-leaf,
	.offer-catalog .catalog-page {
		animation: none !important;
		transition: none !important;
		transform: none !important;
	}
}

/* Fuar alanında örnek işlerimiz */
.work-page {
	background: #2b1713;
	color: #fff8ee;
}

.work-page .header {
	position: relative;
	z-index: 30;
	background: #fff8ee;
}

.work-page .header nav a[aria-current="page"],
.work-page .header .current-menu-item > a {
	color: var(--gold-dark);
}

.work-page .header nav a[aria-current="page"]::after,
.work-page .header .current-menu-item > a::after {
	right: 0;
}

.work-page main {
	overflow: clip;
}

.work-hero {
	position: relative;
	min-height: calc(100svh - 116px);
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr);
	align-items: center;
	gap: 8%;
	padding: clamp(80px, 10vh, 130px) 7%;
	overflow: hidden;
	background:
		radial-gradient(circle at 80% 22%, rgb(210 162 70 / 17%), transparent 31%),
		linear-gradient(145deg, #3b1e18, #6b2a27 58%, #351a16);
}

.work-orbits {
	position: absolute;
	inset: 0;
	pointer-events: none;
}

.work-orbits span {
	position: absolute;
	border: 1px solid rgb(210 162 70 / 24%);
	border-radius: 50%;
}

.work-orbits span:nth-child(1) {
	width: min(62vw, 820px);
	height: min(62vw, 820px);
	right: -28vw;
	top: -35vw;
}

.work-orbits span:nth-child(2) {
	width: 150px;
	height: 150px;
	left: 44%;
	bottom: 11%;
	box-shadow: inset 0 0 55px rgb(210 162 70 / 5%);
}

.work-orbits span:nth-child(3) {
	width: 32px;
	height: 32px;
	left: 8%;
	top: 16%;
	border: 0;
	background: rgb(210 162 70 / 17%);
}

.work-hero-copy {
	position: relative;
	z-index: 2;
	max-width: 900px;
}

.work-hero .eyebrow {
	color: var(--gold-light);
}

.work-hero h1 {
	max-width: 900px;
	margin: 0 0 32px;
	color: #fff8ee;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(58px, 8.2vw, 126px);
	font-weight: 400;
	line-height: 0.95;
	letter-spacing: -4px;
}

.work-hero h1 em,
.case-logo-copy h2 em,
.case-story-copy h2 em,
.work-contact h2 em {
	color: #f4cd82;
	font-weight: 400;
}

.work-hero-copy > p:not(.eyebrow) {
	max-width: 650px;
	color: #e8d7c9;
	font-size: clamp(16px, 1.5vw, 21px);
	line-height: 1.8;
}

.work-scroll-link,
.case-logo-copy a {
	display: inline-flex;
	align-items: center;
	gap: 16px;
	padding: 14px 0;
	border-bottom: 1px solid var(--gold);
	color: #fff8ee;
	font-size: 14px;
}

.work-scroll-link {
	margin-top: 22px;
}

.work-scroll-link span,
.case-logo-copy a span {
	color: #f4cd82;
	font-size: 20px;
}

.work-hero-index {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: 16px 20px;
	padding: 30px;
	border: 1px solid rgb(246 223 175 / 20%);
	border-radius: 8px;
	background: rgb(255 248 238 / 6%);
	box-shadow: 0 30px 65px rgb(17 4 3 / 25%);
	backdrop-filter: blur(7px);
}

.work-hero-index span {
	color: var(--gold-light);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 32px;
}

.work-hero-index p {
	margin: 0;
	color: #e8d7c9;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 2.4px;
}

.work-hero-index i {
	grid-column: 1 / -1;
	height: 1px;
	background: linear-gradient(90deg, rgb(210 162 70 / 50%), transparent);
}

.case-logo-scene {
	position: relative;
	height: 190svh;
	background:
		radial-gradient(circle at 17% 74%, rgb(196 90 60 / 14%), transparent 30%),
		linear-gradient(145deg, #2d1713, #4b2c24 62%, #321a16);
}

.case-logo-scene--alternate {
	background:
		radial-gradient(circle at 82% 76%, rgb(210 162 70 / 12%), transparent 31%),
		linear-gradient(145deg, #341a16, #5a2922 62%, #29130f);
}

.case-logo-sticky {
	position: sticky;
	top: 0;
	min-height: 100svh;
	display: grid;
	grid-template-columns: minmax(320px, 0.85fr) minmax(0, 1.15fr);
	grid-template-rows: auto 1fr;
	align-items: center;
	gap: 22px clamp(40px, 8vw, 130px);
	padding: clamp(62px, 8vh, 100px) 7%;
	overflow: hidden;
	perspective: 1500px;
}

.case-logo-sticky::before {
	content: "";
	position: absolute;
	width: min(66vw, 900px);
	height: min(66vw, 900px);
	right: -28vw;
	top: -34vw;
	border: 1px solid rgb(210 162 70 / 18%);
	border-radius: 50%;
	pointer-events: none;
}

.case-count {
	grid-column: 1 / -1;
	align-self: end;
	margin: 0;
	color: var(--gold-light);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 2.3px;
}

.case-logo-stage {
	position: relative;
	z-index: 2;
	min-width: 0;
}

.case-logo-card {
	--logo-y: 0px;
	--logo-z: 0px;
	--logo-ry: 0deg;
	--logo-scale: 0.9;
	position: relative;
	min-height: 390px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 27px;
	border: 1px solid rgb(210 162 70 / 50%);
	border-radius: 13px;
	background: linear-gradient(145deg, #fffdf8, #f3e4d1);
	box-shadow: 0 42px 90px rgb(13 3 2 / 42%);
	transform: translate3d(0, var(--logo-y), var(--logo-z)) rotateY(var(--logo-ry)) scale(var(--logo-scale));
	transform-style: preserve-3d;
	will-change: transform;
}

.case-logo-card::after {
	content: "";
	position: absolute;
	inset: 12px;
	border: 1px solid rgb(139 95 22 / 16%);
	border-radius: 8px;
	pointer-events: none;
}

.case-logo-card > span {
	position: relative;
	z-index: 1;
	color: var(--gold-dark);
	font-size: 9px;
	font-weight: 800;
	letter-spacing: 2.4px;
}

.case-logo-card img {
	position: relative;
	z-index: 1;
	width: 100%;
	height: 240px;
	object-fit: contain;
	filter: drop-shadow(0 14px 24px rgb(58 36 29 / 16%));
}

.case-logo-copy {
	position: relative;
	z-index: 2;
	max-width: 590px;
}

.case-logo-copy h2,
.case-story-copy h2,
.work-contact h2 {
	margin: 0;
	color: #fff8ee;
	font-family: Georgia, "Times New Roman", serif;
	font-weight: 400;
}

.case-logo-copy h2 {
	font-size: clamp(48px, 6vw, 86px);
	line-height: 1;
}

.case-logo-copy p {
	max-width: 530px;
	margin: 28px 0;
	color: #e8d7c9;
	font-size: 17px;
	line-height: 1.8;
}

.case-logo-copy a {
	gap: 14px;
	padding: 13px 0;
	font-size: 13px;
}

.case-story {
	position: relative;
	display: grid;
	grid-template-columns: minmax(280px, 0.62fr) minmax(0, 1.38fr);
	gap: clamp(45px, 8vw, 130px);
	padding: 120px 7% 170px;
	background:
		radial-gradient(circle at 85% 15%, rgb(210 162 70 / 12%), transparent 30%),
		linear-gradient(145deg, #4b2c24, #321a16 70%, #4a261f);
}

.case-story--alternate {
	background:
		radial-gradient(circle at 12% 15%, rgb(196 90 60 / 14%), transparent 32%),
		linear-gradient(145deg, #351914, #4a251f 68%, #2c1512);
}

.case-story-copy {
	position: sticky;
	top: 80px;
	align-self: start;
	min-height: calc(100svh - 160px);
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.case-story-copy .eyebrow {
	color: var(--gold-light);
}

.case-story-copy h2 {
	font-size: clamp(42px, 5vw, 70px);
	line-height: 1.05;
}

.case-story-copy > p:not(.eyebrow):not(.case-status) {
	max-width: 420px;
	margin: 25px 0;
	color: #e4d2c4;
	font-size: 15px;
	line-height: 1.75;
}

.case-services {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 30px;
	padding: 0;
	list-style: none;
}

.case-services li {
	padding: 8px 10px;
	border: 1px solid rgb(210 162 70 / 30%);
	border-radius: 999px;
	background: rgb(255 248 238 / 4%);
	color: #ead9ca;
	font-size: 10px;
	letter-spacing: 0.4px;
	text-transform: uppercase;
}

.case-progress {
	width: min(360px, 100%);
	height: 2px;
	overflow: hidden;
	background: rgb(246 229 211 / 16%);
}

.case-progress span {
	display: block;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, var(--gold), var(--gold-light));
	transform: scaleX(0);
	transform-origin: left center;
	will-change: transform;
}

.case-status {
	display: flex;
	align-items: baseline;
	gap: 8px;
	margin: 12px 0 0;
	color: var(--gold);
}

.case-status strong {
	color: var(--gold-light);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 24px;
	font-weight: 400;
}

.case-status span {
	font-size: 11px;
}

.case-timeline {
	display: flex;
	flex-direction: column;
	gap: 22svh;
	min-width: 0;
	padding: 14svh 0;
}

.case-frame {
	--case-y: 0px;
	--case-z: 0px;
	--case-rx: 0deg;
	--case-ry: 0deg;
	--case-scale: 0.94;
	--case-opacity: 0.55;
	position: relative;
	margin: 0;
	overflow: hidden;
	border: 1px solid rgb(246 223 175 / 24%);
	border-radius: 12px;
	background: #27120f;
	box-shadow: 0 38px 85px rgb(14 3 2 / 40%);
	opacity: var(--case-opacity);
	transform: perspective(1500px) translate3d(0, var(--case-y), var(--case-z)) rotateX(var(--case-rx)) rotateY(var(--case-ry)) scale(var(--case-scale));
	transform-style: preserve-3d;
	transform-origin: center;
	will-change: transform, opacity;
	transition: border-color 0.28s ease, box-shadow 0.28s ease;
}

.case-frame.is-active {
	border-color: rgb(246 223 175 / 58%);
	box-shadow: 0 44px 100px rgb(14 3 2 / 50%), 0 0 0 1px rgb(210 162 70 / 10%);
}

.case-frame--wide {
	width: 100%;
	aspect-ratio: 16 / 9;
}

.case-frame--portrait {
	width: min(74%, 620px);
	aspect-ratio: 3 / 4;
}

.case-frame--right {
	align-self: flex-end;
}

.case-frame img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.case-frame::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 54%, rgb(31 8 6 / 86%));
	pointer-events: none;
}

.case-frame figcaption {
	position: absolute;
	z-index: 2;
	left: 24px;
	right: 24px;
	bottom: 22px;
	display: flex;
	align-items: flex-start;
	gap: 16px;
	color: #fff8ee;
}

.case-frame figcaption > span {
	display: grid;
	place-items: center;
	flex: 0 0 36px;
	height: 36px;
	border: 1px solid rgb(246 223 175 / 50%);
	border-radius: 50%;
	color: var(--gold-light);
	font-size: 10px;
}

.case-frame figcaption div {
	display: grid;
	gap: 4px;
}

.case-frame figcaption b {
	font-family: Georgia, "Times New Roman", serif;
	font-size: 21px;
	font-weight: 400;
}

.case-frame figcaption small {
	color: #e3d1c3;
	font-size: 11px;
	line-height: 1.45;
}

.work-contact {
	position: relative;
	padding: 130px 7%;
	text-align: center;
	background:
		radial-gradient(circle at 50% 110%, rgb(210 162 70 / 18%), transparent 38%),
		linear-gradient(145deg, #3d1e19, #25110f);
	color: #fff8ee;
}

.work-contact .eyebrow {
	justify-content: center;
	color: var(--gold-light);
}

.work-contact h2 {
	font-size: clamp(42px, 5vw, 68px);
	line-height: 1.05;
}

.work-contact > p:not(.eyebrow) {
	max-width: 650px;
	margin: 28px auto;
	color: #e8d7c9;
	font-size: 16px;
	line-height: 1.8;
}

.work-contact-actions {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 26px;
	flex-wrap: wrap;
}

.work-contact-actions > a:not(.button) {
	padding: 10px 0;
	border-bottom: 1px solid var(--gold);
	color: #f6e5d3;
	font-size: 19px;
}

.motion-off .case-logo-scene {
	height: auto;
}

.motion-off .case-logo-sticky,
.motion-off .case-story-copy {
	position: relative;
	top: auto;
	min-height: 0;
}

.motion-off .case-logo-card,
.motion-off .case-frame {
	opacity: 1 !important;
	transform: none !important;
	will-change: auto;
}

.motion-off .case-timeline {
	gap: 30px;
	padding-top: 50px;
	padding-bottom: 0;
}

.motion-off .case-progress {
	display: none;
}

@media (max-width: 1000px) {
	.work-hero {
		grid-template-columns: 1fr 0.55fr;
		gap: 5%;
	}

	.work-hero-index {
		padding: 22px;
	}

	.case-logo-sticky {
		grid-template-columns: minmax(280px, 0.8fr) minmax(0, 1.2fr);
		gap: 45px;
	}

	.case-logo-card {
		min-height: 330px;
	}

	.case-logo-card img {
		height: 200px;
	}

	.case-story {
		grid-template-columns: minmax(230px, 0.52fr) minmax(0, 1.48fr);
		gap: 48px;
	}
}

@media (max-width: 760px) {
	.work-page .header {
		min-height: 132px;
	}

	.work-page .header nav {
		order: 3;
		max-width: 100%;
		overflow-x: auto;
		justify-content: flex-start;
		scrollbar-width: none;
	}

	.work-page .header nav::-webkit-scrollbar {
		display: none;
	}

	.work-hero {
		min-height: calc(100svh - 132px);
		grid-template-columns: 1fr;
		align-content: center;
		padding: 70px 7%;
		gap: 42px;
	}

	.work-hero h1 {
		font-size: clamp(52px, 15vw, 76px);
		letter-spacing: -2.5px;
	}

	.work-hero-index {
		grid-template-columns: auto 1fr;
		max-width: 330px;
	}

	.case-logo-scene {
		height: auto;
	}

	.case-logo-sticky {
		position: relative;
		min-height: 0;
		grid-template-columns: 1fr;
		grid-template-rows: auto;
		padding: 85px 7%;
		gap: 34px;
	}

	.case-count {
		grid-column: auto;
	}

	.case-logo-card {
		width: min(100%, 470px);
		min-height: 310px;
		margin: auto;
		transform: none !important;
	}

	.case-logo-card img {
		height: 190px;
	}

	.case-logo-copy h2 {
		font-size: 49px;
	}

	.case-logo-copy p {
		font-size: 15px;
	}

	.case-story {
		display: block;
		padding: 88px 7% 110px;
	}

	.case-story-copy {
		position: relative;
		top: auto;
		min-height: 0;
		display: block;
	}

	.case-story-copy h2 {
		font-size: 46px;
	}

	.case-timeline {
		gap: 70px;
		padding: 72px 0 0;
	}

	.case-frame,
	.case-frame--portrait {
		width: 100%;
		aspect-ratio: 4 / 5;
		opacity: 1;
		transform: perspective(1200px) translate3d(0, var(--case-y), var(--case-z)) rotateX(var(--case-rx)) scale(var(--case-scale));
	}

	.case-frame--wide {
		aspect-ratio: 4 / 3;
	}

	.case-frame figcaption {
		left: 17px;
		right: 17px;
		bottom: 16px;
	}

	.case-frame figcaption b {
		font-size: 18px;
	}

	.work-contact {
		padding: 90px 7%;
	}

	.work-contact h2 {
		font-size: 44px;
	}

	.work-page footer {
		align-items: flex-start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.case-logo-scene {
		height: auto;
	}

	.case-logo-sticky,
	.case-story-copy {
		position: relative;
		top: auto;
		min-height: 0;
	}

	.case-logo-card,
	.case-frame {
		opacity: 1 !important;
		transform: none !important;
		will-change: auto;
	}

	.case-timeline {
		gap: 30px;
		padding-top: 50px;
	}

	.case-progress {
		display: none;
	}
}

/* Real fair project index and mixed photo/video frames. */
.case-studies-link {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 4px 22px;
	align-items: center;
	width: min(100%, 620px);
	margin: 34px 0 0 auto;
	padding: 20px 23px;
	border: 1px solid rgb(210 162 70 / 34%);
	border-radius: 6px;
	background: rgb(255 248 238 / 6%);
	color: #fff8ee;
	box-shadow: 0 18px 38px rgb(20 7 5 / 16%);
	transition: background 0.25s ease, color 0.25s ease, transform 0.25s ease;
}

.case-studies-link span {
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 1.2px;
	text-transform: uppercase;
}

.case-studies-link strong {
	font-family: Georgia, "Times New Roman", serif;
	font-size: 22px;
	font-weight: 400;
}

.case-studies-link i {
	grid-column: 2;
	grid-row: 1 / span 2;
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	border: 1px solid rgb(246 223 175 / 45%);
	border-radius: 50%;
	color: var(--gold-light);
	font-family: Arial, sans-serif;
	font-size: 18px;
	font-style: normal;
}

.case-studies-link:hover,
.case-studies-link:focus-visible {
	background: var(--gold);
	color: #3e1c16;
	transform: translateY(-4px);
}

.case-studies-link:hover i,
.case-studies-link:focus-visible i {
	border-color: #3e1c16;
	color: #3e1c16;
}

.work-project-index {
	position: relative;
	z-index: 2;
	display: grid;
	align-items: center;
	gap: 0;
	padding: 12px 30px;
	border: 1px solid rgb(246 223 175 / 20%);
	border-radius: 8px;
	background: rgb(255 248 238 / 6%);
	box-shadow: 0 30px 65px rgb(17 4 3 / 25%);
	backdrop-filter: blur(7px);
}

.work-project-index a {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: 20px;
	padding: 18px 0;
	color: inherit;
}

.work-project-index a:hover p,
.work-project-index a:focus-visible p {
	color: #fff8ee;
}

.work-project-index span {
	color: var(--gold-light);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 32px;
}

.work-project-index p {
	margin: 0;
	color: #e8d7c9;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 2.4px;
	transition: color 0.2s ease;
}

.work-project-index i {
	height: 1px;
	background: linear-gradient(90deg, rgb(210 162 70 / 50%), transparent);
}

.case-project--islamoglu .case-logo-scene {
	background:
		radial-gradient(circle at 78% 30%, rgb(210 162 70 / 13%), transparent 32%),
		linear-gradient(145deg, #3a1d18, #24120f 64%, #50271f);
}

.case-frame img,
.case-frame video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.case-frame video {
	background: #170b09;
}

.case-frame--video {
	width: min(74%, 620px);
	aspect-ratio: 9 / 16;
}

.case-frame--stand img {
	object-position: center top;
}

.case-frame--video::after {
	bottom: 44px;
}

.case-frame figcaption {
	pointer-events: none;
}

.case-frame--video figcaption {
	bottom: 58px;
}

@media (max-width: 1000px) {
	.work-project-index {
		padding: 10px 22px;
	}
}

@media (max-width: 760px) {
	.case-studies-link {
		margin-top: 24px;
		padding: 17px 18px;
	}

	.case-studies-link strong {
		font-size: 18px;
	}

	.work-project-index {
		width: min(100%, 380px);
	}

	.case-frame--video {
		width: 100%;
		aspect-ratio: 4 / 5;
	}

	.case-frame--video figcaption {
		bottom: 56px;
	}
}
