/* Elementor page sections (elementor/build.py → hc-* classes).
   Layout uses Elementor's own container variables (--flex-direction, --width, --gap, --padding-*)
   so editor tweaks still work. Loaded after elementor-frontend. */

/* ---------- Base typography inside Elementor ---------- */
.elementor .elementor-widget-heading .elementor-heading-title {
	font-family: var(--hc-serif);
	font-weight: 400;
	color: var(--hc-navy);
	line-height: 1.15;
}
.elementor h1.elementor-heading-title { font-size: clamp(40px, 6vw, 64px); }
.elementor h2.elementor-heading-title { font-size: clamp(30px, 4vw, 42px); }
.elementor h3.elementor-heading-title { font-size: clamp(22px, 2.4vw, 26px); }
.elementor .elementor-widget-text-editor { color: var(--hc-text); font-size: 17px; line-height: 1.75; }
.elementor .elementor-widget-text-editor p { margin: 0 0 1em; }
.elementor .elementor-widget-text-editor p:last-child { margin-bottom: 0; }
.elementor .elementor-widget-text-editor a { color: var(--hc-navy); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.elementor .hc-card__link a, .elementor .hc-mini__link a { text-decoration: none; }
.elementor .hc-card__link a:hover, .elementor .hc-mini__link a:hover { text-decoration: underline; }
.elementor .elementor-heading-title a { color: inherit; text-decoration: none; }
.elementor .elementor-heading-title a:hover { text-decoration: underline; text-underline-offset: 6px; text-decoration-thickness: 1px; }

.hc-sr {
	position: absolute; width: 1px; height: 1px; overflow: hidden;
	clip: rect(0 0 0 0); white-space: nowrap;
}

.elementor .hc-eyebrow-w .elementor-heading-title {
	font-family: var(--hc-sans);
	font-size: 12px;
	letter-spacing: .24em;
	text-transform: uppercase;
	color: var(--hc-muted);
	margin-bottom: 14px;
}
.elementor .hc-muted { color: var(--hc-muted); font-size: 15px; }

/* ---------- Sections ---------- */
.elementor .hc-sec {
	--padding-top: clamp(64px, 9vw, 120px);
	--padding-bottom: clamp(64px, 9vw, 120px);
	--padding-left: var(--hc-gutter);
	--padding-right: var(--hc-gutter);
	--flex-direction: column;
	--gap: 0px; --row-gap: 0px; --column-gap: 0px;
	--container-max-width: var(--hc-container);
	background: var(--hc-cream);
}
.elementor .hc-sec--light { background: var(--hc-cream-light); }
.elementor .hc-sec--navy { background: var(--hc-navy); }
.elementor .hc-sec h2.elementor-heading-title { margin-bottom: 8px; }

/* Inner containers: no own padding, full width by default.
   :where() keeps specificity at 0,1,0 so component classes below can override. */
.elementor :where(.hc-sec .e-con.e-child) {
	--padding-top: 0px; --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px;
	--width: 100%;
	--gap: 0px; --row-gap: 0px; --column-gap: 0px;
}

/* ---------- Buttons ---------- */
.elementor .hc-b .elementor-button {
	display: inline-flex;
	align-items: center;
	min-height: 48px;
	padding: 0 26px;
	border-radius: var(--hc-radius-pill);
	font-family: var(--hc-sans);
	font-size: 15px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: .01em;
	border: 1px solid var(--hc-navy);
	background: var(--hc-navy);
	color: var(--hc-white);
	transition: background-color .2s, color .2s, border-color .2s;
}
.elementor .hc-b .elementor-button:hover { background: var(--hc-navy-soft); border-color: var(--hc-navy-soft); color: var(--hc-white); }
.elementor .hc-b--line .elementor-button { background: transparent; color: var(--hc-navy); }
.elementor .hc-b--line .elementor-button:hover { background: var(--hc-navy); color: var(--hc-white); }
.elementor .hc-b--light .elementor-button { background: var(--hc-cream); border-color: var(--hc-cream); color: var(--hc-navy); }
.elementor .hc-b--light .elementor-button:hover { background: var(--hc-white); border-color: var(--hc-white); color: var(--hc-navy); }
.elementor .hc-b--outline-light .elementor-button { background: transparent; border-color: rgba(239, 233, 225, .55); color: var(--hc-cream); }
.elementor .hc-b--outline-light .elementor-button:hover { background: rgba(239, 233, 225, .1); border-color: var(--hc-cream); color: var(--hc-cream); }

.elementor .hc-actions,
.elementor .hc-cta__actions {
	--flex-direction: row;
	--flex-wrap: wrap;
	--gap: 12px; --row-gap: 12px; --column-gap: 12px;
	margin-top: 32px;
}
.elementor .hc-actions > .e-con-inner,
.elementor .hc-cta__actions > .e-con-inner { flex-wrap: wrap; }
.elementor .hc-actions .elementor-widget,
.elementor .hc-cta__actions .elementor-widget { width: auto; }

/* ---------- Images ---------- */
.elementor .hc-cover,
.elementor .hc-cover .elementor-widget-container { height: 100%; }
.elementor .hc-cover img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* ---------- Home hero ---------- */
.elementor .hc-hero {
	--padding-top: 0px; --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px;
	--flex-direction: column;
	--min-height: 0px;
}
.elementor .hc-hero .hc-hero__text {
	--padding-top: 56px; --padding-bottom: 64px; --padding-left: var(--hc-gutter); --padding-right: var(--hc-gutter);
	--justify-content: center;
	order: -1;
}
.elementor .hc-hero .hc-hero__media { aspect-ratio: 4 / 5; max-height: 70vh; overflow: hidden; }
.elementor .hc-hero__last { text-transform: uppercase; }
.elementor .hc-hero__first { display: block; font-size: .5em; letter-spacing: .01em; margin-bottom: .08em; }
.elementor .hc-hero__name .elementor-heading-title {
	font-size: clamp(60px, 10vw, 112px);
	line-height: .98;
	letter-spacing: .02em;
}
.elementor .hc-hero__role .elementor-heading-title {
	display: flex;
	align-items: center;
	gap: 16px;
	margin: 24px 0 0;
	font-size: 24px;
}
.elementor .hc-hero__role .elementor-heading-title::before {
	content: "";
	width: 48px;
	height: 1px;
	background: currentColor;
	opacity: .5;
}
.elementor .hc-hero__lead { margin-top: 24px; max-width: 30em; font-size: 18px; }
.elementor .hc-hero__loc { margin-top: 6px; color: var(--hc-muted); font-size: 15px; }
.elementor .hc-hero .hc-b { margin-top: 32px; }

@media (min-width: 900px) {
	.elementor .hc-hero { --flex-direction: row; min-height: min(86vh, 760px); }
	.elementor .hc-hero .hc-hero__media { --width: 50%; aspect-ratio: auto; max-height: none; }
	.elementor .hc-hero .hc-hero__text { --width: 50%; --padding-left: clamp(40px, 6vw, 96px); order: 0; }
}

/* ---------- Split (title left, body right) ---------- */
.elementor .hc-split { --gap: 24px; --row-gap: 24px; }
.elementor .hc-split__body .elementor-widget-text-editor { font-size: 18px; }
.elementor .hc-split__body .hc-b { margin-top: 28px; }
.elementor .hc-split--media { --gap: 40px; --row-gap: 40px; }
.elementor .hc-split__media { aspect-ratio: 3 / 2; overflow: hidden; }
@media (min-width: 900px) {
	.elementor .hc-split { --flex-direction: row; --gap: 64px; --column-gap: 64px; }
	.elementor .hc-split > .e-con-inner > .hc-split__head { --width: 36%; }
	.elementor .hc-split > .e-con-inner > .hc-split__body { --width: 64%; }
	.elementor .hc-split--media > .e-con-inner > .hc-split__media { --width: 55%; }
	.elementor .hc-split--media > .e-con-inner > .hc-split__body { --width: 45%; --justify-content: center; }
}

/* ---------- Cards ---------- */
.elementor .hc-cards {
	--flex-direction: column;
	--gap: 20px; --row-gap: 20px; --column-gap: 20px;
	margin-top: 40px;
}
.elementor .hc-card {
	--padding-top: 28px; --padding-bottom: 28px; --padding-left: 28px; --padding-right: 28px;
	background: var(--hc-cream);
	border: 1px solid var(--hc-line);
	transition: border-color .2s, transform .2s;
}
.elementor .hc-sec--light .hc-card { background: var(--hc-white); }
.elementor .hc-card:hover { border-color: var(--hc-navy); }
.elementor .hc-card__num .elementor-heading-title {
	font-family: var(--hc-sans);
	font-size: 12px;
	letter-spacing: .2em;
	text-transform: uppercase;
	color: var(--hc-muted);
	margin-bottom: 18px;
}
.elementor .hc-card__title .elementor-heading-title { margin-bottom: 12px; }
.elementor .hc-card__text { font-size: 16px; flex-grow: 1; }
.elementor .hc-card__link { margin-top: 20px; font-size: 15px; }
.elementor .hc-card__link a { text-decoration: none; }
.elementor .hc-card__link a:hover { text-decoration: underline; }
@media (min-width: 700px) {
	.elementor .hc-cards { --flex-direction: row; }
	.elementor .hc-cards > .e-con-inner { flex-wrap: wrap; }
	.elementor .hc-cards .hc-card { --width: calc(50% - 10px); }
}
@media (min-width: 1100px) {
	.elementor .hc-cards .hc-card { --width: calc(25% - 15px); }
	.elementor .hc-cards--3 .hc-card { --width: calc(33.333% - 14px); }
}

/* ---------- Quote ---------- */
.elementor .hc-sec--quote { --padding-top: clamp(64px, 8vw, 104px); --padding-bottom: clamp(64px, 8vw, 104px); }
.elementor .hc-quote blockquote {
	max-width: 880px;
	margin: 0 auto;
	padding: 0;
	border: 0;
	text-align: center;
	font-family: var(--hc-serif);
	font-size: clamp(24px, 3.2vw, 36px);
	line-height: 1.35;
	color: var(--hc-navy);
}
.elementor .hc-quote blockquote::before {
	content: "";
	display: block;
	width: 48px;
	height: 1px;
	margin: 0 auto 32px;
	background: var(--hc-navy);
	opacity: .5;
}

/* ---------- CTA band ---------- */
.elementor .hc-cta { --padding-top: clamp(56px, 7vw, 88px); --padding-bottom: clamp(56px, 7vw, 88px); }
.elementor .hc-cta__title .elementor-heading-title { color: var(--hc-cream); }
.elementor .hc-cta__note { color: rgba(239, 233, 225, .75); font-size: 15px; margin-top: 12px; }
.elementor .hc-cta__grid { --gap: 8px; }
@media (min-width: 900px) {
	.elementor .hc-cta__grid { --flex-direction: row; --align-items: center; --justify-content: space-between; --gap: 48px; }
	.elementor .hc-cta__grid > .e-con-inner > .hc-cta__text { --width: auto; flex: 1; }
	.elementor .hc-cta__grid > .e-con-inner > .hc-cta__actions { --width: auto; margin-top: 0; }
}

/* ---------- Inner page hero ---------- */
.elementor .hc-page-hero { --padding-top: clamp(48px, 7vw, 96px); --padding-bottom: clamp(48px, 6vw, 80px); }
.elementor .hc-page-hero .hc-lead,
.elementor .hc-page-hero__text .elementor-widget-text-editor { margin-top: 24px; max-width: 46em; font-size: 18px; }
.elementor .hc-page-hero .hc-lead p { max-width: 760px; }
.elementor .hc-page-hero__grid { --gap: 40px; --row-gap: 40px; }
.elementor .hc-page-hero__media { aspect-ratio: 4 / 5; max-width: 440px; overflow: hidden; }
@media (min-width: 900px) {
	.elementor .hc-page-hero__grid { --flex-direction: row; --gap: 72px; --column-gap: 72px; --align-items: center; }
	.elementor .hc-page-hero__grid > .e-con-inner > .hc-page-hero__text { --width: 58%; }
	.elementor .hc-page-hero__grid > .e-con-inner > .hc-page-hero__media { --width: 42%; }
}

/* ---------- Body / prose ---------- */
.elementor .hc-sec--body { --padding-top: 0px; }
.elementor .hc-prose { max-width: 760px; }
.elementor .hc-figure { max-width: 760px; aspect-ratio: 3 / 2; overflow: hidden; margin-bottom: 56px; }
.elementor .hc-prose__item + .hc-prose__item { margin-top: 48px; }
.elementor .hc-prose__item { padding-top: 40px; border-top: 1px solid var(--hc-line); }
.elementor .hc-prose__item h2.elementor-heading-title { font-size: clamp(26px, 3vw, 32px); margin-bottom: 14px; }
.elementor .hc-sec--body .hc-actions { margin-top: 48px; }

.elementor .hc-note {
	--padding-top: 24px; --padding-bottom: 24px; --padding-left: 28px; --padding-right: 28px;
	margin-top: 40px;
	max-width: 760px;
	background: var(--hc-cream-light);
	border-left: 2px solid var(--hc-navy);
}
.elementor .hc-note__title .elementor-heading-title { margin-bottom: 10px; }

/* Other areas mini cards */
.elementor .hc-mini-grid { --gap: 16px; --row-gap: 16px; --column-gap: 16px; margin: 32px 0; }
.elementor .hc-mini {
	--padding-top: 24px; --padding-bottom: 24px; --padding-left: 24px; --padding-right: 24px;
	background: var(--hc-white);
	border: 1px solid var(--hc-line);
}
.elementor .hc-mini__title .elementor-heading-title { font-size: 22px; margin-bottom: 10px; }
.elementor .hc-mini__link { font-size: 15px; }
.elementor .hc-mini__link a { text-decoration: none; }
@media (min-width: 900px) {
	.elementor .hc-mini-grid { --flex-direction: row; }
	.elementor .hc-mini-grid > .e-con-inner > .hc-mini { --width: calc(33.333% - 11px); }
}

/* ---------- Timeline (Hakkımda) ---------- */
.elementor .hc-tl__item {
	--gap: 6px; --row-gap: 6px;
	padding: 20px 0;
	border-top: 1px solid var(--hc-line);
}
.elementor .hc-tl__item:last-child { border-bottom: 1px solid var(--hc-line); }
.elementor .hc-tl__year .elementor-heading-title {
	font-family: var(--hc-sans);
	font-size: 13px;
	letter-spacing: .08em;
	color: var(--hc-muted);
}
.elementor .hc-tl__title .elementor-heading-title { font-size: 22px; line-height: 1.3; }
.elementor .hc-tl__desc { margin-top: 6px; font-size: 16px; color: var(--hc-muted); }
@media (min-width: 700px) {
	.elementor .hc-tl__item { --flex-direction: row; --gap: 24px; --column-gap: 24px; }
	.elementor .hc-tl__item > .e-con-inner > .hc-tl__year { width: 150px; flex: none; padding-top: 6px; }
	.elementor .hc-tl__item > .e-con-inner > .hc-tl__body { --width: auto; flex: 1; }
}

/* ---------- FAQ grid (Süreç) ---------- */
.elementor .hc-faq { --gap: 20px; --row-gap: 20px; --column-gap: 20px; }
.elementor .hc-faq__item {
	--padding-top: 28px; --padding-bottom: 28px; --padding-left: 28px; --padding-right: 28px;
	background: var(--hc-cream-light);
	border: 1px solid var(--hc-line);
}
.elementor .hc-faq__q .elementor-heading-title { font-size: clamp(24px, 2.6vw, 28px); margin-bottom: 12px; }
.elementor .hc-faq__item .elementor-widget-text-editor { font-size: 16px; }
@media (min-width: 900px) {
	.elementor .hc-faq { --flex-direction: row; }
	.elementor .hc-faq > .e-con-inner { flex-wrap: wrap; }
	.elementor .hc-faq > .e-con-inner > .hc-faq__item { --width: calc(50% - 10px); }
}

/* ---------- Nasıl başlarız? (3 adım) ---------- */
.elementor .hc-steps { --flex-direction: column; --gap: 20px; --row-gap: 20px; --column-gap: 20px; margin-top: 32px; }
.elementor .hc-step {
	--padding-top: 28px; --padding-bottom: 28px; --padding-left: 28px; --padding-right: 28px;
	background: var(--hc-white);
	border: 1px solid var(--hc-line);
}
.elementor .hc-sec--steps .hc-step { background: var(--hc-cream-light); }
.elementor .hc-step__num .elementor-heading-title {
	font-family: var(--hc-serif); font-size: 44px; line-height: 1; color: var(--hc-navy); margin-bottom: 14px;
}
.elementor .hc-step__title .elementor-heading-title { font-size: clamp(22px, 2.4vw, 26px); margin-bottom: 10px; }
.elementor .hc-step__text { font-size: 16px; }
.elementor .hc-steps + .hc-actions { margin-top: 32px; }
@media (min-width: 900px) {
	.elementor .hc-steps { --flex-direction: row; }
	.elementor .hc-steps > .e-con-inner > .hc-step { --width: calc(33.333% - 14px); }
}

/* ---------- Sayfa SSS ---------- */
.elementor .hc-sec--sss { --padding-top: 0px; }
.elementor .hc-sss { max-width: 760px; margin-top: 24px; }
.elementor .hc-sss__item { padding-block: 22px; border-top: 1px solid var(--hc-line); }
.elementor .hc-sss__item:last-child { border-bottom: 1px solid var(--hc-line); }
.elementor .hc-sss__q .elementor-heading-title { font-size: clamp(22px, 2.4vw, 26px); margin-bottom: 8px; }
.elementor .hc-sss__item .elementor-widget-text-editor { font-size: 16px; }

/* ---------- Alan sayfası konu kartları ---------- */
.elementor .hc-sec--konular .hc-lead { max-width: 760px; margin-top: 12px; }
.elementor .hc-konular { --gap: 16px; --row-gap: 16px; --column-gap: 16px; margin-top: 28px; }
.elementor .hc-konu {
	--padding-top: 24px; --padding-bottom: 24px; --padding-left: 24px; --padding-right: 24px;
	background: var(--hc-white);
	border: 1px solid var(--hc-line);
}
.elementor .hc-konu__title .elementor-heading-title { font-size: 22px; line-height: 1.25; margin-bottom: 8px; }
.elementor .hc-konu__text { font-size: 16px; }
@media (min-width: 700px) {
	.elementor .hc-konular { --flex-direction: row; }
	.elementor .hc-konular > .e-con-inner { flex-wrap: wrap; }
	.elementor .hc-konular > .e-con-inner > .hc-konu { --width: calc(50% - 8px); }
}
@media (min-width: 1100px) {
	.elementor .hc-konular > .e-con-inner > .hc-konu { --width: calc(33.333% - 11px); }
}

/* ---------- Sizi arayalım (kısa geri arama formu) ---------- */
.elementor .hc-callback {
	--gap: 24px; --row-gap: 24px; --column-gap: 48px;
	--padding-top: 32px; --padding-bottom: 32px; --padding-left: 28px; --padding-right: 28px;
	background: var(--hc-cream-light);
	border: 1px solid var(--hc-line);
}
.elementor .hc-callback__text .elementor-heading-title { margin-bottom: 10px; }
.hc-callback__form .wpcf7 p { margin: 0 0 12px; }
@media (min-width: 900px) {
	.elementor .hc-callback { --flex-direction: row; --padding-left: 40px; --padding-right: 40px; }
	.elementor .hc-callback > .e-con-inner > .hc-callback__text { --width: 42%; }
	.elementor .hc-callback > .e-con-inner > .hc-callback__form { --width: 58%; }
}

/* ---------- Saat farkı tablosu (Yurt dışı) ---------- */
.hc-table-wrap { overflow-x: auto; margin: 20px 0 12px; }
table.hc-table { width: 100%; min-width: 560px; border-collapse: collapse; font-size: 15px; background: var(--hc-white); }
.hc-table caption { text-align: left; font-size: 13px; letter-spacing: .08em; color: var(--hc-muted); padding-bottom: 8px; }
.hc-table th, .hc-table td { padding: 12px 14px; border-bottom: 1px solid var(--hc-line); text-align: left; vertical-align: top; }
.hc-table thead th { font-size: 13px; font-weight: 500; color: var(--hc-muted); border-bottom-color: var(--hc-navy); }
.hc-table tbody th { font-weight: 500; color: var(--hc-navy); }

/* ---------- Form altı notu ve randevu takvimi ---------- */
.elementor .hc-form__reply { margin-top: 12px; font-size: 14px; }
.hc-booking { margin-top: 20px; font-size: 14px; color: var(--hc-muted); }
.hc-booking__btn {
	display: inline-block; margin-bottom: 6px; padding: 12px 22px; border-radius: var(--hc-radius-pill);
	border: 1px solid var(--hc-navy); color: var(--hc-navy); font-size: 15px; text-decoration: none;
}
.hc-booking__btn:hover { background: var(--hc-navy); color: var(--hc-white); }

/* ---------- Contact ---------- */
.elementor .hc-contact { --gap: 48px; --row-gap: 48px; }
@media (min-width: 900px) {
	.elementor .hc-contact { --flex-direction: row; --gap: 72px; --column-gap: 72px; }
	.elementor .hc-contact > .e-con-inner > .hc-contact__info { --width: 45%; }
	.elementor .hc-contact > .e-con-inner > .hc-contact__form { --width: 55%; }
}
.hc-dl { margin: 0; display: grid; gap: 20px; }
.hc-dl dt { font-size: 11px; letter-spacing: .2em; text-transform: uppercase; color: var(--hc-muted); }
.hc-dl dd { margin: 4px 0 0; font-size: 18px; }
.hc-dl dd a { text-decoration: none; border-bottom: 1px solid var(--hc-line); }
.hc-dl dd a:hover { border-color: var(--hc-navy); }
.hc-dl address { font-style: normal; }

.elementor .hc-contact__form {
	--padding-top: 32px; --padding-bottom: 32px; --padding-left: 28px; --padding-right: 28px;
	background: var(--hc-cream-light);
	border: 1px solid var(--hc-line);
}
.elementor .hc-form__title .elementor-heading-title { font-size: 30px; margin-bottom: 20px; }
.wpcf7 label { display: block; font-size: 14px; color: var(--hc-muted); }
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 select,
.wpcf7 textarea {
	width: 100%;
	margin-top: 6px;
	padding: 12px 14px;
	border: 1px solid var(--hc-line);
	border-radius: 2px;
	background: var(--hc-white);
	font: 16px/1.5 var(--hc-sans);
	color: var(--hc-text);
}
.wpcf7 input:focus, .wpcf7 select:focus, .wpcf7 textarea:focus { outline: 2px solid var(--hc-navy); outline-offset: 1px; border-color: var(--hc-navy); }
.wpcf7 .wpcf7-acceptance label { color: var(--hc-text); font-size: 15px; }
.wpcf7 .wpcf7-acceptance input { margin: 0 8px 0 0; accent-color: var(--hc-navy); }
/* CF7 gizli alan kutusu (fieldset) tarayıcı varsayılan çerçevesiyle görünmesin */
.wpcf7 .hidden-fields-container { display: none; }
.wpcf7 .hc-yol { margin: 0 0 .6em; padding: 0; border: 0; }
.wpcf7 .hc-yol legend { padding: 0; font-size: 14px; color: var(--hc-muted); }
.wpcf7 .hc-yol .wpcf7-radio { display: flex; gap: 10px; margin-top: 6px; }
.wpcf7 .hc-yol .wpcf7-list-item { margin: 0; flex: 1; }
.wpcf7 .hc-yol .wpcf7-list-item label {
	display: flex; align-items: center; gap: 8px; min-height: 48px; padding: 0 14px;
	border: 1px solid var(--hc-line); border-radius: 2px; background: var(--hc-white);
	font-size: 16px; color: var(--hc-text); cursor: pointer;
}
.wpcf7 .hc-yol .wpcf7-list-item label:has(input:checked) { border-color: var(--hc-navy); box-shadow: inset 0 0 0 1px var(--hc-navy); }
.wpcf7 .hc-yol input[type="radio"] { accent-color: var(--hc-navy); width: 18px; height: 18px; margin: 0; }
.wpcf7 .hc-yol__alan[hidden] { display: none; }
.wpcf7 .hc-form-note { font-size: 13px; color: var(--hc-muted); margin-top: -4px; }
.wpcf7 input[type="submit"] {
	min-height: 48px;
	padding: 0 32px;
	border: 0;
	border-radius: var(--hc-radius-pill);
	background: var(--hc-navy);
	color: var(--hc-white);
	font: 500 15px var(--hc-sans);
	cursor: pointer;
}
.wpcf7 input[type="submit"]:hover { background: var(--hc-navy-soft); }
.wpcf7 input[type="submit"]:disabled { opacity: .5; cursor: not-allowed; }

/* Map (Google Maps embed) */
.elementor .hc-sec--map { --padding-top: 0px; --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px; }
.hc-map { border-top: 1px solid var(--hc-line); background: var(--hc-cream-light); }
.hc-map iframe { display: block; width: 100%; height: 320px; border: 0; filter: grayscale(.25) sepia(.08); }
@media (min-width: 900px) { .hc-map iframe { height: 440px; } }

/* Default-template pages (yasal metinler) */
.page-template-default .site-main,
.hc-legal { max-width: 760px; margin-inline: auto; padding: 56px var(--hc-gutter) 96px; }

.elementor .hc-contact__info .hc-muted { margin-top: 24px; }

/* ---------- Related posts (area pages) ---------- */
.elementor .hc-sec--related { --padding-top: 0px; }
.elementor .hc-sec--related:not(:has(.hc-related)) { display: none; }
.hc-related__eyebrow { font-size: 12px; letter-spacing: .24em; text-transform: uppercase; color: var(--hc-muted); margin: 0 0 14px; }
.hc-related__title { font-family: var(--hc-serif); font-weight: 400; color: var(--hc-navy); font-size: clamp(30px, 4vw, 42px); margin: 0 0 32px; }
.hc-related__grid { display: grid; gap: 24px; }
@media (min-width: 700px) { .hc-related__grid { grid-template-columns: repeat(3, 1fr); } }
.hc-card-post { display: block; text-decoration: none; color: inherit; }
.hc-card-post img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; display: block; border: 1px solid var(--hc-line); }
.hc-card-post__title { display: block; margin: 14px 0 4px; font-family: var(--hc-serif); font-size: 22px; line-height: 1.25; color: var(--hc-navy); }
.hc-card-post:hover .hc-card-post__title { text-decoration: underline; text-underline-offset: 5px; text-decoration-thickness: 1px; }
.hc-card-post time { font-size: 13px; color: var(--hc-muted); }

.elementor .hc-membership { margin-top: 20px; }

/* ---------- Lotus filigranı: hero yazılarının arkasında çok silik ---------- */
.elementor .hc-hero .hc-hero__text,
.elementor .hc-page-hero {
	background-image: url(../img/logo-filigran.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: min(88%, 620px) auto;
}
@media (min-width: 900px) {
	.elementor .hc-page-hero { background-position: 6% 50%; background-size: auto min(86%, 520px); }
}

/* Yurt dışı geri arama formu: ülke kodu + numara yan yana */
.wpcf7 .hc-tel-intl { display: grid; gap: 0 12px; }
@media (min-width: 560px) {
	.wpcf7 .hc-tel-intl { grid-template-columns: minmax(170px, 2fr) 3fr; }
}

/* ---------- Ofise Ulaşım sayfası ---------- */
.elementor .hc-sec--yolmap { --padding-top: 0px; --padding-bottom: 0px; }
.hc-yolmap { height: clamp(300px, 52vh, 480px); border: 1px solid var(--hc-line); background: var(--hc-cream-light); z-index: 0; }
.hc-yolmap__legend { display: flex; flex-wrap: wrap; gap: 8px 24px; margin: 14px 0 0; padding: 0; list-style: none; font-size: 14px; color: var(--hc-muted); }
.hc-yolmap__legend li { display: flex; align-items: center; gap: 8px; }
.hc-yolmap__legend .hc-pin { width: 24px; height: 24px; font-size: 10px; }
.hc-pin { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 50%; border: 2px solid var(--hc-white); box-shadow: 0 2px 8px rgba(31,45,61,.3); font: 600 12px/1 var(--hc-sans); color: var(--hc-white); }
.hc-pin--ofis { background: var(--hc-navy) url(../img/logo-filigran.svg) center / 0 no-repeat; }
.hc-pin--ofis::after { content: ""; width: 10px; height: 10px; border-radius: 50%; background: var(--hc-cream); }
.hc-pin--metro { background: #c8102e; }
.hc-pin--durak { background: #2e4157; font-size: 10px; }
.hc-yolmap .leaflet-tooltip { font: 500 13px/1 var(--hc-sans); color: var(--hc-navy); border: 0; box-shadow: 0 1px 6px rgba(31,45,61,.2); }

.hc-yol { display: grid; gap: 24px; }
@media (min-width: 900px) { .hc-yol { grid-template-columns: 1.1fr 1fr; align-items: start; } }
.hc-yol__card { padding: 28px 24px; background: var(--hc-cream-light); border: 1px solid var(--hc-line); }
@media (min-width: 600px) { .hc-yol__card { padding: 32px; } }
.hc-yol__card--main { background: var(--hc-white); border-color: var(--hc-navy); }
.hc-yol__label { margin: 0 0 6px; font-size: 11px; letter-spacing: .2em; text-transform: uppercase; color: var(--hc-muted); }
.hc-yol__card h2 { margin: 0 0 12px; font-size: clamp(24px, 3vw, 30px); }
.hc-yol__card p { margin: 0 0 16px; }
.hc-nav-btns { display: flex; flex-wrap: wrap; gap: 10px; }
.hc-navbtn { display: inline-flex; align-items: center; min-height: 46px; padding: 0 20px; border: 1px solid var(--hc-navy); border-radius: var(--hc-radius-pill); color: var(--hc-navy); font: 500 15px/1 var(--hc-sans); text-decoration: none; transition: background-color .2s, color .2s; }
.hc-navbtn:hover { background: var(--hc-navy); color: var(--hc-white); }
.hc-tarife summary { cursor: pointer; font-weight: 500; color: var(--hc-navy); }
.hc-tarife[open] summary { margin-bottom: 14px; }
.hc-tarife p { font-size: 15px; }
.hc-tarife__next { display: inline-block; padding: 6px 14px; border-radius: var(--hc-radius-pill); background: var(--hc-navy); color: var(--hc-white); }
.hc-tarife__grid { display: grid; gap: 20px; }
@media (min-width: 600px) { .hc-tarife__grid { grid-template-columns: 1fr 1fr; } }
.hc-tarife__col :is(h3, h4) { margin: 0 0 10px; font: 500 12px/1.4 var(--hc-sans); letter-spacing: .16em; text-transform: uppercase; color: var(--hc-muted); }
.hc-tarife__col.is-today :is(h3, h4) { color: var(--hc-navy); }
.hc-tarife__col.is-today :is(h3, h4)::after { content: " · Bugün"; }
.hc-tarife__col ul { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
.hc-tarife__col li { min-width: 54px; padding: 4px 0; border: 1px solid var(--hc-line); border-radius: var(--hc-radius-pill); background: var(--hc-white); text-align: center; font-size: 14px; font-variant-numeric: tabular-nums; }
.hc-tarife__col li.is-next { border-color: var(--hc-navy); background: var(--hc-navy); color: var(--hc-white); }
.hc-tarife__note { margin-top: 16px; font-size: 13px !important; color: var(--hc-muted); }
.hc-yolmap .hc-tiles { filter: grayscale(.55) sepia(.12) brightness(1.03); }
.elementor .hc-sec--yol { --padding-top: 40px; }
.hc-nav-btns .hc-navbtn:first-child, .hc-navbtn--dark { background: var(--hc-navy); color: var(--hc-white); }
.hc-yol .hc-tarife__grid { margin-top: 8px; }
.hc-line { display: inline-block; width: 26px; height: 5px; border-radius: 3px; background: rgba(31,45,61,.75); }
.hc-yolmap .leaflet-interactive:focus { outline: none; }
