/* Approved black/green visual, scoped to migrated Elementor content. */
body{background:#101412} .mjv-inner-section{--mjv-green:#45efa4;color:#f4f5f0;font-family:Manrope,sans-serif;background:#101412;padding:90px 40px!important;--gap:0px}
.mjv-inner-section .mjv-wrap{width:100%;max-width:1220px;margin-inline:auto;gap:28px}
.mjv-inner-section .e-con,.mjv-inner-section .elementor-widget{min-width:0}
.mjv-inner-section p{margin:0 0 1em}.mjv-inner-section a{color:inherit}.mjv-inner-section a:focus-visible,.mjv-inner-section input:focus-visible,.mjv-inner-section select:focus-visible,.mjv-inner-section textarea:focus-visible{outline:2px solid #45efa4;outline-offset:5px}
.mjv-inner-section h1.elementor-heading-title{font-size:clamp(2.4rem,5.5vw,5rem);line-height:1.12;letter-spacing:-.04em;font-weight:800;max-width:1000px;text-wrap:balance}
.mjv-inner-hero .elementor-widget-text-editor{max-width:740px;font-size:1.15rem!important}
.mjv-inner-hero .elementor-widget-button{margin-top:8px}.mjv-inner-section .elementor-button{white-space:normal;line-height:1.5}
.mjv-detail-grid,.mjv-project-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:50px!important}
.mjv-detail{border-top:1px solid #354039;padding-top:26px!important;gap:18px!important}.mjv-detail h2.elementor-heading-title{font-size:1.55rem;font-weight:700}
.mjv-details{padding-top:20px!important}.mjv-inner-faq{background:#eeeedd}.mjv-inner-faq .mjv-wrap{max-width:850px}.mjv-inner-faq h2.elementor-heading-title{color:#101713;font-size:clamp(2.4rem,4.8vw,4rem)}
.mjv-portfolio{background:#1a251e;padding-top:70px!important}.mjv-project-grid{gap:60px 34px!important}.mjv-project-card{gap:16px!important}.mjv-project-card h2.elementor-heading-title{font-size:1.45rem}.mjv-project-image img{width:100%;aspect-ratio:1.6;object-fit:cover;object-position:top}.mjv-project-card .elementor-button{padding:10px 0;background:transparent!important;color:#45efa4!important}.mjv-project-card p{margin:0}
.mjv-contact-grid{display:grid!important;grid-template-columns:1fr 1fr;gap:80px!important}.mjv-contact-copy{gap:25px!important}.mjv-contact h1.elementor-heading-title{font-size:clamp(2.6rem,4.7vw,4.3rem)}.mjv-contact a[href^="mailto:"]{overflow-wrap:anywhere;text-decoration:underline}.mjv-contact-form{background:#1c2720;padding:35px!important;gap:16px!important}.mjv-contact-form h2.elementor-heading-title{font-size:1.6rem}
#project-form .field{display:grid;gap:7px;margin:20px 0}#project-form label{font-size:.88rem;font-weight:700}#project-form input,#project-form textarea,#project-form select{width:100%;background:#101412;border:1px solid #637468;color:#f4f5f0;padding:13px;border-radius:4px;font:inherit;color-scheme:dark}#project-form textarea{resize:vertical;min-height:135px}#project-form button{background:#45efa4;color:#101713;font:800 .95rem Manrope,sans-serif;padding:18px 20px;border:0;width:100%;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:12px}#project-form svg{width:20px;height:20px}#project-form .form-note{font-size:.8rem;color:#b8c2bb;margin-top:15px}#project-form a{text-decoration:underline}#form-status{padding:16px;background:#283c2e;border:1px solid #6ba17e;margin-top:20px}#form-status[hidden]{display:none}
.mjv-prose .mjv-wrap{max-width:760px}.mjv-prose h1.elementor-heading-title{font-size:clamp(2.3rem,5vw,3rem)}.mjv-prose h2.elementor-heading-title{font-size:1.5rem;margin-top:12px}.mjv-prose a{text-decoration:underline;overflow-wrap:anywhere}
.mjv-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}
.elementor-12 .elementor-element-sol0003 h2,.elementor-12 .elementor-element-prj0003 h2,.elementor-12 .elementor-element-stp0003 h2{font-size:clamp(2.5rem,4.8vw,4.5rem)!important}.elementor-12 .elementor-element-abt0005 h2{font-size:clamp(2.5rem,4vw,3.8rem)!important}
.elementor-12 .elementor-element-abt0010{border-top:1px solid #354039;padding-top:50px!important}
.elementor-12 .mjv-project-preview a{display:block;position:relative}.elementor-12 .mjv-project-preview a:after{content:'Visitar site →';position:absolute;right:16px;bottom:16px;background:#45efa4;color:#101713;font:800 14px Manrope,sans-serif;padding:10px 16px}
@media(max-width:900px){.mjv-contact-grid{gap:35px!important}.mjv-inner-section{padding-inline:24px!important}}
@media(max-width:767px){.mjv-inner-section{padding:60px 20px!important}.mjv-detail-grid,.mjv-project-grid,.mjv-contact-grid{grid-template-columns:minmax(0,1fr)}.mjv-contact-form{padding:24px!important}.mjv-details{padding-top:0!important}.mjv-project-grid{gap:42px!important}.mjv-inner-hero h1.elementor-heading-title{font-size:clamp(2.4rem,8.8vw,3.6rem)}.mjv-inner-section h1 br{display:none}.mjv-inner-section .elementor-button{max-width:100%;font-size:14px;padding:16px 22px}.elementor-12 .elementor-element-sol0003 h2,.elementor-12 .elementor-element-prj0003 h2,.elementor-12 .elementor-element-stp0003 h2{font-size:clamp(2.5rem,9vw,3.5rem)!important}}
@media(max-width:360px){.mjv-inner-section h1.elementor-heading-title{font-size:2.4rem}.mjv-contact-form{padding:20px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.ribbon-track{animation:none!important}}
/* Match Elementor specificity without changing reusable widget content. */
.mjv-inner-section h1.elementor-heading-title{font-size:clamp(2.4rem,5.5vw,5rem)!important;line-height:1.12!important;letter-spacing:-.04em!important}
.mjv-contact h1.elementor-heading-title{font-size:clamp(2.6rem,4.7vw,4.3rem)!important}
.mjv-detail h2.elementor-heading-title{font-size:1.55rem!important}.mjv-project-card h2.elementor-heading-title{font-size:1.45rem!important}.mjv-contact-form h2.elementor-heading-title{font-size:1.6rem!important}.mjv-inner-faq h2.elementor-heading-title{color:#101713!important;font-size:clamp(2.4rem,4.8vw,4rem)!important}.mjv-prose h1.elementor-heading-title{font-size:clamp(2.3rem,5vw,3rem)!important}.mjv-prose h2.elementor-heading-title{font-size:1.5rem!important}
.elementor-23 .elementor-element-th00002{flex-wrap:nowrap!important;flex-shrink:0}.elementor-23 .elementor-nav-menu--main .mjv-mobile-contact{display:none}
.cookieadmin_law_container,.cookieadmin_cookie_modal{background:#1c2720!important;color:#f4f5f0!important;border:1px solid #637468!important;font-family:Manrope,sans-serif!important}.cookieadmin_law_container p,.cookieadmin_law_container a,.cookieadmin_cookie_modal p,.cookieadmin_cookie_modal label,.cookieadmin_cookie_modal span{color:#f4f5f0!important}.cookieadmin_law_container .cookieadmin_btn{background:#101412!important;color:#f4f5f0!important;border:1px solid #45efa4!important}.cookieadmin_law_container .cookieadmin_accept_btn{background:#45efa4!important;color:#101713!important}.cookieadmin_law_container{max-width:min(420px,calc(100vw - 32px))!important}.cookieadmin_law_container .cookieadmin_notice_con{font-size:13px!important;line-height:1.5!important}
@media(max-width:1024px){.elementor-23 .elementor-element-th00002{width:165px!important}.elementor-23 .elementor-element-th00005{width:auto!important;flex:1;min-width:0}.elementor-23 .elementor-element-th00007{display:none!important}.elementor-23 .elementor-element-th00006 .elementor-nav-menu--dropdown{left:auto!important;right:0!important;width:min(340px,calc(100vw - 40px))!important;max-width:calc(100vw - 40px)!important}.elementor-23 .elementor-element-th00006{position:relative!important}}
@media(max-width:767px){.mjv-inner-hero h1.elementor-heading-title{font-size:clamp(2.4rem,8.8vw,3.6rem)!important}.elementor-23 .elementor-element-th00002{width:150px!important}}
@media(max-width:360px){.mjv-inner-section h1.elementor-heading-title{font-size:2.4rem!important}.elementor-12 .elementor-element-exp0002 h2{font-size:2.1rem!important}.elementor-12 .elementor-element-hero005 .elementor-heading-title{font-size:clamp(2.8rem,12.8vw,3.4rem)!important}}
@media(max-width:1024px){.elementor-23 .elementor-element-th00006 .elementor-nav-menu--dropdown{position:absolute!important;top:calc(100% + 12px)!important;z-index:1000;max-height:calc(100vh - 100px);overflow-y:auto}.elementor-23 .elementor-element-th00006 .elementor-nav-menu--dropdown a{white-space:normal}.elementor-location-header{position:relative;z-index:20}}
