
/* ===== PHOTIZO CUSTOM STYLES ===== */
@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;600;700&family=Inter:wght@300;400;500;600;700&display=swap");

:root {
  --p-gold: #C8963E;
  --p-gold-dark: #A67B2E;
  --p-gold-light: #E8C46A;
  --p-dark: #0A0A1A;
  --p-dark-2: #1A1A2E;
  --p-light: #F8F5F0;
  --p-font-heading: "Playfair Display", Georgia, serif;
}

body { font-family: "Inter", sans-serif; }
h1, h2, h3, h4, h5, h6 { font-family: var(--p-font-heading); }

/* ===== HERO SECTIONS ===== */
.elementor-17 > .e-con:first-child,
.elementor-18 > .e-con:first-child,
.elementor-19 > .e-con:first-child,
.elementor-20 > .e-con:first-child,
.elementor-21 > .e-con:first-child {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
.elementor-17 > .e-con:first-child::before,
.elementor-18 > .e-con:first-child::before,
.elementor-19 > .e-con:first-child::before,
.elementor-20 > .e-con:first-child::before,
.elementor-21 > .e-con:first-child::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("https://images.unsplash.com/photo-1501281668745-f7f57925c3b4?w=1600&q=80");
  background-size: cover;
  background-position: center;
  opacity: 0.3;
  z-index: 0;
}
.elementor-17 > .e-con:first-child::after,
.elementor-18 > .e-con:first-child::after,
.elementor-19 > .e-con:first-child::after,
.elementor-20 > .e-con:first-child::after,
.elementor-21 > .e-con:first-child::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(10,10,26,0.92) 0%, rgba(10,10,26,0.5) 50%, rgba(10,10,26,0.85) 100%);
  z-index: 1;
}
.elementor-17 > .e-con:first-child > *,
.elementor-18 > .e-con:first-child > *,
.elementor-19 > .e-con:first-child > *,
.elementor-20 > .e-con:first-child > *,
.elementor-21 > .e-con:first-child > * {
  position: relative;
  z-index: 2;
}

/* Gold ambient light on hero */
.elementor-17 > .e-con:first-child .e-con-inner::before,
.elementor-18 > .e-con:first-child .e-con-inner::before,
.elementor-19 > .e-con:first-child .e-con-inner::before,
.elementor-20 > .e-con:first-child .e-con-inner::before,
.elementor-21 > .e-con:first-child .e-con-inner::before {
  content: "";
  position: absolute;
  top: -20%;
  right: -15%;
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgba(200,150,62,0.1) 0%, transparent 70%);
  border-radius: 50%;
  pointer-events: none;
  z-index: 1;
}

/* ===== SECTION LABELS (gold uppercase with line) ===== */
.elementor-17 h6, .elementor-18 h6, .elementor-19 h6,
.elementor-20 h6, .elementor-21 h6 {
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
  font-family: "Inter", sans-serif !important;
  letter-spacing: 3px !important;
}
.elementor-17 h6::after, .elementor-18 h6::after, .elementor-19 h6::after,
.elementor-20 h6::after, .elementor-21 h6::after {
  content: "" !important;
  display: inline-block !important;
  width: 30px;
  height: 2px;
  background: var(--p-gold);
  flex-shrink: 0;
}

/* ===== GLASS MORPHISM CARDS ===== */
/* Cards are the e-con containers with white-ish backgrounds in the middle sections */
.elementor-17 > .e-con:nth-child(3) .e-con > .e-con,
.elementor-19 > .e-con:nth-child(2) .e-con > .e-con,
.elementor-20 > .e-con:nth-child(2) .e-con > .e-con {
  border: 1px solid rgba(200,150,62,0.1);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  background: linear-gradient(135deg, rgba(200,150,62,0.04), rgba(200,150,62,0.01)) !important;
}
.elementor-17 > .e-con:nth-child(3) .e-con > .e-con:hover,
.elementor-19 > .e-con:nth-child(2) .e-con > .e-con:hover,
.elementor-20 > .e-con:nth-child(2) .e-con > .e-con:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 30px rgba(0,0,0,0.1);
}

/* Contact info card - light bg */
.elementor-21 .e-con[data-id*="i"] {
  border: 1px solid rgba(200,150,62,0.1);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

/* ===== RESPONSIVE ===== */
@media (max-width: 1024px) {
  .elementor-17 > .e-con:nth-child(3) .e-con > .e-con,
  .elementor-19 > .e-con:nth-child(2) .e-con > .e-con,
  .elementor-20 > .e-con:nth-child(2) .e-con > .e-con {
    width: 100% !important;
  }
  .elementor-21 > .e-con:nth-child(2) .e-con > .e-con {
    width: 100% !important;
  }
}

@media (max-width: 768px) {
  .elementor-17 > .e-con:first-child,
  .elementor-18 > .e-con:first-child,
  .elementor-19 > .e-con:first-child,
  .elementor-20 > .e-con:first-child,
  .elementor-21 > .e-con:first-child {
    padding-top: 120px !important;
    padding-bottom: 40px !important;
  }
  h1.elementor-heading-title {
    font-size: clamp(2rem, 8vw, 2.8rem) !important;
  }
  h2.elementor-heading-title {
    font-size: clamp(1.5rem, 6vw, 2rem) !important;
  }
  .elementor-button {
    width: 100% !important;
    justify-content: center !important;
  }
}

@media (max-width: 480px) {
  .elementor-17 > .e-con:first-child,
  .elementor-18 > .e-con:first-child,
  .elementor-19 > .e-con:first-child,
  .elementor-20 > .e-con:first-child,
  .elementor-21 > .e-con:first-child {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}
