/* Shared presentation for native Elementor containers and widgets. */
.marock-site .elementor { --widgets-spacing: 0; --widgets-spacing-row: 0; --widgets-spacing-column: 0; }
.marock-site .elementor .e-con { --padding-top: 0; --padding-right: 0; --padding-bottom: 0; --padding-left: 0; --gap: 0; }
.marock-site .elementor .elementor-widget { margin-bottom: 0; min-width: 0; }
.marock-site .elementor .elementor-widget-heading .elementor-heading-title { color: inherit; font-family: var(--mv-serif); font-weight: 500; letter-spacing: -.035em; line-height: 1.08; }
.marock-site .elementor .elementor-widget-text-editor { font-family: var(--mv-sans); color: inherit; font-size: inherit; line-height: inherit; }
.marock-site .elementor .elementor-widget-text-editor p:last-child { margin-bottom: 0; }
.marock-site .elementor .elementor-button { background: var(--mv-gold); color: var(--mv-ink); border-radius: 0; padding: 20px 26px; font: 750 14px var(--mv-sans); line-height: 1.45; text-decoration: none; border: 1px solid transparent; transition: background .2s, transform .2s; }
.marock-site .elementor .elementor-button:hover { background: var(--mv-gold-light); transform: translateY(-2px); }
.marock-site .elementor .mv-button-light .elementor-button { background: var(--mv-gold-light); }
.marock-site .elementor .mv-button-outline .elementor-button { background: transparent; border-color: var(--mv-brown); }
.marock-site .elementor .mv-button-text .elementor-button { background: transparent; color: inherit; border: 0; border-bottom: 1px solid var(--mv-gold); padding: 10px 0; }
.marock-site .elementor .mv-wrap { width: min(calc(100% - 64px),1200px); margin-inline: auto; }
.marock-site .elementor .mv-section { padding: 104px 0; }
.marock-site .elementor .mv-sand { background: var(--mv-sand); }
.marock-site .elementor .mv-dark { background: var(--mv-brown-deep); color: var(--mv-cream); }
.marock-site .elementor .mv-row { flex-direction: row; align-items: center; gap: 80px; }
.marock-site .elementor .mv-col { flex: 1; min-width: 0; gap: 26px; }
.marock-site .elementor .mv-kicker { color: var(--mv-copper); font-size: 12px; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.marock-site .elementor .mv-dark .mv-kicker, .marock-site .elementor .mv-hero .mv-kicker { color: var(--mv-gold-light); }
.marock-site .elementor .mv-h1 .elementor-heading-title { font-size: clamp(48px,5.7vw,82px); }
.marock-site .elementor .mv-h2 .elementor-heading-title { font-size: clamp(36px,3.5vw,52px); }
.marock-site .elementor .mv-h3 .elementor-heading-title { font-size: 30px; }
.marock-site .elementor .mv-lead { font-size: 20px; line-height: 1.75; }
.marock-site .elementor .mv-hero { min-height: 660px; justify-content: center; position: relative; color: var(--mv-cream); padding: 100px 0; background-size: cover; background-position: center; }
.marock-site .elementor .mv-hero::before { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(36,15,8,.90) 0%,rgba(36,15,8,.58) 55%,rgba(36,15,8,.1) 100%); pointer-events: none; z-index: 0; }
.marock-site .elementor .mv-hero .mv-wrap { position: relative; z-index: 1; gap: 26px; align-items: flex-start; }
.marock-site .elementor .mv-hero .mv-wrap > .elementor-widget { max-width: 820px; }
.marock-site .elementor .mv-home-hero .mv-h1 { max-width: 770px; }
.marock-site .elementor .mv-home-hero .mv-lead { max-width: 680px; }
.marock-site .elementor .mv-photo img { width: 100%; height: 470px; object-fit: cover; }
.marock-site .elementor .mv-photo-tall img { height: 560px; }
.marock-site .elementor .mv-caption { background: var(--mv-cream); color: var(--mv-brown-deep); font-size: 11px; letter-spacing: .16em; font-weight: 800; text-transform: uppercase; padding: 18px 20px; align-self: flex-end; }
.marock-site .elementor .mv-section-head { gap: 24px; max-width: 780px; margin-bottom: 48px; }
.marock-site .elementor .mv-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px; }
.marock-site .elementor .mv-grid-three { grid-template-columns: repeat(3,minmax(0,1fr)); }
.marock-site .elementor .mv-card { background: var(--mv-white); overflow: hidden; }
.marock-site .elementor .mv-card .mv-photo img { height: 300px; }
.marock-site .elementor .mv-card-body { padding: 36px; gap: 20px; }
.marock-site .elementor .mv-featured { grid-column: 1/-1; flex-direction: row; align-items: stretch; }
.marock-site .elementor .mv-featured > * { width: 50%; }
.marock-site .elementor .mv-featured .mv-photo img { height: 100%; min-height: 400px; }
.marock-site .elementor .mv-featured .mv-card-body { justify-content: center; padding: 52px; }
.marock-site .elementor .mv-feature { border: 1px solid var(--mv-line); padding: 40px; gap: 22px; }
.marock-site .elementor .mv-number { font: 500 38px var(--mv-serif); color: var(--mv-gold); }
.marock-site .elementor .mv-center-action { align-items: center; padding-top: 40px; }
.marock-site .elementor .mv-final { border-top: 1px solid var(--mv-line); }
.marock-site .elementor .mv-final .mv-row { gap: 60px; }
.marock-site .elementor .mv-final .mv-row > .elementor-widget-button { width: auto; flex-shrink: 0; }
.marock-site .elementor .mv-form-layout { align-items: flex-start; gap: 60px; }
.marock-site .elementor .mv-form-intro { width: 36%; gap: 24px; }
.marock-site .elementor .mv-form-card { width: 64%; padding: 36px; border: 1px solid var(--mv-line); background: var(--mv-white); }
.marock-site .elementor .mv-form-card .wpforms-container { margin: 0; }
.marock-site .elementor .mv-form-card .wpforms-field input:not([type=checkbox]):not([type=radio]),
.marock-site .elementor .mv-form-card .wpforms-field select, .marock-site .elementor .mv-form-card .wpforms-field textarea { max-width: 100%; width: 100%; min-height: 50px; background: var(--mv-cream); border: 1px solid #cdbdad; border-radius: 0; box-shadow: none; padding: 12px; font: 16px var(--mv-sans); }
.marock-site .elementor .mv-form-card .wpforms-field textarea { min-height: 140px; }
.marock-site .elementor .mv-form-card .wpforms-field-label { font-size: 14px; color: var(--mv-ink); }
.marock-site .elementor .mv-form-card .wpforms-field-description { font-size: 13px; line-height: 1.6; }
.marock-site .elementor .mv-form-card .wpforms-submit { background: var(--mv-gold); color: var(--mv-ink); border: none; border-radius: 0; height: auto; padding: 20px 28px; font: 800 14px var(--mv-sans); box-shadow: none; }
.marock-site .elementor .mv-form-card .wpforms-field-checkbox li { margin-bottom: 12px!important; }
.marock-site .elementor .mv-form-card .wpforms-field-label-inline { line-height: 1.6; font-size: 14px; }
.marock-site .elementor .mv-form-card .wpforms-field input:focus, .marock-site .elementor .mv-form-card .wpforms-field select:focus, .marock-site .elementor .mv-form-card .wpforms-field textarea:focus { outline: 2px solid var(--mv-gold); outline-offset: 2px; }
.marock-site .elementor .mv-placeholder { border: 1px dashed #b68b4e; padding: 32px; gap: 20px; background: var(--mv-cream); }
.marock-site .elementor .mv-placeholder .mv-kicker { font-size: 10px; }
.marock-site .elementor .mv-review-copy { font: italic 24px/1.5 var(--mv-serif); }
.marock-site .elementor .mv-avatar { background: var(--mv-sand); width: 72px; height: 72px; border-radius: 50%; align-items: center; justify-content: center; color: var(--mv-copper); font: 32px var(--mv-serif); }
.marock-site .elementor .mv-legal { max-width: 850px; gap: 22px; }
.marock-site .elementor .mv-legal .mv-h3 { margin-top: 22px; }
.marock-site .elementor .mv-banner { padding: 70px 0; }
.marock-site .elementor .mv-banner .mv-wrap { gap: 22px; }
.marock-site .elementor .mv-banner .mv-h1 .elementor-heading-title { font-size: clamp(42px,5vw,66px); }
.marock-site .elementor .mv-topbar { background: var(--mv-brown-deep); color: var(--mv-cream); padding: 8px 0; }
.marock-site .elementor .mv-topbar .mv-row { justify-content: space-between; gap: 20px; }
.marock-site .elementor .mv-topbar .elementor-widget-text-editor { font-size: 11px; letter-spacing: .1em; text-transform: uppercase; font-weight: 750; width: auto; }
.marock-site .elementor .mv-header-main { background: var(--mv-cream); }
.marock-site .elementor .mv-header-main .mv-row { gap: 35px; justify-content: space-between; min-height: 126px; }
.marock-site .elementor .mv-logo { width: 205px; flex-shrink: 0; }
.marock-site .elementor .mv-logo img { width: 205px; height: 123px; object-fit: contain; }
.marock-site .elementor .mv-nav { flex: 1; width: auto; }
.marock-site .elementor .mv-nav .elementor-shortcode { display: flex; justify-content: flex-end; }
.mv-elementor-header .marock-mobile-navigation { position: absolute; top: 100%; left: 0; right: 0; width: 100%; max-height: calc(100dvh - 94px); }
.mv-elementor-header .marock-menu-toggle { position: relative; }
.mv-elementor-header .marock-menu-toggle span:not(.screen-reader-text) { position: absolute; left: 13px; width: 18px; margin: 0; }
.mv-elementor-header .marock-menu-toggle span:nth-of-type(2) { top: calc(50% - 6px); }
.mv-elementor-header .marock-menu-toggle span:nth-of-type(3) { top: 50%; }
.mv-elementor-header .marock-menu-toggle span:nth-of-type(4) { top: calc(50% + 6px); }
.mv-elementor-header .marock-menu-toggle[aria-expanded='true'] span:nth-of-type(2) { top: 50%; transform: rotate(45deg); }
.mv-elementor-header .marock-menu-toggle[aria-expanded='true'] span:nth-of-type(4) { top: 50%; transform: rotate(-45deg); }
.marock-site .elementor .mv-footer-main { padding: 75px 0; }
.marock-site .elementor .mv-footer-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1.1fr; gap: 50px; align-items: start; }
.marock-site .elementor .mv-footer-col { gap: 24px; }
.marock-site .elementor .mv-footer-title { font: 800 12px var(--mv-sans); letter-spacing: .16em; text-transform: uppercase; color: var(--mv-gold-light); }
.marock-site .elementor .mv-footer-links { font-size: 14px; }
.marock-site .elementor .mv-footer-links p { margin-bottom: 16px; }
.marock-site .elementor .mv-footer-logo { width: 180px; }
.marock-site .elementor .mv-footer-logo img { width: 180px; }
.marock-site .elementor .mv-footer-bottom { border-top: 1px solid rgba(255,255,255,.14); padding: 23px 0; }
.marock-site .elementor .mv-footer-bottom .mv-row { justify-content: space-between; gap: 20px; }
.marock-site .elementor .mv-footer-bottom .elementor-widget-text-editor { width: auto; font-size: 12px; }
.marock-site .elementor .marock-partner-link { text-decoration-line: underline; }
.marock-site .elementor .mv-dark .marock-partner-link:hover, .marock-site .elementor .mv-hero .marock-partner-link:hover { color: var(--mv-gold-light); }
.marock-site .elementor .mv-form-card .wpforms-container-full button.wpforms-submit {
 background: var(--mv-gold)!important; color: var(--mv-ink)!important; border-radius: 0!important; border: 0!important; box-shadow: none!important;
}
@media(max-width:1079px) {
 .marock-site .elementor .mv-row { gap: 38px; }
 .marock-site .elementor .mv-topbar { display: none; }
 .marock-site .elementor .mv-header-main .mv-row { min-height: 94px; }
 .marock-site .elementor .mv-logo, .marock-site .elementor .mv-logo img { width: 155px; height: 93px; }
 .marock-site .elementor .mv-footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .marock-site .elementor .mv-grid-three { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .marock-site .elementor .mv-form-intro { width: 32%; }
 .marock-site .elementor .mv-form-card { width: 68%; padding: 26px; }
}
@media(max-width:767px) {
 .marock-site .elementor .mv-wrap { width: calc(100% - 32px); }
 .marock-site .elementor .mv-section { padding: 65px 0; }
 .marock-site .elementor .mv-row { flex-direction: column; gap: 34px; align-items: stretch; }
 .marock-site .elementor .mv-header-main .mv-row { flex-direction: row; align-items: center; }
 .marock-site .elementor .mv-hero { min-height: 640px; padding: 72px 0; }
 .marock-site .elementor .mv-h1 .elementor-heading-title { font-size: 48px; }
 .marock-site .elementor .mv-h2 .elementor-heading-title { font-size: 38px; }
 .marock-site .elementor .mv-h3 .elementor-heading-title { font-size: 29px; }
 .marock-site .elementor .mv-lead { font-size: 18px; }
 .marock-site .elementor .mv-photo img, .marock-site .elementor .mv-photo-tall img { height: 380px; }
 .marock-site .elementor .mv-grid, .marock-site .elementor .mv-grid-three { grid-template-columns: 1fr; gap: 24px; }
 .marock-site .elementor .mv-featured { flex-direction: column; }
 .marock-site .elementor .mv-featured > * { width: 100%; }
 .marock-site .elementor .mv-featured .mv-card-body, .marock-site .elementor .mv-card-body { padding: 28px; }
 .marock-site .elementor .mv-featured .mv-photo img { min-height: 0; height: 300px; }
 .marock-site .elementor .mv-form-intro, .marock-site .elementor .mv-form-card { width: 100%; }
 .marock-site .elementor .mv-form-card { padding: 24px; }
 .marock-site .elementor .mv-form-card .wpforms-one-half { width: 100%; margin-left: 0; float: none; clear: both; }
 .marock-site .elementor .mv-form-card .wpforms-field-row { display: block; }
 .marock-site .elementor .mv-form-card .wpforms-field-row-block { width: 100%; margin: 0 0 15px; float: none; }
 .marock-site .elementor .mv-footer-grid { grid-template-columns: 1fr; gap: 40px; }
 .marock-site .elementor .mv-footer-bottom .mv-row { gap: 12px; }
 .marock-site .elementor .mv-feature { padding: 28px; }
 .marock-site .elementor .mv-final .mv-row { gap: 32px; }
 .marock-site .elementor .mv-header-main .mv-wrap { width: calc(100% - 32px); }
}
