/* Kingsman Golf — site teması (2026-10, golfbreaks.com düzeni + Kingsman renkleri).
   Her sayfada yüklenir. Şablona özgü kurallar: home.css, property.css, listing.css, article.css, pages.css.
   Sınıf öneki k- (CMS içeriğindeki eski sınıflarla ve Font Awesome ile çakışmasın). Renkler yalnızca :root'taki
   değişkenlerden okunur; marka rengi değişirse tek yer burası. */

:root {
  --k-navy-950: #0f1724;
  --k-navy-900: #151f2e;
  --k-navy-800: #1c2738;
  --k-navy-700: #2a3850;
  --k-navy-600: #3a4a63;
  --k-navy-100: #e7ecf3;
  --k-ink: #172033;
  --k-text: #2d3748;
  --k-muted: #5f6b7d;
  --k-line: #e2e8f0;
  --k-line-strong: #cbd5e1;
  --k-cream: #f7f3ee;
  --k-cream-200: #efe7dc;
  --k-mist: #f4f6f9;
  --k-copper-800: #7a4420;
  --k-copper-700: #8c4f24;
  --k-copper-600: #a8622f;
  --k-copper-500: #c27c45;
  --k-copper-400: #d59a63;
  --k-copper-300: #e8b07a;
  --k-copper-100: #f5e7da;
  --k-copper-50: #fbf4ec;
  --k-success: #2f6f4e;
  --k-danger: #b42318;
  --k-white: #fff;

  --k-font-head: 'Nunito Sans', 'Segoe UI', system-ui, -apple-system, sans-serif;
  --k-font-body: 'Open Sans', 'Segoe UI', system-ui, -apple-system, sans-serif;

  --k-radius-sm: 4px;
  --k-radius: 8px;
  --k-radius-lg: 12px;
  --k-shadow-sm: 0 1px 2px rgba(15, 23, 36, 0.06), 0 1px 3px rgba(15, 23, 36, 0.1);
  --k-shadow: 0 2px 4px -1px rgba(15, 23, 36, 0.12), 0 4px 10px rgba(15, 23, 36, 0.08);
  --k-shadow-lg: 0 12px 32px rgba(15, 23, 36, 0.18);

  --k-container: 1200px;
  --k-gutter: 16px;
  --k-header-h: 74px;
  --k-subnav-h: 48px;
}

/* ---------- Reset / temel ---------- */
*,
*::before,
*::after {
  box-sizing: border-box;
}
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--k-subnav-h) + 16px);
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
  }
}
body {
  margin: 0;
  background: var(--k-white);
  color: var(--k-text);
  font-family: var(--k-font-body);
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
}
body.k-lock {
  overflow: hidden;
}
img,
svg,
video,
iframe {
  max-width: 100%;
}
img {
  height: auto;
  border: 0;
}
a {
  color: var(--k-copper-700);
  text-decoration: none;
}
a:hover {
  color: var(--k-copper-800);
  text-decoration: underline;
}
button,
input,
select,
textarea {
  font: inherit;
  color: inherit;
}
button {
  cursor: pointer;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0 0 0.5em;
  color: var(--k-ink);
  font-family: var(--k-font-head);
  font-weight: 800;
  line-height: 1.25;
}
p {
  margin: 0 0 1em;
}
ul,
ol {
  margin: 0 0 1em;
  padding-left: 1.25em;
}
table {
  border-collapse: collapse;
  width: 100%;
}
:focus-visible {
  outline: 3px solid var(--k-copper-400);
  outline-offset: 2px;
}
::selection {
  background: var(--k-copper-100);
  color: var(--k-ink);
}
.k-sr {
  position: absolute !important;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}
.k-skip {
  position: absolute;
  left: 8px;
  top: -60px;
  z-index: 3000;
  padding: 10px 16px;
  background: var(--k-navy-800);
  color: #fff;
  border-radius: var(--k-radius-sm);
}
.k-skip:focus {
  top: 8px;
  color: #fff;
}
.k-icon {
  width: 1em;
  height: 1em;
  flex: none;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  vertical-align: -0.125em;
}
.k-icon--fill {
  fill: currentColor;
  stroke: none;
}

/* Para birimi: html[data-currency] (çerez KINGSMAN_PRICE, satır içi head betiği ayarlar). Varsayılan GBP. */
.euro {
  display: none;
}
html[data-currency='EUR'] .pound {
  display: none;
}
html[data-currency='EUR'] .euro {
  display: inline;
}

/* ---------- Düzen ---------- */
.k-container {
  width: 100%;
  max-width: var(--k-container);
  margin: 0 auto;
  padding: 0 var(--k-gutter);
}
.k-container--narrow {
  max-width: 880px;
}
.k-container--text {
  max-width: 760px;
}
.k-section {
  padding: 56px 0;
}
.k-section--tight {
  padding: 32px 0;
}
.k-section--cream {
  background: var(--k-cream);
}
.k-section--mist {
  background: var(--k-mist);
}
.k-section--navy {
  background: var(--k-navy-800);
  color: #e5e9f0;
}
.k-section--navy h2,
.k-section--navy h3 {
  color: #fff;
}
.k-section + .k-section:not([class*='--']) {
  padding-top: 8px;
}
@media (max-width: 767px) {
  .k-section {
    padding: 40px 0;
  }
}

.k-grid {
  display: grid;
  gap: 24px;
}
.k-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.k-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.k-grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
@media (max-width: 1023px) {
  .k-grid--4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .k-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 639px) {
  .k-grid--2,
  .k-grid--3,
  .k-grid--4 {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* ---------- Tipografi ---------- */
.k-h1 {
  font-size: clamp(32px, 4.2vw, 45px);
  font-weight: 400;
  letter-spacing: -1px;
  line-height: 1.2;
}
.k-h2,
.k-section-head h2 {
  font-size: 24px;
  font-weight: 800;
  line-height: 1.4;
}
.k-h2--light {
  font-size: clamp(24px, 2.6vw, 30px);
  font-weight: 400;
  letter-spacing: -0.3px;
}
.k-eyebrow {
  margin: 0 0 6px;
  color: var(--k-text);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.6px;
  line-height: 1.6;
  text-transform: uppercase;
}
.k-lead {
  font-size: 18px;
  color: var(--k-text);
}
.k-muted {
  color: var(--k-muted);
}

.k-section-head {
  margin: 0 0 24px;
}
.k-section-head > :last-child {
  margin-bottom: 0;
}
.k-section-head h2,
.k-section-head .k-h2 {
  margin: 0 0 2px;
}
.k-section-head p {
  margin: 0;
  color: var(--k-text);
  font-size: 14px;
}
.k-section-head--center {
  text-align: center;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
.k-section-head--row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
}
/* CMS'den gelen başlık blokları (<h2><strong>…</strong></h2><p>…</p>, bazen <h4>/<h5>) aynı görünür */
.k-section-head :is(h1, h2, h3, h4, h5, h6) {
  font-size: 24px;
  font-weight: 800;
  line-height: 1.4;
}
.k-section-head :is(h2, h3, h4, h5, h6) strong {
  font-weight: inherit;
}

/* Uzun CMS metni (tesis/ülke içeriği, blog, SSS cevapları, yasal sayfalar) */
.k-prose {
  color: var(--k-text);
  font-size: 16px;
  line-height: 1.65;
}
.k-prose > :first-child {
  margin-top: 0;
}
.k-prose > :last-child {
  margin-bottom: 0;
}
.k-prose :is(h1, h2) {
  margin: 1.4em 0 0.5em;
  font-size: 24px;
  line-height: 1.4;
}
.k-prose h3 {
  margin: 1.3em 0 0.4em;
  font-size: 18px;
}
.k-prose :is(h4, h5, h6) {
  margin: 1.2em 0 0.4em;
  font-size: 16px;
}
.k-prose a {
  font-weight: 600;
}
.k-prose ul,
.k-prose ol {
  padding-left: 1.4em;
}
.k-prose li {
  margin: 0 0 0.35em;
}
.k-prose img {
  display: block;
  border-radius: var(--k-radius);
  margin: 1.5em auto;
}
.k-prose img.align_left {
  float: left;
  margin: 0.4em 24px 16px 0;
  max-width: 45%;
}
.k-prose img.align_right {
  float: right;
  margin: 0.4em 0 16px 24px;
  max-width: 45%;
}
.k-prose blockquote {
  margin: 1.5em 0;
  padding: 4px 0 4px 20px;
  border-left: 3px solid var(--k-copper-500);
  color: var(--k-ink);
  font-style: italic;
}
.k-prose table {
  margin: 1.5em 0;
  font-size: 14px;
}
.k-prose th,
.k-prose td {
  padding: 10px 12px;
  border: 1px solid var(--k-line);
  text-align: left;
  vertical-align: top;
}
.k-prose th {
  background: var(--k-mist);
  color: var(--k-ink);
  font-weight: 700;
}
.k-prose iframe {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  height: auto;
  border: 0;
  border-radius: var(--k-radius);
}
.k-prose::after {
  content: '';
  display: table;
  clear: both;
}
.k-prose--center {
  text-align: center;
}
.k-prose--light,
.k-prose--light :is(h1, h2, h3, h4, h5, h6) {
  color: #fff;
}
.k-prose--light a {
  color: var(--k-copper-300);
}

/* "Read more": uzun metin kırpılır, düğme açar (site.js [data-k-readmore]) */
.k-readmore__body {
  position: relative;
}
.k-readmore.is-clamped .k-readmore__body {
  max-height: var(--k-clamp, 360px);
  overflow: hidden;
}
.k-readmore.is-clamped .k-readmore__body::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 96px;
  background: linear-gradient(rgba(255, 255, 255, 0), #fff);
  pointer-events: none;
}
.k-section--cream .k-readmore.is-clamped .k-readmore__body::after {
  background: linear-gradient(rgba(247, 243, 238, 0), var(--k-cream));
}
.k-readmore__toggle {
  display: none;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  padding: 0;
  border: 0;
  background: none;
  color: var(--k-copper-700);
  font-weight: 600;
  font-size: 16px;
}
.k-readmore.is-clampable .k-readmore__toggle {
  display: inline-flex;
}
.k-readmore__toggle .k-icon {
  transition: transform 0.2s;
}
.k-readmore.is-open .k-readmore__toggle .k-icon {
  transform: rotate(180deg);
}

/* ---------- Düğmeler ---------- */
.k-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  padding: 0 28px;
  border: 2px solid transparent;
  border-radius: 999px;
  background: var(--k-copper-600);
  color: #fff;
  font-family: var(--k-font-body);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.5px;
  line-height: 1.2;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  transition: background-color 0.15s, color 0.15s, border-color 0.15s, box-shadow 0.15s;
}
.k-btn:hover {
  background: var(--k-copper-700);
  color: #fff;
  text-decoration: none;
}
.k-btn--soft {
  background: var(--k-copper-100);
  color: var(--k-copper-800);
}
.k-btn--soft:hover {
  background: var(--k-cream-200);
  color: var(--k-copper-800);
}
.k-btn--navy {
  background: var(--k-navy-800);
}
.k-btn--navy:hover {
  background: var(--k-navy-700);
}
.k-btn--outline {
  background: transparent;
  border-color: var(--k-navy-800);
  color: var(--k-navy-800);
}
.k-btn--outline:hover {
  background: var(--k-navy-800);
  color: #fff;
}
.k-btn--ghost-light {
  background: transparent;
  border-color: rgba(255, 255, 255, 0.85);
  color: #fff;
}
.k-btn--ghost-light:hover {
  background: #fff;
  color: var(--k-navy-800);
}
.k-btn--sm {
  min-height: 36px;
  padding: 0 18px;
  font-size: 13px;
}
.k-btn--lg {
  min-height: 52px;
  padding: 0 36px;
}
.k-btn--block {
  display: flex;
  width: 100%;
}
.k-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0;
  border: 0;
  background: none;
  color: var(--k-copper-700);
  font-weight: 600;
  text-decoration: none;
}
.k-link:hover {
  color: var(--k-copper-800);
  text-decoration: underline;
}
.k-link .k-icon {
  transition: transform 0.15s;
}
.k-link:hover .k-icon--arrow {
  transform: translateX(3px);
}
.k-center {
  text-align: center;
}
.k-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}
.k-actions--center {
  justify-content: center;
}
.k-more {
  margin-top: 32px;
  text-align: center;
}

/* ---------- Rozet / puan / fiyat ---------- */
.k-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 3px 10px;
  border-radius: var(--k-radius-sm);
  background: var(--k-navy-800);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.4px;
  line-height: 1.5;
  text-transform: uppercase;
}
.k-badge--copper {
  background: var(--k-copper-600);
}
.k-badge--soft {
  background: var(--k-copper-100);
  color: var(--k-copper-800);
}
.k-badge--light {
  background: rgba(255, 255, 255, 0.92);
  color: var(--k-ink);
}
/* Müşteri puanı: 5 yıldız, --v ile dolu oran (eski sitedeki kalp göstergesiyle aynı veri) */
.k-rating {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 2px 8px;
  margin: 0;
  font-size: 12px;
  color: var(--k-muted);
}
.k-stars {
  position: relative;
  display: inline-block;
  width: 86px;
  height: 16px;
  flex: none;
  background: linear-gradient(90deg, var(--k-copper-500) var(--v, 100%), var(--k-line-strong) var(--v, 100%));
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 86 16'%3E%3Cg%3E%3Cpath id='s' d='M8 .8l2.1 4.6 5 .5-3.8 3.4 1.1 4.9L8 11.7l-4.4 2.5 1.1-4.9L.9 5.9l5-.5z'/%3E%3Cuse href='%23s' x='17.5'/%3E%3Cuse href='%23s' x='35'/%3E%3Cuse href='%23s' x='52.5'/%3E%3Cuse href='%23s' x='70'/%3E%3C/g%3E%3C/svg%3E") no-repeat 0 0 / 86px 16px;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 86 16'%3E%3Cg%3E%3Cpath id='s' d='M8 .8l2.1 4.6 5 .5-3.8 3.4 1.1 4.9L8 11.7l-4.4 2.5 1.1-4.9L.9 5.9l5-.5z'/%3E%3Cuse href='%23s' x='17.5'/%3E%3Cuse href='%23s' x='35'/%3E%3Cuse href='%23s' x='52.5'/%3E%3Cuse href='%23s' x='70'/%3E%3C/g%3E%3C/svg%3E") no-repeat 0 0 / 86px 16px;
}
.k-stars--sm {
  width: 70px;
  height: 13px;
  -webkit-mask-size: 70px 13px;
  mask-size: 70px 13px;
}
.k-price {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 0 4px;
  margin: 0;
  color: var(--k-ink);
  line-height: 1.1;
}
.k-price__from {
  display: block;
  width: 100%;
  margin-bottom: 2px;
  color: var(--k-text);
  font-size: 12px;
  line-height: 1.4;
}
.k-price__amount {
  font-family: var(--k-font-body);
  font-size: 30px;
  font-weight: 600;
  letter-spacing: -0.5px;
}
.k-price__pp {
  color: var(--k-text);
  font-size: 15px;
}
.k-price__note {
  margin: 6px 0 0;
  color: var(--k-copper-700);
  font-size: 12px;
  line-height: 1.4;
}

/* ---------- Header ---------- */
.k-header {
  position: relative;
  z-index: 900;
}
.k-header__bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  height: var(--k-header-h);
  padding: 0 16px;
}
.k-header__logo {
  display: flex;
  align-items: center;
  flex: none;
}
.k-header__logo img {
  display: block;
  width: auto;
  height: 46px;
}
.k-header--home .k-header__bar {
  background: var(--k-navy-800);
  color: #fff;
}
.k-header--page .k-header__bar {
  background: #fff;
}
.k-header__search {
  flex: 1 1 auto;
  max-width: 620px;
}
.k-tools {
  display: flex;
  align-items: center;
  gap: 6px;
  flex: none;
}
.k-tool {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-width: 64px;
  min-height: 48px;
  padding: 4px 8px;
  border: 0;
  border-radius: var(--k-radius-sm);
  background: none;
  color: var(--k-ink);
  font-family: var(--k-font-head);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.4px;
  line-height: 1.1;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
}
.k-tool .k-icon {
  width: 18px;
  height: 18px;
  color: var(--k-copper-600);
}
.k-tool:hover {
  color: var(--k-copper-700);
  text-decoration: none;
  background: var(--k-mist);
}
.k-header--home .k-tool {
  color: #fff;
}
.k-header--home .k-tool .k-icon {
  color: var(--k-copper-300);
}
.k-header--home .k-tool:hover {
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
}
.k-tool--mobile {
  display: none;
}

/* Para birimi / dil seçici (header, çekmece, footer) */
.k-switches {
  display: flex;
  align-items: center;
  gap: 4px;
}
.k-switch {
  position: relative;
}
.k-switch__btn {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 34px;
  padding: 0 10px;
  border: 1px solid var(--k-line);
  border-radius: 999px;
  background: #fff;
  color: var(--k-ink);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.3px;
}
.k-switch__btn .k-icon {
  width: 12px;
  height: 12px;
}
.k-header--home .k-switch__btn {
  border-color: rgba(255, 255, 255, 0.28);
  background: transparent;
  color: #fff;
}
.k-switch__menu {
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  z-index: 950;
  min-width: 150px;
  margin: 0;
  padding: 6px;
  list-style: none;
  border-radius: var(--k-radius);
  background: #fff;
  box-shadow: var(--k-shadow-lg);
}
.k-switch__menu[hidden] {
  display: none;
}
/* Para birimi: düğme · dil (ISS-0903): her dilin kendi adresine link */
.k-switch__menu button,
.k-switch__menu a {
  display: block;
  width: 100%;
  padding: 8px 12px;
  border: 0;
  border-radius: var(--k-radius-sm);
  background: none;
  color: var(--k-ink);
  font-size: 14px;
  line-height: 1.4;
  text-align: left;
  text-decoration: none;
}
.k-switch__menu button:hover,
.k-switch__menu button[aria-checked='true'],
.k-switch__menu a:hover,
.k-switch__menu a[aria-checked='true'] {
  background: var(--k-cream);
}
.k-switch__menu button[aria-checked='true'],
.k-switch__menu a[aria-checked='true'] {
  font-weight: 700;
}

/* Ana menü */
.k-nav__list {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  list-style: none;
}
.k-nav__item {
  position: static;
}
.k-nav__link {
  display: flex;
  align-items: center;
  gap: 6px;
  height: 100%;
  padding: 0 16px;
  border: 0;
  background: none;
  color: var(--k-ink);
  font-family: var(--k-font-head);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 1.1px;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
}
.k-nav__link:hover,
.k-nav__item.is-open > .k-nav__link,
.k-nav__link[aria-current='page'] {
  color: var(--k-copper-700);
  text-decoration: none;
}
.k-nav__link .k-icon {
  width: 12px;
  height: 12px;
  transition: transform 0.2s;
}
.k-nav__item.is-open > .k-nav__link .k-icon {
  transform: rotate(180deg);
}
.k-header--home .k-nav {
  align-self: stretch;
  flex: 1 1 auto;
}
.k-header--home .k-nav__list {
  height: 100%;
}
.k-header--home .k-nav__link {
  color: #fff;
  font-size: 12px;
  letter-spacing: 1px;
}
.k-header--home .k-nav__link:hover,
.k-header--home .k-nav__item.is-open > .k-nav__link {
  color: var(--k-copper-300);
}
.k-header--home .k-header__bar {
  border-bottom: 3px solid var(--k-copper-500);
}
/* Ana sayfa çubuğu (logo + menü + araçlar tek satırda) dar masaüstünde sığmıyordu; ISS-0908'de menüye bir ok daha eklendi.
   Önce aralıklar daralır; daha dar ekranda araçların etiketi görünmez olur (ikon ve erişilebilir ad kalır). Sınırlar beş
   dilin en genişine (sv) ve 17 px kaydırma çubuğuna göre seçildi. */
@media (min-width: 1100px) and (max-width: 1359px) {
  .k-header--home .k-header__bar {
    gap: 16px;
  }
  .k-header--home .k-nav__link {
    padding: 0 11px;
  }
}
@media (min-width: 1100px) and (max-width: 1249px) {
  .k-header--home .k-nav__link {
    padding: 0 8px;
    letter-spacing: 0.6px;
  }
  .k-header--home .k-tool--desktop {
    min-width: 44px;
  }
  .k-header--home .k-tool--desktop span {
    position: absolute;
    overflow: hidden;
    width: 1px;
    height: 1px;
    clip-path: inset(50%);
    white-space: nowrap;
  }
}
.k-navbar {
  height: 52px;
  background: var(--k-cream);
  border-bottom: 3px solid var(--k-copper-500);
}
.k-navbar .k-nav__list {
  height: 100%;
}
.k-navbar .k-nav {
  height: 100%;
}

/* Mega menü (Destinations): ülke sütunları + lokasyonlar + tanıtım kartı */
.k-mega {
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  z-index: 940;
  background: #fff;
  border-top: 1px solid var(--k-line);
  box-shadow: var(--k-shadow-lg);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  transition: opacity 0.15s, transform 0.15s, visibility 0s 0.15s;
}
.k-nav__item.is-open > .k-mega {
  opacity: 1;
  visibility: visible;
  transform: none;
  transition: opacity 0.15s, transform 0.15s;
}
.k-mega__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 32px;
  padding-top: 28px;
  padding-bottom: 32px;
}
.k-mega__cols {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px 24px;
  align-content: start;
}
.k-mega__head {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0 0 8px;
  color: var(--k-ink);
  font-family: var(--k-font-head);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.8px;
  text-transform: uppercase;
}
.k-mega__head:hover {
  color: var(--k-copper-700);
}
.k-mega__list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.k-mega__list a {
  display: block;
  padding: 3px 0;
  color: var(--k-text);
  font-size: 14px;
  font-weight: 600;
}
.k-mega__list a:hover {
  color: var(--k-copper-700);
}
.k-mega__all {
  grid-column: 1 / -1;
  margin: 4px 0 0;
}
.k-mega__promo {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: var(--k-radius);
  color: #fff;
  min-height: 220px;
}
.k-mega__promo img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s;
}
.k-mega__promo:hover img {
  transform: scale(1.04);
}
.k-mega__promo span {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  padding: 48px 18px 16px;
  background: linear-gradient(rgba(15, 23, 36, 0), rgba(15, 23, 36, 0.85));
  font-family: var(--k-font-head);
  font-size: 18px;
  font-weight: 800;
  line-height: 1.3;
}
.k-mega__promo:hover {
  color: #fff;
  text-decoration: none;
}

/* Hamburger + mobil çekmece */
.k-burger {
  display: none;
  position: relative;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  border-radius: var(--k-radius-sm);
  background: none;
  color: var(--k-ink);
}
.k-header--home .k-burger {
  color: #fff;
}
.k-burger span,
.k-burger span::before,
.k-burger span::after {
  position: absolute;
  left: 11px;
  width: 22px;
  height: 2px;
  border-radius: 2px;
  background: currentColor;
  content: '';
}
.k-burger span {
  top: 21px;
}
.k-burger span::before {
  left: 0;
  top: -7px;
}
.k-burger span::after {
  left: 0;
  top: 7px;
}
.k-drawer {
  position: fixed;
  inset: 0;
  z-index: 2100;
  display: flex;
  justify-content: flex-end;
  background: rgba(15, 23, 36, 0.55);
}
.k-drawer[hidden] {
  display: none;
}
.k-drawer__panel {
  display: flex;
  flex-direction: column;
  width: min(420px, 100%);
  height: 100%;
  overflow-y: auto;
  background: #fff;
  animation: k-slide-in 0.2s ease-out;
}
@keyframes k-slide-in {
  from {
    transform: translateX(40px);
    opacity: 0;
  }
}
.k-drawer__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 64px;
  padding: 0 8px 0 16px;
  border-bottom: 1px solid var(--k-line);
}
.k-drawer__top img {
  height: 38px;
  width: auto;
}
.k-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: none;
  color: var(--k-ink);
}
.k-close:hover {
  background: var(--k-mist);
}
.k-close .k-icon {
  width: 22px;
  height: 22px;
}
.k-drawer__nav {
  margin: 0;
  padding: 8px 0;
  list-style: none;
}
.k-drawer__nav > li {
  border-bottom: 1px solid var(--k-line);
}
.k-drawer__link,
.k-drawer__nav summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 16px;
  color: var(--k-ink);
  font-family: var(--k-font-head);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 1px;
  text-transform: uppercase;
  list-style: none;
  cursor: pointer;
}
.k-drawer__nav summary::-webkit-details-marker {
  display: none;
}
.k-drawer__nav details[open] > summary .k-icon {
  transform: rotate(180deg);
}
.k-drawer__sub {
  margin: 0;
  padding: 0 16px 12px;
  list-style: none;
}
.k-drawer__sub > li > a {
  display: block;
  padding: 8px 0;
  color: var(--k-ink);
  font-weight: 700;
}
/* Yazı başlıkları uzundur: ülke adları kadar kalın basılmaz (son satır "All articles" kalın kalır) */
.k-drawer__sub--posts > li:not(:last-child) > a {
  font-size: 15px;
  font-weight: 600;
  line-height: 1.4;
}
.k-drawer__sub ul {
  margin: 0 0 6px;
  padding: 0 0 0 12px;
  list-style: none;
  border-left: 2px solid var(--k-copper-100);
}
.k-drawer__sub ul a {
  display: block;
  padding: 5px 0;
  color: var(--k-text);
  font-size: 14px;
}
.k-drawer__actions {
  display: grid;
  gap: 10px;
  padding: 20px 16px;
}
.k-drawer__contact {
  display: grid;
  gap: 8px;
  padding: 0 16px 16px;
  font-size: 14px;
}
.k-drawer__contact a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--k-ink);
  font-weight: 600;
}
.k-drawer__switches {
  padding: 0 16px 24px;
}

@media (max-width: 1099px) {
  .k-header .k-nav,
  .k-navbar,
  .k-tools .k-switches,
  .k-tool--desktop {
    display: none;
  }
  .k-header--page .k-header__search {
    display: none;
  }
  .k-burger,
  .k-tool--mobile {
    display: inline-flex;
  }
  .k-tool {
    min-width: 44px;
    padding: 4px;
  }
  .k-tool--mobile span {
    display: none;
  }
  .k-tool--mobile .k-icon {
    width: 20px;
    height: 20px;
  }
  .k-header__bar {
    height: 64px;
    gap: 8px;
    padding: 0 8px 0 16px;
  }
  .k-header__logo img {
    height: 40px;
  }
}

/* ---------- Arama ---------- */
.k-search {
  position: relative;
  display: flex;
  align-items: stretch;
  width: 100%;
  border: 1px solid var(--k-navy-800);
  border-radius: 999px;
  background: #fff;
}
.k-search__field {
  position: relative;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  padding: 0 16px 0 40px;
  cursor: text;
}
.k-search__field > .k-icon {
  position: absolute;
  left: 16px;
  top: 50%;
  width: 16px;
  height: 16px;
  margin-top: -8px;
  color: var(--k-navy-800);
}
.k-search__label {
  display: block;
  color: var(--k-ink);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.3;
}
.k-search__input {
  width: 100%;
  min-width: 0;
  height: 34px;
  padding: 0;
  border: 0;
  outline: 0;
  background: none;
  color: var(--k-ink);
  font-size: 14px;
}
.k-search__input::placeholder {
  color: #7a8597;
}
.k-search__input::-webkit-search-cancel-button {
  cursor: pointer;
}
.k-search__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex: none;
  min-width: 52px;
  margin: -1px -1px -1px 0;
  padding: 0 22px;
  border: 0;
  border-radius: 0 999px 999px 0;
  background: var(--k-navy-800);
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}
.k-search__btn:hover {
  background: var(--k-navy-700);
}
.k-search__field:focus-within + .k-search__btn,
.k-search:focus-within {
  box-shadow: 0 0 0 3px rgba(194, 124, 69, 0.35);
}
.k-search--compact .k-search__field {
  padding-left: 36px;
}
.k-search--compact .k-search__input {
  height: 36px;
}
.k-search--compact .k-search__btn {
  padding: 0 16px;
}
.k-search--compact .k-search__btn span {
  display: none;
}
.k-search--hero {
  min-height: 60px;
  border-color: transparent;
  box-shadow: var(--k-shadow-lg);
}
.k-search--hero .k-search__input {
  height: 28px;
  font-size: 15px;
}
.k-search--hero .k-search__btn {
  min-width: 150px;
  font-size: 15px;
}
.k-search__results {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 8px);
  z-index: 960;
  max-height: min(60vh, 440px);
  overflow-y: auto;
  padding: 6px;
  border-radius: var(--k-radius);
  background: #fff;
  box-shadow: var(--k-shadow-lg);
  color: var(--k-ink);
  text-align: left;
}
.k-search__results[hidden] {
  display: none;
}
.k-search__result {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border-radius: var(--k-radius-sm);
  color: var(--k-ink);
  font-size: 15px;
  font-weight: 600;
}
.k-search__result:hover,
.k-search__result.is-active {
  background: var(--k-cream);
  color: var(--k-ink);
  text-decoration: none;
}
.k-search__tag {
  flex: none;
  min-width: 112px;
  padding: 2px 8px;
  border-radius: var(--k-radius-sm);
  background: var(--k-navy-100);
  color: var(--k-navy-700);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-align: center;
  text-transform: uppercase;
}
.k-search__tag--destination {
  background: var(--k-copper-100);
  color: var(--k-copper-800);
}
.k-search__tag--golfcourse {
  background: #e3efe8;
  color: var(--k-success);
}
.k-search__empty {
  margin: 0;
  padding: 12px;
  color: var(--k-muted);
  font-size: 14px;
}
.k-search-overlay {
  position: fixed;
  inset: 0;
  z-index: 2050;
  padding: 16px;
  background: rgba(15, 23, 36, 0.7);
}
.k-search-overlay[hidden] {
  display: none;
}
.k-search-overlay__inner {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  max-width: 720px;
  margin: 8vh auto 0;
}
.k-search-overlay .k-close {
  color: #fff;
}
.k-search-overlay .k-close:hover {
  background: rgba(255, 255, 255, 0.12);
}
.k-search-overlay .k-search {
  min-height: 56px;
}

/* ---------- Kampanya şeridi (panel: Ayarlar → Teklif widget'ı) ---------- */
.k-promo {
  position: relative;
  z-index: 800;
  background: linear-gradient(90deg, var(--k-copper-700), var(--k-copper-600));
  color: #fff;
}
.k-promo__bar {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  min-height: 48px;
  padding: 8px 16px;
  border: 0;
  background: none;
  color: #fff;
  font-size: 15px;
  line-height: 1.35;
  text-align: center;
}
.k-promo__bar strong {
  font-weight: 800;
}
.k-promo__bar .k-icon {
  width: 18px;
  height: 18px;
  transition: transform 0.2s;
}
.k-promo.is-open .k-promo__bar .k-icon {
  transform: rotate(180deg);
}
.k-promo__panel {
  background: #fff;
  color: var(--k-text);
  box-shadow: var(--k-shadow-lg);
}
.k-promo__panel[hidden] {
  display: none;
}
.k-promo__panel-inner {
  padding-top: 24px;
  padding-bottom: 28px;
}
.k-promo__lead {
  margin: 0 0 16px;
  color: var(--k-muted);
}
.k-promo__list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 16px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.k-promo__item {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 18px;
  border: 1px solid var(--k-line);
  border-radius: var(--k-radius);
}
.k-promo__item h3 {
  margin: 0;
  font-size: 17px;
}
.k-promo__item p {
  margin: 0;
  font-size: 14px;
  white-space: pre-line;
}
.k-promo__item .k-btn {
  align-self: flex-start;
  margin-top: auto;
}

/* ---------- Breadcrumb ---------- */
.k-breadcrumb ol {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 14px;
  font-weight: 600;
}
.k-breadcrumb li {
  display: inline-flex;
  align-items: center;
}
.k-breadcrumb li + li::before {
  content: '';
  width: 7px;
  height: 7px;
  margin: 0 12px 0 10px;
  border-right: 2px solid currentColor;
  border-top: 2px solid currentColor;
  transform: rotate(45deg);
  opacity: 0.55;
}
.k-breadcrumb a {
  display: inline-flex;
  align-items: center;
  color: var(--k-copper-700);
}
.k-breadcrumb [aria-current] {
  color: var(--k-text);
  font-weight: 400;
}
.k-breadcrumb .k-icon {
  width: 16px;
  height: 16px;
}
.k-breadcrumb--light a,
.k-breadcrumb--light [aria-current] {
  color: #fff;
}
.k-breadcrumb--light {
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.45);
}
.k-crumbs {
  padding: 22px 0 0;
}

/* ---------- Sayfa başlığı (görselli hero) ---------- */
.k-hero {
  position: relative;
  display: flex;
  min-height: 420px;
  /* Yalnızca yatay kırpma: arama öneri listesi hero'nun altına sarkabilmeli (ISS-0888) */
  overflow-x: clip;
  background: var(--k-navy-800);
  color: #fff;
}
/* Öneri listesi açıkken hero, altındaki yapışkan alt menünün (700) üstüne çıkar; header (900) ve kampanya şeridinin (800) altında kalır */
.k-hero:has(.k-search__results:not([hidden])) {
  z-index: 750;
}
.k-hero__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.k-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(90deg, rgba(15, 23, 36, 0.72) 0%, rgba(15, 23, 36, 0.35) 55%, rgba(15, 23, 36, 0.1) 100%),
    linear-gradient(rgba(15, 23, 36, 0.35), rgba(15, 23, 36, 0) 30%);
}
.k-hero__inner {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  width: 100%;
  padding-top: 20px;
  padding-bottom: 40px;
}
.k-hero__text {
  margin: auto 0 0;
  max-width: 760px;
  padding-top: 40px;
}
.k-hero__text :is(h1, h2) {
  margin: 0 0 6px;
  color: #fff;
  font-size: clamp(32px, 4.4vw, 46px);
  font-weight: 800;
  line-height: 1.15;
  text-shadow: 0 2px 6px rgba(0, 0, 0, 0.35);
}
.k-hero__text :is(h1, h2) strong {
  font-weight: inherit;
}
.k-hero__text :is(p, h3, h4, h5, h6) {
  margin: 0 0 6px;
  color: #fff;
  font-family: var(--k-font-head);
  font-size: clamp(17px, 1.8vw, 22px);
  font-weight: 400;
  line-height: 1.4;
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.4);
}
.k-hero__text a {
  color: #fff;
  text-decoration: underline;
}
.k-hero__search {
  max-width: 640px;
  margin-top: 22px;
}
.k-hero--short {
  min-height: 260px;
}
.k-hero--short .k-hero__inner {
  padding-bottom: 32px;
}
.k-hero--plain {
  min-height: 0;
  background: linear-gradient(115deg, var(--k-navy-900), var(--k-navy-700));
}
.k-hero--plain .k-hero__text {
  padding-top: 28px;
}
@media (max-width: 767px) {
  .k-hero {
    min-height: 340px;
  }
  .k-hero--short {
    min-height: 220px;
  }
  .k-hero__inner {
    padding-bottom: 28px;
  }
}

/* Sayfa başlığı (görselsiz, ortalı — koleksiyon / blog / yasal) */
.k-pagehead {
  padding: 28px 0 8px;
}
.k-pagehead__title {
  margin: 28px 0 8px;
  text-align: center;
}
.k-pagehead__title :is(h1) {
  margin: 0 0 8px;
  font-size: clamp(30px, 3.6vw, 40px);
  font-weight: 400;
  letter-spacing: -0.5px;
}
.k-pagehead__title p {
  max-width: 760px;
  margin: 0 auto 8px;
  color: var(--k-text);
}

/* ---------- Yapışkan alt menü (Overview / Offers / Reviews …) ---------- */
.k-subnav {
  position: sticky;
  top: 0;
  z-index: 700;
  background: var(--k-navy-800);
  box-shadow: 0 2px 6px rgba(15, 23, 36, 0.18);
}
.k-subnav ul {
  display: flex;
  margin: 0;
  padding: 0;
  list-style: none;
  overflow-x: auto;
  scrollbar-width: none;
}
.k-subnav ul::-webkit-scrollbar {
  display: none;
}
/* Ortalı alt menü taşarsa ilk öğe kesilmesin: justify-content yerine kenar boşlukları */
.k-subnav--center ul > li:first-child {
  margin-left: auto;
}
.k-subnav--center ul > li:last-child {
  margin-right: auto;
}
.k-subnav a {
  display: flex;
  align-items: center;
  height: var(--k-subnav-h);
  padding: 0 18px;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  white-space: nowrap;
}
.k-subnav a:hover {
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
  text-decoration: none;
}
.k-subnav a.is-active {
  background: var(--k-navy-100);
  color: var(--k-ink);
}
@media (max-width: 767px) {
  .k-subnav a {
    padding: 0 12px;
    font-size: 13px;
    letter-spacing: 0.6px;
  }
}

/* ---------- Kartlar ---------- */
.k-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  color: var(--k-text);
}
.k-card__media {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: var(--k-radius);
  aspect-ratio: 16 / 10;
  background: var(--k-mist);
}
.k-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s;
}
.k-card:hover .k-card__media img {
  transform: scale(1.035);
}
.k-card__media .k-badge {
  position: absolute;
  left: 10px;
  top: 10px;
}
.k-card__body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  padding: 14px 0 0;
}
.k-card__eyebrow {
  margin: 0 0 4px;
  color: var(--k-text);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.4px;
  line-height: 1.6;
  text-transform: uppercase;
}
.k-card__title {
  margin: 0 0 4px;
  color: var(--k-text);
  font-family: var(--k-font-body);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
}
.k-card__title a {
  color: inherit;
}
.k-card__title a:hover {
  color: var(--k-copper-700);
}
.k-card__title a::after {
  /* başlık linki kartın görselini de kapsar (tıklama alanı) */
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  aspect-ratio: 16 / 10;
}
.k-card__loc {
  margin: 0 0 8px;
  color: var(--k-text);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.4px;
  text-transform: uppercase;
}
.k-card__loc a {
  position: relative;
  z-index: 1;
  color: inherit;
}
.k-card__loc a:hover {
  color: var(--k-copper-700);
}
.k-card .k-rating {
  margin: 0 0 10px;
}
/* ISS-0972: puan satırı tesis sayfasındaki misafir yorumlarına gider */
.k-rating__link {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 2px 8px;
  color: inherit;
}
.k-rating__link > span:last-child {
  text-decoration: underline;
  text-underline-offset: 2px;
}
.k-rating__link:hover {
  color: var(--k-copper-700);
}
.k-card__intro {
  display: -webkit-box;
  margin: 0 0 12px;
  overflow: hidden;
  color: var(--k-text);
  font-size: 14px;
  line-height: 1.6;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.k-card__deal {
  margin: 0 0 8px;
  color: var(--k-text);
  font-size: 15px;
  line-height: 1.5;
}
.k-card__foot {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  margin-top: auto;
  padding-top: 8px;
}
.k-card__foot .k-link {
  position: relative;
  z-index: 1;
  font-size: 14px;
  white-space: nowrap;
}
.k-card__quote {
  position: relative;
  z-index: 1;
  display: block;
  margin-top: 6px;
  padding: 0;
  border: 0;
  background: none;
  color: var(--k-copper-700);
  font-size: 12px;
  font-weight: 600;
  text-align: left;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.k-card__quote:hover {
  color: var(--k-copper-800);
}
.k-perks {
  margin: 0 0 10px;
  padding: 0;
  list-style: none;
  font-size: 13px;
  font-weight: 700;
  color: var(--k-success);
}
.k-perks li {
  display: flex;
  gap: 6px;
  align-items: flex-start;
  line-height: 1.45;
}
.k-perks .k-icon {
  margin-top: 2px;
}
/* Kutulu varyant (açık zemin üstünde) */
.k-card--boxed {
  border-radius: var(--k-radius);
  background: #fff;
  box-shadow: var(--k-shadow-sm);
}
.k-card--boxed .k-card__media {
  border-radius: var(--k-radius) var(--k-radius) 0 0;
}
.k-card--boxed .k-card__body {
  padding: 16px;
}
/* Görsel + kısa başlık kutucuğu (ana sayfa hızlı erişim, tatil tipleri) */
.k-tile {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--k-line);
  border-radius: var(--k-radius);
  background: #fff;
  color: var(--k-ink);
  box-shadow: var(--k-shadow-sm);
  transition: box-shadow 0.15s, transform 0.15s;
}
.k-tile:hover {
  color: var(--k-ink);
  text-decoration: none;
  box-shadow: var(--k-shadow);
  transform: translateY(-2px);
}
.k-tile__img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  background: var(--k-mist);
}
.k-tile__title {
  display: block;
  margin: 0;
  padding: 10px 10px 12px;
  font-family: var(--k-font-body);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
}
.k-tile--lg .k-tile__title {
  padding: 16px 18px 6px;
  font-size: 17px;
  text-align: left;
}
.k-tile--lg .k-tile__sub {
  display: block;
  padding: 0 18px 16px;
  color: var(--k-text);
  font-size: 14px;
}

/* ---------- Kaydırmalı şerit (carousel) ---------- */
.k-carousel {
  position: relative;
}
.k-carousel__track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - 3 * 24px) / 4);
  gap: 24px;
  margin: 0;
  padding: 0 0 8px;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  list-style: none;
}
.k-carousel__track::-webkit-scrollbar {
  display: none;
}
.k-carousel__track > * {
  scroll-snap-align: start;
}
.k-carousel--3 .k-carousel__track {
  grid-auto-columns: calc((100% - 2 * 24px) / 3);
}
.k-carousel__nav {
  display: flex;
  gap: 8px;
}
.k-carousel__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 1px solid var(--k-line-strong);
  border-radius: 999px;
  background: #fff;
  color: var(--k-ink);
  box-shadow: var(--k-shadow-sm);
}
.k-carousel__btn:hover:not(:disabled) {
  border-color: var(--k-navy-800);
}
.k-carousel__btn:disabled {
  opacity: 0.35;
  cursor: default;
}
.k-carousel__btn .k-icon {
  width: 18px;
  height: 18px;
}
.k-carousel__dots {
  display: none;
  justify-content: center;
  gap: 0;
  margin-top: 16px;
}
/* Nokta görseli 8 px; dokunma alanı 24 px (WCAG 2.5.8) */
.k-carousel__dots button {
  position: relative;
  width: 24px;
  height: 24px;
  padding: 0;
  border: 0;
  background: none;
}
.k-carousel__dots button::before {
  content: '';
  position: absolute;
  left: 8px;
  top: 8px;
  width: 8px;
  height: 8px;
  border-radius: 99px;
  background: var(--k-line-strong);
  transition: width 0.2s, left 0.2s;
}
.k-carousel__dots.is-count {
  color: var(--k-muted);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.5px;
}
.k-carousel__dots button.is-active::before {
  left: 1px;
  width: 22px;
  background: var(--k-navy-800);
}
@media (max-width: 1023px) {
  .k-carousel__track,
  .k-carousel--3 .k-carousel__track {
    grid-auto-columns: calc((100% - 24px) / 2.15);
  }
}
@media (max-width: 639px) {
  .k-carousel__track,
  .k-carousel--3 .k-carousel__track {
    grid-auto-columns: 82%;
    gap: 16px;
  }
  .k-carousel__dots {
    display: flex;
  }
  [data-k-carousel] .k-carousel__nav {
    display: none;
  }
}

/* ---------- Sekmeler / akordeon ---------- */
.k-tabs__list {
  display: flex;
  gap: 4px;
  margin: 0 0 20px;
  padding: 0;
  overflow-x: auto;
  border-bottom: 1px solid var(--k-line);
  list-style: none;
  scrollbar-width: none;
}
.k-tabs__list::-webkit-scrollbar {
  display: none;
}
.k-tabs__tab {
  position: relative;
  flex: none;
  height: 48px;
  padding: 0 16px;
  border: 0;
  background: none;
  color: var(--k-copper-700);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 1.25px;
  text-transform: uppercase;
}
.k-tabs__tab[aria-selected='true'] {
  color: var(--k-ink);
}
.k-tabs__tab[aria-selected='true']::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 2px;
  background: var(--k-navy-700);
}
.k-tabs__panel[hidden] {
  display: none;
}
.k-accordion {
  border-radius: var(--k-radius);
  background: #fff;
  box-shadow: var(--k-shadow-sm);
}
.k-acc {
  border-bottom: 1px solid var(--k-line);
}
.k-acc:last-child {
  border-bottom: 0;
}
.k-acc > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 18px;
  color: var(--k-ink);
  font-size: 15px;
  font-weight: 600;
  list-style: none;
  cursor: pointer;
}
.k-acc > summary::-webkit-details-marker {
  display: none;
}
.k-acc > summary .k-icon {
  flex: none;
  width: 18px;
  height: 18px;
  color: var(--k-navy-700);
  transition: transform 0.2s;
}
.k-acc[open] > summary .k-icon {
  transform: rotate(180deg);
}
.k-acc > summary:hover {
  color: var(--k-copper-700);
}
.k-acc__body {
  padding: 0 18px 18px;
}
.k-acc__body > :last-child {
  margin-bottom: 0;
}

/* Onay işaretli liste (Why book …) */
.k-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 40px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.k-checklist li {
  position: relative;
  padding-left: 32px;
  color: var(--k-ink);
  font-size: 15px;
  font-weight: 600;
  line-height: 1.5;
}
.k-checklist li::before {
  content: '';
  position: absolute;
  left: 4px;
  top: 3px;
  width: 7px;
  height: 13px;
  border-right: 2px solid var(--k-copper-600);
  border-bottom: 2px solid var(--k-copper-600);
  transform: rotate(45deg);
}
.k-checklist li > :last-child {
  margin-bottom: 0;
}
.k-checklist--1 {
  grid-template-columns: minmax(0, 1fr);
}
@media (max-width: 767px) {
  .k-checklist {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Görsel kolajı + metin (golfbreaks "What makes … special") */
.k-split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 56px;
  align-items: center;
}
.k-split--reverse .k-split__media {
  order: 2;
}
.k-collage {
  position: relative;
  min-height: 360px;
}
.k-collage::before {
  content: '';
  position: absolute;
  left: 18%;
  top: 10%;
  width: 62%;
  height: 80%;
  border-radius: var(--k-radius);
  background: var(--k-cream);
}
.k-collage img {
  position: absolute;
  display: block;
  object-fit: cover;
  border-radius: var(--k-radius-sm);
  box-shadow: var(--k-shadow);
}
.k-collage img:nth-of-type(1) {
  left: 0;
  top: 18%;
  width: 46%;
  height: 52%;
}
.k-collage img:nth-of-type(2) {
  left: 38%;
  top: 0;
  width: 62%;
  height: 64%;
}
.k-collage img:nth-of-type(3) {
  left: 50%;
  top: 70%;
  width: 34%;
  height: 30%;
}
.k-collage--two img:nth-of-type(1) {
  left: 0;
  top: 14%;
  width: 52%;
  height: 74%;
}
.k-collage--two img:nth-of-type(2) {
  left: 46%;
  top: 0;
  width: 54%;
  height: 70%;
}
@media (max-width: 899px) {
  .k-split {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }
  .k-split--reverse .k-split__media {
    order: 0;
  }
  .k-collage {
    min-height: 0;
    aspect-ratio: 4 / 3;
  }
}

/* İkonlu özellik sütunları (Why book with …, golf travel tips) */
.k-features {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 32px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.k-feature__icon {
  display: block;
  width: 56px;
  height: 56px;
  margin: 0 0 14px;
  object-fit: contain;
}
.k-feature__icon--svg {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: var(--k-copper-100);
  color: var(--k-copper-700);
}
.k-feature__icon--svg .k-icon {
  width: 26px;
  height: 26px;
}
.k-feature__title {
  margin: 0 0 8px;
  color: var(--k-ink);
  font-size: 20px;
  font-weight: 700;
  line-height: 1.3;
}
.k-feature__text {
  color: var(--k-text);
  font-size: 14px;
  line-height: 1.6;
}
.k-feature__text > :last-child {
  margin-bottom: 0;
}
.k-features--center {
  text-align: center;
}
.k-features--center .k-feature__icon {
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1023px) {
  .k-features {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 559px) {
  .k-features {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }
}

/* Yorum kartları */
.k-review {
  display: flex;
  flex-direction: column;
  gap: 10px;
  height: 100%;
  padding: 22px;
  border: 1px solid var(--k-line);
  border-radius: var(--k-radius);
  background: #fff;
}
.k-review__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.k-review__name {
  margin: 0;
  color: var(--k-ink);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.3;
}
.k-review__date {
  margin: 2px 0 0;
  color: var(--k-muted);
  font-size: 13px;
}
.k-review__body {
  color: var(--k-text);
  font-size: 14px;
  line-height: 1.65;
}
.k-review__body p {
  margin: 0;
  white-space: pre-line;
}
.k-review__body.is-clamped p {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 6;
}
.k-review__more {
  align-self: flex-start;
  padding: 0;
  border: 0;
  background: none;
  color: var(--k-copper-700);
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.4px;
}
.k-verified {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 8px;
  border-radius: 99px;
  background: var(--k-copper-50);
  color: var(--k-copper-800);
  font-size: 11px;
  font-weight: 600;
}

/* Blog kartı */
.k-post__date {
  margin: 0 0 4px;
  color: var(--k-muted);
  font-size: 13px;
}
.k-post .k-card__title {
  font-family: var(--k-font-head);
  font-size: 19px;
  font-weight: 700;
  line-height: 1.35;
}
.k-mini-post {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 14px 0;
  border-top: 1px solid var(--k-line);
  color: var(--k-ink);
}
.k-mini-post:hover {
  color: var(--k-copper-700);
  text-decoration: none;
}
.k-mini-post img {
  flex: none;
  width: 64px;
  height: 64px;
  object-fit: cover;
  border-radius: var(--k-radius-sm);
}
.k-mini-post span {
  font-size: 15px;
  line-height: 1.45;
}

/* ---------- Formlar ---------- */
.k-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}
.k-field > span,
.k-label {
  color: var(--k-ink);
  font-size: 13px;
  font-weight: 700;
}
.k-input,
.k-select,
.k-textarea {
  width: 100%;
  min-height: 46px;
  padding: 10px 14px;
  border: 1px solid var(--k-line-strong);
  border-radius: var(--k-radius-sm);
  background: #fff;
  color: var(--k-ink);
  font-size: 15px;
  line-height: 1.4;
  transition: border-color 0.15s, box-shadow 0.15s;
}
.k-textarea {
  min-height: 110px;
  resize: vertical;
}
.k-input:focus,
.k-select:focus,
.k-textarea:focus {
  outline: 0;
  border-color: var(--k-copper-500);
  box-shadow: 0 0 0 3px rgba(194, 124, 69, 0.25);
}
.k-select {
  appearance: none;
  padding-right: 38px;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%231c2738' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center;
}
.k-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.k-form-grid .k-field--full {
  grid-column: 1 / -1;
}
@media (max-width: 559px) {
  .k-form-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
.k-check,
.k-radio {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 6px 0;
  color: var(--k-text);
  font-size: 14px;
  cursor: pointer;
}
.k-check input,
.k-radio input {
  flex: none;
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: var(--k-copper-600);
  cursor: pointer;
}
.k-status {
  margin: 12px 0 0;
  padding: 12px 14px;
  border-radius: var(--k-radius-sm);
  background: var(--k-mist);
  color: var(--k-ink);
  font-size: 14px;
}
.k-status[hidden] {
  display: none;
}
.k-status.is-success {
  background: #e3efe8;
  color: #1e4d35;
}
.k-status.is-error {
  background: #fdecea;
  color: var(--k-danger);
}
.is-busy {
  opacity: 0.55;
  pointer-events: none;
}

/* ---------- Modal ---------- */
.k-modal {
  position: fixed;
  inset: 0;
  z-index: 2200;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
}
.k-modal[hidden] {
  display: none;
}
.k-modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 36, 0.6);
}
.k-modal__dialog {
  position: relative;
  width: min(640px, 100%);
  max-height: calc(100vh - 32px);
  overflow-y: auto;
  padding: 32px;
  border-radius: var(--k-radius-lg);
  background: #fff;
  box-shadow: var(--k-shadow-lg);
  animation: k-pop 0.18s ease-out;
}
@keyframes k-pop {
  from {
    transform: translateY(12px);
    opacity: 0;
  }
}
.k-modal__close {
  position: absolute;
  right: 10px;
  top: 10px;
}
.k-modal__head {
  margin: 0 0 20px;
  padding-right: 40px;
}
.k-modal__head h2 {
  margin: 0 0 6px;
  font-size: 26px;
}
.k-modal__head p {
  margin: 0;
  color: var(--k-muted);
}
.k-modal__summary {
  margin: 0 0 18px;
  padding: 12px 14px;
  border-left: 3px solid var(--k-copper-500);
  border-radius: 0 var(--k-radius-sm) var(--k-radius-sm) 0;
  background: var(--k-cream);
  color: var(--k-ink);
  font-size: 14px;
  white-space: pre-line;
}
.k-modal__summary[hidden] {
  display: none;
}
/* Bot tuzağı alanı (tüm talep formları): ziyaretçi görmez, sekmeyle ulaşamaz; dolu gelen talep spam işaretlenir */
.k-hp {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.k-modal__actions {
  margin-top: 20px;
}
@media (max-width: 559px) {
  .k-modal {
    align-items: flex-end;
    padding: 0;
  }
  .k-modal__dialog {
    max-height: 92vh;
    padding: 24px 18px;
    border-radius: var(--k-radius-lg) var(--k-radius-lg) 0 0;
  }
}

/* ---------- Bülten bandı ---------- */
.k-newsletter {
  position: relative;
  overflow: hidden;
  padding: 64px 0;
  background: var(--k-navy-800) var(--k-nl-bg, none) center / cover no-repeat;
  color: #fff;
  text-align: center;
}
.k-newsletter::before {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 36, 0.55);
}
.k-newsletter > .k-container {
  position: relative;
}
.k-newsletter__title {
  margin: 0 0 6px;
  color: #fff;
  font-size: clamp(24px, 2.6vw, 30px);
  font-weight: 400;
}
.k-newsletter__lead {
  margin: 0 0 22px;
  color: #e5e9f0;
}
.k-newsletter__form {
  display: flex;
  justify-content: center;
  gap: 12px;
  max-width: 640px;
  margin: 0 auto;
}
.k-newsletter__form .k-input {
  flex: 1 1 auto;
  min-height: 48px;
  border-color: transparent;
}
.k-newsletter__form .k-btn {
  min-height: 48px;
}
.k-newsletter .k-status {
  max-width: 640px;
  margin: 14px auto 0;
}
@media (max-width: 559px) {
  .k-newsletter__form {
    flex-direction: column;
  }
}

/* ---------- Footer ---------- */
.k-footer {
  background: #fff;
  color: var(--k-text);
  font-size: 14px;
}
.k-footer__main {
  display: grid;
  grid-template-columns: 1.3fr repeat(3, minmax(0, 1fr));
  gap: 40px;
  padding-top: 56px;
  padding-bottom: 40px;
}
.k-footer__logo img {
  display: block;
  width: auto;
  height: 64px;
  margin-bottom: 16px;
}
.k-footer__about {
  margin: 0 0 18px;
  line-height: 1.6;
}
.k-footer__about p {
  margin: 0;
}
.k-socials {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.k-socials a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 999px;
  background: var(--k-navy-700);
  color: #fff;
  font-size: 15px;
  transition: background-color 0.15s;
}
.k-socials a:hover {
  background: var(--k-copper-600);
  color: #fff;
  text-decoration: none;
}
.k-socials svg {
  width: 15px;
  height: 15px;
  fill: currentColor;
}
.k-footer__head {
  margin: 0 0 14px;
  color: var(--k-ink);
  font-family: var(--k-font-head);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}
.k-footer__links {
  margin: 0;
  padding: 0;
  list-style: none;
}
.k-footer__links li {
  margin: 0 0 2px;
}
.k-footer__links a {
  display: inline-block;
  padding: 3px 0;
}
.k-footer__links a {
  color: var(--k-text);
}
.k-footer__links a:hover {
  color: var(--k-copper-700);
}
.k-footer__all {
  margin-top: 10px;
  font-size: 14px;
}
.k-footer__trust {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding-top: 24px;
  padding-bottom: 32px;
  border-top: 1px solid var(--k-line);
}
.k-memberships {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 28px;
}
.k-membership {
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--k-text);
  font-size: 13px;
}
.k-membership img {
  display: block;
  width: auto;
  height: 40px;
}
.k-membership:hover {
  color: var(--k-copper-700);
  text-decoration: none;
}
/* ISS-0940: Trustpilot TrustBox (components/KTrustpilot.vue). Betik yüklenince içerik 20 px yüksekliğinde iframe olur;
   o zamana kadar içindeki statik logo görünür. Masaüstünde Micro Combo'nun tam satırı ("Excellent ★★★★★ 353 reviews on
   Trustpilot") için sabit genişlik (Fincede metin daha uzun): kapsayıcılar içeriğe göre boyutlandığı için sabit genişlik
   IAGTO'yu aynı satırda tutar. Mobilde tam genişlik; site.js dar widget'ta Micro Star'a geçer (eşikler orada) */
.k-trustpilot {
  width: 470px;
  max-width: 100%;
}
html[lang|="fi"] .k-trustpilot {
  width: 500px;
}
@media (max-width: 767px) {
  .k-trustpilot,
  html[lang|="fi"] .k-trustpilot {
    width: 100%;
  }
}
.k-trustpilot iframe {
  display: block;
}
/* ISS-0952: footer'da Trustpilot içeriği IAGTO ve iletişim satırıyla aynı soldan başlasın (ISS-0966: ana sayfanın güven
   şeridinde de içerik kutunun kenarına hizalı, aynı ölçülerle). Trustpilot içeriği iframe'in
   ortasına koyar (sola hizalama ayarı bu abonelikte kapalı); kutu iframe genişliğinde (--tp-w) kalır, iki yandan negatif
   boşlukla içerik genişliğine (--tp-c) iner. Genişlikler dile göre ölçüldü: içerik Windows'taki Arial'le, iframe'e Mac'in
   Helvetica Neue'su için 16 px pay (Combo 420 px'in altında iki satıra geçer). Yüklenecek şablonu --tp-tpl söyler (site.js):
   masaüstünde Micro Combo, mobilde Micro Star */
.k-footer .k-footer__trust .k-trustpilot,
.k-trust .k-trustpilot {
  --tp-tpl: combo;
  --tp-c: 394px;
  --tp-w: 420px;
  width: var(--tp-w);
  margin-inline: calc((var(--tp-c) - var(--tp-w)) / 2);
}
html[lang|="de"] .k-footer__trust .k-trustpilot,
html[lang|="de"] .k-trust .k-trustpilot {
  --tp-c: 470px;
  --tp-w: 486px;
}
html[lang|="nb"] .k-footer__trust .k-trustpilot,
html[lang|="nb"] .k-trust .k-trustpilot {
  --tp-c: 446px;
  --tp-w: 462px;
}
html[lang|="sv"] .k-footer__trust .k-trustpilot,
html[lang|="sv"] .k-trust .k-trustpilot {
  --tp-c: 398px;
  --tp-w: 420px;
}
html[lang|="fi"] .k-footer__trust .k-trustpilot,
html[lang|="fi"] .k-trust .k-trustpilot {
  --tp-c: 488px;
  --tp-w: 504px;
}
@media (max-width: 767px) {
  .k-footer .k-footer__trust .k-trustpilot,
  .k-trust .k-trustpilot {
    --tp-tpl: star;
    --tp-c: 266px;
    --tp-w: 282px;
  }
  html[lang|="de"] .k-footer__trust .k-trustpilot,
  html[lang|="de"] .k-trust .k-trustpilot {
    --tp-c: 302px;
    --tp-w: 318px;
  }
  html[lang|="nb"] .k-footer__trust .k-trustpilot,
  html[lang|="nb"] .k-trust .k-trustpilot {
    --tp-c: 288px;
    --tp-w: 304px;
  }
  html[lang|="sv"] .k-footer__trust .k-trustpilot,
  html[lang|="sv"] .k-trust .k-trustpilot {
    --tp-c: 255px;
    --tp-w: 271px;
  }
  html[lang|="fi"] .k-footer__trust .k-trustpilot,
  html[lang|="fi"] .k-trust .k-trustpilot {
    --tp-c: 294px;
    --tp-w: 310px;
  }
}
/* Betik yüklenene kadar görünen statik logo da aynı hizadan başlar */
.k-footer__trust .k-trustpilot > .k-membership,
.k-trust .k-trustpilot > .k-membership {
  margin-left: calc((var(--tp-w) - var(--tp-c)) / 2);
}
.k-footer__contact {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 24px;
}
.k-footer__contact a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--k-ink);
  font-weight: 600;
}
.k-footer__contact .k-icon {
  color: var(--k-copper-600);
}
.k-footer__bottom {
  background: var(--k-navy-800);
  color: #c7cfdb;
  font-size: 13px;
}
.k-footer__bottom-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px 24px;
  padding-top: 18px;
  padding-bottom: 18px;
}
.k-footer__bottom .k-switch__btn {
  border-color: rgba(255, 255, 255, 0.28);
  background: transparent;
  color: #fff;
}
.k-footer__bottom .k-switch__menu {
  top: auto;
  bottom: calc(100% + 6px);
  left: 0;
  right: auto;
}
.k-footer__legal {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 18px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.k-footer__legal a {
  color: #fff;
}
.k-footer__copy {
  margin: 0;
}
@media (max-width: 1023px) {
  .k-footer__main {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .k-footer__brand {
    grid-column: 1 / -1;
  }
}
@media (max-width: 559px) {
  .k-footer__main {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }
  .k-footer__bottom-inner {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* ---------- Çerez bildirimi ---------- */
.k-cookie {
  position: fixed;
  left: 16px;
  bottom: 16px;
  z-index: 1900;
  display: flex;
  align-items: center;
  gap: 16px;
  max-width: 520px;
  padding: 16px 18px;
  border-radius: var(--k-radius);
  background: var(--k-navy-800);
  color: #e5e9f0;
  box-shadow: var(--k-shadow-lg);
  font-size: 14px;
  line-height: 1.5;
}
.k-cookie[hidden] {
  display: none;
}
.k-cookie p {
  margin: 0;
}
.k-cookie a {
  color: var(--k-copper-300);
  text-decoration: underline;
}
@media (max-width: 559px) {
  .k-cookie {
    left: 8px;
    right: 8px;
    bottom: 8px;
    flex-direction: column;
    align-items: stretch;
  }
}

/* Yukarı dön */
.k-totop {
  position: fixed;
  left: 16px;
  bottom: 16px;
  z-index: 1000;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  background: #fff;
  color: var(--k-ink);
  box-shadow: var(--k-shadow);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s, visibility 0s 0.2s;
}
.k-totop.is-visible {
  opacity: 1;
  visibility: visible;
  transition: opacity 0.2s;
}
.k-totop:hover {
  color: var(--k-copper-700);
}

/* Mobil alt çubuk (tesis sayfası: "Enquire to customise") */
.k-mobilebar {
  display: none;
}
@media (max-width: 1023px) {
  .k-mobilebar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1500;
    display: block;
    padding: 10px 12px calc(10px + env(safe-area-inset-bottom));
    background: #fff;
    box-shadow: 0 -2px 10px rgba(15, 23, 36, 0.12);
  }
  body.has-mobilebar {
    padding-bottom: 72px;
  }
  body.has-mobilebar .k-totop {
    bottom: 84px;
  }
}

/* Kategori menüsü (Holiday types) kutucukları */
.k-mega__tiles {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 16px;
  margin: 0;
  padding: 28px 0 32px;
  list-style: none;
}
.k-mega__tiles .k-tile__title {
  font-size: 14px;
}

/* Yazı menüsü (Inspiration, ISS-0908): küçük başlık + dikey görselli yazı kutucukları + altta "All articles" satırı */
.k-mega__label {
  margin: 0;
  padding: 24px 0 14px;
  color: var(--k-ink);
  font-family: var(--k-font-head);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1px;
  text-transform: uppercase;
}
.k-mega__posts {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 16px;
  margin: 0;
  padding: 0 0 24px;
  list-style: none;
}
.k-mpost {
  display: block;
  color: var(--k-ink);
}
.k-mpost:hover {
  color: var(--k-copper-700);
  text-decoration: none;
}
.k-mpost__media {
  display: block;
  overflow: hidden;
  aspect-ratio: 4 / 5;
  border-radius: var(--k-radius);
  background: var(--k-mist);
}
.k-mpost__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s;
}
.k-mpost:hover .k-mpost__img {
  transform: scale(1.04);
}
/* Görseller menüye ilk yaklaşmada yüklenir (site.js .is-armed): kutusu olmayan loading="lazy" görsel indirilmez */
.k-nav:not(.is-armed) .k-mpost__img {
  display: none;
}
.k-mpost__title {
  display: -webkit-box;
  overflow: hidden;
  margin-top: 12px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.4;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
}
.k-mega__foot {
  border-top: 1px solid var(--k-line);
}
.k-mega__more {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 14px 0;
  color: var(--k-ink);
  font-size: 14px;
  font-weight: 700;
}
.k-mega__more:hover {
  color: var(--k-copper-700);
  text-decoration: none;
}
.k-mega__more .k-icon {
  width: 12px;
  height: 12px;
}

/* Boş sonuç */
.k-empty {
  grid-column: 1 / -1;
  margin: 0;
  padding: 32px 24px;
  border: 1px dashed var(--k-line-strong);
  border-radius: var(--k-radius);
  background: var(--k-mist);
  color: var(--k-text);
  text-align: center;
}

/* KingPro kartı iletişim satırları */
.k-pro__meta {
  display: grid;
  gap: 6px;
  margin: 4px 0 12px;
  padding: 0;
  list-style: none;
  font-size: 14px;
}
.k-pro__meta li {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.k-pro__meta a,
.k-pro__meta span {
  position: relative;
  z-index: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.k-pro__meta .k-icon {
  color: var(--k-copper-600);
}

/* Işık kutusu (galeri) */
.k-lightbox {
  position: fixed;
  inset: 0;
  z-index: 2300;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(10, 15, 24, 0.94);
  color: #fff;
  touch-action: pan-y;
}
.k-lightbox[hidden] {
  display: none;
}
.k-lightbox__top {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 8px 8px 20px;
}
.k-lightbox__count {
  font-size: 14px;
  letter-spacing: 0.5px;
}
.k-lightbox .k-close {
  color: #fff;
}
.k-lightbox .k-close:hover {
  background: rgba(255, 255, 255, 0.12);
}
.k-lightbox__stage {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 64px 72px 24px;
}
.k-lightbox__stage img {
  max-width: 100%;
  max-height: calc(100% - 40px);
  object-fit: contain;
  border-radius: var(--k-radius-sm);
  user-select: none;
}
.k-lightbox__stage figcaption {
  min-height: 24px;
  margin-top: 12px;
  color: #c7cfdb;
  font-size: 14px;
  text-align: center;
}
.k-lightbox__nav {
  position: absolute;
  top: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  margin-top: -26px;
  border: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
}
.k-lightbox__nav:hover {
  background: rgba(255, 255, 255, 0.24);
}
.k-lightbox__nav .k-icon {
  width: 26px;
  height: 26px;
}
.k-lightbox__nav--prev {
  left: 12px;
}
.k-lightbox__nav--next {
  right: 12px;
}
@media (max-width: 767px) {
  .k-lightbox__stage {
    padding: 56px 8px 16px;
  }
  .k-lightbox__nav {
    top: auto;
    bottom: 16px;
    margin-top: 0;
  }
}

/* Kart fiyat bloğu (golfbreaks ürün kartı alt kısmı) */
.k-card__offer {
  margin-top: auto;
  padding-top: 4px;
}
.k-card__pricing {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
}
.k-card__pricing .k-link {
  position: relative;
  z-index: 1;
  flex: none;
  padding-bottom: 3px;
  font-size: 14px;
}
.k-card__offer .k-price__note {
  margin-top: 4px;
}
/* CMS içeriğindeki <code> (eski editörde düğme kısayolu) düz metin gibi görünür */
.k-prose code {
  font: inherit;
  background: none;
}

/* Footer sütunları: masaüstünde hep açık; mobilde akordeon (site.js mobilde kapatır) */
.k-footer__col > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  list-style: none;
  pointer-events: none;
}
.k-footer__col > summary::-webkit-details-marker {
  display: none;
}
.k-footer__col > summary .k-icon {
  display: none;
}
@media (max-width: 559px) {
  .k-footer__main {
    gap: 0;
  }
  .k-footer__brand {
    margin-bottom: 20px;
  }
  .k-footer__col {
    border-top: 1px solid var(--k-line);
  }
  .k-footer__col > summary {
    padding: 14px 0;
    pointer-events: auto;
    cursor: pointer;
  }
  .k-footer__col > summary .k-footer__head {
    margin: 0;
  }
  .k-footer__col > summary .k-icon {
    display: block;
    width: 18px;
    height: 18px;
    transition: transform 0.2s;
  }
  .k-footer__col[open] > summary .k-icon {
    transform: rotate(180deg);
  }
  .k-footer__col .k-footer__links,
  .k-footer__col .k-footer__all {
    padding-bottom: 14px;
  }
}

/* ---------- Kampanyalar (ISS-0890): kampanyalı fiyat, kart etiketi, kampanya kartı, ana sayfa bandı, açılır pencere ---------- */
/* Üstü çizili eski fiyat + vurgulu kampanyalı fiyat (.pound/.euro para birimi kuralları içeride de geçerli) */
.k-price__was {
  margin-right: 2px;
  color: var(--k-muted);
  font-size: 15px;
  font-weight: 400;
  text-decoration-thickness: 1px;
}
.k-price__new {
  color: var(--k-copper-700);
}
/* Tesis kartındaki kampanya etiketi (kampanya sayfasına link) */
.k-offer-tag {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  max-width: 100%;
  margin: 0 0 8px;
  padding: 3px 12px 3px 3px;
  border-radius: 999px;
  background: var(--k-copper-50);
  color: var(--k-copper-800);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.4;
}
.k-offer-tag:hover {
  background: var(--k-copper-100);
  color: var(--k-copper-800);
}
.k-offer-tag__badge {
  flex: none;
  padding: 2px 8px;
  border-radius: 999px;
  background: var(--k-copper-600);
  color: #fff;
  font-size: 10.5px;
  letter-spacing: 0.4px;
  text-transform: uppercase;
}
.k-offer-tag__text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
/* Kampanya kartı */
.k-offer-card__ph {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 16px;
  background: linear-gradient(135deg, var(--k-navy-800), var(--k-navy-600));
  color: #fff;
  font-family: var(--k-font-head);
  font-size: 30px;
  font-weight: 900;
  line-height: 1.15;
  text-align: center;
}
.k-offer-card__headline {
  margin: 0 0 4px;
  color: var(--k-copper-700);
  font-family: var(--k-font-head);
  font-size: 21px;
  font-weight: 900;
  line-height: 1.25;
}
.k-offer-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 16px;
  margin: 0 0 4px;
  padding: 0;
  list-style: none;
  color: var(--k-text);
  font-size: 13px;
}
.k-offer-card__meta li {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.k-offer-card__meta .k-icon {
  width: 15px;
  height: 15px;
  color: var(--k-copper-600);
}
/* Ana sayfa: tek kampanyada geniş vitrin */
.k-offer-feature {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  overflow: hidden;
  border-radius: var(--k-radius-lg);
  background: var(--k-navy-800);
  color: #fff;
  box-shadow: var(--k-shadow);
}
.k-offer-feature__media {
  position: relative;
  display: block;
  min-height: 300px;
  background: var(--k-navy-700);
}
.k-offer-feature__img,
.k-offer-feature__media .k-offer-card__ph {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.k-offer-feature__body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 10px;
  padding: 32px 36px;
}
.k-offer-feature__eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  color: var(--k-copper-300);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.4px;
  text-transform: uppercase;
}
.k-offer-feature__headline {
  margin: 0;
  color: var(--k-copper-300);
  font-family: var(--k-font-head);
  font-size: 38px;
  font-weight: 900;
  line-height: 1.1;
}
.k-offer-feature__title {
  margin: 0;
  color: #fff;
  font-size: 26px;
  line-height: 1.25;
}
.k-offer-feature__title a {
  color: inherit;
}
.k-offer-feature__text {
  margin: 0;
  color: #d9dfe8;
}
.k-offer-feature .k-offer-card__meta {
  color: #d9dfe8;
}
.k-offer-feature .k-offer-card__meta .k-icon {
  color: var(--k-copper-300);
}
.k-offer-feature .k-actions {
  margin-top: 6px;
}
.k-offer-feature .k-link {
  color: #fff;
}
@media (max-width: 767px) {
  .k-offer-feature {
    grid-template-columns: minmax(0, 1fr);
  }
  .k-offer-feature__media {
    min-height: 0;
    aspect-ratio: 16 / 9;
  }
  .k-offer-feature__body {
    padding: 22px 20px 26px;
  }
  .k-offer-feature__headline {
    font-size: 30px;
  }
  .k-offer-feature__title {
    font-size: 22px;
  }
}
/* Current Offers şeridindeki kampanya */
.k-promo__item .k-promo__headline {
  color: var(--k-copper-700);
  font-family: var(--k-font-head);
  font-size: 18px;
  font-weight: 900;
}
.k-promo__item .k-promo__ends {
  color: var(--k-muted);
  font-size: 13px;
}
/* Açılır pencere: masaüstünde sol altta kart, mobilde ince alt şerit (asistan düğmesine yer bırakır) */
.k-offer-pop {
  position: fixed;
  left: 16px;
  bottom: 16px;
  z-index: 1950;
  display: flex;
  flex-direction: column;
  width: 340px;
  max-width: calc(100vw - 32px);
  overflow: hidden;
  border-radius: var(--k-radius-lg);
  background: #fff;
  color: var(--k-text);
  box-shadow: var(--k-shadow-lg);
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.25s, transform 0.25s;
}
.k-offer-pop[hidden] {
  display: none;
}
.k-offer-pop.is-in {
  opacity: 1;
  transform: none;
}
.k-offer-pop__close {
  position: absolute;
  right: 8px;
  top: 8px;
  z-index: 2;
  width: 36px;
  height: 36px;
  background: rgba(255, 255, 255, 0.92);
  color: var(--k-ink);
}
.k-offer-pop__media {
  display: block;
  aspect-ratio: 16 / 9;
  background: var(--k-mist);
}
.k-offer-pop__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.k-offer-pop__body {
  position: relative;
  display: grid;
  gap: 6px;
  padding: 16px 18px 18px;
}
.k-offer-pop__top {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 10px;
  margin: 0;
  padding-right: 36px;
}
.k-offer-pop__media + .k-offer-pop__body .k-offer-pop__top {
  padding-right: 0;
}
.k-offer-pop__headline {
  color: var(--k-copper-700);
  font-family: var(--k-font-head);
  font-size: 18px;
  font-weight: 900;
}
.k-offer-pop__title {
  margin: 0;
  color: var(--k-ink);
  font-family: var(--k-font-head);
  font-size: 18px;
  font-weight: 800;
  line-height: 1.3;
}
.k-offer-pop__title a {
  color: inherit;
}
.k-offer-pop__summary {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}
.k-offer-pop__ends {
  margin: 0;
  color: var(--k-muted);
  font-size: 13px;
}
.k-offer-pop__cta {
  justify-self: start;
  margin-top: 4px;
}
@media (prefers-reduced-motion: reduce) {
  .k-offer-pop {
    transition: none;
  }
}
@media (max-width: 767px) {
  .k-offer-pop {
    left: 8px;
    right: 76px;
    bottom: 8px;
    width: auto;
    max-width: none;
    border-radius: var(--k-radius);
  }
  .k-offer-pop__media,
  .k-offer-pop__summary,
  .k-offer-pop__ends,
  .k-offer-pop__cta {
    display: none;
  }
  .k-offer-pop__body {
    gap: 2px;
    padding: 10px 42px 10px 12px;
  }
  .k-offer-pop__top,
  .k-offer-pop__media + .k-offer-pop__body .k-offer-pop__top {
    padding-right: 0;
    gap: 8px;
  }
  .k-offer-pop__top .k-badge {
    padding: 2px 8px;
    font-size: 10px;
  }
  .k-offer-pop__headline {
    font-size: 15px;
  }
  .k-offer-pop__title {
    overflow: hidden;
    font-size: 14px;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  /* Şeridin tamamı kampanya sayfasına gider */
  .k-offer-pop__title a::after {
    content: '';
    position: absolute;
    inset: 0;
  }
  .k-offer-pop__close {
    top: 50%;
    right: 2px;
    transform: translateY(-50%);
    background: none;
  }
  body.has-mobilebar .k-offer-pop {
    bottom: 80px;
  }
}

/* ISS-0903: Almanca / Fince gibi uzun bileşik sözcükler dar kutulara (kutucuklar, kartlar, düğmeler, menü) sığsın:
   İngilizce dışındaki sayfalarda tarayıcı hecelemesi (html lang'a göre) ve gerekirse sözcük içinden kırma. İngilizce değişmez. */
html:not([lang^='en']) body {
  -webkit-hyphens: auto;
  hyphens: auto;
  overflow-wrap: break-word;
}
