/* Burgtec project pages — design layer for the Elementor-converted pages.
   Content is edited in Elementor; this file enforces the approved look over
   any Elementor kit/global styles (hence the !important usage — deliberate). */

@font-face {
  font-family: 'Fonetika';
  src: url('https://burgtec.com/quest-test/Fonetika-Regular.otf') format('opentype');
  font-weight: 400; font-style: normal;
}
@font-face {
  font-family: 'Fonetika';
  src: url('https://burgtec.com/quest-test/Fonetika-Light.otf') format('opentype');
  font-weight: 300; font-style: normal;
}
@font-face {
  font-family: 'Fonetika';
  src: url('https://burgtec.com/quest-test/Fonetika-SemiBold.otf') format('opentype');
  font-weight: 600; font-style: normal;
}

:root {
  --btcx-line: #e6e3de;
  --btcx-text: #1d1d1b;
  --btcx-muted: #6f716a;
  --btcx-green: #16302a;
  --btcx-container: 1600px;
}

body.single-btc_project {
  font-family: 'Fonetika', Arial, sans-serif !important;
  color: var(--btcx-text);
  -webkit-font-smoothing: antialiased;
}
body.single-btc_project .elementor-widget,
body.single-btc_project .elementor-widget .elementor-widget-container {
  font-family: 'Fonetika', Arial, sans-serif;
}

/* ── Hero ─────────────────────────────────────────────── */
.btcx-hero {
  min-height: min(82vh, 860px) !important;
  display: flex !important;
  align-items: flex-end !important;
  position: relative;
}
.btcx-hero::before {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(to top,
    rgba(12, 14, 12, 0.72) 0%,
    rgba(12, 14, 12, 0.35) 38%,
    rgba(12, 14, 12, 0.08) 62%,
    rgba(12, 14, 12, 0.18) 100%);
  pointer-events: none;
  z-index: 1;
}
.btcx-hero > .elementor-container {
  position: relative; z-index: 2;
  max-width: var(--btcx-container) !important;
  width: calc(100% - 48px);
  margin: 0 auto;
  padding-bottom: 56px;
  align-items: flex-end !important;
}
.btcx-eyebrow p {
  margin: 0 0 16px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.14em !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: rgba(255, 255, 255, 0.78) !important;
  font-family: 'Fonetika', Arial, sans-serif !important;
}
.btcx-title .elementor-heading-title {
  margin: 0 !important;
  font-family: 'Fonetika', Arial, sans-serif !important;
  font-size: clamp(38px, 5vw, 72px) !important;
  line-height: 1.02 !important;
  letter-spacing: -0.045em !important;
  font-weight: 600 !important;
  color: #fff !important;
  max-width: 18ch;
}

/* ── Intro: copy + info table ─────────────────────────── */
.btcx-intro > .elementor-container {
  max-width: var(--btcx-container) !important;
  width: calc(100% - 48px);
  margin: 56px auto 8px;
  gap: clamp(40px, 5vw, 96px);
}
.btcx-copy,
.btcx-copy p {
  font-family: 'Fonetika', Arial, sans-serif !important;
  font-size: clamp(16px, 1.2vw, 19px) !important;
  font-weight: 300 !important;
  line-height: 1.65 !important;
  color: var(--btcx-text) !important;
}
.btcx-copy p { max-width: 62ch; margin: 0 0 1em !important; }
.btcx-table { font-family: 'Fonetika', Arial, sans-serif !important; }
.btcx-info-table, .btcx-table table {
  width: 100% !important;
  border-collapse: collapse !important;
  font-size: 15px !important;
  border: none !important;
  margin: 0 !important;
  background: none !important;
}
.btcx-table tr, .btcx-table tbody tr:nth-child(odd), .btcx-table tbody tr:nth-child(even) {
  border: none !important;
  border-bottom: 1px solid var(--btcx-line) !important;
  background: none !important;
}
.btcx-table tr:first-child { border-top: 1px solid var(--btcx-line) !important; }
.btcx-table th {
  text-align: left !important;
  font-family: 'Fonetika', Arial, sans-serif !important;
  font-weight: 600 !important;
  color: var(--btcx-muted) !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  padding: 16px 24px 16px 0 !important;
  width: 150px; vertical-align: top; white-space: nowrap;
  border: none !important;
  background: none !important;
}
.btcx-table td {
  font-family: 'Fonetika', Arial, sans-serif !important;
  font-size: 15px !important;
  padding: 16px 0 !important;
  color: var(--btcx-text) !important;
  border: none !important;
  background: none !important;
}

/* ── Gallery: masonry restyle of the native gallery widget ── */
.btcx-gallery > .elementor-container {
  max-width: var(--btcx-container) !important;
  width: calc(100% - 48px);
  margin: 40px auto 72px;
}
.btcx-gallery .gallery {
  columns: 2 !important;
  column-gap: 22px !important;
  display: block !important;
  margin: 0 !important;
}
.btcx-gallery .gallery-item {
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  display: block !important;
  break-inside: avoid;
  margin: 0 0 22px !important;
  padding: 0 !important;
}
.btcx-gallery .gallery-item img {
  width: 100% !important;
  height: auto;
  border: none !important;
  border-radius: 16px !important;
  display: block !important;
  object-fit: cover;
}

/* Approved shape rhythm (land, port, sq ... repeating every 14), applied by position —
   whatever image sits in each slot gets cropped to the slot's shape. */
.btcx-gallery .gallery-item:nth-child(14n+1) img,
.btcx-gallery .gallery-item:nth-child(14n+4) img,
.btcx-gallery .gallery-item:nth-child(14n+7) img,
.btcx-gallery .gallery-item:nth-child(14n+10) img,
.btcx-gallery .gallery-item:nth-child(14n+13) img { aspect-ratio: 3 / 2; height: auto !important; }

.btcx-gallery .gallery-item:nth-child(14n+2) img,
.btcx-gallery .gallery-item:nth-child(14n+5) img,
.btcx-gallery .gallery-item:nth-child(14n+9) img,
.btcx-gallery .gallery-item:nth-child(14n+12) img { aspect-ratio: 3 / 4; height: auto !important; }

.btcx-gallery .gallery-item:nth-child(14n+3) img,
.btcx-gallery .gallery-item:nth-child(14n+6) img,
.btcx-gallery .gallery-item:nth-child(14n+8) img,
.btcx-gallery .gallery-item:nth-child(14n+11) img,
.btcx-gallery .gallery-item:nth-child(14n) img { aspect-ratio: 1 / 1; height: auto !important; }
.btcx-gallery .gallery-caption { display: none !important; }

/* ── CTA band (native Elementor widgets) ──────────────── */
.btcx-cta { background-color: var(--btcx-green) !important; }
.btcx-cta > .elementor-container {
  max-width: var(--btcx-container) !important;
  width: calc(100% - 48px);
  margin: 0 auto;
  padding: 72px 0;
  align-items: center !important;
}
.btcx-cta-eyebrow p {
  margin: 0 0 12px !important;
  color: rgba(255,255,255,0.65) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.14em !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  font-family: 'Fonetika', Arial, sans-serif !important;
}
.btcx-cta-heading .elementor-heading-title {
  color: #fff !important;
  margin: 0 !important;
  max-width: 24ch;
  font-family: 'Fonetika', Arial, sans-serif !important;
  font-size: clamp(28px, 3vw, 40px) !important;
  line-height: 1 !important;
  letter-spacing: -0.05em !important;
  font-weight: 600 !important;
}
.btcx-cta-actions-col > .elementor-widget-wrap {
  display: flex !important;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: flex-end !important;
  align-items: center !important;
}
.btcx-cta-actions-col .elementor-widget-button {
  width: auto !important;
  margin: 0 !important;
}
.btcx-btn-el .elementor-button {
  border: 1px solid transparent !important;
  border-radius: 7px !important;
  padding: 16px 32px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  white-space: nowrap;
  font-family: 'Fonetika', Arial, sans-serif !important;
  transition: transform 0.18s ease, border-color 0.18s ease, background-color 0.18s ease;
  box-shadow: none !important;
}
.btcx-btn-el .elementor-button:hover { transform: translateY(-1px); }
.btcx-btn-el-light .elementor-button {
  background-color: #fff !important;
  color: var(--btcx-text) !important;
  border-color: #fff !important;
}
.btcx-btn-el-light .elementor-button:hover {
  background-color: rgba(255,255,255,0.9) !important;
  color: var(--btcx-text) !important;
}
.btcx-btn-el-ghost .elementor-button {
  background-color: transparent !important;
  color: #fff !important;
  border-color: rgba(255,255,255,0.55) !important;
}
.btcx-btn-el-ghost .elementor-button:hover {
  border-color: #fff !important;
  background-color: rgba(255,255,255,0.1) !important;
  color: #fff !important;
}

@media (max-width: 767px) {
  .btcx-cta-actions-col > .elementor-widget-wrap { justify-content: flex-start !important; }
}

/* ── Responsive ───────────────────────────────────────── */
@media (max-width: 767px) {
  .btcx-hero { min-height: 60vh !important; }
  .btcx-hero > .elementor-container { padding-bottom: 36px; }
  .btcx-gallery .gallery { columns: 1 !important; }
  .btcx-table th { display: block; width: auto; padding: 14px 0 0 !important; }
  .btcx-table td { display: block; padding: 2px 0 14px !important; }
}

/* ── Overview page: editable "More projects" cards ────── */
.btcov-label-sec > .elementor-container,
.btcov-row > .elementor-container {
  max-width: var(--btcx-container) !important;
  width: calc(100% - 48px);
  margin: 0 auto;
}
.btcov-label-sec > .elementor-container { margin-top: 32px; }
.btcov-label .elementor-heading-title {
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #DB792E !important;
  font-family: 'Fonetika', Arial, sans-serif !important;
  margin: 0 0 14px !important;
}
.btcov-row > .elementor-container { gap: 16px; margin-bottom: 16px; }
.btcov-row .elementor-column { width: calc(33.333% - 11px) !important; }
.btcov-row .elementor-column > .elementor-widget-wrap { padding: 0 !important; }
.btcov-card {
  position: relative;
  border-radius: 18px;
  overflow: hidden;
  background: #f5f5f2;
}
.btcov-card .elementor-widget-image { margin: 0 !important; }
.btcov-card .elementor-widget-image img {
  width: 100% !important;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  display: block !important;
  border-radius: 0 !important;
  transition: transform 0.6s;
}
.btcov-card:hover .elementor-widget-image img { transform: scale(1.03); }
.btcov-card .elementor-widget-heading {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  margin: 0 !important;
  padding: 24px 28px;
  background: linear-gradient(transparent, rgba(22, 42, 36, 0.88) 70%);
  z-index: 2;
}
.btcov-title .elementor-heading-title,
.btcov-title .elementor-heading-title a {
  font-size: clamp(17px, 1.8vw, 24px) !important;
  font-weight: 200 !important;
  letter-spacing: -0.02em !important;
  color: #fff !important;
  line-height: 1.2 !important;
  font-family: 'Fonetika', Arial, sans-serif !important;
  margin: 0 !important;
  text-decoration: none !important;
}
@media (max-width: 1024px) {
  .btcov-row .elementor-column { width: calc(50% - 8px) !important; }
}
@media (max-width: 767px) {
  .btcov-row .elementor-column { width: 100% !important; }
}
