/* =========================================
RESYD PRODUCTION CSS v2 (FIXED SYSTEM)
========================================= */

/* =========================
ROOT
========================= */

:root {
  --black: #050505;
  --black-soft: #0a0a0a;

  --gold-main: #c8a96a;
  --gold-accent: #d4af37;
  --gold-glow: rgba(212,175,55,0.65);

  --white: #ffffff;
  --gray: #a1a1aa;

  --border: rgba(255,255,255,0.08);

  --radius: 14px;
  --radius-lg: 24px;

  --header-height: 72px;
}

/* =========================
RESET
========================= */

*,
*::before,
*::after {
  box-sizing: border-box;
}

html, body {
  margin: 0;
  padding: 0;
}

body {
  background: var(--black);
  color: var(--white);
  font-family: system-ui;
  line-height: 1.5;
}

/* 🚨 PREVENT GHOST CLICK OVERLAYS */
a {
  text-decoration: none;
  color: inherit;
  position: relative;
  z-index: 2;
}

/* Prevent full-page accidental links */
a:empty {
  display: none !important;
}

/* =========================
CONTAINER
========================= */

.container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

/* =========================
HEADER FIX
========================= */

.resyd-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: var(--header-height);

  z-index: 1000;

  background: rgba(0,0,0,0.75);
  backdrop-filter: blur(12px);

  border-bottom: 1px solid var(--border);
}

.header-inner {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* PUSH PAGE BELOW HEADER */
body {
  padding-top: var(--header-height);
}

/* =========================
NAV
========================= */

.nav-desktop {
  display: flex;
  gap: 10px;
}

.nav-desktop a {
  padding: 8px 14px;
  border-radius: 30px;
  border: 1px solid var(--border);
  font-size: 13px;
  transition: 0.3s;
}

.nav-desktop a:hover {
  background: var(--gold-main);
  color: #111;
  box-shadow: 0 0 15px var(--gold-glow);
}

/* =========================
BUTTON
========================= */

.btn-primary {
  padding: 12px 26px;
  border-radius: 40px;
  background: linear-gradient(135deg,var(--gold-main),var(--gold-accent));
  color: #111;
  font-weight: 600;
  cursor: pointer;
  transition: 0.3s;
  border: none;
}

.btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 0 25px var(--gold-glow);
}

/* =========================
HERO FIX
========================= */

.hero-section {
  position: relative;
  min-height: calc(100vh - var(--header-height));

  display: flex;
  align-items: center;

  padding: 80px 0;

  background:
    linear-gradient(rgba(0,0,0,0.75), rgba(0,0,0,0.75)),
    url('/assets/images/hero/hero.webp') center/cover no-repeat;
}

.hero-section .container {
  position: relative;
  z-index: 2;
}

.hero-section h1 {
  font-size: 48px;
  max-width: 700px;
  margin-bottom: 20px;
}

/* =========================
ZIP BOX
========================= */

.resyd-zip-box {
  margin-top: 30px;
  background: rgba(255,255,255,0.05);
  backdrop-filter: blur(16px);

  padding: 24px;
  border-radius: var(--radius-lg);
  border: 1px solid var(--border);
}

.resyd-zip-input-group {
  display: flex;
  gap: 10px;
}

.resyd-zip-input {
  flex: 1;
  padding: 12px;
  border-radius: var(--radius);
  border: 1px solid var(--border);
  background: transparent;
  color: white;
}

/* =========================
FORM (MAJOR FIX)
========================= */

.resyd-submit-wrapper {
  margin-top: 60px;

  background: rgba(255,255,255,0.05);
  backdrop-filter: blur(20px);

  padding: 40px;
  border-radius: var(--radius-lg);
  border: 1px solid var(--border);

  max-width: 900px;
}

/* STACK SECTIONS CLEANLY */
.resyd-submit-wrapper > * {
  margin-bottom: 20px;
}

/* PROPERTY DETAILS GRID */
.property-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}

/* INPUT FIX */
input,
select {
  width: 100%;
  padding: 12px;
  border-radius: var(--radius);
  border: 1px solid var(--border);
  background: rgba(255,255,255,0.05);
  color: white;
}

/* USER DETAILS GRID */
.user-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}

/* OPTIONS */
.option-group {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.option-group button {
  padding: 10px 14px;
  border-radius: var(--radius);
  border: 1px solid var(--border);
  background: rgba(255,255,255,0.05);
  color: white;
  cursor: pointer;
}

.option-group button.selected {
  background: var(--gold-main);
  color: #111;
}

/* FORM STEPS */
.form-step {
  display: none;
}

.form-step.active {
  display: block;
}

/* =========================
FOOTER
========================= */

.resyd-footer {
  padding: 60px 20px;
  background: #000;
}

.resyd-footer-inner {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 40px;
}

.footer-col a {
  display: inline-block;
  padding: 6px 12px;
  margin: 6px 6px 0 0;

  border-radius: 20px;
  border: 1px solid var(--border);
  font-size: 12px;
}

.footer-col a:hover {
  background: var(--gold-main);
  color: #111;
}

/* =========================
🔥 CRITICAL CLICK FIX
========================= */

/* Disable accidental overlay clicks */
body * {
  pointer-events: auto;
}

/* If any overlay exists, kill it */
.overlay,
.full-link,
a.full-area {
  pointer-events: none !important;
}

/* =========================
RESPONSIVE
========================= */

@media (max-width: 768px){

  .property-row,
  .user-row {
    grid-template-columns: 1fr;
  }

  .resyd-footer-inner {
    grid-template-columns: 1fr;
  }

}