/* Maldives Rating Elements 1.7.0
 * Correct layout model:
 * 1. Every top-level section/background spans the full viewport.
 * 2. The content, cards and grids inside remain centered and readable.
 * 3. The same result is visible in Elementor editor, preview and frontend.
 */
:root{
  --mr-section-content:var(--rmv-container,1180px);
  --mr-section-gutter:clamp(18px,3vw,32px);
  --mr-card-radius:var(--rmv-card-radius,24px);
  --mr-panel-radius:calc(var(--rmv-card-radius,24px) + 4px);
  --mr-control-radius:var(--rmv-button-radius,14px);
}

/* Never let a theme/article wrapper box the Elementor document. */
body.rmv-starter-page #primary,
body.rmv-starter-page .rmv-page-article,
body.rmv-starter-page .entry-content,
body.rmv-starter-page .elementor,
body.rmv-starter-page .elementor-section-wrap,
body.rmv-elementor-preview #primary,
body.rmv-elementor-preview .rmv-page-article,
body.rmv-elementor-preview .entry-content,
body.rmv-elementor-preview .elementor,
body.elementor-editor-active #primary,
body.elementor-editor-active .rmv-page-article,
body.elementor-editor-active .entry-content,
body.elementor-editor-active .elementor{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:0!important;
  padding-right:0!important;
}

/* Break the outer section out to the browser/iframe edges. Background colors,
 * gradients and images therefore remain genuinely full width. */
.rmv-fluid-section.elementor-section,
.rmv-full-bleed-section.elementor-section,
body.rmv-starter-page .elementor-top-section,
body.rmv-elementor-preview .elementor-top-section.rmv-fluid-section,
body.elementor-editor-active .elementor-top-section.rmv-fluid-section,
.rmv-fluid-section.e-con.e-parent,
.rmv-full-bleed-section.e-con.e-parent,
body.rmv-starter-page .e-con.e-parent{
  position:relative!important;
  left:50%!important;
  right:auto!important;
  width:100vw!important;
  max-width:100vw!important;
  margin-left:-50vw!important;
  margin-right:0!important;
}

/* Standard sections: full-width surface, centered inner content. */
.rmv-fluid-section.elementor-section:not(.rmv-full-bleed-section)>.elementor-container,
.rmv-content-contained.elementor-section>.elementor-container,
body.rmv-starter-page .elementor-top-section:not(.rmv-full-bleed-section)>.elementor-container,
.rmv-fluid-section.e-con.e-parent:not(.rmv-full-bleed-section)>.e-con-inner,
.rmv-content-contained.e-con.e-parent>.e-con-inner,
body.rmv-starter-page .e-con.e-parent:not(.rmv-full-bleed-section)>.e-con-inner{
  width:min(calc(100% - (var(--mr-section-gutter) * 2)),var(--mr-section-content))!important;
  max-width:var(--mr-section-content)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Hero and special surface widgets may paint edge-to-edge, but their own
 * .rly-container / .rme-*-inner structures remain limited to 1180–1220px. */
.rmv-full-bleed-section.elementor-section>.elementor-container,
.rmv-full-bleed-section.e-con.e-parent>.e-con-inner{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}

/* Keep all reusable widget-level content from becoming ultrawide. */
.rly-container,
.rme-hero-inner,
.rme-archive-hero-inner,
.rme-post-hero-container,
.mr-rankings-inner,
.mr-ranking-container,
.rmv-single-hero-section>.elementor-container,
.rmv-single-content-grid>.elementor-container{
  width:min(calc(100% - (var(--mr-section-gutter) * 2)),var(--mr-section-content))!important;
  max-width:var(--mr-section-content)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Do not add a second horizontal padding layer to the Elementor column. */
.rmv-fluid-section.elementor-section>.elementor-container>.elementor-column>.elementor-element-populated,
.rmv-full-bleed-section.elementor-section>.elementor-container>.elementor-column>.elementor-element-populated{
  padding-left:0;
  padding-right:0;
}

/* Consistent rounded cards and controls. */
.rly-feature-card,.rly-category-card,.rly-review-card,.rly-process-card,.rly-pricing-card,
.rly-contact-option,.rly-info-panel,.rly-contact-form-panel,.rly-contact-side,
.rly-faq-categories,.rly-faq-item,.rly-wizard-panel,.rly-wizard-sidebar>div,
.rly-single-hero-card,.mr-ranking-visual,.mr-ranking-winner,.mr-rank-card,.mr-rank-empty,
.rme-advanced-card,.rme-post-card .rme-slide-inner,.rme-related-card,.rme-author-box,
.rme-comments-widget,.rme-contact-form-shell,.rme-archive-search-panel,.rme-notice-card,
.rme-single-reading__article,.rme-single-reading__side-card,.rme-species-directory-pro__card,
.rmv-rating-summary,.rmv-rating-form-wrap,.rmv-user-review,.rmv-top-rated-card,
.rmv-review-specifications,.rmv-compare-table,.rmv-woo-rating-panel{
  border-radius:var(--mr-card-radius);
}
.rly-hero-visual-card,.rly-score-demo,.rly-cta,.rme-cta-shell,.rme-post-hero-shell,
.rme-related-wrap{border-radius:var(--mr-panel-radius)}
.rly-search-form,.rly-review-toolbar label,.rly-review-toolbar select,.rly-live-filter input,
.rly-faq-search input,.rly-progress,.rly-form input,.rly-form textarea,.rly-form select,
.rly-review-wizard input,.rly-review-wizard textarea,.rly-review-wizard select,
.mr-rankings-toolbar input,.mr-rankings-toolbar select,.rme-blog-toolbar,
.rme-blog-toolbar input,.rme-blog-toolbar select,.rmv-form-grid input,.rmv-form-grid textarea,
.rmv-submit-review,.rly-btn,.rme-btn,.elementor-button{border-radius:var(--mr-control-radius)}
.rly-review-card,.rly-category-card,.rly-feature-card,.rly-pricing-card,.rly-single-hero-card,
.mr-ranking-visual,.mr-rank-card,.rme-advanced-card,.rme-post-card .rme-slide-inner,
.rme-related-card,.rmv-top-rated-card,.rmv-rating-summary,.rmv-review-specifications{overflow:hidden}
.rly-empty,.rly-login-required,.rme-empty,.rme-filter-empty,.rme-species-directory-pro__empty,
.rmv-no-reviews,.rmv-rating-empty{border-radius:var(--mr-card-radius)}

@media(max-width:767px){
  :root{--mr-section-gutter:12px}
}


/* Maldives Rating 1.7.0 FINAL REFERENCE LAYOUT
 * The supplied Reviewly HTML uses a full-width section surface and a centered
 * 1180px inner container. These selectors intentionally target Elementor's
 * real top-level document children, so old imports are fixed even when an
 * earlier CSS class or migration marker is missing from the database. */
:root{
  --mr-reference-content:var(--rmv-container,1180px);
  --mr-reference-gutter:clamp(18px,3vw,32px);
}
body.elementor-page:not(.rmv-boxed-site) #primary,
body.elementor-page:not(.rmv-boxed-site) .rmv-page-article,
body.elementor-page:not(.rmv-boxed-site) .entry-content,
body.elementor-page:not(.rmv-boxed-site) .elementor,
body.elementor-page:not(.rmv-boxed-site) .elementor-section-wrap{
  width:100%!important;max-width:none!important;margin:0!important;padding-left:0!important;padding-right:0!important;
}
/* Actual top-level Elementor sections/containers span the viewport. */
body.elementor-page:not(.rmv-boxed-site) .elementor>.elementor-element,
body.elementor-page:not(.rmv-boxed-site) .elementor-section-wrap>.elementor-element,
body.rmv-elementor-preview .elementor>.elementor-element,
body.elementor-editor-active .elementor>.elementor-element{
  position:relative!important;left:auto!important;right:auto!important;
  width:100vw!important;max-width:100vw!important;
  margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;
}
/* Standard sections: full-width background with contained content. */
body.elementor-page:not(.rmv-boxed-site) .elementor>.elementor-section:not(.rmv-full-bleed-section)>.elementor-container,
body.elementor-page:not(.rmv-boxed-site) .elementor-section-wrap>.elementor-section:not(.rmv-full-bleed-section)>.elementor-container,
body.rmv-elementor-preview .elementor>.elementor-section:not(.rmv-full-bleed-section)>.elementor-container,
body.elementor-editor-active .elementor>.elementor-section:not(.rmv-full-bleed-section)>.elementor-container,
body.elementor-page:not(.rmv-boxed-site) .elementor>.e-con.e-parent:not(.rmv-full-bleed-section)>.e-con-inner,
body.elementor-page:not(.rmv-boxed-site) .elementor-section-wrap>.e-con.e-parent:not(.rmv-full-bleed-section)>.e-con-inner{
  width:min(calc(100% - (var(--mr-reference-gutter) * 2)),var(--mr-reference-content))!important;
  max-width:var(--mr-reference-content)!important;margin-inline:auto!important;
}
/* Full-bleed hero wrappers let the widget paint the entire surface. */
body.elementor-page .elementor>.rmv-full-bleed-section>.elementor-container,
body.elementor-page .elementor-section-wrap>.rmv-full-bleed-section>.elementor-container,
body.elementor-page .elementor>.rmv-full-bleed-section>.e-con-inner,
body.elementor-page .elementor-section-wrap>.rmv-full-bleed-section>.e-con-inner{
  width:100%!important;max-width:none!important;margin:0!important;
}
/* Hero widgets remain genuinely edge-to-edge even on pages imported by an
 * older release that did not save the rmv-full-bleed-section class. */
.elementor-widget-rme-reviewly-hero .rly-hero,
.elementor-widget-rme-nature-hero .rme-nature-hero,
.elementor-widget-rme-archive-hero .rme-archive-hero,
.elementor-widget-rme-maldives-ranking-hero .mr-ranking-hero,
.elementor-widget-rme-post-hero .rme-post-hero-shell{
  position:relative!important;width:100vw!important;max-width:100vw!important;
  margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;
  border-radius:0!important;
}
/* Their visible copy, cards and grids keep the same container width as the HTML. */
.rly-container,.rme-hero-inner,.rme-archive-hero-inner,.rme-post-hero-container,
.mr-ranking-hero-grid,.mr-rankings-inner,.mr-ranking-container{
  width:min(calc(100% - (var(--mr-reference-gutter) * 2)),var(--mr-reference-content))!important;
  max-width:var(--mr-reference-content)!important;margin-inline:auto!important;
}
@media(max-width:767px){
  :root{--mr-reference-gutter:12px}
}
