/* ---------- Fontlar (public/themes/luka/fonts) ---------- */
@font-face { font-family: "Playfair Display"; src: url("../fonts/playfair-display/PlayfairDisplay.woff2") format("woff2"), url("../fonts/playfair-display/PlayfairDisplay.ttf") format("truetype"); font-weight: 400 900; font-style: normal; font-display: swap; }
@font-face { font-family: "Playfair Display"; src: url("../fonts/playfair-display/PlayfairDisplay-Italic.woff2") format("woff2"), url("../fonts/playfair-display/PlayfairDisplay-Italic.ttf") format("truetype"); font-weight: 400 900; font-style: italic; font-display: swap; }
@font-face { font-family: "Montserrat"; src: url("../fonts/montserrat/Montserrat-Light.woff2") format("woff2"), url("../fonts/montserrat/Montserrat-Light.ttf") format("truetype"); font-weight: 300; font-style: normal; font-display: swap; }
@font-face { font-family: "Montserrat"; src: url("../fonts/montserrat/Montserrat-Regular.woff2") format("woff2"), url("../fonts/montserrat/Montserrat-Regular.ttf") format("truetype"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "Montserrat"; src: url("../fonts/montserrat/Montserrat-Medium.woff2") format("woff2"), url("../fonts/montserrat/Montserrat-Medium.ttf") format("truetype"); font-weight: 500; font-style: normal; font-display: swap; }
@font-face { font-family: "Montserrat"; src: url("../fonts/montserrat/Montserrat-SemiBold.woff2") format("woff2"), url("../fonts/montserrat/Montserrat-SemiBold.ttf") format("truetype"); font-weight: 600; font-style: normal; font-display: swap; }

/* ============================================================
   Luka theme - lab-grown diamond, luxury minimal
   default tema CSS'inin ustune biner (head-content'te sonra yuklenir)
   ============================================================ */
:root {
  --lk-ink: #14171c;
  --lk-ink-soft: #4a4f57;
  --lk-ivory: #faf8f5;
  --lk-line: #e6e2db;
  --lk-gold: #b09566;
  --lk-gold-dark: #8d7549;
  --lk-ice: #eef2f5;
  --lk-serif: "Playfair Display", Georgia, serif;
  --lk-display: "Playfair Display", Georgia, serif;
  --lk-sans: "Montserrat", system-ui, sans-serif;

  --bs-primary: #14171c;
  --bs-primary-rgb: 20, 23, 28;
  --bs-warning-rgb: 20, 23, 28;
  --bs-link-color: #14171c;
  --bs-link-color-rgb: 20, 23, 28;
  --bs-link-hover-color: #8d7549;
  --bs-link-hover-color-rgb: 141, 117, 73;
  --bs-body-font-family: var(--lk-sans);
  --bs-body-color: var(--lk-ink);
}

body { font-family: var(--lk-sans); color: var(--lk-ink); background: #fff; letter-spacing: 0; }
a:hover { color: var(--lk-gold-dark); }

h1, h2, h3, .hhHeading, .ftHeading, .ibsColumn h1 {
  font-family: var(--lk-serif);
  font-weight: 500;
  letter-spacing: 0;
  color: var(--lk-ink);
}

/* ---------- Buttons ---------- */
.btn, .btnThemeOutlined, .pcBtnSubmit {
  border-radius: 0 !important;
  text-transform: uppercase;
  letter-spacing: .16em;
  font-size: .75rem;
  font-weight: 400;
}
.btn-dark, .btn-primary { background: var(--lk-ink); border-color: var(--lk-ink); }
.btn-dark:hover, .btn-primary:hover { background: var(--lk-gold-dark); border-color: var(--lk-gold-dark); }
.btnThemeOutlined { border: 1px solid currentColor; background: transparent; padding: .9rem 2.2rem; }
.btnThemeOutlined:hover { background: var(--lk-ink); border-color: var(--lk-ink); color: #fff; }
.form-control, .form-select { border-radius: 0; border-color: var(--lk-line); }
.form-control:focus, .form-select:focus { border-color: var(--lk-gold); box-shadow: none; }

/* ---------- Product card ---------- */
.productColumn .imgHolder { background: var(--lk-ice); border-radius: 0; }
.productColumn .pcHeading { font-family: var(--lk-serif); font-size: 1.15rem; font-weight: 500; }
.productColumn .pcHeading a { color: var(--lk-ink); }
.productColumn .pcPrice { font-size: .95rem; letter-spacing: .06em; color: var(--lk-ink-soft); }
.productColumn .salePrice { color: var(--lk-gold-dark); }
.productColumn .pcBtnSubmit { background: var(--lk-ink); color: #fff; }
.productColumn .pcBtnSubmit:hover { background: var(--lk-gold-dark); }
.productColumn .pcActionsList button { background: #fff; color: var(--lk-ink); }
.pcTag, .pcTag.bg-warning { background: var(--lk-ink) !important; border-radius: 0; font-size: .65rem; letter-spacing: .14em; font-weight: 400 !important; }

/* ---------- Footer ---------- */
.lk-footer { background: var(--lk-ink); color: #c9ccd1; }
.lk-footer a { color: #c9ccd1; }
.lk-footer a:hover { color: var(--lk-gold); }
.lk-footer .footerAside { padding: 4.5rem 0 2.5rem; background: transparent; }
.lk-footer .ftHeading { color: #fff; font-size: 1.15rem; margin-bottom: 1.2rem; }
.lk-footer__top { display: flex; flex-wrap: wrap; gap: 2rem; justify-content: space-between; align-items: center; padding-bottom: 2.5rem; margin-bottom: 2.5rem; border-bottom: 1px solid rgba(255,255,255,.12); }
.lk-footer__brand img { filter: brightness(0) invert(1); }
.lk-footer__newsletter { width: 100%; max-width: 420px; }
.lk-footer__newsletter .ftHeading { margin-bottom: .8rem; }
.lk-footer__newsletter form { display: flex; }
.lk-footer__newsletter .form-control { background: transparent; border-color: rgba(255,255,255,.25); color: #fff; }
.lk-footer__newsletter .btn-dark { background: var(--lk-gold); border-color: var(--lk-gold); color: var(--lk-ink); white-space: nowrap; }
.lk-footer__cols { display: grid; grid-template-columns: repeat(4, 1fr); gap: 2rem; }
.lk-footer .ftLinksList li { margin-bottom: .55rem; font-size: .9rem; font-weight: 300; }
.lk-footer .ftLocation { font-size: .9rem; font-weight: 300; line-height: 1.8; }
.lk-footer #pageFooter { background: #0d0f12; color: #8b9097; font-size: .8rem; border-top: 1px solid rgba(255,255,255,.08); }
.lk-footer #pageFooter a { color: #c9ccd1; }

/* ---------- Header (luka: ortada logo, iki yanda menu) ---------- */
.lk-header { position: sticky; top: 0; z-index: 1030; background: #fff; border-bottom: 1px solid var(--lk-line); }
.lk-announce-unused { background: var(--lk-ink); color: #e9e4d8; text-align: center; padding: .45rem 1rem; font-size: .7rem; letter-spacing: .22em; text-transform: uppercase; font-weight: 300; }
.lk-bar { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 1rem; padding: .9rem clamp(1rem, 3vw, 3rem); }
.lk-bar__side { display: flex; align-items: center; gap: 2rem; }
.lk-bar__side--right { justify-content: flex-end; }
.lk-logo img { height: 76px; width: auto; display: block; }
.lk-nav { display: flex; gap: 1.8rem; }
.lk-nav a { font-size: .72rem; letter-spacing: .2em; text-transform: uppercase; color: var(--lk-ink); text-decoration: none; padding: .3rem 0; border-bottom: 1px solid transparent; white-space: nowrap; }
.lk-nav a:hover, .lk-nav a.active { border-bottom-color: var(--lk-gold); color: var(--lk-ink); }
.lk-actions { display: flex; align-items: center; gap: 1.1rem; }
.lk-iconbtn { background: none; border: 0; padding: 0; color: var(--lk-ink); font-size: 1.1rem; line-height: 1; display: inline-flex; }
.lk-badge { position: absolute; top: -8px; right: -9px; min-width: 16px; height: 16px; border-radius: 50%; background: var(--lk-gold-dark); color: #fff; font-size: 10px; line-height: 16px; text-align: center; font-weight: 400; }
.lk-search { align-items: center; border-bottom: 1px solid var(--lk-line); }
.lk-search input { border: 0; outline: 0; background: transparent; width: 110px; font-size: .8rem; padding: .25rem 0; transition: width .25s; }
.lk-search input:focus { width: 200px; }
.lk-search button { background: none; border: 0; padding: 0 0 0 .4rem; }
.lk-burger, .lk-burger::before, .lk-burger::after { display: block; width: 22px; height: 1px; background: var(--lk-ink); position: relative; content: ""; }
.lk-burger::before { position: absolute; top: -7px; }
.lk-burger::after { position: absolute; top: 7px; }
.lk-drawer { width: 320px; }
.lk-drawer__list { margin: 0 0 1.5rem; }
.lk-drawer__list > li > a { display: block; padding: .85rem 0; border-bottom: 1px solid var(--lk-line); font-family: var(--lk-serif); font-size: 1.3rem; color: var(--lk-ink); text-decoration: none; }
.lk-drawer__sub a { display: block; padding: .5rem 0 .5rem 1rem; font-size: .9rem; color: var(--lk-ink-soft); text-decoration: none; }
.lk-drawer__list--minor > li > a { font-family: var(--lk-sans); font-size: .85rem; letter-spacing: .1em; text-transform: uppercase; border: 0; padding: .45rem 0; }

/* 2. katman: mini menu */
.lk-nav--mini { gap: 1.4rem; }
.lk-nav--mini a { font-size: .68rem; color: var(--lk-ink-soft); letter-spacing: .16em; }
.lk-bar { border-bottom: 1px solid var(--lk-line); }

/* 3. katman: ana menu */
.lk-mainnav { background: #fff; }
.lk-mainnav__list { display: flex; justify-content: center; flex-wrap: wrap; gap: clamp(1.5rem, 3.5vw, 3.5rem); padding: 0 1rem; }
.lk-mainnav__list > li { position: relative; }
.lk-mainnav__list > li > a { display: block; padding: 1rem 0; font-size: .78rem; letter-spacing: .22em; text-transform: uppercase; color: var(--lk-ink); text-decoration: none; font-weight: 400; border-bottom: 2px solid transparent; margin-bottom: -1px; }
.lk-mainnav__list > li:hover > a, .lk-mainnav__list > li > a.active { border-bottom-color: var(--lk-gold); }
.lk-mainnav { position: relative; }
.lk-mainnav__list > li { position: static; }
.lk-mainnav::after { content: ""; position: absolute; left: 0; right: 0; top: 100%; height: 100vh; background: rgba(20,23,28,.28); opacity: 0; pointer-events: none; transition: opacity .25s; z-index: 4; }
.lk-mainnav:has(li.has-sub:hover)::after { opacity: 1; }
.lk-mega { position: absolute; left: 0; right: 0; top: 100%; background: #fff; border-top: 1px solid var(--lk-line); border-bottom: 1px solid var(--lk-gold); box-shadow: 0 30px 50px rgba(20,23,28,.1); opacity: 0; visibility: hidden; transform: translateY(8px); transition: opacity .22s ease, transform .22s ease, visibility 0s linear .22s; z-index: 5; }
.lk-mainnav__list > li:hover > .lk-mega, .lk-mainnav__list > li:focus-within > .lk-mega { opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
.lk-mega__inner { position: relative; display: grid; grid-template-columns: 3fr 3fr 4fr 3fr; gap: 2.5rem; padding-top: 2.6rem; padding-bottom: 2.6rem; align-items: stretch; }
.lk-mega__intro { padding-right: 1.5rem; border-right: 1px solid var(--lk-line); display: flex; flex-direction: column; align-items: flex-start; }
.lk-mega__intro .lk-eyebrow { margin-bottom: .8rem; }
.lk-mega__intro h3 { font-family: var(--lk-display); font-weight: 400; font-style: italic; font-size: 1.55rem; line-height: 1.25; margin: 0 0 1.6rem; }
.lk-mega__links { align-self: center; }
.lk-mega__links li a { position: relative; display: inline-block; padding: .55rem 0; font-family: var(--lk-serif); font-size: 1.15rem; color: var(--lk-ink); text-decoration: none; }
.lk-mega__links li a::after { content: ""; position: absolute; left: 0; bottom: .3rem; height: 1px; width: 100%; background: var(--lk-gold); transform: scaleX(0); transform-origin: left; transition: transform .3s ease; }
.lk-mega__links li:hover > a::after { transform: scaleX(1); }
.lk-mega__links li:hover > a { color: var(--lk-gold-dark); }
.lk-mega__links li { position: static; }
.lk-mega__stage { position: relative; background: var(--lk-ice); overflow: hidden; min-height: 260px; }
.lk-mega__stage img, .lk-mega__preview { width: 100%; height: 100%; object-fit: cover; display: block; }
.lk-mega__preview { position: absolute; inset: 0; opacity: 0; transition: opacity .35s ease; }
.lk-mega__inner:has(.lk-mega__links li[data-i="0"]:hover) .lk-mega__preview[data-i="0"] { opacity: 1; }
.lk-mega__inner:has(.lk-mega__links li[data-i="1"]:hover) .lk-mega__preview[data-i="1"] { opacity: 1; }
.lk-mega__inner:has(.lk-mega__links li[data-i="2"]:hover) .lk-mega__preview[data-i="2"] { opacity: 1; }
.lk-mega__inner:has(.lk-mega__links li[data-i="3"]:hover) .lk-mega__preview[data-i="3"] { opacity: 1; }
.lk-mega__inner:has(.lk-mega__links li[data-i="4"]:hover) .lk-mega__preview[data-i="4"] { opacity: 1; }
.lk-mega__inner:has(.lk-mega__links li[data-i="5"]:hover) .lk-mega__preview[data-i="5"] { opacity: 1; }
.lk-mega__inner:has(.lk-mega__links li[data-i="6"]:hover) .lk-mega__preview[data-i="6"] { opacity: 1; }
.lk-mega__inner:has(.lk-mega__links li[data-i="7"]:hover) .lk-mega__preview[data-i="7"] { opacity: 1; }
.lk-mega__cards { display: flex; flex-direction: column; gap: 1rem; justify-content: center; }
.lk-mega__card { display: grid; grid-template-columns: 76px 1fr; gap: 1rem; align-items: center; text-decoration: none; color: var(--lk-ink); padding-bottom: 1rem; border-bottom: 1px solid var(--lk-line); }
.lk-mega__card:last-child { border-bottom: 0; padding-bottom: 0; }
.lk-mega__card img { width: 76px; height: 76px; object-fit: cover; background: var(--lk-ice); }
.lk-mega__card span { display: flex; flex-direction: column; gap: .15rem; }
.lk-mega__card em { font-style: normal; font-size: .62rem; letter-spacing: .22em; text-transform: uppercase; color: var(--lk-gold-dark); }
.lk-mega__card strong { font-family: var(--lk-serif); font-weight: 500; font-size: 1.05rem; }
.lk-mega__card small { font-size: .7rem; letter-spacing: .08em; color: var(--lk-ink-soft); transition: transform .25s; }
.lk-mega__card:hover small { transform: translateX(4px); color: var(--lk-gold-dark); }
.lk-mega__inner--shapes { grid-template-columns: 4fr 8fr; }
.lk-mega__shapes { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.2rem 2rem; align-self: center; }
.lk-mega__shapes a { display: flex; align-items: center; gap: 1.1rem; padding: 1rem 1.2rem; border: 1px solid var(--lk-line); color: var(--lk-ink); text-decoration: none; transition: border-color .25s, color .25s; }
.lk-mega__shapes a:hover { border-color: var(--lk-gold); color: var(--lk-gold-dark); }
.lk-mega__shapes span { font-family: var(--lk-serif); font-size: 1.1rem; }

/* ---------- Ortak ogeler ---------- */
.lk-title { font-family: var(--lk-display); font-weight: 500; font-size: clamp(1.9rem, 3.2vw, 2.7rem); line-height: 1.1; margin: 0; }
.lk-eyebrow { display: inline-block; margin-bottom: .9rem; font-size: .7rem; letter-spacing: .3em; text-transform: uppercase; color: var(--lk-gold-dark); }
.lk-btn { display: inline-block; background: var(--lk-ink); color: #fff; padding: 1rem 2.4rem; font-size: .72rem; letter-spacing: .2em; text-transform: uppercase; text-decoration: none; transition: background .2s; }
.lk-btn:hover { background: var(--lk-gold-dark); color: #fff; }
.lk-link { font-size: .72rem; letter-spacing: .2em; text-transform: uppercase; color: var(--lk-ink); text-decoration: none; border-bottom: 1px solid var(--lk-gold); padding-bottom: 3px; }
.lk-link:hover { color: var(--lk-gold-dark); }

/* ---------- Hero: tam genislik 16:5 ---------- */
.lk-hero { position: relative; width: 100%; aspect-ratio: 16 / 5; overflow: hidden; background: var(--lk-ice); }
.lk-hero__media, .lk-hero__media img { display: block; width: 100%; height: 100%; }
.lk-hero__media img { object-fit: cover; }
.lk-hero__overlay { position: absolute; inset: 0; display: flex; align-items: center; pointer-events: none; }
.lk-hero__link { position: absolute; inset: 0; z-index: 1; }
.lk-hero__overlay { z-index: 2; }
.lk-hero__overlay .lk-btn { pointer-events: auto; }
.lk-hero__overlay h1 { font-family: var(--lk-display); font-size: clamp(2rem, 4vw, 3.8rem); font-weight: 400; line-height: 1.05; margin: 0 0 1rem; max-width: 560px; }
.lk-hero__overlay p { max-width: 420px; font-weight: 300; margin-bottom: 1.6rem; }

/* ---------- Sekiller ---------- */
.lk-shapes { padding: 4.5rem 0 3rem; text-align: center; }
.lk-shapes__list { display: flex; justify-content: center; flex-wrap: wrap; gap: clamp(1.5rem, 4vw, 4rem); margin: 2.5rem 0 0; }
.lk-shapes__list a { display: flex; flex-direction: column; align-items: center; gap: .8rem; color: var(--lk-ink); font-size: .72rem; letter-spacing: .2em; text-transform: uppercase; transition: color .2s, transform .2s; }
.lk-shapes__list a:hover { color: var(--lk-gold-dark); transform: translateY(-3px); }

/* ---------- Koleksiyon ---------- */
.lk-collection { padding: 4rem 0; }
.lk-collection__head { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 2.5rem; gap: 1rem; }
.lk-collection .lk-eyebrow { margin-bottom: .5rem; }

/* ---------- 4C ---------- */
.lk-4c { background: var(--lk-ink); color: #e9e4d8; padding: 6rem 0; }
.lk-4c .container { display: grid; grid-template-columns: 1fr 1fr; gap: 5rem; align-items: center; }
.lk-4c .lk-title { color: #fff; margin-bottom: 1.4rem; }
.lk-4c .lk-eyebrow { color: var(--lk-gold); }
.lk-4c p { font-weight: 300; color: #b8bcc3; margin-bottom: 2rem; }
.lk-4c .lk-link { color: #fff; }
.lk-4c__list { margin: 0; }
.lk-4c__list > div { display: grid; grid-template-columns: 70px 1fr; gap: 1rem; padding: 1.4rem 0; border-top: 1px solid rgba(255,255,255,.14); }
.lk-4c__list > div:last-child { border-bottom: 1px solid rgba(255,255,255,.14); }
.lk-4c__list dt { font-family: var(--lk-serif); font-size: 1.6rem; color: var(--lk-gold); font-weight: 400; }
.lk-4c__list dd { margin: 0; }
.lk-4c__list strong { display: block; font-family: var(--lk-serif); font-size: 1.5rem; font-weight: 500; color: #fff; }
.lk-4c__list span { font-size: .88rem; color: #aab0b8; font-weight: 300; }
.lk-seo { padding: 4rem 0; max-width: 900px; margin: 0 auto; color: var(--lk-ink-soft); font-weight: 300; }

/* ---------- Responsive ---------- */
@media (max-width: 991.98px) {
  .lk-bar { grid-template-columns: 1fr auto 1fr; padding: .7rem 1rem; }
  .lk-logo img { height: 56px; }
  .lk-hero { aspect-ratio: 1 / 1; }
  .lk-4c .container { grid-template-columns: 1fr; gap: 2.5rem; }
  .lk-4c { padding: 3.5rem 0; }
  .lk-footer__cols { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 575.98px) {
  .lk-collection__head { flex-direction: column; align-items: flex-start; }
  .lk-footer__cols { grid-template-columns: 1fr; }
}
