/* ==========================================================================
   BINBAY — Design System
   Loaded last, on every page. Provides the corporate visual language on top
   of the legacy stylesheets (style.css, navigation.css, style_common.css …)
   without removing them — the old files still supply reset/plugin mechanics.
   ========================================================================== */

:root {
	--ink:        #0c1526;   /* primary dark navy — headings, header, footer */
	--ink-2:      #16233d;   /* secondary navy — gradients, hover surfaces */
	--brand:      #b2151b;   /* Binbay red, from the logo */
	--brand-dark: #8f1116;
	--paper:      #ffffff;
	--paper-off:  #f6f6f4;   /* off-white section background */
	--line:       #e5e4df;   /* neutral border */
	--text:       #232a36;
	--text-muted: #5b6270;
	--text-on-dark: rgba(255,255,255,.82);

	--font-ui:   'Red Hat Display', 'Helvetica Neue', Arial, sans-serif;
	--font-head: var(--font-ui);
	--font-body: var(--font-ui);

	--container: 1200px;
	--radius-sm: 4px;
	--radius-md: 8px;
	--radius-lg: 20px;
	--shadow-sm: 0 2px 10px rgba(12,21,38,.06);
	--shadow-md: 0 16px 40px rgba(12,21,38,.12);

	--nav-h: 92px;
	--nav-h-scrolled: 68px;
	--nav-h-mobile: 72px;

	--ease: cubic-bezier(.4,0,.2,1);
	--dur: .25s;
}

@media (prefers-reduced-motion: reduce) {
	:root { --dur: 0s; }
}

/* -------------------------------------------------------------------- base */

body {
	font-family: var(--font-body);
}

body h1, body h2, body h3, body h4, body h5, body h6,
body p, body a, body button, body input, body select,
body textarea, body label, body address, body li,
body small, body strong, body b {
	font-family: var(--font-ui) !important;
}

.container {
	width: 100%;
	max-width: var(--container);
	margin-left: auto;
	margin-right: auto;
	padding-left: 24px;
	padding-right: 24px;
	box-sizing: border-box;
}

.ds-section {
	padding: 96px 0;
}

.ds-section--tight { padding: 64px 0; }
.ds-section--off { background: var(--paper-off); }
.ds-section--ink {
	background: linear-gradient(155deg, var(--ink) 0%, var(--ink-2) 100%);
	color: var(--text-on-dark);
}

.ds-section h1, .ds-section h2, .ds-section h3,
.ds-section-head h1, .ds-section-head h2, .ds-section-head h3 {
	font-family: var(--font-head);
	color: var(--ink);
	margin: 0 0 14px;
	line-height: 1.18;
}

.ds-section--ink h1, .ds-section--ink h2, .ds-section--ink h3 { color: #fff; }

.ds-section p { color: var(--text-muted); line-height: 1.7; }
.ds-section--ink p { color: var(--text-on-dark); }

.eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-family: var(--font-head);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--brand);
	margin-bottom: 14px;
}

.eyebrow::before {
	display: none;
}

.ds-section--ink .eyebrow { color: #ff8c8f; }
.ds-section--ink .eyebrow::before { background: #ff8c8f; }

.ds-section-head {
	max-width: 680px;
	margin: 0 0 56px;
}

.ds-section-head.center {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.ds-section-head p { font-size: 17px; margin: 0; }

/* -------------------------------------------------------------------- buttons */

.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	font-family: var(--font-head);
	font-weight: 600;
	font-size: 14px;
	letter-spacing: .02em;
	padding: 15px 28px;
	border-radius: 999px;
	border: 1px solid transparent;
	text-decoration: none;
	cursor: pointer;
	box-shadow: 0 10px 26px rgba(12,21,38,.12);
	transition: background-color var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease), transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease);
}
.btn:hover { transform: translateY(-2px); box-shadow: 0 14px 30px rgba(12,21,38,.17); }
.btn:active { transform: translateY(0); }

.btn-primary {
	background: var(--brand);
	border-color: var(--brand);
	color: #fff !important;
}
.btn-primary { box-shadow: 0 10px 26px rgba(178,21,27,.20); }
.btn-primary:hover { background: var(--brand-dark); border-color: var(--brand-dark); }

.btn-dark {
	background: var(--ink);
	border-color: var(--ink);
	color: #fff !important;
}
.btn-dark:hover { background: var(--ink-2); border-color: var(--ink-2); }

.btn-outline {
	background: transparent;
	border-color: rgba(35,42,54,.28);
	color: var(--ink) !important;
}
.btn-outline:hover { border-color: var(--ink); background: rgba(12,21,38,.04); }

.btn-outline-light {
	background: transparent;
	border-color: rgba(255,255,255,.45);
	color: #fff !important;
}
.btn-outline-light:hover { border-color: #fff; background: rgba(255,255,255,.08); }

.btn-row { display: flex; flex-wrap: wrap; gap: 14px; }

/* -------------------------------------------------------------------- header */

#nav {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1000;
	background: linear-gradient(to bottom, rgba(5,10,20,.82) 0%, rgba(5,10,20,.3) 72%, transparent 100%);
	box-shadow: none;
	transition: background-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);
}

body.is-scrolled #nav {
	background: #fff;
	box-shadow: 0 6px 24px rgba(12,21,38,.12);
}

#top_bg { display: none; }

#nav_top {
	width: 100%;
	max-width: 1320px;
	margin: 0 auto;
	height: var(--nav-h);
	padding: 0 32px;
	box-sizing: border-box;
}

/* The vendor nav plugin renders `.navigation` as `display:table` with
   float:left children — that fights percentage heights and collapses
   flex children to 0px. Forcing flex end-to-end here (instead of relying
   on height:100% chains) sidesteps that entirely. */
#nav .content {
	height: 100%;
}

#nav .navigation {
	display: flex;
	align-items: center;
	background: transparent;
	height: 100%;
	width: 100%;
	border-bottom: 1px solid rgba(255,255,255,.18);
}
body.is-scrolled #nav .navigation { border-bottom-color: transparent; }

#nav .nav-logo {
	display: flex;
	align-items: center;
	flex-shrink: 0;
	width: 158px;
	height: 64px;
	padding: 0;
	background: transparent;
	box-shadow: none;
	transition: background-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);
}

body.is-scrolled #nav .nav-logo {
	background: transparent;
	box-shadow: none;
}

#nav .nav-logo > img {
	height: 64px;
	width: 158px;
	object-fit: contain;
	float: none;
	display: none;
	margin: 0;
}

#nav .nav-logo > .nav-logo__light { display: block; }
body.is-scrolled #nav .nav-logo > .nav-logo__light { display: none; }
body.is-scrolled #nav .nav-logo > .nav-logo__original { display: block; }

#nav .nav-menus-wrapper {
	display: flex;
	align-items: center;
	margin-left: auto;
	/* css/examples.css (leftover template demo CSS) sets .nav-menus-wrapper
	   { overflow-x: hidden } unconditionally. Per the CSS overflow spec, an
	   element with overflow-x set to anything but visible while overflow-y
	   is left at its default computes overflow-y to auto — silently turning
	   this into a scroll container. That's exactly why the Hizmetlerimiz
	   dropdown was getting clipped into a scrollbar instead of floating
	   over the page. Reset both axes explicitly for desktop/landscape mode. */
	overflow: visible;
}

#nav .nav-menu {
	display: flex;
	align-items: center;
	margin: 0;
}

#nav .nav-menu > li {
	display: flex;
	align-items: center;
	position: relative;
}

#nav .navigation-landscape .nav-menu > li {
	height: var(--nav-h);
}

#nav .nav-menu > li > a {
	font-family: var(--font-head);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .07em;
	color: #fff;
	text-shadow: 0 1px 3px rgba(0,0,0,.4);
	padding: 0 18px;
	display: inline-flex;
	align-items: center;
	transition: color var(--dur) var(--ease), text-shadow var(--dur) var(--ease);
}

body.is-scrolled #nav .nav-menu > li > a {
	color: var(--ink);
	text-shadow: none;
}

#nav .nav-menu > li:hover > a,
#nav .nav-menu > li.active > a {
	color: var(--brand);
	text-shadow: none;
}

#nav .nav-cta {
	margin-left: 14px;
	padding: 12px 24px;
	font-size: 13px;
	background: var(--brand);
	border-color: var(--brand);
	box-shadow: 0 8px 22px rgba(178,21,27,.26);
}
#nav .nav-cta:hover { background: var(--brand-dark); border-color: var(--brand-dark); }

#nav .nav-toggle:before {
	background-color: #fff;
	box-shadow: 0 0.5em 0 0 #fff, 0 1em 0 0 #fff;
	transition: background-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);
}

body.is-scrolled #nav .nav-toggle:before {
	background-color: var(--ink);
	box-shadow: 0 0.5em 0 0 var(--ink), 0 1em 0 0 var(--ink);
}

.btn-arrow {
	display: inline-block;
	transition: transform var(--dur) var(--ease);
}
.btn:hover .btn-arrow { transform: translateX(3px); }

/* Hizmetlerimiz dropdown — deliberately pure CSS (:hover/:focus-within), not
   wired into the vendor nav plugin's own JS submenu system (jQuery
   slideDown/fadeIn on ".nav-submenu"). Running both at once made the panel
   open unpredictably; this is the only mechanism controlling it now, so
   there is nothing left to fight with. */
#nav .dropdown-caret {
	display: inline-block;
	width: 6px;
	height: 6px;
	margin-left: 7px;
	vertical-align: 1px;
	border-right: 1.5px solid rgba(255,255,255,.85);
	border-bottom: 1.5px solid rgba(255,255,255,.85);
	transform: rotate(45deg);
	transition: border-color var(--dur) var(--ease), transform var(--dur) var(--ease);
}
body.is-scrolled #nav .dropdown-caret { border-color: var(--text-muted); }
#nav .nav-menu > li:hover > a .dropdown-caret,
#nav .nav-menu > li.active > a .dropdown-caret {
	border-color: var(--brand);
	transform: rotate(225deg);
}

#nav .service-dropdown {
	display: block;
	position: absolute;
	top: 100%;
	left: 0;
	right: auto;
	bottom: auto;
	z-index: 20;
	min-width: 250px;
	margin: 0;
	padding: 8px;
	list-style: none;
	background: #fff;
	border-radius: var(--radius-md);
	box-shadow: var(--shadow-md);
	opacity: 0;
	visibility: hidden;
	transform: translateY(6px);
	transition: opacity .18s var(--ease), transform .18s var(--ease), visibility .18s;
	pointer-events: none;
}
/* Not gated behind .navigation-landscape on purpose — position:relative on
   the li (above) is now unconditional too, so this works the instant the
   li itself is hovered, with no dependency on the plugin's mode class. */
#nav .nav-menu > li.has-dropdown:hover > .service-dropdown,
#nav .nav-menu > li.has-dropdown:focus-within > .service-dropdown {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
	pointer-events: auto;
}
#nav .service-dropdown > li { list-style: none; }
#nav .service-dropdown > li > a {
	display: block;
	padding: 11px 14px;
	border-radius: var(--radius-sm);
	background: transparent;
	color: var(--text);
	font-family: var(--font-head);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .04em;
	text-shadow: none;
	white-space: nowrap;
}
#nav .service-dropdown > li:hover > a,
#nav .service-dropdown > li > a:focus {
	background: var(--paper-off);
	color: var(--brand);
}

/* Mobile off-canvas panel: no hover there, so show each submenu as a
   permanently-expanded, indented list under its parent instead of a
   tap-to-toggle (Kurumsal's own trigger has no href, so this is the only
   way to reach Hakkımızda / İnsan Kaynakları on a touch device). */
#nav .navigation-portrait .dropdown-caret {
	display: none;
}
#nav .navigation-portrait .service-dropdown {
	position: static;
	display: block;
	opacity: 1;
	visibility: visible;
	transform: none;
	pointer-events: auto;
	background: transparent;
	box-shadow: none;
	margin: 2px 0 6px;
	padding: 0 0 0 14px;
}
#nav .navigation-portrait .service-dropdown > li > a {
	padding: 9px 15px;
	color: var(--text-muted);
	font-size: 13px;
}
#nav .navigation-portrait .service-dropdown > li:hover > a {
	color: var(--brand);
	background: transparent;
}

/* The off-canvas mobile menu (navigation.js adds .navigation-portrait) lays
   itself out as a vertical block list — the flex row rules above are for
   the desktop bar only, so they're explicitly undone here at matching/higher
   specificity to avoid fighting the plugin's own mobile layout. */
#nav .navigation-portrait .nav-menus-wrapper {
	display: block;
	height: 100%;
	align-items: normal;
	overflow-y: auto;
	overflow-x: hidden;
}
#nav .navigation-portrait .nav-header { margin-left: auto; }
#nav .navigation-portrait .nav-menu {
	display: block;
	height: auto;
}
#nav .navigation-portrait .nav-menu > li {
	display: block;
	height: auto;
}
#nav .navigation-portrait .nav-menu > li > a {
	display: block;
	color: var(--ink);
	text-shadow: none;
	padding: 14px 15px 14px 26px;
}
#nav .navigation-portrait .nav-menu > li:hover > a,
#nav .navigation-portrait .nav-menu > li.active > a {
	color: var(--brand);
	opacity: 1;
}
#nav .navigation-portrait .nav-cta {
	display: inline-flex;
	margin: 16px 15px 15px 26px;
}

@media screen and (max-width: 1279px) {
	:root { --nav-h: var(--nav-h-mobile); }
	#nav_top { padding: 0 18px; }
}

/* -------------------------------------------------------------------- homepage hero slider */

.hero-slider { position: relative; height: min(860px, 92vh); min-height: 680px; overflow: hidden; background: var(--ink); color: #fff; }
.hero-slider__track, .hero-slide { position: absolute; inset: 0; }
.hero-slide { background-position: center; background-size: cover; opacity: 0; visibility: hidden; transform: scale(1.025); transition: opacity .9s ease, visibility .9s ease, transform 7s ease; }
.hero-slide.is-active { opacity: 1; visibility: visible; transform: scale(1); z-index: 1; }
.hero-slide__video { position: absolute; z-index: 0; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; filter: saturate(.86) contrast(1.05); }
.hero-slide__scrim { position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg, rgba(4,9,18,.96) 0%, rgba(5,11,23,.82) 34%, rgba(5,11,23,.38) 62%, rgba(5,11,23,.12) 100%), linear-gradient(0deg, rgba(4,9,18,.65), transparent 46%); }
.hero-slide--video .hero-slide__scrim { background: linear-gradient(90deg, rgba(4,9,18,.68) 0%, rgba(5,11,23,.46) 36%, rgba(5,11,23,.14) 68%, transparent 100%), linear-gradient(0deg, rgba(4,9,18,.32), transparent 48%); }
.hero-slide__inner { position: relative; z-index: 2; height: 100%; display: flex; flex-direction: column; justify-content: center; padding-top: var(--nav-h); padding-bottom: 112px; box-sizing: border-box; }
.hero-slide .eyebrow { color: #ff9a9d; }
.hero-slide .eyebrow::before { background: #ff9a9d; }
.hero-slide h1, .hero-slide h2 { max-width: 760px; color: #fff; font-family: var(--font-head); font-size: clamp(44px, 5.6vw, 76px); line-height: 1.03; letter-spacing: -.035em; margin: 8px 0 24px; }
.hero-slide h1 em, .hero-slide h2 em { color: #fff; font-style: normal; font-weight: 300; }
.hero-slide p { max-width: 590px; margin: 0 0 34px; color: rgba(255,255,255,.78); font-size: 17px; line-height: 1.75; }
.hero-slide .btn { border-radius: 999px; padding: 16px 25px; }
.hero-slider__controls { position: absolute; z-index: 4; right: max(24px, calc((100vw - var(--container))/2 + 24px)); bottom: 112px; display: flex; align-items: center; gap: 16px; }
.hero-arrow { width: 46px; height: 46px; border: 1px solid rgba(255,255,255,.32); background: rgba(5,11,23,.3); color: #fff; border-radius: 50%; cursor: pointer; font-size: 18px; transition: background .25s, border-color .25s; }
.hero-arrow:hover { background: var(--brand); border-color: var(--brand); }
.hero-dots { display: flex; gap: 8px; }
.hero-dots button { padding: 0; width: 7px; height: 7px; border: 0; border-radius: 9px; background: rgba(255,255,255,.42); cursor: pointer; transform-origin: left center; transition: transform .25s, background .25s; }
.hero-dots button.is-active { transform: scaleX(4); background: var(--brand); }
.hero-slider__trust { position: absolute; z-index: 3; left: 0; right: 0; bottom: 0; background: rgba(5,10,20,.72); backdrop-filter: blur(16px); border-top: 1px solid rgba(255,255,255,.13); }
.hero-slider .hero-trust-row { margin-top: 0; padding-top: 22px; padding-bottom: 22px; border-top: 0; }

@media screen and (max-width: 900px) {
	.hero-slider { height: 780px; min-height: 0; }
	.hero-slide__inner { justify-content: flex-start; padding-top: calc(var(--nav-h) + 90px); }
	.hero-slider__controls { bottom: 168px; }
	.hero-slider__trust .hero-trust-item:nth-child(n+3) { display: none; }
	.hero-slider .hero-trust-row { grid-template-columns: 1fr 1fr; }
}
@media screen and (max-width: 600px) {
	.hero-slider { height: 760px; }
	.hero-slide { background-position: 62% center; }
	.hero-slide__video { object-position: 62% center; }
	.hero-slide__scrim { background: linear-gradient(90deg, rgba(4,9,18,.94), rgba(4,9,18,.58)), linear-gradient(0deg, rgba(4,9,18,.78), transparent 55%); }
	.hero-slide--video .hero-slide__scrim { background: linear-gradient(90deg, rgba(4,9,18,.68), rgba(4,9,18,.28)), linear-gradient(0deg, rgba(4,9,18,.38), transparent 58%); }
	.hero-slide__inner { padding-top: calc(var(--nav-h) + 70px); padding-bottom: 150px; }
	.hero-slide h1, .hero-slide h2 { font-size: 39px; }
	.hero-slide p { font-size: 15px; line-height: 1.6; }
	.hero-slider__controls { left: 24px; right: auto; bottom: 132px; }
	.hero-slider__trust .hero-trust-item:nth-child(n+2) { display: none; }
	.hero-slider .hero-trust-row { grid-template-columns: 1fr; }
	#nav .nav-logo { width: 128px; height: 52px; }
	#nav .nav-logo > img { width: 128px; height: 52px; }
}

/* Legacy single-image hero retained for inner compatibility */

/* -------------------------------------------------------------------- service marquee */

.service-marquee {
	background: var(--brand);
	overflow: hidden;
}

.service-marquee__row {
	white-space: nowrap;
	overflow: hidden;
}

.service-marquee__track {
	display: inline-flex;
	align-items: center;
	gap: 28px;
	padding: 25px 0 37px;
	will-change: transform;
	animation: service-marquee-right 26s linear infinite;
}

.service-marquee:hover .service-marquee__track {
	animation-play-state: paused;
}

.service-marquee__item {
	font-family: var(--font-head);
	font-size: 20px;
	font-weight: 600;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: #fff;
}

.service-marquee__dot {
	font-size: 10px;
	color: var(--ink);
	transform: translateY(-2px);
}

@keyframes service-marquee-right {
	from { transform: translateX(-50%); }
	to { transform: translateX(0); }
}

/* Kayan yazı, kullanıcı onayıyla prefers-reduced-motion'dan bağımsız her zaman kayar. */

/* -------------------------------------------------------------------- why Binbay introduction */

.why-binbay {
	position: relative;
	padding: 112px 0;
	background: #fff;
	overflow: hidden;
}
.why-binbay::before {
	content: "";
	position: absolute;
	right: -180px;
	top: -240px;
	width: 560px;
	height: 560px;
	border: 1px solid rgba(178,21,27,.08);
	border-radius: 50%;
	box-shadow: 0 0 0 70px rgba(178,21,27,.025), 0 0 0 140px rgba(12,21,38,.018);
	pointer-events: none;
}
.why-binbay__grid { display: grid; grid-template-columns: minmax(0, 1.02fr) minmax(0, .98fr); gap: 82px; align-items: center; }
.why-binbay__media { position: relative; min-height: 610px; }
.why-binbay__media::before { content: ""; position: absolute; left: -18px; bottom: -18px; width: 58%; height: 62%; background: var(--brand); z-index: 0; border-radius: var(--radius-lg); }
.why-binbay__media::after { content: ""; position: absolute; inset: 22px -22px -22px 22px; border: 1px solid rgba(12,21,38,.13); z-index: 0; border-radius: var(--radius-lg); }
.why-binbay__media img { position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; object-fit: cover; display: block; box-shadow: 0 24px 60px rgba(12,21,38,.16); border-radius: var(--radius-lg); }
.why-binbay__stamp { position: absolute; z-index: 2; right: -32px; bottom: 36px; width: 142px; height: 142px; border-radius: 50%; background: var(--ink); color: #fff; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; box-shadow: 0 14px 34px rgba(12,21,38,.28); border: 6px solid #fff; }
.why-binbay__stamp strong { font: 700 17px/1.15 var(--font-head); }
.why-binbay__stamp span { margin-top: 6px; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; color: rgba(255,255,255,.64); }
.why-binbay__content { position: relative; z-index: 1; }
.why-binbay__content h2 { max-width: 590px; margin: 0 0 24px; color: var(--ink); font: 700 clamp(34px, 3.2vw, 50px)/1.12 var(--font-head); letter-spacing: -.025em; }
.why-binbay__content h2 em { color: var(--brand); font-style: normal; font-weight: 400; }
.why-binbay__lead { max-width: 610px; margin: 0 0 30px; color: var(--text-muted); font-size: 16px; line-height: 1.8; }
.why-binbay__points { border-top: 1px solid var(--line); }
.why-binbay__point { display: grid; grid-template-columns: 48px 1fr; gap: 18px; padding: 20px 0; border-bottom: 1px solid var(--line); }
.why-binbay__point > span { width: 44px; height: 44px; border-radius: 50%; background: rgba(178,21,27,.08); color: var(--brand); display: flex; align-items: center; justify-content: center; }
.why-binbay__point svg { width: 21px; height: 21px; }
.why-binbay__point strong { display: block; margin: 1px 0 5px; color: var(--ink); font: 700 15px/1.25 var(--font-head); }
.why-binbay__point p { margin: 0; color: var(--text-muted); font-size: 13.5px; line-height: 1.55; }
.why-binbay__footer { display: flex; align-items: center; gap: 24px; margin-top: 30px; }
.why-binbay__footer > span { max-width: 180px; color: #8a8f98; font-size: 11px; line-height: 1.5; letter-spacing: .08em; text-transform: uppercase; }

.why-binbay__media--reel { min-height: 690px; display: flex; align-items: center; justify-content: center; }
.why-binbay__media--reel::before,
.why-binbay__media--reel::after { display: none; }
.about-reel-card { position: relative; width: min(100%, 390px); padding: 8px; border: 1px solid rgba(12,21,38,.1); border-radius: 22px; background: #fff; box-shadow: 0 26px 70px rgba(12,21,38,.16); }
.about-reel-card__viewport { position: relative; width: 100%; aspect-ratio: 9 / 16; min-height: 575px; overflow: hidden; border-radius: 15px; background: #0c1524; }
.about-reel-card__viewport video { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; background: #0c1524; }

@media screen and (max-width: 980px) {
	.why-binbay { padding: 80px 0; }
	.why-binbay__grid { grid-template-columns: 1fr; gap: 58px; }
	.why-binbay__media { min-height: 520px; }
	.why-binbay__media--reel { min-height: 690px; }
	.why-binbay__stamp { right: 24px; }
}
@media screen and (max-width: 600px) {
	.why-binbay { padding: 64px 0; }
	.why-binbay__grid { gap: 46px; }
	.why-binbay__media { min-height: 380px; }
	.why-binbay__media--reel { min-height: 610px; }
	.why-binbay__media::before { left: -10px; bottom: -10px; }
	.why-binbay__media::after { display: none; }
	.why-binbay__stamp { width: 112px; height: 112px; right: 12px; bottom: 18px; }
	.about-reel-card { width: min(88vw, 342px); padding: 7px; border-radius: 19px; }
	.about-reel-card__viewport { min-height: 0; border-radius: 17px; }
	.why-binbay__content h2 { font-size: 34px; }
	.why-binbay__footer { align-items: flex-start; flex-direction: column; }
}

.hero-single {
	position: relative;
	background-size: cover;
	background-position: center;
	overflow: hidden;
}

.hero-single__scrim {
	position: absolute;
	inset: 0;
	background: linear-gradient(100deg, rgba(7,11,21,.94) 0%, rgba(7,11,21,.8) 32%, rgba(7,11,21,.42) 62%, rgba(7,11,21,.12) 100%);
}

.hero-single--warm .hero-single__scrim {
	background: linear-gradient(100deg, rgba(23,13,6,.92) 0%, rgba(40,22,10,.72) 34%, rgba(61,34,14,.32) 64%, rgba(120,70,25,.08) 100%);
}
.hero-single--warm { background-blend-mode: normal; }
.hero-single--warm::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(200deg, rgba(255,175,90,.16) 0%, rgba(255,175,90,0) 45%);
	pointer-events: none;
}

.hero-single__inner {
	position: relative;
	z-index: 1;
	padding: calc(var(--nav-h) + 40px) 0 56px;
	color: #fff;
}

.hero-single .eyebrow { color: #ff9a9d; }
.hero-single .eyebrow::before { background: #ff9a9d; }

.hero-single h1 {
	font-family: var(--font-head);
	font-size: clamp(30px, 4.6vw, 52px);
	line-height: 1.12;
	color: #fff;
	margin: 14px 0 18px;
	max-width: 680px;
}

.hero-single p {
	max-width: 540px;
	color: var(--text-on-dark);
	font-size: 16px;
	line-height: 1.7;
	margin: 0 0 32px;
}

.hero-trust-row {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 28px 24px;
	margin-top: 56px;
	padding-top: 32px;
	border-top: 1px solid rgba(255,255,255,.18);
}

.hero-trust-item { display: flex; gap: 12px; align-items: flex-start; }
.hero-trust-item svg { flex-shrink: 0; width: 22px; height: 22px; color: #fff; margin-top: 2px; }
.hero-trust-item strong { display: block; font-family: var(--font-head); font-size: 13.5px; color: #fff; margin-bottom: 4px; }
.hero-trust-item span { display: block; font-size: 12.5px; color: rgba(255,255,255,.62); line-height: 1.5; }

@media screen and (max-width: 860px) {
	.hero-trust-row { grid-template-columns: 1fr 1fr; }
}
@media screen and (max-width: 560px) {
	.hero-trust-row { grid-template-columns: 1fr; margin-top: 40px; padding-top: 24px; }
	.hero-single__inner { padding: calc(var(--nav-h) + 20px) 0 40px; }
}

/* -------------------------------------------------------------------- page hero (inner pages) */

.page-hero {
	position: relative;
	padding: calc(var(--nav-h) + 78px) 0 64px;
	background: linear-gradient(155deg, var(--ink) 0%, var(--ink-2) 100%);
	background-size: cover;
	background-position: center;
	color: #fff;
}

.page-hero__scrim {
	position: absolute;
	inset: 0;
	background: linear-gradient(155deg, rgba(9,14,26,.92) 0%, rgba(9,14,26,.72) 55%, rgba(9,14,26,.55) 100%);
}

.page-hero__inner {
	position: relative;
	z-index: 1;
}

.page-hero h1 {
	font-family: var(--font-head);
	font-size: clamp(30px, 4vw, 46px);
	line-height: 1.15;
	margin: 10px 0 14px;
	color: #fff;
}

.page-hero p {
	max-width: 640px;
	font-size: 16px;
	line-height: 1.7;
	color: var(--text-on-dark);
	margin: 0;
}

.breadcrumb {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 0;
	font-size: 13px;
	font-family: var(--font-body);
}

.breadcrumb li { display: flex; align-items: center; gap: 8px; }
.breadcrumb li + li::before { content: "/"; color: rgba(255,255,255,.4); }
.breadcrumb a { color: rgba(255,255,255,.65); text-decoration: none; }
.breadcrumb a:hover { color: #fff; }
.breadcrumb li[aria-current="page"] { color: #fff; font-weight: 600; }

.page-hero--contact { background-position: center; }
.page-hero--contact .page-hero__scrim {
	background: linear-gradient(90deg, rgba(246,249,252,.96) 0%, rgba(246,249,252,.90) 38%, rgba(246,249,252,.30) 64%, rgba(246,249,252,.05) 100%);
}
.page-hero--contact h1 { color: var(--ink); }
.page-hero--contact p { color: #4e5c6d; }
.page-hero--contact .breadcrumb a { color: #647386; }
.page-hero--contact .breadcrumb a:hover,
.page-hero--contact .breadcrumb li[aria-current="page"] { color: var(--ink); }
.page-hero--contact .breadcrumb li + li::before { color: rgba(16,29,48,.32); }

@media screen and (max-width: 600px) {
	.page-hero { padding: calc(var(--nav-h) + 24px) 0 40px; }
	.page-hero--contact { background-position: 64% center; }
	.page-hero--contact .page-hero__scrim { background: rgba(246,249,252,.86); }
}

/* -------------------------------------------------------------------- full-width services showcase */

.service-showcase { padding: 100px 0 110px; background: linear-gradient(180deg, #fafaf8 0%, #f4f4f1 100%); overflow: hidden; }
.service-showcase__head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, 430px); align-items: end; gap: clamp(48px, 9vw, 150px); margin-bottom: 46px; }
.service-showcase__head > div:first-child { max-width: 720px; }
.service-showcase__head h2 { margin: 0 0 14px; color: var(--ink); font: 700 clamp(32px, 3.2vw, 48px)/1.12 var(--font-head); letter-spacing: -.025em; }
.service-showcase__head p { max-width: 430px; margin: 0; color: var(--text-muted); font-size: 16px; line-height: 1.7; }
.service-showcase__intro { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; padding-bottom: 6px; }
.service-showcase__viewport { width: 100%; overflow: hidden; }
.service-showcase__viewport::-webkit-scrollbar { display: none; }
.service-showcase__track { display: flex; gap: 24px; width: max-content; padding: 10px 0 34px; will-change: transform; animation: service-marquee 34s linear infinite; }
.service-showcase__group { display: flex; gap: 24px; }
@keyframes service-marquee {
	to { transform: translateX(calc(-50% - 12px)); }
}
.service-visual-card { position: relative; flex: 0 0 clamp(330px, 27vw, 500px); height: 540px; overflow: hidden; color: #fff; text-decoration: none; background: var(--ink); border-radius: 24px; isolation: isolate; box-shadow: 0 16px 42px rgba(12,21,38,.10); transition: transform .4s var(--ease), box-shadow .4s var(--ease); }
.service-visual-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .7s var(--ease), filter .7s var(--ease); }
.service-visual-card__shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(4,9,18,.02) 15%, rgba(4,9,18,.16) 43%, rgba(4,9,18,.90) 100%); transition: background .4s; }
.service-visual-card::after { content: ""; position: absolute; left: 34px; right: 34px; bottom: 0; height: 3px; border-radius: 3px 3px 0 0; background: var(--brand); transform: scaleX(0); transform-origin: left; transition: transform .4s var(--ease); }
.service-visual-card__content { position: absolute; z-index: 1; left: 0; right: 0; bottom: 0; display: flex; flex-direction: column; padding: 38px 38px 34px; }
.service-visual-card__meta { display: flex; align-items: center; gap: 9px; margin-bottom: 14px; color: rgba(255,255,255,.72); font: 600 11px/1 var(--font-head); letter-spacing: .12em; text-transform: uppercase; }
.service-visual-card__meta svg { width: 18px; height: 18px; color: #ff8f93; }
.service-visual-card__content strong { max-width: 440px; color: #fff; font: 700 clamp(25px, 2vw, 34px)/1.15 var(--font-head); letter-spacing: -.02em; }
.service-visual-card__content > span:not(.service-visual-card__meta) { max-width: 410px; margin-top: 12px; color: rgba(255,255,255,.75); font-size: 14px; line-height: 1.6; }
.service-visual-card__content b.card-action-button { display: inline-flex; gap: 16px; align-items: center; align-self: flex-start; min-height: 44px; margin-top: 22px; padding: 0 20px; background: var(--brand); border: 1px solid var(--brand); border-radius: 999px; color: #fff; font: 650 12px/1 var(--font-head); letter-spacing: .02em; box-shadow: 0 10px 24px rgba(178,21,27,.24); }
.service-visual-card__content b.card-action-button i { font-size: 15px; font-style: normal; transition: transform .2s var(--ease); }
.service-visual-card:hover .card-action-button i { transform: translateX(3px); }
.service-visual-card:hover { transform: translateY(-7px); box-shadow: 0 24px 54px rgba(12,21,38,.16); }
.service-visual-card:hover img { transform: scale(1.04); filter: saturate(1.04); }
.service-visual-card:hover::after { transform: scaleX(1); }
.service-visual-card:hover .service-visual-card__shade { background: linear-gradient(180deg, rgba(4,9,18,.02), rgba(4,9,18,.20) 44%, rgba(4,9,18,.94) 100%); }

@media screen and (max-width: 800px) {
	.service-showcase { padding: 72px 0 82px; }
	.service-showcase__head { grid-template-columns: 1fr; gap: 22px; margin-bottom: 34px; }
	.service-showcase__intro { padding-bottom: 0; }
	.service-visual-card { flex-basis: min(84vw, 420px); height: 500px; border-radius: 20px; }
	.service-visual-card__content { padding: 30px 26px; }
}

/* Legacy services grid */

.service-card-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1px;
	background: var(--line);
	border: 1px solid var(--line);
}

.service-card {
	background: #fff;
	padding: 36px 30px;
	display: flex;
	flex-direction: column;
	text-decoration: none;
	transition: background-color var(--dur) var(--ease);
}
.service-card:hover { background: var(--paper-off); }

.service-card__num {
	font-family: var(--font-head);
	font-size: 14px;
	font-weight: 700;
	color: #c7cbd3;
	margin-bottom: 18px;
}

.service-card__icon {
	width: 46px;
	height: 46px;
	border-radius: 50%;
	background: var(--paper-off);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--brand);
	margin-bottom: 20px;
	transition: background-color var(--dur) var(--ease);
}
.service-card__icon svg { width: 22px; height: 22px; }
.service-card:hover .service-card__icon { background: #fff; }

.service-card h3 {
	font-family: var(--font-head);
	font-size: 17px;
	color: var(--ink);
	margin: 0 0 10px;
}

.service-card p {
	color: var(--text-muted);
	font-size: 14px;
	line-height: 1.65;
	margin: 0 0 22px;
	flex-grow: 1;
}

.service-card__link {
	font-family: var(--font-head);
	font-size: 13px;
	font-weight: 600;
	color: var(--ink);
	display: inline-flex;
	align-items: center;
	gap: 6px;
}
.service-card:hover .service-card__link { color: var(--brand); }

@media screen and (max-width: 900px) {
	.service-card-grid { grid-template-columns: 1fr 1fr; }
}
@media screen and (max-width: 560px) {
	.service-card-grid { grid-template-columns: 1fr; }
}

/* -------------------------------------------------------------------- service feature (hizmetlerimiz landing) */

.service-feature {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 56px;
	align-items: center;
	padding: 64px 0;
	border-top: 1px solid var(--line);
}
.service-feature:first-child { border-top: 0; padding-top: 0; }

.service-feature__media {
	border-radius: var(--radius-md);
	overflow: hidden;
	box-shadow: var(--shadow-sm);
	aspect-ratio: 4 / 3;
}
.service-feature__media img { display: block; width: 100%; height: 100%; object-fit: cover; }

.service-feature:nth-child(even) .service-feature__media { order: 2; }

.service-feature h2 { margin-bottom: 14px; }
.service-feature p { margin: 0 0 20px; }

.prose-block h3 {
	margin: 30px 0 10px;
	font-family: var(--font-head);
	font-size: 19px;
	font-weight: 650;
	color: var(--ink);
}
.prose-block h3:first-child { margin-top: 0; }

.prose-block img {
	display: block;
	width: 100%;
	height: auto;
	margin: 34px 0;
	border-radius: var(--radius-md);
	box-shadow: var(--shadow-md);
}
.prose-block figure { max-width: 620px; margin: 34px auto; }
.prose-block figure img { margin: 0; width: 100%; height: 320px; object-fit: cover; }
@media screen and (max-width: 640px) {
	.prose-block figure img { height: 220px; }
}
.prose-block figcaption {
	margin-top: 10px;
	color: #8a8f98;
	font-size: 12.5px;
	letter-spacing: .02em;
}

.check-list { list-style: none; margin: 0 0 26px; padding: 0; }
.check-list li {
	position: relative;
	padding-left: 26px;
	margin-bottom: 10px;
	color: var(--text-muted);
	font-size: 14.5px;
	line-height: 1.6;
}
.check-list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 7px;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--brand);
}

.check-list--cols {
	max-width: 760px;
}
@media screen and (min-width: 620px) {
	.check-list--cols {
		columns: 2;
		column-gap: 32px;
	}
	.check-list--cols li { break-inside: avoid; }
}

@media screen and (max-width: 800px) {
	.service-feature { grid-template-columns: 1fr; gap: 26px; padding: 44px 0; }
	.service-feature:nth-child(even) .service-feature__media { order: 0; }
}

/* -------------------------------------------------------------------- premium homepage contact */

.premium-contact { position: relative; padding: 96px 0; overflow: hidden; background: #b2151b; border: 0; }
.premium-contact::after { content: ""; position: absolute; inset: 0; background: linear-gradient(115deg, rgba(255,255,255,.025), transparent 45%, rgba(77,0,3,.10)); pointer-events: none; }
.premium-contact__grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(400px, .92fr); gap: 0; box-sizing: border-box; padding: 0; overflow: hidden; background: #fff; border: 1px solid rgba(255,255,255,.68); border-radius: 18px; box-shadow: 0 28px 70px rgba(65,0,3,.22); }
.premium-contact__form-wrap { position: relative; z-index: 1; padding: 58px 60px; background: #fff; border: 0; }
.premium-contact__tag { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 14px; color: var(--brand); font: 700 10px/1 var(--font-head); letter-spacing: .14em; text-transform: uppercase; }
.premium-contact__tag::before { display: none; }
.premium-contact__form-wrap > h2 { margin: 0 0 10px; color: var(--ink); font: 700 clamp(30px, 2.6vw, 40px)/1.15 var(--font-head); letter-spacing: -.02em; }
.premium-contact__form-note { max-width: 520px; margin: 0 0 30px; color: var(--text-muted); font-size: 13.5px; line-height: 1.65; }
.premium-contact__form { display: grid; gap: 18px; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.premium-contact__row { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.premium-contact__field { display: flex; flex-direction: column; gap: 7px; }
.premium-contact__field label { color: #253044; font: 700 10px/1 var(--font-head); letter-spacing: .065em; text-transform: uppercase; }
.premium-contact__field input,
.premium-contact__field select,
.premium-contact__field textarea { width: 100%; box-sizing: border-box; border: 1px solid #e0dfda; border-radius: 10px; outline: 0; background: #f8f8f6; color: var(--ink); font: 14px/1.4 var(--font-body); box-shadow: none; transition: border-color .2s, box-shadow .2s, transform .2s; }
.premium-contact__field input,
.premium-contact__field select { height: 52px; padding: 0 15px; }
.premium-contact__field select:invalid { color: rgba(58,68,84,.48); }
.premium-contact__field select option { color: var(--ink); }
.premium-contact__field textarea { min-height: 112px; padding: 15px; resize: vertical; }
.premium-contact__field input::placeholder,
.premium-contact__field textarea::placeholder { color: rgba(58,68,84,.38); opacity: 1; }
.premium-contact__field input:focus,
.premium-contact__field select:focus,
.premium-contact__field textarea:focus { border-color: rgba(178,21,27,.48); background: #fff; box-shadow: inset 0 0 0 1px rgba(178,21,27,.30), 0 0 0 4px rgba(178,21,27,.07); }
.premium-contact__field input[type="file"] { height: auto; min-height: 52px; padding: 9px; font-size: 12.5px; cursor: pointer; }
.premium-contact__field input[type="file"]::file-selector-button { margin-right: 12px; padding: 9px 16px; border: 0; border-radius: 7px; background: var(--brand); color: #fff; font: 600 12px var(--font-head); cursor: pointer; transition: background .2s; }
.premium-contact__field input[type="file"]::file-selector-button:hover { background: var(--brand-dark); }
.premium-contact__submit { display: flex; align-items: stretch; flex-direction: column; gap: 12px; margin-top: 4px; text-align: center; }
.premium-contact__submit .btn { width: 100%; min-height: 54px; background: var(--brand); border-color: var(--brand); color: #fff !important; box-shadow: 0 12px 28px rgba(178,21,27,.18); }
.premium-contact__submit .btn:hover { background: var(--brand-dark); border-color: var(--brand-dark); }
.premium-contact__submit > span { color: rgba(58,68,84,.48); font-size: 9.5px; letter-spacing: .02em; }
.premium-contact__submit button:disabled { opacity: .6; cursor: wait; }
.premium-contact__content { position: relative; display: flex; flex-direction: column; justify-content: center; min-height: 690px; box-sizing: border-box; padding: 58px 56px; overflow: visible; background: #f2f1ed; border-left: 1px solid #e2e1dc; color: var(--ink); }
.premium-contact__content::after { display: none; }
.premium-contact__content > * { position: relative; z-index: 1; }
.premium-contact__content .eyebrow { color: var(--brand); }
.premium-contact__content .eyebrow::before { background: var(--brand); }
.premium-contact__content > h2 { margin: 22px 0 22px; color: var(--ink); font: 600 clamp(36px, 3.4vw, 54px)/1.1 var(--font-head); letter-spacing: -.035em; }
.premium-contact__content > h2 em { color: #777d89; font-style: normal; font-weight: 300; }
.premium-contact__content > p { max-width: 460px; margin: 0; color: var(--text-muted); font-size: 14px; line-height: 1.8; }
.premium-contact__benefits { display: grid; gap: 2px; margin-bottom: 34px; }
.premium-contact__benefits > div { display: grid; grid-template-columns: 34px 1fr; gap: 14px; padding: 14px 0; border-top: 1px solid rgba(255,255,255,.11); }
.premium-contact__benefits b { padding-top: 2px; color: #ef777b; font: 600 10px/1 var(--font-head); letter-spacing: .08em; }
.premium-contact__benefits span { display: flex; flex-direction: column; gap: 4px; }
.premium-contact__benefits strong { color: #fff; font: 600 13px/1.3 var(--font-head); }
.premium-contact__benefits small { color: rgba(255,255,255,.55); font-size: 11.5px; line-height: 1.45; }
.premium-contact__direct { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 12px; margin-top: 64px; padding-top: 26px; border-top: 1px solid #d8d7d2; }
.premium-contact__direct-title { grid-column: 1 / -1; margin-bottom: 2px; color: #8b9099; font: 700 9px/1 var(--font-head); letter-spacing: .14em; text-transform: uppercase; }
.premium-contact__direct-item { display: grid; grid-template-columns: 38px minmax(0, 1fr); gap: 12px; align-items: center; min-width: 0; min-height: 72px; box-sizing: border-box; padding: 12px 14px; color: var(--ink); background: rgba(255,255,255,.78); border: 1px solid #dcdcd7; border-radius: 10px; box-shadow: 0 6px 18px rgba(12,21,38,.045); text-decoration: none; transition: border-color .2s, background .2s, transform .2s, box-shadow .2s; }
.premium-contact__direct-item i { width: 36px; height: 36px; display: flex; align-items: center; justify-content: center; border-radius: 8px; background: rgba(178,21,27,.08); color: var(--brand); }
.premium-contact__direct-item i svg { width: 18px; height: 18px; }
.premium-contact__direct-item > span { min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.premium-contact__direct-item small { color: #8b9099; font: 600 8.5px/1 var(--font-head); letter-spacing: .08em; text-transform: uppercase; }
.premium-contact__direct-item strong { color: var(--ink); font: 700 10.5px/1.35 var(--font-head); white-space: nowrap; }
.premium-contact__direct-item:hover { color: var(--ink); background: #fff; border-color: rgba(178,21,27,.35); box-shadow: 0 10px 22px rgba(12,21,38,.075); transform: translateY(-2px); }

@media screen and (max-width: 1000px) {
	.premium-contact { padding: 80px 0; }
	.premium-contact__grid { grid-template-columns: 1fr; }
	.premium-contact__form-wrap { border-bottom: 0; }
	.premium-contact__content { min-height: 560px; border-top: 1px solid #e2e1dc; border-left: 0; }
}
@media screen and (max-width: 620px) {
	.premium-contact { padding: 64px 0; }
	.premium-contact__grid { width: calc(100% - 32px); margin-left: auto; margin-right: auto; border-radius: 14px; }
	.premium-contact__form-wrap, .premium-contact__content { padding: 38px 24px; }
	.premium-contact__form { padding: 0; border-radius: 0; }
	.premium-contact__row { grid-template-columns: 1fr; }
	.premium-contact__submit { align-items: flex-start; flex-direction: column; }
	.premium-contact__submit .btn { width: 100%; }
	.premium-contact__direct { grid-template-columns: 1fr; }
	.premium-contact__direct-title { grid-column: 1; }
}

/* Editorial insights */
.insights-section { position: relative; padding: clamp(76px, 8vw, 120px) 0; overflow: hidden; background: linear-gradient(135deg, #a91017 0%, #be151c 58%, #a70e15 100%); color: #fff; }
.insights-section::before { content: ""; position: absolute; top: -230px; right: -160px; width: 620px; height: 620px; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; box-shadow: 0 0 0 90px rgba(255,255,255,.025), 0 0 0 180px rgba(255,255,255,.018); pointer-events: none; }
.insights-section .container { position: relative; z-index: 1; width: calc(100% - clamp(48px, 14vw, 280px)); max-width: 1600px; padding-right: 0; padding-left: 0; }
.insights-section__head { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr); gap: 60px; align-items: end; margin-bottom: 48px; }
.insights-section__head h2 { margin: 15px 0 0; font: 500 clamp(38px, 4vw, 58px)/1.02 var(--font-head); letter-spacing: -.045em; }
.insights-section .eyebrow { color: rgba(255,255,255,.72); }
.insights-section .eyebrow::before { background: rgba(255,255,255,.75); }
.insights-section__head h2 em { color: rgba(255,255,255,.58); font-style: normal; font-weight: 400; }
.insights-section__head > p { max-width: 520px; margin: 0 0 4px auto; color: rgba(255,255,255,.74); font-size: 15px; line-height: 1.8; }
.insights-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.insight-card { overflow: hidden; background: #fffdfb; border: 1px solid rgba(255,255,255,.34); border-radius: 18px; box-shadow: 0 22px 54px rgba(72,0,4,.22); transition: transform .35s var(--ease), box-shadow .35s var(--ease); }
.insight-card:hover { transform: translateY(-7px); box-shadow: 0 30px 66px rgba(72,0,4,.31); }
.insight-card__visual { display: block; position: relative; height: 245px; overflow: hidden; background: #18243a; }
.insight-card__visual::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(8,17,31,.45), transparent 55%); }
.insight-card__visual img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s var(--ease), filter .6s var(--ease); }
.insight-card:hover .insight-card__visual img { transform: scale(1.045); filter: saturate(1.08); }
.insight-card__visual span { position: absolute; z-index: 1; right: 18px; bottom: 18px; padding: 9px 13px; background: rgba(178,21,27,.92); border: 1px solid rgba(255,255,255,.25); border-radius: 6px; color: #fff; font: 700 10px/1 var(--font-head); letter-spacing: .06em; text-transform: uppercase; backdrop-filter: blur(8px); }
.insight-card__body { display: flex; flex-direction: column; min-height: 260px; padding: 29px 30px 27px; }
.insight-card__body small { color: var(--brand); font: 700 10px/1 var(--font-head); letter-spacing: .1em; text-transform: uppercase; }
.insight-card__body h3 { margin: 15px 0 13px; font: 650 22px/1.28 var(--font-head); letter-spacing: -.025em; }
.insight-card__body h3 a { color: var(--ink); text-decoration: none; }
.insight-card__body p { margin: 0; color: #5c6370; font-size: 13.5px; line-height: 1.7; }
.insight-card__link { align-self: flex-start; min-height: 44px; margin-top: auto; padding: 0 21px; font-size: 12px; box-shadow: 0 9px 22px rgba(178,21,27,.18); }
@media screen and (max-width: 900px) {
	.insights-section__head { grid-template-columns: 1fr; gap: 22px; }
	.insights-section__head > p { margin-left: 0; }
	.insights-grid { grid-template-columns: 1fr 1fr; }
	.insight-card:last-child { grid-column: 1 / -1; }
}
@media screen and (max-width: 620px) {
	.insights-section .container { width: calc(100% - 32px); }
	.insights-grid { grid-template-columns: 1fr; }
	.insight-card:last-child { grid-column: auto; }
	.insight-card__visual { height: 220px; }
}

/* -------------------------------------------------------------------- quote modal */

body.quote-modal-open { overflow: hidden; }

.quote-modal {
	position: fixed;
	inset: 0;
	z-index: 4000;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 24px;
}
.quote-modal.is-open { display: flex; }

.quote-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(7,11,21,.74);
	opacity: 0;
	transition: opacity .28s var(--ease);
}
.quote-modal.is-open .quote-modal__backdrop { opacity: 1; }

.quote-modal__panel {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 980px;
	max-height: 90vh;
	overflow-y: auto;
	display: grid;
	grid-template-columns: 1.15fr .85fr;
	background: #fff;
	border-radius: 18px;
	box-shadow: 0 40px 100px rgba(5,9,18,.5);
	transform: translateY(22px) scale(.97);
	opacity: 0;
	transition: transform .3s var(--ease), opacity .3s var(--ease);
}
.quote-modal.is-open .quote-modal__panel {
	transform: translateY(0) scale(1);
	opacity: 1;
}

.quote-modal__close {
	position: absolute;
	top: 16px;
	right: 16px;
	z-index: 2;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	border: 1px solid rgba(12,21,38,.12);
	background: #fff;
	color: var(--ink);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	padding: 0;
	transition: background-color var(--dur) var(--ease), color var(--dur) var(--ease), transform var(--dur) var(--ease);
}
.quote-modal__close svg { width: 16px; height: 16px; }
.quote-modal__close:hover { background: var(--brand); border-color: var(--brand); color: #fff; transform: rotate(90deg); }

.quote-modal__form-side { padding: 50px 46px 40px; }
.quote-modal__form-side .premium-contact__form-note { margin-bottom: 26px; }

.quote-modal__side {
	background: #f2f1ed;
	border-left: 1px solid #e2e1dc;
	padding: 50px 40px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.quote-modal__side h3 {
	margin: 18px 0 16px;
	color: var(--ink);
	font: 600 clamp(24px, 2.2vw, 30px)/1.2 var(--font-head);
	letter-spacing: -.02em;
}
.quote-modal__side h3 em { color: #777d89; font-style: normal; font-weight: 300; }
.quote-modal__side p { margin: 0 0 30px; color: var(--text-muted); font-size: 14px; line-height: 1.75; }

.quote-modal__direct { display: grid; gap: 2px; }
.quote-modal__direct-item {
	display: grid;
	grid-template-columns: 34px 1fr;
	align-items: center;
	gap: 14px;
	padding: 14px 0;
	border-top: 1px solid rgba(12,21,38,.08);
	color: var(--ink);
	text-decoration: none;
}
.quote-modal__direct-item:first-child { border-top: 0; }
.quote-modal__direct-item i { display: flex; width: 34px; height: 34px; border-radius: 50%; background: #fff; border: 1px solid #e2e1dc; align-items: center; justify-content: center; color: var(--brand); }
.quote-modal__direct-item i svg { width: 16px; height: 16px; }
.quote-modal__direct-item small { display: block; color: var(--text-muted); font-size: 10.5px; letter-spacing: .04em; text-transform: uppercase; }
.quote-modal__direct-item strong { display: block; font: 600 14.5px/1.3 var(--font-head); }
.quote-modal__direct-item:hover strong { color: var(--brand); }

@media screen and (max-width: 760px) {
	.quote-modal { padding: 0; }
	.quote-modal__panel { grid-template-columns: 1fr; max-width: 100%; max-height: 100vh; height: 100%; border-radius: 0; }
	.quote-modal__side { display: none; }
	.quote-modal__form-side { padding: 56px 22px 32px; }
}

@media (prefers-reduced-motion: reduce) {
	.quote-modal__panel, .quote-modal__backdrop { transition: none; }
}

/* -------------------------------------------------------------------- about split */

.about-split {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 64px;
	align-items: center;
}

.about-split__media {
	position: relative;
	border-radius: var(--radius-md);
	overflow: hidden;
	box-shadow: var(--shadow-md);
	aspect-ratio: 4 / 3;
}

.about-split__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.about-split__body h2 { margin-bottom: 18px; }
.about-split__body p { margin: 0 0 16px; }
.about-split__body p:last-of-type { margin-bottom: 26px; }

@media screen and (max-width: 860px) {
	.about-split { grid-template-columns: 1fr; gap: 32px; }
}

.about-triple {
	display: grid;
	grid-template-columns: .85fr 1.05fr .7fr;
	gap: 48px;
	align-items: center;
}

.about-triple__media {
	border-radius: var(--radius-md);
	overflow: hidden;
	box-shadow: var(--shadow-md);
	aspect-ratio: 3 / 4;
}
.about-triple__media img { display: block; width: 100%; height: 100%; object-fit: cover; }

.about-triple__body h2 { margin-bottom: 16px; }
.about-triple__body p { margin: 0 0 16px; }
.about-triple__body p:last-of-type { margin-bottom: 24px; }

.about-triple__highlights {
	display: flex;
	flex-direction: column;
	gap: 26px;
}

.about-highlight { display: flex; gap: 12px; }
.about-highlight svg { flex-shrink: 0; width: 20px; height: 20px; color: var(--brand); margin-top: 2px; }
.about-highlight strong { display: block; font-family: var(--font-head); font-size: 14px; color: var(--ink); margin-bottom: 4px; }
.about-highlight span { display: block; font-size: 13px; color: var(--text-muted); line-height: 1.6; }

@media screen and (max-width: 960px) {
	.about-triple { grid-template-columns: 1fr 1fr; }
	.about-triple__highlights { grid-column: 1 / -1; flex-direction: row; flex-wrap: wrap; gap: 20px; }
	.about-triple__highlights .about-highlight { flex: 1 1 220px; }
}
@media screen and (max-width: 640px) {
	.about-triple { grid-template-columns: 1fr; gap: 28px; }
}

/* -------------------------------------------------------------------- value / process cards */

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

.value-card {
	background: var(--paper);
	padding: 34px 30px;
}

.value-card__num {
	font-family: var(--font-head);
	font-size: 13px;
	font-weight: 700;
	color: var(--brand);
	letter-spacing: .06em;
}

.value-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	margin-bottom: 6px;
	border-radius: 50%;
	background: rgba(178,21,27,.08);
	color: var(--brand);
}
.value-card__icon svg { width: 21px; height: 21px; }

.value-card h3 {
	font-family: var(--font-head);
	font-size: 18px;
	color: var(--ink);
	margin: 12px 0 10px;
}

.value-card p { color: var(--text-muted); line-height: 1.65; margin: 0; font-size: 14.5px; }

.ds-section--brand {
	position: relative;
	background: linear-gradient(155deg, var(--brand) 0%, var(--brand-dark) 100%);
	overflow: hidden;
}
.ds-section--brand::before {
	content: "";
	position: absolute;
	top: -210px;
	right: -150px;
	width: 540px;
	height: 540px;
	border: 1px solid rgba(255,255,255,.12);
	border-radius: 50%;
	box-shadow: 0 0 0 80px rgba(255,255,255,.025), 0 0 0 160px rgba(255,255,255,.018);
	pointer-events: none;
}
.ds-section--brand > .container { position: relative; z-index: 1; }
.ds-section--brand .eyebrow { color: rgba(255,255,255,.8); }
.ds-section--brand .ds-section-head h2 { color: #fff; }
.ds-section--brand .ds-section-head p { color: rgba(255,255,255,.74); }
.ds-section--brand .value-grid { gap: 20px; background: transparent; border: 0; }
.ds-section--brand .value-card {
	background: #fff;
	border-radius: var(--radius-md);
	box-shadow: 0 20px 46px rgba(72,0,4,.22);
	transition: transform .3s var(--ease), box-shadow .3s var(--ease);
}
.ds-section--brand .value-card:hover { transform: translateY(-6px); box-shadow: 0 26px 56px rgba(72,0,4,.28); }

@media screen and (max-width: 860px) {
	.value-grid { grid-template-columns: repeat(2, 1fr); }
}
@media screen and (max-width: 560px) {
	.value-grid { grid-template-columns: 1fr; }
}

.value-points { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0 28px; border-top: 1px solid var(--line); margin-top: 26px; }
.value-point { display: grid; grid-template-columns: 44px 1fr; gap: 16px; padding: 18px 0; border-bottom: 1px solid var(--line); }
.value-point strong { display: block; margin: 1px 0 5px; color: var(--ink); font: 700 15px/1.25 var(--font-head); }
.value-point p { margin: 0; color: var(--text-muted); font-size: 13px; line-height: 1.55; }

@media screen and (max-width: 560px) {
	.value-points { grid-template-columns: 1fr; }
}

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

.process-step {
	position: relative;
	padding: 30px 26px;
	background: var(--paper-off);
	border: 1px solid var(--line);
	border-radius: var(--radius-lg);
	transition: background .4s var(--ease), border-color .4s var(--ease), box-shadow .4s var(--ease), transform .4s var(--ease);
}
.process-step:hover { transform: translateY(-4px); box-shadow: 0 16px 34px rgba(12,21,38,.09); }

.process-step__icon {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 72px;
	height: 72px;
	margin-bottom: 22px;
	border-radius: 50%;
	background: var(--paper);
	border: 1px solid var(--line);
	box-shadow: 0 10px 22px rgba(12,21,38,.10);
	color: var(--ink);
	transition: background .5s var(--ease), color .5s var(--ease), box-shadow .5s var(--ease), transform .5s var(--ease), border-color .5s var(--ease);
}
.process-step__icon svg { width: 27px; height: 27px; }

.process-step h3 {
	font-family: var(--font-head);
	font-size: 17px;
	font-weight: 650;
	color: var(--ink);
	margin: 0 0 10px;
	transition: color .5s var(--ease);
}

.process-step p { color: var(--text-muted); font-size: 14.5px; line-height: 1.65; margin: 0; }

.process-step.is-active { background: rgba(178,21,27,.07); border-color: rgba(178,21,27,.24); box-shadow: 0 16px 34px rgba(178,21,27,.12); }
.process-step.is-active .process-step__icon {
	background: var(--brand);
	border-color: var(--brand);
	color: #fff;
	transform: translateY(-2px);
	animation: process-step-glow 1.8s ease-in-out infinite;
}
.process-step.is-active h3 { color: var(--brand); }

@keyframes process-step-glow {
	0%, 100% { box-shadow: 0 0 0 9px rgba(178,21,27,.10), 0 14px 30px rgba(178,21,27,.30); }
	50% { box-shadow: 0 0 0 14px rgba(178,21,27,.16), 0 18px 38px rgba(178,21,27,.40); }
}

@media screen and (max-width: 860px) {
	.process-grid { grid-template-columns: 1fr 1fr; row-gap: 32px; }
}
@media screen and (max-width: 560px) {
	.process-grid { grid-template-columns: 1fr; }
}

/* -------------------------------------------------------------------- dark split (Neden Binbay + Nasıl Çalışıyoruz) */

.workflow-section { position: relative; padding: 112px 0 0; overflow: hidden; background: linear-gradient(145deg, #0b1628 0%, #111f37 100%); color: #fff; }
.workflow-section::before { content: ""; position: absolute; right: -220px; top: -260px; width: 640px; height: 640px; border-radius: 50%; background: rgba(178,21,27,.10); filter: blur(110px); pointer-events: none; }
.workflow-section__head { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: end; margin-bottom: 48px; }
.workflow-section__head .eyebrow { grid-column: 1 / -1; margin-bottom: -52px; color: #ef777b; }
.workflow-section__head .eyebrow::before { background: #ef777b; }
.workflow-section__head h2 { max-width: 650px; margin: 0; color: #fff; font: 600 clamp(40px, 4.2vw, 62px)/1.05 var(--font-head); letter-spacing: -.04em; }
.workflow-section__head h2 em { color: rgba(255,255,255,.54); font-style: normal; font-weight: 300; }
.workflow-section__head p { max-width: 480px; margin: 0 0 6px; color: rgba(255,255,255,.62); font-size: 15px; line-height: 1.8; }
.workflow-panel { display: grid; grid-template-columns: minmax(360px, .88fr) minmax(0, 1.12fr); min-height: 570px; overflow: hidden; border: 1px solid rgba(255,255,255,.14); border-radius: 26px; background: rgba(255,255,255,.035); box-shadow: 0 30px 80px rgba(0,0,0,.24); }
.workflow-panel__media { position: relative; min-height: 570px; overflow: hidden; }
.workflow-panel__media img { width: 100%; height: 100%; display: block; object-fit: cover; }
.workflow-panel__media-shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(8,16,29,.10), rgba(8,16,29,.82) 78%, rgba(8,16,29,.96)); }
.workflow-panel__media-content { position: absolute; z-index: 1; left: 42px; right: 42px; bottom: 40px; display: flex; flex-direction: column; align-items: flex-start; }
.workflow-panel__media-content > span { margin-bottom: 12px; color: #ef777b; font: 700 10px/1 var(--font-head); letter-spacing: .13em; text-transform: uppercase; }
.workflow-panel__media-content > strong { color: #fff; font: 600 30px/1.15 var(--font-head); letter-spacing: -.025em; }
.workflow-panel__media-content > a { margin-top: 22px; padding-bottom: 6px; color: #fff; border-bottom: 1px solid rgba(255,255,255,.35); font: 600 11px/1 var(--font-head); text-decoration: none; }
.workflow-panel__media-content b { margin-left: 7px; color: #ef777b; }
.workflow-steps { display: grid; grid-template-columns: 1fr 1fr; }
.workflow-steps article { position: relative; display: flex; flex-direction: column; justify-content: flex-end; min-height: 285px; padding: 38px; box-sizing: border-box; border-left: 1px solid rgba(255,255,255,.11); border-bottom: 1px solid rgba(255,255,255,.11); transition: background .3s; }
.workflow-steps article:nth-child(n+3) { border-bottom: 0; }
.workflow-steps article:hover { background: rgba(255,255,255,.045); }
.workflow-steps article > span { position: absolute; top: 32px; right: 34px; color: rgba(255,255,255,.22); font: 500 34px/1 var(--font-head); }
.workflow-steps h3 { margin: 0 0 10px; color: #fff; font: 600 19px/1.2 var(--font-head); }
.workflow-steps p { max-width: 270px; margin: 0; color: rgba(255,255,255,.55); font-size: 12.5px; line-height: 1.65; }
.workflow-principles { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 42px; border-top: 1px solid rgba(255,255,255,.13); }
.workflow-principles > div { display: grid; grid-template-columns: 42px 1fr; gap: 15px; align-items: center; min-height: 106px; padding: 0 34px; border-left: 1px solid rgba(255,255,255,.13); }
.workflow-principles > div:first-child { border-left: 0; padding-left: 0; }
.workflow-principles svg { width: 22px; height: 22px; color: #ef777b; }
.workflow-principles > div > span { display: flex; flex-direction: column; gap: 5px; }
.workflow-principles small { color: rgba(255,255,255,.38); font: 600 9px/1 var(--font-head); letter-spacing: .12em; text-transform: uppercase; }
.workflow-principles strong { color: rgba(255,255,255,.88); font: 600 12px/1.35 var(--font-head); }

@media screen and (max-width: 900px) {
	.workflow-section { padding-top: 80px; }
	.workflow-section__head { grid-template-columns: 1fr; gap: 22px; }
	.workflow-section__head .eyebrow { grid-column: 1; margin-bottom: 0; }
	.workflow-panel { grid-template-columns: 1fr; }
	.workflow-panel__media { min-height: 460px; }
}
@media screen and (max-width: 620px) {
	.workflow-section { padding-top: 64px; }
	.workflow-panel { border-radius: 18px; }
	.workflow-panel__media { min-height: 390px; }
	.workflow-panel__media-content { left: 26px; right: 26px; bottom: 28px; }
	.workflow-steps { grid-template-columns: 1fr; }
	.workflow-steps article { min-height: 220px; padding: 28px; border-left: 0; }
	.workflow-steps article:nth-child(n+3) { border-bottom: 1px solid rgba(255,255,255,.11); }
	.workflow-steps article:last-child { border-bottom: 0; }
	.workflow-principles { grid-template-columns: 1fr; padding: 16px 0; }
	.workflow-principles > div, .workflow-principles > div:first-child { min-height: 72px; padding: 0; border-left: 0; }
}

/* Restrained editorial workflow variant */
.workflow-section { padding: 112px 0; background: #f2f1ed; color: var(--ink); }
.workflow-section::before { display: none; }
.workflow-section__head { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(340px, .95fr); gap: clamp(70px, 11vw, 160px); align-items: end; margin-bottom: 54px; }
.workflow-section__head .eyebrow { grid-column: 1 / -1; margin: 0 0 -45px; color: var(--brand); }
.workflow-section__head .eyebrow::before { background: var(--brand); }
.workflow-section__head h2 { max-width: 690px; margin: 0; color: var(--ink); font: 600 clamp(42px, 4.7vw, 66px)/1.03 var(--font-head); letter-spacing: -.045em; }
.workflow-section__head h2 em { color: #7b8089; font-style: normal; font-weight: 300; }
.workflow-section__head > div p { max-width: 470px; margin: 0 0 24px; color: var(--text-muted); font-size: 14.5px; line-height: 1.8; }
.workflow-section__head > div a { display: inline-flex; align-items: center; gap: 9px; padding-bottom: 6px; border-bottom: 1px solid #b9b9b4; color: var(--ink); font: 600 11px/1 var(--font-head); text-decoration: none; }
.workflow-section__head > div a span { color: var(--brand); }
.workflow-board { overflow: hidden; background: #fff; border: 1px solid #dddcd7; border-radius: 12px; box-shadow: 0 18px 55px rgba(12,21,38,.07); }
.workflow-board__bar { display: flex; justify-content: space-between; align-items: center; min-height: 66px; padding: 0 32px; background: #fafaf8; border-bottom: 1px solid #dddcd7; }
.workflow-board__bar span { color: var(--ink); font: 700 11px/1 var(--font-head); letter-spacing: .1em; text-transform: uppercase; }
.workflow-board__bar small { color: #969aa2; font: 500 9px/1 var(--font-head); letter-spacing: .06em; }
.workflow-board__rows article { display: grid; grid-template-columns: 56px 170px minmax(280px, 1fr) 150px; gap: 24px; align-items: center; min-height: 104px; padding: 0 32px; border-bottom: 1px solid #e5e4df; transition: background .2s; }
.workflow-board__rows article:last-child { border-bottom: 0; }
.workflow-board__rows article:hover { background: #fafaf8; }
.workflow-board__rows article > span { color: var(--brand); font: 600 10px/1 var(--font-head); letter-spacing: .1em; }
.workflow-board__rows h3 { margin: 0; color: var(--ink); font: 600 18px/1.2 var(--font-head); }
.workflow-board__rows p { margin: 0; color: var(--text-muted); font-size: 13px; line-height: 1.6; }
.workflow-board__rows small { justify-self: end; color: #92969f; font: 600 9px/1 var(--font-head); letter-spacing: .08em; text-transform: uppercase; }
.workflow-principles { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 20px; overflow: hidden; background: #0d192d; border: 0; border-radius: 10px; }
.workflow-principles > div, .workflow-principles > div:first-child { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 7px; min-height: 92px; padding: 0 30px; border-left: 1px solid rgba(255,255,255,.12); }
.workflow-principles > div:first-child { border-left: 0; }
.workflow-principles small { color: #ef777b; font: 600 8.5px/1 var(--font-head); letter-spacing: .1em; text-transform: uppercase; }
.workflow-principles strong { color: rgba(255,255,255,.88); font: 600 12px/1.35 var(--font-head); }

@media screen and (max-width: 900px) {
	.workflow-section { padding: 80px 0; }
	.workflow-section__head { grid-template-columns: 1fr; gap: 24px; }
	.workflow-section__head .eyebrow { grid-column: 1; margin: 0; }
	.workflow-board__rows article { grid-template-columns: 44px 140px 1fr; padding: 18px 24px; }
	.workflow-board__rows small { display: none; }
}
@media screen and (max-width: 620px) {
	.workflow-section { padding: 64px 0; }
	.workflow-board__bar { padding: 0 20px; }
	.workflow-board__bar small { display: none; }
	.workflow-board__rows article { grid-template-columns: 32px 1fr; gap: 10px 14px; min-height: 0; padding: 22px 20px; }
	.workflow-board__rows h3 { font-size: 16px; }
	.workflow-board__rows p { grid-column: 2; }
	.workflow-principles { grid-template-columns: 1fr; padding: 10px 0; }
	.workflow-principles > div, .workflow-principles > div:first-child { min-height: 66px; padding: 0 22px; border-left: 0; }
}

/* Reference-led corporate workflow */
.workflow-section { position: relative; padding: 42px 0 0; background: #fafaf8; color: var(--ink); }
.workflow-section::before { content: none; }
.workflow-section > .container { position: relative; z-index: 1; width: calc(100% - clamp(48px, 14vw, 280px)); max-width: 1600px; padding-left: 0; padding-right: 0; }
.workflow-section__head { position: relative; display: block; min-height: 0; margin-bottom: 42px; padding-top: 28px; box-sizing: border-box; }
.workflow-section__head .eyebrow { position: absolute; top: 0; left: 0; grid-column: auto; margin: 0; color: var(--brand); }
.workflow-section__head h2 { max-width: 540px; margin: 0; color: var(--ink); font: 500 clamp(48px, 5vw, 70px)/.97 var(--font-ui); letter-spacing: -.045em; }
.workflow-section__head h2 em { color: #8d817d; font-style: normal; font-weight: 400; }
.workflow-section__head h2 em::after { content: "."; color: var(--brand); }
.workflow-section__head > div { grid-column: 2; align-self: center; }
.workflow-section__head > div p { max-width: 330px; margin: 0 0 22px; color: #3f4857; font-size: 14px; line-height: 1.75; }
.workflow-section__head > div a { display: inline-flex; justify-content: space-between; min-width: 165px; padding: 0 0 8px; border-bottom: 1px solid #b8b7b2; color: var(--ink); font: 600 10px/1 var(--font-head); }
.workflow-board { position: relative; z-index: 2; overflow: hidden; background: rgba(255,255,255,.94); border: 1px solid #dddcd7; border-radius: 10px; box-shadow: 0 16px 45px rgba(12,21,38,.06); }
.workflow-board__bar { min-height: 41px; padding: 0 24px; background: rgba(255,255,255,.78); }
.workflow-board__bar span { font-size: 11px; letter-spacing: .08em; }
.workflow-board__bar small { color: #7f858f; font-size: 10px; letter-spacing: .04em; }
.workflow-board__rows { display: grid; grid-template-columns: repeat(4, 1fr); }
.workflow-board__rows article { display: flex; position: relative; flex-direction: column; align-items: flex-start; min-height: 272px; padding: 30px 34px 28px; box-sizing: border-box; border-right: 1px solid #e4e3de; border-bottom: 0; transition: background .2s; }
.workflow-board__rows article:last-child { border-right: 0; }
.workflow-board__rows article > span { color: var(--brand); font: 500 17px/1 var(--font-ui); }
.workflow-board__rows article > i { width: 64px; height: 64px; display: flex; align-items: center; justify-content: center; align-self: center; margin: 0 0 25px; border: 1px solid #d5d6d4; border-radius: 50%; background: #f6f6f4; color: var(--ink); }
.workflow-board__rows article > i::after { content: ""; position: absolute; width: 30px; height: 2px; margin-top: 84px; background: var(--brand); }
.workflow-board__rows article > i svg { width: 30px; height: 30px; stroke-width: 1.7; }
.workflow-board__rows h3 { margin: 0 0 12px; color: var(--ink); font: 600 24px/1.15 var(--font-ui); letter-spacing: -.015em; }
.workflow-board__rows p { min-height: 58px; margin: 0; color: #4e5765; font-size: 13.5px; line-height: 1.6; }
.workflow-board__rows article > a { display: inline-flex; gap: 20px; align-items: center; margin-top: auto; padding-bottom: 8px; border-bottom: 1px solid #9da0a5; color: #18243a; font: 700 11.5px/1 var(--font-head); text-decoration: none; }
.workflow-board__rows article > a b { color: var(--brand); font-size: 13px; }
.workflow-principles { display: block; margin-top: 10px; padding: 0; overflow: hidden; background: #0d192d; border-radius: 0; }
.workflow-principles__inner { display: grid; grid-template-columns: repeat(3, 1fr); width: calc(100% - clamp(48px, 14vw, 280px)); max-width: 1600px; padding-left: 0; padding-right: 0; }
.workflow-principles__inner > div { display: grid; grid-template-columns: 64px 1fr; gap: 20px; align-items: center; min-height: 153px; padding: 0 30px; border-left: 1px solid rgba(255,255,255,.13); }
.workflow-principles__inner > div:first-child { padding-left: 0; border-left: 0; }
.workflow-principles__inner > div > i { width: 62px; height: 62px; display: flex; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,.45); border-radius: 50%; color: var(--brand); }
.workflow-principles__inner > div > i svg { width: 30px; height: 30px; }
.workflow-principles__inner > div > span { display: flex; flex-direction: column; align-items: flex-start; gap: 7px; }
.workflow-principles__inner small { color: #ef6268; font: 700 10px/1 var(--font-head); letter-spacing: .1em; text-transform: uppercase; }
.workflow-principles__inner strong { color: #fff; font: 600 15px/1.45 var(--font-head); }
.workflow-principles__inner p { margin: 0; color: rgba(255,255,255,.55); font-size: 12px; line-height: 1.6; }

/* Visual card treatment — avoids a rigid table appearance */
.workflow-board { overflow: visible; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.workflow-board__bar { min-height: 46px; padding: 0 4px; background: transparent; border: 0; }
.workflow-board__bar span { display: inline-flex; align-items: center; gap: 10px; color: var(--ink); }
.workflow-board__bar span::before { display: none; }
.workflow-board__rows { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; padding-bottom: 20px; }
.workflow-board__rows article { position: relative; min-height: 270px; padding: 32px; overflow: hidden; background: #fff; border: 1px solid #e2e1dc; border-radius: 18px; box-shadow: 0 16px 38px rgba(12,21,38,.075); transition: transform .3s var(--ease), box-shadow .3s var(--ease), border-color .3s var(--ease); }
.workflow-board__rows article::before { content: ""; position: absolute; top: -54px; right: -54px; width: 142px; height: 142px; border-radius: 50%; background: rgba(178,21,27,.045); transition: transform .4s var(--ease), background .3s; }
.workflow-board__rows article:nth-child(even) { transform: none; }
.workflow-board__rows article:hover { z-index: 2; background: #fff; border-color: rgba(178,21,27,.26); box-shadow: 0 24px 48px rgba(12,21,38,.12); transform: translateY(-6px); }
.workflow-board__rows article:nth-child(even):hover { transform: translateY(-6px); }
.workflow-board__rows article:hover::before { background: rgba(178,21,27,.075); transform: scale(1.12); }
.workflow-board__rows article > i { position: relative; align-self: flex-start; width: 66px; height: 66px; margin: 0 0 30px; background: linear-gradient(145deg, #fff, #f1f1ee); border-color: #dbdbd6; box-shadow: 0 8px 20px rgba(12,21,38,.07); }
.workflow-board__rows article > i::after { left: 18px; bottom: -12px; margin: 0; }
.workflow-board__rows h3 { min-height: 29px; margin: 0 0 13px; color: var(--ink); font-family: var(--font-head); font-size: 22px; font-weight: 650; line-height: 1.3; letter-spacing: -.02em; }
.workflow-board__rows p { min-height: 68px; margin: 0; color: #4e5765; font-family: var(--font-body); font-size: 14px; font-weight: 400; line-height: 1.7; }
.workflow-board__rows article > a { position: relative; z-index: 1; border-bottom-color: #c4c3be; }
.workflow-board__rows article > a { min-height: 20px; font-family: var(--font-head); font-size: 12px; font-weight: 700; line-height: 1.2; }

@media screen and (max-width: 900px) {
	.workflow-section { padding-top: 70px; }
	.workflow-section__head { min-height: 0; margin-bottom: 34px; }
	.workflow-section__head .eyebrow { margin-bottom: 0; }
	.workflow-board__rows { grid-template-columns: 1fr 1fr; }
	.workflow-board__rows article { border-bottom: 1px solid #e4e3de; }
	.workflow-board__rows article:nth-child(even) { transform: none; }
	.workflow-board__rows article:hover, .workflow-board__rows article:nth-child(even):hover { transform: translateY(-5px); }
	.workflow-principles__inner { grid-template-columns: 1fr; padding: 20px 24px; }
	.workflow-principles__inner > div, .workflow-principles__inner > div:first-child { min-height: 120px; padding: 0; border-left: 0; border-top: 1px solid rgba(255,255,255,.12); }
	.workflow-principles__inner > div:first-child { border-top: 0; }
}
@media screen and (max-width: 620px) {
	.workflow-section > .container, .workflow-principles__inner { width: calc(100% - 32px); }
	.workflow-section__head { min-height: 0; margin-bottom: 28px; padding-bottom: 0; }
	.workflow-section__head .eyebrow { grid-column: 1; margin: 0; }
	.workflow-section__head > div { grid-column: 1; }
	.workflow-board__rows { grid-template-columns: 1fr; }
	.workflow-board__rows article { min-height: 280px; border-right: 0; }
	.workflow-board__bar { padding: 0 18px; }
}

.dark-split {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 64px;
}

.dark-value-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 28px;
	margin-top: 30px;
}

.dark-value-item { display: flex; gap: 12px; }
.dark-value-item svg { flex-shrink: 0; width: 20px; height: 20px; color: #ff9a9d; margin-top: 2px; }
.dark-value-item strong { display: block; font-family: var(--font-head); font-size: 14px; color: #fff; margin-bottom: 4px; }
.dark-value-item span { display: block; font-size: 12.5px; color: rgba(255,255,255,.6); line-height: 1.55; }

.dark-process-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
	gap: 24px 16px;
	margin-top: 30px;
}

.dark-process-step__badge {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: rgba(255,255,255,.08);
	border: 1px solid rgba(255,255,255,.25);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--font-head);
	font-weight: 700;
	font-size: 15px;
	color: #fff;
	margin-bottom: 14px;
}

.dark-process-step h3 { font-family: var(--font-head); font-size: 14.5px; color: #fff; margin: 0 0 6px; }
.dark-process-step p { font-size: 12.5px; color: rgba(255,255,255,.6); line-height: 1.55; margin: 0; }

@media screen and (max-width: 860px) {
	.dark-split { grid-template-columns: 1fr; gap: 48px; }
}
@media screen and (max-width: 520px) {
	.dark-value-grid { grid-template-columns: 1fr; }
}

/* -------------------------------------------------------------------- CTA band */

.cta-band {
	position: relative;
	padding: 88px 0;
	text-align: center;
	background: linear-gradient(155deg, var(--ink) 0%, var(--ink-2) 100%);
	background-size: cover;
	background-position: center;
	color: #fff;
	overflow: hidden;
}

.cta-band__scrim {
	position: absolute;
	inset: 0;
	background: linear-gradient(100deg, rgba(7,11,21,.92) 0%, rgba(7,11,21,.72) 55%, rgba(7,11,21,.5) 100%);
}

.cta-band__inner { position: relative; z-index: 1; }

.cta-band h2 {
	font-family: var(--font-head);
	font-size: clamp(26px, 3.4vw, 38px);
	color: #fff;
	margin: 0 0 16px;
}

.cta-band p {
	max-width: 560px;
	margin: 0 auto 32px;
	color: var(--text-on-dark);
	font-size: 16px;
	line-height: 1.7;
}

.cta-band .btn-row { justify-content: center; }

.cta-band--split .cta-band__inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 32px;
	flex-wrap: wrap;
	text-align: left;
}
.cta-band--split h2 { margin: 0 0 8px; }
.cta-band--split p { margin: 0; max-width: 440px; }
.cta-band--split .btn-row { justify-content: flex-start; }

.cta-band--brand { background: linear-gradient(155deg, var(--brand) 0%, var(--brand-dark) 100%); }
.cta-band--brand::before {
	content: "";
	position: absolute;
	inset: 0;
	background: radial-gradient(60% 90% at 85% 0%, rgba(255,255,255,.14) 0%, rgba(255,255,255,0) 60%);
	pointer-events: none;
}
.cta-band--brand .eyebrow { color: rgba(255,255,255,.8); }
.cta-band--brand .btn-dark { background: #fff; border-color: #fff; color: var(--brand) !important; }
.cta-band--brand .cta-band__foot {
	position: relative;
	z-index: 1;
	margin-top: 34px;
	padding-top: 28px;
	border-top: 1px solid rgba(255,255,255,.24);
	display: flex;
	justify-content: center;
	gap: 36px;
	flex-wrap: wrap;
}
.cta-band--brand .cta-band__foot a {
	color: #fff;
	text-decoration: none;
	font-family: var(--font-head);
	font-size: 14px;
	font-weight: 600;
	display: inline-flex;
	align-items: center;
	gap: 9px;
}
.cta-band--brand .cta-band__foot a svg { width: 17px; height: 17px; }
.cta-band--brand .cta-band__foot a:hover { color: rgba(255,255,255,.78); }

/* -------------------------------------------------------------------- references */

.reference-note {
	border: 1px dashed var(--line);
	border-radius: var(--radius-md);
	padding: 48px;
	text-align: center;
	background: var(--paper-off);
}

.reference-note p { max-width: 560px; margin: 10px auto 0; }

/* -------------------------------------------------------------------- footer */

#footer {
	height: auto;
	padding-top: 0;
	margin-top: 0;
	border-top: 0;
	text-align: left;
}

.site-footer {
	background: #fff;
	color: var(--ink);
	padding: 0;
	border-top: 1px solid #e6e3de;
}

.footer-intro { display: flex; justify-content: space-between; align-items: flex-end; gap: 40px; padding: 62px 0 50px; border-bottom: 1px solid #e6e3de; }
.footer-intro span { color: var(--brand); font: 700 10px/1 var(--font-head); letter-spacing: .13em; text-transform: uppercase; }
.footer-intro h3 { margin: 16px 0 0; color: var(--ink); font: 600 clamp(27px, 3vw, 42px)/1.12 var(--font-head); letter-spacing: -.035em; }
.footer-intro > a { display: inline-flex; flex: 0 0 auto; gap: 24px; align-items: center; min-height: 52px; padding: 0 24px; background: var(--brand); border-radius: 8px; color: #fff; font: 700 13px/1 var(--font-head); text-decoration: none; box-shadow: 0 12px 28px rgba(178,21,27,.18); }
.footer-intro > a b { font-size: 17px; transition: transform .2s; }
.footer-intro > a:hover b { transform: translateX(3px); }

.footer-grid {
	display: grid;
	grid-template-columns: 1.4fr 1fr 1fr 1.2fr;
	gap: 40px;
	padding: 54px 0 50px;
	border-bottom: 1px solid #e6e3de;
}

.footer-brand__logo { display: block; width: 142px; height: 65px; margin-bottom: 19px; overflow: hidden; }
.footer-brand__logo img { display: block; width: 100%; height: 100%; object-fit: contain; }
.footer-brand p { max-width: 320px; color: #69707a; font-size: 13.5px; line-height: 1.75; }

.footer-social { display: flex; gap: 10px; list-style: none; margin: 18px 0 0; padding: 0; }
.footer-social a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: rgba(178,21,27,.08);
	color: var(--brand);
	transition: background .2s var(--ease), color .2s var(--ease), transform .2s var(--ease);
}
.footer-social svg { width: 17px; height: 17px; }
.footer-social a:hover { background: var(--brand); color: #fff; transform: translateY(-2px); }

.footer-col h4 {
	font-family: var(--font-head);
	font-size: 13px;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--ink);
	margin: 0 0 18px;
}

.footer-col ul { list-style: none; margin: 0; padding: 0; }
.footer-col li { margin-bottom: 11px; }
.footer-col a {
	color: #606873;
	text-decoration: none;
	font-size: 14.5px;
	transition: color var(--dur) var(--ease);
}
.footer-col a:hover { color: var(--brand); }

.footer-col address { margin: 0 0 17px; color: #606873; font-size: 13.5px; font-style: normal; line-height: 1.75; }
.footer-contact { display: grid; gap: 9px; }
.footer-contact a { display: flex; flex-direction: column; gap: 3px; }
.footer-contact small { color: #9298a0; font: 700 9px/1 var(--font-head); letter-spacing: .08em; text-transform: uppercase; }
.footer-contact strong { color: var(--ink); font: 650 13.5px/1.35 var(--font-head); overflow-wrap: anywhere; }

.footer-bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	padding: 24px 0;
	font-size: 13px;
	color: #8b9199;
}

.footer-bottom a { color: #8b9199; }

@media screen and (max-width: 860px) {
	.footer-grid { grid-template-columns: 1fr 1fr; }
	.footer-intro { align-items: flex-start; flex-direction: column; }
}
@media screen and (max-width: 560px) {
	.footer-grid { grid-template-columns: 1fr; gap: 32px; }
}

/* -------------------------------------------------------------------- forms */

.form-grid { display: grid; gap: 18px; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }

.field label {
	display: block;
	font-family: var(--font-head);
	font-size: 12.5px;
	font-weight: 600;
	letter-spacing: .03em;
	color: var(--ink);
	margin-bottom: 7px;
}

.field input,
.field textarea {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid var(--line);
	border-radius: var(--radius-sm);
	padding: 13px 14px;
	font-family: var(--font-body);
	font-size: 14.5px;
	color: var(--text);
	background: #fff;
	transition: border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);
}

.field input:focus,
.field textarea:focus {
	outline: none;
	border-color: var(--brand);
	box-shadow: 0 0 0 3px rgba(178,21,27,.12);
}

.field textarea { resize: vertical; min-height: 130px; }

.form-status {
	font-family: var(--font-body);
	font-size: 14px;
	padding: 12px 14px;
	border-radius: var(--radius-sm);
	display: none;
}
.form-status.is-visible { display: block; }
.form-status.is-success { background: #eaf7ee; color: #1c7a34; border: 1px solid #bfe6c9; }
.form-status.is-error { background: #fdecec; color: #b3261e; border: 1px solid #f4c6c4; }

.contact-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 64px;
	align-items: start;
}

.branch-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 26px;
}
.branch-tabs__btn {
	display: flex;
	align-items: baseline;
	gap: 5px;
	padding: 12px 22px;
	border: 1px solid var(--line);
	border-radius: 999px;
	background: #fff;
	color: var(--text-muted);
	font-family: var(--font-head);
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
	box-shadow: 0 4px 14px rgba(12,21,38,.05);
	transition: border-color .2s, background .2s, color .2s, box-shadow .2s, transform .2s;
}
.branch-tabs__btn span { font-weight: 400; opacity: .8; }
.branch-tabs__btn:hover { border-color: rgba(178,21,27,.35); color: var(--ink); box-shadow: 0 8px 20px rgba(12,21,38,.08); transform: translateY(-1px); }
.branch-tabs__btn.is-active {
	background: var(--brand);
	border-color: var(--brand);
	color: #fff;
	box-shadow: 0 10px 24px rgba(178,21,27,.24);
}
.branch-tabs__btn.is-active span { opacity: .85; }

.contact-divider {
	height: 1px;
	margin: 40px 0 56px;
	background: linear-gradient(90deg, var(--line) 0%, var(--line) 60%, transparent 100%);
}

.branch-panel { display: none; }
.branch-panel.is-active { display: block; }

.contact-info h3 {
	font-family: var(--font-head);
	font-size: 15px;
	color: var(--ink);
	margin: 0 0 6px;
}
.contact-info .contact-block {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	padding: 20px 0;
	margin-bottom: 0;
	border-bottom: 1px solid var(--line);
}
.contact-info .contact-block:first-child { padding-top: 0; }
.contact-info .contact-block__icon {
	flex: none;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: rgba(178,21,27,.08);
	color: var(--brand);
}
.contact-info .contact-block__icon svg { width: 20px; height: 20px; }
.contact-info address { font-style: normal; color: var(--text-muted); line-height: 1.7; }
.contact-info a { color: var(--text-muted); text-decoration: none; }
.contact-info a:hover { color: var(--brand); }

.contact-map {
	width: 100vw;
	margin-top: 56px;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	overflow: hidden;
	border-top: 1px solid var(--line);
	border-bottom: 1px solid var(--line);
}
.contact-map iframe { display: block; width: 100%; height: 440px; border: 0; }

@media screen and (max-width: 900px) {
	.contact-grid { grid-template-columns: 1fr; gap: 40px; }
	.form-row { grid-template-columns: 1fr; }
	.contact-map iframe { height: 320px; }
}

/* -------------------------------------------------------------------- sticky side CTA / WhatsApp / cookie bar */

.side-cta {
	position: fixed;
	top: 50%;
	right: 0;
	z-index: 60;
	width: 46px;
	height: 184px;
	display: flex;
	align-items: center;
	justify-content: center;
	transform: translateY(-50%) translateX(0);
	writing-mode: vertical-rl;
	background: var(--brand);
	color: #fff;
	font-family: var(--font-head);
	font-weight: 700;
	font-size: 14px;
	letter-spacing: .07em;
	text-transform: uppercase;
	padding: 0;
	border: 0;
	border-radius: var(--radius-md) 0 0 var(--radius-md);
	cursor: pointer;
	box-shadow: -6px 8px 24px rgba(178,21,27,.30);
	transition: background .2s var(--ease), transform .2s var(--ease);
}
.side-cta__label { position: relative; z-index: 1; }
.side-cta__border {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
}
.side-cta__border rect {
	fill: none;
	stroke: #fff;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-dasharray: 16 84;
	animation: side-cta-trace 2.6s linear infinite;
}
@keyframes side-cta-trace {
	to { stroke-dashoffset: -100; }
}
.side-cta:hover { background: var(--brand-dark); transform: translateY(-50%) translateX(-4px); }

.whatsapp-fab {
	position: fixed;
	right: 24px;
	bottom: 24px;
	z-index: 70;
	width: 58px;
	height: 58px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #25d366;
	color: #fff;
	border-radius: 50%;
	box-shadow: 0 14px 34px rgba(37,211,102,.40);
	transition: transform .2s var(--ease), box-shadow .2s var(--ease), background .2s var(--ease);
}
.whatsapp-fab svg { width: 30px; height: 30px; }
.whatsapp-fab:hover { background: #1ebe5a; transform: translateY(-3px) scale(1.05); box-shadow: 0 18px 40px rgba(37,211,102,.5); }

.cookie-bar {
	position: fixed;
	left: 24px;
	bottom: 24px;
	z-index: 70;
	width: calc(100% - 48px);
	max-width: 480px;
	display: flex;
	flex-direction: column;
	gap: 18px;
	background: #fff;
	color: var(--ink);
	border: 1px solid var(--line);
	padding: 28px 30px;
	border-radius: var(--radius-lg);
	box-shadow: 0 24px 60px rgba(12,21,38,.20);
}
.cookie-bar__head { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 14px; }
.cookie-bar__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: none;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: rgba(178,21,27,.08);
	color: var(--brand);
}
.cookie-bar__icon svg { width: 20px; height: 20px; }
.cookie-bar__logo { display: block; width: 96px; height: 40px; object-fit: contain; }
.cookie-bar strong { display: block; font-family: var(--font-head); font-size: 15px; color: var(--ink); margin-bottom: 8px; }
.cookie-bar p { margin: 0; color: var(--text-muted); font-size: 13.5px; line-height: 1.75; }
.cookie-bar__actions { display: flex; gap: 12px; }
@media screen and (max-width: 560px) {
	.whatsapp-fab { right: 16px; bottom: 16px; width: 52px; height: 52px; }
	.whatsapp-fab svg { width: 26px; height: 26px; }
	.cookie-bar { left: 16px; right: 16px; bottom: 16px; width: auto; max-width: none; }
	.cookie-bar__actions { flex-direction: column; }
	.cookie-bar__actions .btn { width: 100%; }
	.side-cta { display: none; }
}

/* -------------------------------------------------------------------- unified red / white button interaction */

.btn-primary,
.btn-dark {
	background: var(--brand);
	border-color: var(--brand);
	color: #fff !important;
}

.btn-primary:hover,
.btn-dark:hover {
	background: #fff;
	border-color: var(--brand);
	color: var(--brand) !important;
}

.btn-outline,
.btn-outline-light {
	background: #fff;
	border-color: #fff;
	color: var(--brand) !important;
}

.btn-outline:hover,
.btn-outline-light:hover {
	background: var(--brand);
	border-color: var(--brand);
	color: #fff !important;
}

#nav .nav-cta { background: var(--brand); border-color: var(--brand); color: #fff !important; }
#nav .nav-cta:hover { background: #fff; border-color: var(--brand); color: var(--brand) !important; }

.premium-contact__submit .btn:hover {
	background: #fff;
	border-color: var(--brand);
	color: var(--brand) !important;
}

.service-visual-card__content b.card-action-button {
	transition: background-color var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease), transform var(--dur) var(--ease);
}
.service-visual-card:hover .card-action-button {
	background: #fff;
	border-color: #fff;
	color: var(--brand);
}

.footer-intro > a { transition: background-color var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease), transform var(--dur) var(--ease); border: 1px solid var(--brand); }
.footer-intro > a:hover { background: #fff; border-color: var(--brand); color: var(--brand); transform: translateY(-2px); }

/* -------------------------------------------------------------------- focus visibility */

a:focus-visible,
button:focus-visible,
.btn:focus-visible,
input:focus-visible,
textarea:focus-visible {
	outline: 2px solid var(--brand);
	outline-offset: 2px;
}

/* -------------------------------------------------------------------- reveal-on-scroll */

.reveal {
	opacity: 0;
	transform: translateY(16px);
	transition: opacity .6s var(--ease), transform .6s var(--ease);
}
.reveal.is-visible { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
	.reveal { opacity: 1; transform: none; transition: none; }
}

/* Neden Binbay: the whole block rises into view when reached */
.why-binbay-reveal {
	opacity: 0;
	transform: translate3d(0, 90px, 0);
	transition: opacity .85s ease, transform .95s cubic-bezier(.2,.72,.2,1);
	will-change: opacity, transform;
}
.why-binbay-reveal.is-visible { opacity: 1; transform: translate3d(0, 0, 0); }
.why-binbay-reveal.is-visible .why-binbay__media img { animation: why-binbay-image-breathe 12s ease-in-out 1s infinite alternate; }
.why-binbay__stamp { animation: why-binbay-stamp-float 4.8s ease-in-out infinite; }
.why-binbay__point { transition: background-color .3s ease, padding-left .3s ease; }
.why-binbay__point > span { transition: transform .3s ease, color .3s ease, background-color .3s ease; }
.why-binbay__point:hover { padding-left: 10px; background: linear-gradient(90deg, rgba(178,21,27,.045), transparent 72%); }
.why-binbay__point:hover > span { transform: rotate(-7deg) scale(1.08); color: #fff; background: var(--brand); }

@keyframes why-binbay-image-breathe {
	from { object-position: 48% center; }
	to { object-position: 53% center; }
}
@keyframes why-binbay-stamp-float {
	0%, 100% { transform: translateY(0) rotate(0); }
	50% { transform: translateY(-9px) rotate(1.5deg); }
}

@media (prefers-reduced-motion: reduce) {
	.why-binbay-reveal,
	.why-binbay-reveal.is-visible { opacity: 1; transform: none; transition: none; }
	.why-binbay-reveal.is-visible .why-binbay__media img,
	.why-binbay__stamp { animation: none; }
	.why-binbay__point,
	.why-binbay__point > span { transition: none; }
}
