/*
Theme Name:        Goldenfinger
Theme URI:         https://goldenfinger.gr
Author:            Goldenfinger
Author URI:        https://goldenfinger.gr
Description:       Custom WordPress theme for Goldenfinger — Αγορά & Πώληση Πολυτίμων. Built for Elementor Pro with custom widgets.
Version:           1.0.0
Requires at least: 6.0
Tested up to:      6.5
Requires PHP:      8.0
License:           Proprietary
Text Domain:       goldenfinger
Tags:              elementor, custom-background, custom-logo, full-width-template
*/

/* ═══════════════════════════════════════════
   CSS CUSTOM PROPERTIES
═══════════════════════════════════════════ */
:root {
  /* Brand gold matched to golden-finger.gr logo */
  --gf-gold:       #C8A535;
  --gf-gold-light: #D9BA55;
  --gf-gold-pale:  #F5E9C8;
  /* Brand grays from logo */
  --gf-brand-gray: #54575A;
  --gf-brand-gray-light: #8a8278;
  --gf-black:      #0E0E0E;
  --gf-dark:       #1A1714;
  --gf-mid:        #2E2A24;
  --gf-muted:      #9A8F7E;
  --gf-white:      #FAF8F4;
  --gf-warm:       #BDB09F;

  --gf-font:       'Roboto', sans-serif;
  --gf-radius:     0px;
  --gf-transition: 0.2s ease;
}

/* ═══════════════════════════════════════════
   BASE RESET & TYPOGRAPHY
═══════════════════════════════════════════ */
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  font-size: 16px;
  scroll-behavior: smooth;
}

body {
  background-color: var(--gf-dark);
  color: var(--gf-white);
  font-family: var(--gf-font);
  font-weight: 300;
  line-height: 1.65;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}

a {
  color: var(--gf-gold);
  text-decoration: none;
  transition: color var(--gf-transition);
}

a:hover {
  color: var(--gf-gold-light);
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* ═══════════════════════════════════════════
   ELEMENTOR OVERRIDES
═══════════════════════════════════════════ */

/* Remove default Elementor margins on page */
.elementor-page .elementor-section-wrap,
.elementor-page > .elementor {
  margin-top: 0;
}

/* Make Elementor sections respect full width */
.elementor-section.elementor-section-full_width > .elementor-container {
  max-width: 100%;
}

/* Override Elementor default fonts with theme font */
.elementor-widget-heading .elementor-heading-title,
.elementor-widget-text-editor,
.elementor-widget-button .elementor-button,
.elementor-field-label,
.elementor-field-textual {
  font-family: var(--gf-font) !important;
}

/* ═══════════════════════════════════════════
   GLOBAL FORM STYLES
═══════════════════════════════════════════ */
.gf-input,
.gf-select {
  width: 100%;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(201, 168, 76, 0.2);
  color: var(--gf-white);
  padding: 12px 16px;
  font-family: var(--gf-font);
  font-size: 0.9rem;
  outline: none;
  transition: border-color var(--gf-transition);
  appearance: none;
  -webkit-appearance: none;
}

.gf-input:focus,
.gf-select:focus {
  border-color: var(--gf-gold);
}

.gf-input::placeholder {
  color: rgba(154, 143, 126, 0.6);
}

.gf-select option {
  background: var(--gf-dark);
  color: var(--gf-white);
}

/* ═══════════════════════════════════════════
   GLOBAL BUTTON STYLES
═══════════════════════════════════════════ */
.gf-btn {
  display: inline-block;
  background: var(--gf-gold);
  color: var(--gf-black);
  border: none;
  padding: 16px 32px;
  font-family: var(--gf-font);
  font-size: 0.85rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background var(--gf-transition);
  text-decoration: none;
  line-height: 1;
}

.gf-btn:hover {
  background: var(--gf-gold-light);
  color: var(--gf-black);
}

.gf-btn--dark {
  background: var(--gf-black);
  color: var(--gf-gold);
}

.gf-btn--dark:hover {
  opacity: 0.8;
  background: var(--gf-black);
  color: var(--gf-gold);
}

/* ═══════════════════════════════════════════
   UTILITY CLASSES
═══════════════════════════════════════════ */
.gf-gold      { color: var(--gf-gold); }
.gf-muted     { color: var(--gf-muted); }
.gf-eyebrow {
  font-size: 0.65rem;
  font-weight: 500;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  color: var(--gf-gold);
}

.gf-section-dark  { background-color: var(--gf-dark); }
.gf-section-black { background-color: var(--gf-black); }
.gf-section-mid   { background-color: var(--gf-mid); }
.gf-section-gold  { background-color: var(--gf-gold); }

/* Gold top border accent */
.gf-gold-border-top::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--gf-gold), transparent);
}

/* Gold gradient glow */
.gf-glow::before {
  content: '';
  position: absolute;
  top: -200px; right: -200px;
  width: 600px; height: 600px;
  background: radial-gradient(circle, rgba(201, 168, 76, 0.08) 0%, transparent 70%);
  pointer-events: none;
}

/* Annotation bars (for presentation/staging) */
.gf-annotation {
  background: rgba(201, 168, 76, 0.08);
  border-left: 3px solid var(--gf-gold);
  padding: 10px 16px;
  font-size: 0.72rem;
  color: var(--gf-gold);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

/* ═══════════════════════════════════════════
   STICKY NAV SUPPORT
═══════════════════════════════════════════ */
.elementor-sticky--active {
  background: rgba(26, 23, 20, 0.95) !important;
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(201, 168, 76, 0.15);
}
