/*
 Theme Name:   Hello Elementor Moranid
 Theme URI:    https://build.moranid.com
 Description:  MORANID 2.0 build environment — child of Hello Elementor. Production: moranid.com untouched.
 Author:       MORÈNA BAR OR
 Author URI:   https://moranid.com
 Template:     hello-elementor
 Version:      1.5.0
 Text Domain:  hello-elementor-moranid
 License:      GNU General Public License v2 or later
*/

/* ── Brand Foundation v2 tokens ── */
:root {
  --moranid-warm-white: #faf8f5;
  --moranid-ivory-stone: #f0ebe3;
  --moranid-travertine: #d9cfc0;
  --moranid-bronze: #9a8572;
  --moranid-smoked-oak: #5c4e44;
  --moranid-graphite: #2c2c2c;
  --moranid-content-width: 1140px;
  --moranid-section-pad: 80px;
  --moranid-font-display: "Cormorant Garamond", "Times New Roman", serif;
  --moranid-font-body: "Inter", system-ui, sans-serif;
}

body {
  color: var(--moranid-graphite);
  background-color: var(--moranid-warm-white);
  font-family: var(--moranid-font-body);
  font-size: 17px;
  line-height: 1.65;
}

/* Hide theme page title when Elementor handles H1 */
.page-id-25 .page-header,
.page-id-25 .entry-header,
.page-id-25 .elementor-page-title {
  display: none !important;
}

/* ── Typography helpers ── */
.moranid-brand-line,
.elementor-location-header .moranid-brand-line {
  font-family: var(--moranid-font-body);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--moranid-bronze);
  margin: 0;
}

.moranid-eyebrow {
  font-family: var(--moranid-font-body);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--moranid-bronze);
}

/* ── v6.1 build pages: in-page chrome only (no Theme Builder shell) ── */
.elementor-location-header,
.elementor-location-footer {
  display: none !important;
}

header#site-header.dynamic-header,
.site-header.dynamic-header,
body > header#site-header {
  display: none !important;
}

body > footer.site-footer,
footer.dynamic-footer,
footer.site-footer.dynamic-footer,
.site-footer.dynamic-footer,
#site-footer {
  display: none !important;
}

[class*="moranid-"] footer.site-footer {
  display: block !important;
}

body.elementor-page {
  margin: 0;
  padding: 0;
}

body.elementor-page .page-header,
body.elementor-page .entry-header,
body.elementor-page h1.entry-title {
  display: none !important;
}

body.elementor-page .site-main,
body.elementor-page #content,
body.elementor-page .page-content {
  padding: 0 !important;
  margin: 0 !important;
  max-width: none !important;
}

body.elementor-page [class*="moranid-"] {
  direction: ltr !important;
  unicode-bidi: isolate;
  width: 100%;
  max-width: 100%;
}

html[dir="rtl"] body.elementor-page [class*="moranid-"] {
  direction: ltr !important;
}

html {
  overflow-x: hidden;
}

body.elementor-page {
  overflow-x: hidden;
  max-width: 100vw;
}

/* MORANID in-page chrome — mobile nav (Elementor HTML widget) */
@media (max-width: 1080px) {
  body.elementor-page [class*="moranid-"] nav.primary {
    display: none !important;
  }

  body.elementor-page [class*="moranid-"] .burger {
    display: block !important;
  }

  body.elementor-page [class*="moranid-"] > header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
  }
}

body.elementor-page [class*="moranid-"] .mobile {
  display: none;
}

body.elementor-page [class*="moranid-"] .mobile.open {
  display: flex !important;
}

body.elementor-page .elementor-widget-html,
body.elementor-page .elementor-widget-html .elementor-widget-container {
  overflow: visible !important;
  max-width: 100% !important;
}

body.elementor-page .elementor-section.elementor-top-section,
body.elementor-page .elementor-section.elementor-top-section > .elementor-container {
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.elementor-page .elementor-section.elementor-top-section:first-child {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Legacy Theme Builder header — disabled */
.elementor-location-header {
  position: static;
}

.moranid-header-shell {
  background: var(--moranid-warm-white);
  border-bottom: 1px solid var(--moranid-travertine);
}

.moranid-header-shell .elementor-heading-title {
  font-family: var(--moranid-font-display);
  font-weight: 500;
  color: var(--moranid-graphite);
}

.moranid-header-shell .elementor-nav-menu--main .elementor-item {
  font-family: var(--moranid-font-body);
  font-size: 14px;
  font-weight: 400;
  color: var(--moranid-graphite);
  position: relative;
}

.moranid-header-shell .elementor-nav-menu--main .elementor-item:hover,
.moranid-header-shell .elementor-nav-menu--main .elementor-item.elementor-item-active {
  color: var(--moranid-bronze);
}

.moranid-header-shell .elementor-nav-menu--main .elementor-item::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -4px;
  height: 1px;
  background: var(--moranid-bronze);
  transform: scaleX(0);
  transition: transform 0.3s ease;
}

.moranid-header-shell .elementor-nav-menu--main .elementor-item:hover::after,
.moranid-header-shell .elementor-nav-menu--main .elementor-item.elementor-item-active::after {
  transform: scaleX(1);
}

.moranid-header-shell .elementor-nav-menu--dropdown {
  background: var(--moranid-warm-white);
}

/* ── Footer ── */
.moranid-footer-shell {
  background: var(--moranid-ivory-stone);
}

.moranid-footer-shell .elementor-icon-list-text {
  color: var(--moranid-smoked-oak);
  font-size: 14px;
}

.moranid-footer-shell .elementor-icon-list-item:hover .elementor-icon-list-text {
  color: var(--moranid-bronze);
}

.moranid-build-banner {
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--moranid-bronze);
  text-align: center;
}

/* ── Buttons (Elementor + fallback) ── */
.elementor-button,
.moranid-btn-primary {
  font-family: var(--moranid-font-body);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.02em;
  border-radius: 0;
  padding: 14px 28px;
  transition: background-color 0.35s ease, border-color 0.35s ease, color 0.35s ease;
}

.moranid-btn-primary .elementor-button {
  background: var(--moranid-graphite);
  color: var(--moranid-warm-white);
  border: none;
}

.moranid-btn-primary .elementor-button:hover {
  background: var(--moranid-bronze);
  color: var(--moranid-warm-white);
}

.moranid-btn-secondary .elementor-button {
  background: transparent;
  color: var(--moranid-graphite);
  border: 1px solid var(--moranid-graphite);
}

.moranid-btn-secondary .elementor-button:hover {
  background: var(--moranid-bronze);
  border-color: var(--moranid-bronze);
  color: var(--moranid-warm-white);
}

/* ── Homepage sections ── */
.section-hero {
  min-height: 85vh;
  position: relative;
}

.section-hero .elementor-heading-title {
  font-family: var(--moranid-font-display);
  color: var(--moranid-warm-white);
}

.section-hero .elementor-widget-text-editor {
  color: var(--moranid-warm-white);
  opacity: 0.92;
}

.section-hero .moranid-hero-overlay {
  background: linear-gradient(
    180deg,
    rgba(44, 44, 44, 0.55) 0%,
    rgba(44, 44, 44, 0.45) 100%
  );
}

.section-future,
.section-morena,
.section-developers,
.section-projects,
.section-living,
.section-book,
.section-insights,
.section-inquire {
  padding-top: var(--moranid-section-pad);
  padding-bottom: var(--moranid-section-pad);
}

.section-future .elementor-heading-title,
.section-morena .elementor-heading-title,
.section-developers .elementor-heading-title,
.section-projects .elementor-heading-title,
.section-living .elementor-heading-title,
.section-book .elementor-heading-title,
.section-insights .elementor-heading-title,
.section-inquire .elementor-heading-title {
  font-family: var(--moranid-font-display);
  color: var(--moranid-graphite);
}

.moranid-project-card {
  border: 1px solid var(--moranid-travertine);
  background: var(--moranid-warm-white);
}

.moranid-project-card .elementor-heading-title {
  font-family: var(--moranid-font-display);
  font-size: 22px;
  text-align: center;
  padding: 16px;
}

.moranid-project-card img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

/* ── Mobile nav overlay ── */
@media (max-width: 1024px) {
  .moranid-header-shell .elementor-nav-menu--dropdown.elementor-nav-menu__container {
    min-height: 100vh;
    padding: 48px 24px;
  }

  .section-hero {
    min-height: 70vh;
  }

  .section-future,
  .section-morena,
  .section-developers,
  .section-projects,
  .section-living,
  .section-book,
  .section-insights,
  .section-inquire {
    padding-top: 48px;
    padding-bottom: 48px;
  }
}
