/**
* Theme Name: Atamisa Child
* Description: This is a child theme of Atamisa, generated by Merlin WP.
* Author: <a href="https://wpopal.com/">Opalthemes</a>
* Template: atamisa
* Version: 1.1.1
*/

/* Novera logo — keep SVG crisp and respect aspect ratio */
.elementor-widget-site-logo img,
.hfe-site-logo-container img,
.hfe-site-logo-img,
img.custom-logo {
  width: auto !important;
  height: 36px !important;
  max-width: 200px !important;
  object-fit: contain !important;
}

@media (max-width: 1024px) {
  .elementor-widget-site-logo img,
  .hfe-site-logo-container img,
  .hfe-site-logo-img,
  img.custom-logo {
    height: 30px !important;
    max-width: 168px !important;
  }
}

/* Novera brand color system — overrides parent Atamisa :root tokens */
:root {
  --primary: #E9D1A3;
  --primary_hover: #82442F;
  --text: #242F46;
  --text_light: #161D2B;
  --border: #DFDFDE;
  --accent: #161D2B;
  --background: #FFFFFF;
  --background_light: #242F46;

  /* Brand copper (surfaces / text gradients — unchanged) */
  --novera-copper: #82442F; /* Burnished Copper */

  /* Button brand colors — darker stop lightened for text contrast */
  --novera-btn-copper: #A17262; /* Button Copper (saved for reuse) */
  --novera-btn-from: var(--novera-btn-copper);
  --novera-btn-to: #E9D1A3; /* Heritage Gold */
  --novera-btn-text: #161D2B;
  --novera-btn-text-hover: #FFFFFF;
  --novera-btn-gradient: linear-gradient(to right, var(--novera-btn-from) 0%, var(--novera-btn-to) 100%);
  --novera-btn-gradient-hover: linear-gradient(to right, var(--novera-btn-to) 0%, var(--novera-btn-from) 100%);

  /* Text gradient — LTR light → dark (reusable across copy) */
  --novera-text-gradient: linear-gradient(
    to right,
    var(--novera-btn-to) 0%,
    var(--novera-copper) 100%
  );

  /* Vertical brand gradients (cards / surfaces) */
  --novera-grad-gold-y: linear-gradient(
    180deg,
    var(--novera-btn-to) 0%,
    var(--novera-copper) 100%
  );
  --novera-grad-blue-y: linear-gradient(180deg, #242f46 0%, #161d2b 100%);
}

/*
 * Reusable Novera gradient text.
 * Usage: wrap copy in <span class="novera-text-gradient">…</span>
 * or add class "novera-text-gradient" on an Elementor widget.
 */
.novera-text-gradient {
  font-weight: 700;
  text-transform: none;
  background-image: var(--novera-text-gradient);
  background-repeat: no-repeat;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
}

/*
 * Default Elementor buttons (non-Atamisa):
 * LTR branding gradient + solid copper hover (original feel).
 * Never capitalize — Atamisa parent sets capitalize on .elementor-button.
 */
.elementor-button,
.elementor-button-link,
a.elementor-button,
.button-style,
button.button-style,
.elementor-widget-button .elementor-button,
.elementor-widget-atamisa-button .elementor-button {
  text-transform: none !important;
}

.elementor-button {
  color: var(--novera-btn-text);
  fill: var(--novera-btn-text);
  background-color: transparent;
  background-image: var(--novera-btn-gradient);
  transition: all ease 0.5s;
}

.elementor-button:visited,
.elementor-button:focus {
  color: var(--novera-btn-text);
  fill: var(--novera-btn-text);
  background-color: transparent;
  background-image: var(--novera-btn-gradient);
}

.elementor-button:hover {
  color: var(--novera-btn-text-hover);
  fill: var(--novera-btn-text-hover);
  background-color: var(--novera-btn-from);
  background-image: none;
}

/*
 * Atamisa button widget — keep LTR brand gradient at rest,
 * restore native slide hover (second layer slides in).
 */
.elementor-widget-atamisa-button .elementor-button {
  --bg-color: var(--novera-btn-to);
  --bg-hover: var(--novera-btn-from);
  --icon-normal: var(--novera-btn-text);
  --icon-hover: var(--novera-btn-text-hover);
}

.elementor-widget-atamisa-button:not(.elementor-button-type-link) .elementor-button {
  color: var(--icon-normal);
  fill: var(--icon-normal);
  background-color: transparent;
  background-image:
    var(--novera-btn-gradient),
    var(--novera-btn-gradient-hover);
  background-size: 100% 100%, 100% 100%;
  background-position: 0 0, 0 100%;
  background-repeat: no-repeat;
  transition: background-position 0.5s ease, color 0.5s ease, fill 0.5s ease;
}

.elementor-widget-atamisa-button:not(.elementor-button-type-link) .elementor-button:hover {
  color: var(--icon-hover);
  fill: var(--icon-hover);
  background-color: transparent;
  background-image:
    var(--novera-btn-gradient),
    var(--novera-btn-gradient-hover);
  background-size: 100% 100%, 100% 100%;
  background-position: 0 -100%, 0 0;
}

/* Solid dark bronze CTA (alternative to brand gradient) */
.elementor-widget-atamisa-button.novera-btn-bronze .elementor-button {
  --icon-normal: #FFFFFF;
  --icon-hover: #FFFFFF;
  color: #FFFFFF;
  fill: #FFFFFF;
  background-color: var(--novera-btn-from);
  background-image: none;
}

.elementor-widget-atamisa-button.novera-btn-bronze .elementor-button:hover {
  color: #FFFFFF;
  fill: #FFFFFF;
  background-color: #6B3826;
  background-image: none;
}

/* Keep outline / link types without filled backgrounds */
.elementor-button-outline .elementor-button,
.elementor-button-type-link .elementor-button {
  background-image: none;
  background-color: transparent;
}

.elementor-widget-atamisa-button.elementor-button-type-link .elementor-button {
  --icon-normal: var(--novera-btn-to);
  --line-color: var(--novera-btn-to);
  color: var(--novera-btn-text);
  background-color: transparent;
  background-image: linear-gradient(to right, var(--line-color) 0%, var(--line-color) 100%);
  background-position: 0 calc(100% - 0px);
  background-size: 0 1px;
  background-repeat: no-repeat;
  transition: background-size 0.25s cubic-bezier(0.785, 0.135, 0.15, 0.86) 0s;
}

.elementor-widget-atamisa-button.elementor-button-type-link .elementor-button:hover {
  background-size: 100% 1px;
  background-position: 0 calc(100% - 0px);
  color: var(--novera-btn-text);
}

/*
 * Prednosti Novere — advantage cards
 * Gold / blue vertical gradients + solid primary (former hover fill).
 */
.novera-adv-card {
  border-color: transparent !important;
}

.novera-adv-card:hover {
  border-color: transparent !important;
}

.novera-adv-card--gold {
  background-image: var(--novera-grad-gold-y) !important;
  /* Match gradient start — transparent + radius left a light fringe on white */
  background-color: var(--novera-btn-to, #e9d1a3) !important;
}

.novera-adv-card--blue {
  background-image: var(--novera-grad-blue-y) !important;
  background-color: #242f46 !important;
}

.novera-adv-card--hover {
  background-color: var(--primary, #e9d1a3) !important;
  background-image: none !important;
}

/* Text + icons on gold/blue cards — beat Elementor specificity */
.novera-adv-card--gold .elementor-icon-box-title,
.novera-adv-card--gold .elementor-icon-box-description,
.novera-adv-card--gold .elementor-icon,
.novera-adv-card--gold .elementor-icon i,
.novera-adv-card--gold .elementor-icon svg,
.novera-adv-card--blue .elementor-icon-box-title,
.novera-adv-card--blue .elementor-icon-box-description,
.novera-adv-card--blue .elementor-icon,
.novera-adv-card--blue .elementor-icon i,
.novera-adv-card--blue .elementor-icon svg,
.novera-adv-card--gold.elementor-view-default .elementor-icon,
.novera-adv-card--blue.elementor-view-default .elementor-icon,
.novera-adv-card--gold .elementor-element.elementor-view-default .elementor-icon,
.novera-adv-card--blue .elementor-element.elementor-view-default .elementor-icon {
  color: #ffffff !important;
  fill: #ffffff !important;
  border-color: #ffffff !important;
}

.novera-adv-card--gold .elementor-element:has(:hover) .elementor-icon-box-title,
.novera-adv-card--gold .elementor-element:has(:focus) .elementor-icon-box-title,
.novera-adv-card--blue .elementor-element:has(:hover) .elementor-icon-box-title,
.novera-adv-card--blue .elementor-element:has(:focus) .elementor-icon-box-title,
.novera-adv-card--gold:has(:hover) .elementor-icon-box-title,
.novera-adv-card--blue:has(:hover) .elementor-icon-box-title {
  color: #ffffff !important;
}

/* Solid heritage-gold card — dark text (same as former hover surface) */
.novera-adv-card--hover .elementor-icon-box-title,
.novera-adv-card--hover .elementor-icon-box-description,
.novera-adv-card--hover .elementor-icon,
.novera-adv-card--hover .elementor-icon i {
  color: var(--novera-btn-text, #161d2b) !important;
  fill: var(--novera-btn-text, #161d2b) !important;
}

.novera-adv-card--hover:has(:hover) .elementor-icon-box-title {
  color: var(--novera-btn-text, #161d2b) !important;
}

/*
 * Ponuda stanova — static apartment cards (Elementor HTML).
 * Reuses Atamisa project-style-1 look; top bar always visible.
 */
.novera-apt-card {
  display: block;
  height: 100%;
}

/* Stanovi cards — full-bleed like homepage ponuda */
.novera-stanovi-cards,
.novera-stanovi-cards > .e-con-inner,
.novera-stanovi-cards-grid,
.novera-stanovi-cards-grid > .e-con-inner {
  max-width: none !important;
  width: 100% !important;
}

.novera-apt-card__link {
  position: absolute;
  inset: 0;
  z-index: 6;
  border-radius: 20px;
}

.novera-apt-card .project-content,
.novera-apt-card .project-title,
.novera-apt-card .project-button {
  pointer-events: none;
}

.novera-apt-card .project-meta {
  display: flex !important;
  width: 100%;
  max-width: 100%;
  max-height: none !important;
  justify-content: space-between;
  align-items: center;
  gap: 12px 20px;
  flex-wrap: nowrap;
}

.novera-apt-card__avail,
.novera-apt-card__range {
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.3;
  white-space: nowrap;
}

.novera-apt-card__avail {
  flex: 0 1 auto;
}

.novera-apt-card__range {
  flex: 0 1 auto;
  text-align: right;
  opacity: 0.92;
}

.novera-apt-card .project-title .title-text {
  color: #fff;
}

@media (max-width: 1024px) {
  .novera-apt-card__avail,
  .novera-apt-card__range {
    font-size: 13px;
    white-space: normal;
  }
}

@media (max-width: 767px) {
  .novera-apt-card .project-meta {
    flex-wrap: wrap;
  }

  .novera-apt-card__range {
    text-align: left;
  }
}

/*
 * Ideja Novere — image mosaic zoom on hover
 * (same motion language as Ponuda stanova cards)
 */
.novera-zoom-card {
  overflow: hidden;
  border-radius: 20px;
}

.novera-zoom-card .elementor-widget-container,
.novera-zoom-card .elementor-widget-image {
  overflow: hidden;
  border-radius: 20px;
}

.novera-zoom-card img,
.novera-zoom-card__img img {
  transform: scale(1.08);
  transition: transform 0.45s ease;
  will-change: transform;
}

.novera-zoom-card:hover img,
.novera-zoom-card:hover .novera-zoom-card__img img {
  transform: scale(1.16);
}

@media (prefers-reduced-motion: reduce) {
  .novera-zoom-card img,
  .novera-zoom-card__img img {
    transform: none;
    transition: none;
  }
}

/* Kontakt page — badge + form panel */
.novera-contact-badge .elementor-heading-title {
  display: inline-block;
  padding: 8px 16px;
  border: 1px solid #DFDFDE;
  border-radius: 999px;
  background: #F7F7F6;
}

.novera-contact-form-section {
  position: relative;
  z-index: 5;
  background: transparent !important;
}

.novera-contact-form-section > .e-con-inner {
  background: transparent !important;
}

/* Keep map under the overlapping form card; move controls above the form */
.novera-kontakt-map,
.novera-kontakt-map .novera-map-wrap,
.novera-kontakt-map .novera-map {
  position: relative;
  z-index: 1;
  isolation: isolate;
}

.novera-kontakt-map .maplibregl-ctrl-bottom-right {
  top: 16px;
  bottom: auto !important;
  right: 16px;
  z-index: 1 !important;
}

.novera-kontakt-map .maplibregl-ctrl-attrib {
  z-index: 1 !important;
}

.novera-contact-panel {
  width: 100%;
  position: relative;
  z-index: 2;
  flex-direction: column !important;
  --flex-direction: column;
  flex-wrap: nowrap !important;
  --flex-wrap: nowrap;
  align-items: center !important;
  --align-items: center !important;
  justify-content: center !important;
  --justify-content: center;
}

.novera-contact-copy,
.novera-contact-fields {
  width: 100% !important;
  --width: 100% !important;
  max-width: 100%;
  min-width: 0;
  align-items: center !important;
  --align-items: center;
  text-align: center;
}

.novera-contact-copy .elementor-heading-title,
.novera-contact-note {
  text-align: center !important;
}

.novera-contact-eyebrow .elementor-heading-title {
  text-align: center !important;
  letter-spacing: 0.04em;
}

.novera-contact-fields,
.novera-contact-fields .novera-contact-form,
.novera-contact-fields .wpcf7,
.novera-contact-fields .wpcf7-form {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}

.novera-contact-form {
  text-align: left;
}

.novera-contact-form .wpcf7-form .row {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin: 0 0 8px;
}

.novera-contact-form .wpcf7-form .row [class*="column-"] {
  margin: 0;
  padding: 0;
}

.novera-contact-form .wpcf7-form .row .column-50 {
  flex: 1 1 calc(50% - 8px);
  max-width: calc(50% - 8px);
}

.novera-contact-form .wpcf7-form .row .column-100 {
  flex: 1 1 100%;
  max-width: 100%;
}

.novera-contact-form .wpcf7-form-control-wrap input[type="text"],
.novera-contact-form .wpcf7-form-control-wrap input[type="email"],
.novera-contact-form .wpcf7-form-control-wrap input[type="tel"],
.novera-contact-form .wpcf7-form-control-wrap textarea,
.novera-contact-form .wpcf7-form-control-wrap select:not([size]):not([multiple]) {
  width: 100%;
  background: #F3F3F2 !important;
  border: 1px solid transparent !important;
  border-radius: 12px !important;
  color: #242F46 !important;
  padding: 16px 18px !important;
  box-shadow: none !important;
}

.novera-contact-form .wpcf7-form-control-wrap input:focus,
.novera-contact-form .wpcf7-form-control-wrap textarea:focus,
.novera-contact-form .wpcf7-form-control-wrap select:focus {
  border-color: #E9D1A3 !important;
  outline: none;
}

.novera-contact-form .novera-cf7-consent {
  margin-top: 0.5rem;
}

.novera-contact-form .novera-cf7-consent .wpcf7-list-item {
  margin: 0;
}

.novera-contact-form .novera-cf7-consent label {
  font-size: 0.875rem;
  line-height: 1.5;
}

.novera-contact-form .novera-cf7-consent a {
  text-decoration: underline;
}

.novera-contact-form .novera-cf7-submit {
  margin-top: 8px;
}

.novera-contact-form .novera-cf7-submit .elementor-button {
  background-image: var(--novera-btn-gradient) !important;
  background-color: transparent !important;
  color: var(--novera-btn-text) !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 14px 28px !important;
}

.novera-contact-form .novera-cf7-submit .elementor-button:hover {
  background-image: var(--novera-btn-gradient-hover) !important;
  color: var(--novera-btn-text-hover) !important;
}

@media (max-width: 767px) {
  .novera-contact-form .wpcf7-form .row .column-50 {
    flex: 1 1 100%;
    max-width: 100%;
  }
}

/* Absolute site header over page heroes (theme otherwise adds ~120px) */
body.elementor-page-5707 #page .site-content,
body.elementor-page-5696 #page .site-content,
body.elementor-page-5693 #page .site-content,
body.elementor-page-5706 #page .site-content,
body.elementor-page-5698 #page .site-content,
body.elementor-page-5700 #page .site-content,
body.elementor-page-5702 #page .site-content,
body.elementor-page-5704 #page .site-content {
  margin-top: 0;
}

.novera-page-header,
.novera-page-header__slide {
  overflow: hidden;
}

/* Page header is a single-slide nested Swiper — kill swipe / drag fade */
.novera-page-header .swiper,
.novera-page-header .swiper-wrapper,
.novera-page-header .swiper-slide {
  touch-action: pan-y !important;
  cursor: default;
}
.novera-page-header .swiper-button-next,
.novera-page-header .swiper-button-prev,
.novera-page-header .swiper-pagination {
  display: none !important;
  pointer-events: none !important;
}

/* Novera page header: full-bleed image; only text row is content-width */
.novera-page-header__slide,
.novera-page-header__slide > .e-con-inner {
  max-width: none !important;
  width: 100% !important;
}
.novera-page-header__content.e-con-boxed,
.novera-page-header__content > .e-con-inner {
  --content-width: 1290px;
  max-width: 1290px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

/* Mobile page headers: clear absolute site header; hide bottom subtitle */
@media (max-width: 767px) {
  .novera-page-header .novera-page-header__slide,
  .novera-page-header .novera-page-header__slide > .e-con-inner {
    padding-top: 120px !important;
    padding-bottom: 20px !important;
    min-height: 360px !important;
  }

  .novera-page-header .novera-page-header__subtitle,
  .novera-page-header .novera-archive-header__subtitle {
    display: none !important;
  }
}



/* Lokacija intro title: keep first line on one row */
.novera-lokacija-intro-title .elementor-heading-title .novera-text-gradient {
  white-space: nowrap;
}

@media (max-width: 767px) {
  .novera-lokacija-intro-title .elementor-heading-title .novera-text-gradient {
    white-space: normal;
  }
}

/* Single post share icons — left align */
.single .hentry .entry-taxonomy {
  justify-content: flex-start;
}

.single .hentry .entry-taxonomy .atamisa-social-share {
  width: auto;
  justify-content: flex-start;
}

/* Kontakt — form anchor */
.novera-kontakt-onama {
  width: 100%;
}

#kontakt-forma,
.novera-kontakt-forma-anchor {
  scroll-margin-top: 120px;
}

/* Hide theme breadcrumb/title block on Novera page-header pages */
body.elementor-page-5706,
body.elementor-page-5707,
body.elementor-page-5693,
body.elementor-page-5696,
body.elementor-page-5698,
body.elementor-page-5700,
body.elementor-page-5702,
body.elementor-page-5704 {
  --page-breadcrumb-display: none;
  --page-title-display: none;
}

/* Type Listing + default pages — navy band = nav height; title lives in content. */
.novera-listing-header-wrap .novera-page-header,
.novera-solid-nav-header .novera-page-header {
  margin-bottom: 0 !important;
}

.novera-listing-header-wrap .novera-page-header__bg,
.novera-listing-header-wrap .novera-page-header__bg--hidden,
.novera-listing-header-wrap .novera-page-header__bg img,
.novera-solid-nav-header .novera-page-header__bg,
.novera-solid-nav-header .novera-page-header__bg--hidden,
.novera-solid-nav-header .novera-page-header__bg img {
  display: none !important;
}

.novera-listing-header-wrap .novera-page-header__slide,
.novera-listing-header-wrap .novera-page-header__slide > .e-con-inner,
.novera-solid-nav-header .novera-page-header__slide,
.novera-solid-nav-header .novera-page-header__slide > .e-con-inner {
  background-color: transparent !important;
  background-image: linear-gradient(180deg, #161d2b 0%, #242f46 100%) !important;
  min-height: 0 !important;
  height: 100px !important;
  max-height: 100px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  overflow: hidden !important;
  --overlay-opacity: 0 !important;
}

/* Kill Kontakt/archive black overlay (Elementor ::before at 60%) */
.novera-listing-header-wrap .novera-page-header__slide::before,
.novera-listing-header-wrap .novera-page-header__slide > .e-con-inner::before,
.novera-listing-header-wrap .novera-page-header__slide .elementor-background-overlay,
.novera-solid-nav-header .novera-page-header__slide::before,
.novera-solid-nav-header .novera-page-header__slide > .e-con-inner::before,
.novera-solid-nav-header .novera-page-header__slide .elementor-background-overlay {
  display: none !important;
  content: none !important;
  opacity: 0 !important;
  background: none !important;
}

/* Title / crumbs / subtitle stay out of the nav band */
.novera-listing-header-wrap .novera-page-header__content,
.novera-listing-header-wrap .novera-page-header__title,
.novera-listing-header-wrap .elementor-widget-icon-list,
.novera-listing-header-wrap .novera-page-header__subtitle,
.novera-listing-header-wrap .novera-archive-header__subtitle,
.novera-solid-nav-header .novera-page-header__content,
.novera-solid-nav-header .novera-page-header__title,
.novera-solid-nav-header .elementor-widget-icon-list,
.novera-solid-nav-header .novera-page-header__subtitle,
.novera-solid-nav-header .novera-archive-header__subtitle {
  display: none !important;
}

@media (max-width: 1024px) {
  .novera-listing-header-wrap .novera-page-header__slide,
  .novera-listing-header-wrap .novera-page-header__slide > .e-con-inner,
  .novera-solid-nav-header .novera-page-header__slide,
  .novera-solid-nav-header .novera-page-header__slide > .e-con-inner {
    height: 90px !important;
    max-height: 90px !important;
  }
}

@media (max-width: 767px) {
  .novera-listing-header-wrap .novera-page-header__slide,
  .novera-listing-header-wrap .novera-page-header__slide > .e-con-inner,
  .novera-solid-nav-header .novera-page-header__slide,
  .novera-solid-nav-header .novera-page-header__slide > .e-con-inner {
    height: 80px !important;
    max-height: 80px !important;
  }
}

/* -------------------------------------------------------------------------
   Mobile hamburger — circular button, clean 3-line icon (no hover 4th line)
   ------------------------------------------------------------------------- */
.elementor-widget-atamisa-menu-canvas > .elementor-widget-container {
  width: 48px !important;
  height: 48px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}

.elementor-widget-atamisa-menu-canvas .elementor-canvas-menu-wrapper,
.elementor-widget-atamisa-menu-canvas .menu-mobile-nav-button {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  margin: 0;
  text-decoration: none !important;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  background-image: none !important;
}

.elementor-widget-atamisa-menu-canvas .menu-mobile-nav-button:hover,
.elementor-widget-atamisa-menu-canvas .menu-mobile-nav-button:focus {
  text-decoration: none !important;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  background-image: none !important;
}

.elementor-widget-atamisa-menu-canvas .menu-mobile-nav-button .atamisa-icon {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 18px;
  height: 12px;
}

/* Three thin equal lines (icon-font bars hidden) */
.elementor-widget-atamisa-menu-canvas .menu-mobile-nav-button .atamisa-icon-bars {
  display: block;
  width: 18px;
  height: 12px;
  font-size: 0 !important;
  line-height: 0 !important;
  color: transparent !important;
  background-image: linear-gradient(
    to bottom,
    #161D2B 0,
    #161D2B 1.5px,
    transparent 1.5px,
    transparent 5.25px,
    #161D2B 5.25px,
    #161D2B 6.75px,
    transparent 6.75px,
    transparent 10.5px,
    #161D2B 10.5px,
    #161D2B 12px
  );
  background-repeat: no-repeat;
  background-size: 100% 100%;
}

.elementor-widget-atamisa-menu-canvas .menu-mobile-nav-button .atamisa-icon-bars::before,
.elementor-widget-atamisa-menu-canvas .menu-mobile-nav-button .atamisa-icon-bars::after {
  content: none !important;
  display: none !important;
}

.elementor-widget-atamisa-menu-canvas .menu-mobile-nav-button:hover .atamisa-icon-bars,
.elementor-widget-atamisa-menu-canvas .menu-mobile-nav-button:focus .atamisa-icon-bars {
  background-image: linear-gradient(
    to bottom,
    #161D2B 0,
    #161D2B 1.5px,
    transparent 1.5px,
    transparent 5.25px,
    #161D2B 5.25px,
    #161D2B 6.75px,
    transparent 6.75px,
    transparent 10.5px,
    #161D2B 10.5px,
    #161D2B 12px
  );
}

/* Kill theme span-hamburger hover width stretch if spans ever appear */
.elementor-widget-atamisa-menu-canvas .menu-mobile-nav-button .atamisa-icon > span,
.elementor-widget-atamisa-menu-canvas .menu-mobile-nav-button:hover .atamisa-icon > span,
.elementor-widget-atamisa-menu-canvas .menu-mobile-nav-button:hover .atamisa-icon .icon-2,
.elementor-widget-atamisa-menu-canvas .menu-mobile-nav-button:hover .atamisa-icon .icon-3 {
  display: none !important;
}

/* -------------------------------------------------------------------------
   Full-screen mobile navigation (Novera)
   ------------------------------------------------------------------------- */
.atamisa-mobile-nav.novera-mobile-nav {
  display: flex;
  flex-direction: column;
  position: fixed;
  inset: 0;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100vh;
  max-width: none;
  z-index: 100000;
  overflow: hidden;
  background-color: #242F46;
  background-image: linear-gradient(165deg, #242F46 0%, #161D2B 100%);
  transform: translate3d(100%, 0, 0);
  transition: transform 0.35s ease;
  -webkit-overflow-scrolling: touch;
}

.mobile-nav-active .atamisa-mobile-nav.novera-mobile-nav {
  transform: translate3d(0, 0, 0);
}

.admin-bar .atamisa-mobile-nav.novera-mobile-nav {
  top: 0;
}

.novera-mobile-nav__inner.menu-scroll-mobile {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  width: 100%;
  height: 100%;
  min-height: 100%;
  /* Match site header mobile horizontal inset (Elementor header: 15px) */
  padding: 20px 15px 28px;
  box-sizing: border-box;
  overflow-x: hidden;
  overflow-y: auto;
}

.novera-mobile-nav__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex: 0 0 auto;
  margin-bottom: 36px;
}

.novera-mobile-nav .site-branding {
  margin: 0 !important;
  display: flex;
  align-items: center;
}

.novera-mobile-nav .site-branding-text {
  display: none !important;
}

/* Same logo size as mobile site header */
.novera-mobile-nav .site-branding img.custom-logo {
  height: 30px !important;
  max-width: 168px !important;
  width: auto !important;
  background: none !important;
  border: 0 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

.novera-mobile-nav .mobile-nav-close {
  position: static !important;
  float: none !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin: 0;
  color: #fff;
  font-size: 22px;
  line-height: 1;
  text-decoration: none;
  opacity: 0.9;
}

.novera-mobile-nav .mobile-nav-close:hover,
.novera-mobile-nav .mobile-nav-close:focus {
  color: #E9D1A3;
  opacity: 1;
}

.novera-mobile-nav__menu {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 0;
}

/* Kill theme's extra 30px indent on .mobile-menu-tab */
.novera-mobile-nav .mobile-navigation,
.novera-mobile-nav .mobile-menu-tab,
.novera-mobile-nav .handheld-navigation {
  width: 100%;
  padding: 0 !important;
  margin: 0 !important;
}

.novera-mobile-nav .mobile-navigation ul,
.novera-mobile-nav .handheld-navigation ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.novera-mobile-nav .mobile-navigation ul > li.menu-item > a,
.novera-mobile-nav .handheld-navigation ul > li.menu-item > a {
  color: #fff !important;
  font-size: 32px;
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: -0.02em;
  padding: 10px 0;
  padding-right: 48px;
  text-decoration: none;
  border: 0 !important;
  border-bottom: 0 !important;
}

.novera-mobile-nav .mobile-navigation ul > li.menu-item > a:hover,
.novera-mobile-nav .mobile-navigation ul > li.menu-item.current-menu-item > a,
.novera-mobile-nav .mobile-navigation ul > li.menu-item.current-menu-parent > a,
.novera-mobile-nav .mobile-navigation ul > li.menu-item.current-menu-ancestor > a {
  color: #E9D1A3 !important;
}

.novera-mobile-nav .mobile-navigation ul ul.sub-menu {
  display: none;
  margin: 0 0 8px !important;
  margin-left: 0 !important;
  padding: 0 0 0 20px;
}

.novera-mobile-nav .mobile-navigation ul ul.sub-menu > li.menu-item > a {
  color: rgba(255, 255, 255, 0.82) !important;
  font-size: 20px;
  font-weight: 500;
  padding: 6px 0;
  border: 0 !important;
  border-bottom: none !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

.novera-mobile-nav .mobile-navigation ul ul.sub-menu > li.menu-item > a:hover,
.novera-mobile-nav .mobile-navigation ul ul.sub-menu > li.menu-item.current-menu-item > a {
  color: #E9D1A3 !important;
  border-bottom: none !important;
  text-decoration: none !important;
}

/* Submenu toggle: plain chevron — kill Elementor kit button gradient hover */
.novera-mobile-nav .mobile-navigation .dropdown-toggle,
.novera-mobile-nav .mobile-navigation .dropdown-toggle:hover,
.novera-mobile-nav .mobile-navigation .dropdown-toggle:active,
.novera-mobile-nav .mobile-navigation .dropdown-toggle:focus,
.novera-mobile-nav .mobile-navigation ul li button.dropdown-toggle,
.novera-mobile-nav .mobile-navigation ul li button.dropdown-toggle:hover,
.novera-mobile-nav .mobile-navigation ul li button.dropdown-toggle:active,
.novera-mobile-nav .mobile-navigation ul li button.dropdown-toggle:focus,
.novera-mobile-nav .mobile-navigation ul li button.dropdown-toggle.toggled-on,
body.elementor-kit-7 .novera-mobile-nav button.dropdown-toggle,
body.elementor-kit-7 .novera-mobile-nav button.dropdown-toggle:hover,
body.elementor-kit-7 .novera-mobile-nav button.dropdown-toggle:focus {
  top: 8px;
  right: 0;
  width: 40px;
  height: 40px;
  padding: 0;
  margin: 0;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  outline: none !important;
  color: #fff !important;
  opacity: 0.85;
  transform: none !important;
}

.novera-mobile-nav .mobile-navigation .dropdown-toggle:after,
.novera-mobile-nav .mobile-navigation ul li button.dropdown-toggle:after {
  content: none !important;
  display: none !important;
}

/* Closed: >  |  Open: v (theme empties content on .toggled-on — restore it) */
.novera-mobile-nav .mobile-navigation ul li button.dropdown-toggle::before {
  font-family: "atamisa-icon";
  content: ""; /* angle-right */
  color: #fff !important;
  font-size: 14px;
}

.novera-mobile-nav .mobile-navigation ul li button.dropdown-toggle.toggled-on::before {
  font-family: "atamisa-icon";
  content: "" !important; /* arrow-down */
  color: #E9D1A3 !important;
  font-size: 14px;
}

.novera-mobile-nav__contact {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 40px;
  padding-top: 28px;
  border-top: 1px solid rgba(233, 209, 163, 0.28);
}

.novera-mobile-nav__phone,
.novera-mobile-nav__email {
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.4;
  text-decoration: none;
}

.novera-mobile-nav__phone:hover,
.novera-mobile-nav__email:hover {
  color: #E9D1A3;
}

.mobile-nav-active .atamisa-overlay {
  background: rgba(22, 29, 43, 0.55);
}

@media (max-width: 380px) {
  .novera-mobile-nav .mobile-navigation ul > li.menu-item > a {
    font-size: 28px;
  }

  .novera-mobile-nav .mobile-navigation ul ul.sub-menu > li.menu-item > a {
    font-size: 18px;
  }
}
