/* Adapt the approved design to Elementor's native widget wrappers. */
.mp-design { --header-h:86px; color:#121212; line-height:1.55; }
.mp-design .mp-hidden { display:none; }
.mp-design .elementor-heading-title { font-family:"Plus Jakarta Sans",sans-serif; }
.mp-design .elementor-widget-heading h1,.mp-design .elementor-widget-heading h2,.mp-design .elementor-widget-heading h3 { margin:0; }
.mp-design .btn { width:auto; max-width:100%; padding:0; align-self:flex-start; }
.mp-design .btn .elementor-button { display:flex; min-height:48px; align-items:center; justify-content:center; padding:14px 24px; font-family:"Work Sans",sans-serif; }
.mp-design .text-link { width:auto; }
.mp-design .text-link .elementor-button { color:inherit; font-weight:700; }
.mp-design .hero-actions { flex-direction:row; }
.mp-design.site-header { position:fixed; width:100%; padding:0; top:0; }
body.admin-bar .mp-design.site-header { top:32px; }
.mp-design .nav-wrap { display:flex; }
.mp-design .brand { display:flex; width:190px; }
.mp-design .brand .elementor-widget-image { width:100%; }
.mp-design .main-nav { display:flex; flex-direction:row; width:auto; }
.mp-design .main-nav .elementor-button { border-radius:0; text-align:left; }
.mp-design .main-nav .elementor-button-text { white-space:nowrap; }
.mp-design .menu-toggle { font-size:0; }
.mp-design .mp-carousel { display:block; min-height:100svh; padding:0; isolation:isolate; }
.mp-design .mp-slide { position:relative; display:none; min-height:100svh; background-size:cover; background-position:center; padding-top:var(--header-h); }
.mp-design .mp-slide.is-active { display:flex; align-items:center; }
.mp-design .mp-slide::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#081021c4 0%,#08102199 35%,#08102133 70%,#08102147 100%); pointer-events:none; }
.mp-design .hero-copy { width:min(650px,92%); }
.mp-design .hero-copy h1,.mp-design .hero-copy h2 { color:#fff; font-size:clamp(48px,6.3vw,86px); line-height:.98; letter-spacing:-.045em; font-weight:700; }
.mp-design .mp-hero-controls .hero-pause { position:absolute; bottom:30px; left:max(24px,calc((100% - 1240px)/2)); border:1px solid #ffffff66; border-radius:50%; width:36px; height:36px; color:#fff; background:transparent; cursor:pointer; }
.mp-design .mp-hero-controls { position:static; }
.mp-design .hero > .elementor-widget-html { position:static; }
.mp-design .industry-toggle { display:block; }
.mp-design .industry-toggle .elementor-button { position:absolute; inset:0; width:100%; height:100%; display:block; padding:0 8px; color:inherit; }
.mp-design .industry-toggle .elementor-button-content-wrapper { display:block; position:absolute; top:310px; left:0; width:100%; transition:transform .6s; font-family:"Plus Jakarta Sans",sans-serif; font-size:clamp(16px,1.65vw,28px); font-weight:500; }
.mp-design .industry-card.is-active .elementor-button-content-wrapper { transform:translateY(-162px); }
.mp-design .mp-industry-icon { position:static; pointer-events:none; }
.mp-design .industry-card .icon-shell svg { stroke:currentColor; }
.mp-design .industry-details { width:auto; }
.mp-design .industry-more { margin-top:0; }
.mp-design .media-card-image img { aspect-ratio:1.45; }
.mp-design .media-card-caption { display:flex; flex-direction:row; }
.mp-design .media-card-caption .elementor-widget { width:auto; }
.mp-design .package-image img { aspect-ratio:.93; }
.mp-design .package-name { display:grid; }
.mp-design .services-image img { min-height:600px; }
.mp-design .image-badge { width:auto; }
.mp-design .prototype-visual { display:grid; }
.mp-design .prototype-visual .elementor-widget-image { width:270px; z-index:1; }
.mp-design .prototype-visual .elementor-widget-image img { max-width:none; }
.mp-design .prototype-ring { width:240px; }
.mp-design .prototype-label,.mp-design .other-number { width:auto; }
.mp-design .footer-logo-card { width:170px; }
.mp-design .footer-col { display:flex; flex-direction:column; }
.mp-design .footer-col .elementor-widget { width:auto; }
.mp-design .footer-brand .elementor-widget-text-editor { max-width:220px; margin-top:18px; }
.mp-design .footer-contact { display:flex; flex-direction:row; width:auto; }
.mp-design .footer-contact .elementor-widget { width:auto; }
.mp-design .data-fiscal { width:50px; flex:0 0 50px; }
.mp-design .contact-copy h2 { font-size:clamp(38px,5vw,72px); line-height:1.06; color:#162d78; margin-block:20px; }
.mp-design .contact-copy .elementor-widget-text-editor:last-child { max-width:440px; color:#676b73; }
.mp-design.contact-panel { display:block; }
.mp-design.contact-panel.mp-contact-ready:not(.is-open) { display:none; }
.mp-design .contact-inner { display:grid; }
.mp-design .contact-inner > .elementor-widget-html { position:static; }
.mp-design .mp-contact-form .elementor-field-group { margin-bottom:20px; }
.mp-design .mp-contact-form .elementor-field-label { color:#162d78; font-size:12px; font-weight:600; padding-bottom:9px; }
.mp-design .mp-contact-form .elementor-field { border:1px solid #ccd1df; background:#ffffffb3; border-radius:6px; padding:13px 14px; font-family:Inter,sans-serif; font-size:15px; min-height:50px; color:#121212; }
.mp-design .mp-contact-form textarea.elementor-field { min-height:120px; }
.mp-design .mp-contact-form .elementor-button { background:#162d78; color:white; padding:15px 24px; font-size:12px; font-weight:700; font-family:"Work Sans",sans-serif; text-transform:uppercase; border-radius:5px; }
.mp-design .mp-form-note { font-size:11px; color:#676b73; }
.mp-design.mp-floating { height:0; min-height:0; padding:0; }
.mp-design .contact-float,.mp-design .whatsapp { width:58px; }
.mp-design .contact-float .elementor-button,.mp-design .whatsapp .elementor-button { display:flex; width:58px; height:58px; align-items:center; justify-content:center; font-size:10px; }
.mp-design .contact-float span { position:static; background:none; padding:0; opacity:1; transform:none; }
.mp-design .whatsapp { color:white; }
.mp-design .back-top { display:none; }
.mp-design .back-top.visible { display:block; }
.mp-design .reveal { opacity:1; transform:none; }
.mp-design [id] { scroll-margin-top:110px; }
.elementor-editor-active .mp-design .mp-slide { display:flex; }
.elementor-editor-active .mp-design.site-header { position:relative; top:auto; }
.elementor-editor-active .mp-design .industry-details { position:relative; inset:auto; opacity:1; visibility:visible; transform:none; pointer-events:auto; padding:210px 20px 20px; }
.elementor-editor-active .mp-design .industry-toggle .elementor-button-content-wrapper { top:150px; }
.elementor-editor-active .mp-design.contact-panel { display:block; }
.elementor-editor-active .mp-design .contact-float,.elementor-editor-active .mp-design .whatsapp { position:relative; inset:auto; }
@media(max-width:1050px) {
 .mp-design { --header-h:78px; }
 .mp-design .main-nav { flex-direction:column; width:100%; }
 .mp-design .nav-wrap { justify-content:space-between; }
 .mp-design .nav-wrap > .elementor-widget-html { width:auto; }
 .mp-design .main-nav:not(.open) { visibility:hidden; }
 .mp-design .industry-toggle .elementor-button-content-wrapper { font-size:23px; }
}
@media(max-width:782px) { body.admin-bar .mp-design.site-header { top:46px; } }
@media(max-width:700px) {
 .mp-design .brand { width:158px; }
 .mp-design .hero-copy { width:100%; }
 .mp-design .hero-copy h1,.mp-design .hero-copy h2 { font-size:clamp(30px,8vw,48px); line-height:1.05; }
 .mp-design .btn .elementor-button { padding:13px 14px; font-size:10px; }
 .mp-design .services-image img { min-height:360px; }

 .mp-design .contact-inner { grid-template-columns:1fr; }
 
}
@media(max-width:600px) { .mp-design .industry-toggle .elementor-button-content-wrapper { font-size:18px; } body.admin-bar .mp-design.site-header { top:0; } }
@media(prefers-reduced-motion:reduce) { .mp-design *, .mp-design *::before, .mp-design *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }
.mp-design .contact-float .elementor-button-icon,.mp-design .whatsapp .elementor-button-icon { font-size:27px; }
.mp-design .contact-float .elementor-button-icon svg,.mp-design .whatsapp .elementor-button-icon svg { width:27px; height:27px; fill:currentColor; }
.mp-design .media-card-caption > .elementor-widget-container { display:flex; align-items:center; justify-content:space-between; width:100%; }
.mp-design .services-copy .service-words { margin-bottom:42px; }
.mp-design .nav-wrap,.mp-design .footer-bottom { flex-direction:row; }
.mp-design .nav-wrap > .elementor-widget-html { display:none; }
.mp-design .technology-heading { margin-bottom:45px; }

@media(max-width:1050px) { .mp-design .nav-wrap > .elementor-widget-html { display:block; width:auto; } }
@media(max-width:720px) { .mp-design .footer-bottom { flex-direction:column; align-items:flex-start; } }
.mp-design .contact-inner > .elementor-widget-html { position:absolute; right:0; top:28px; width:auto; }
.mp-design .contact-inner > .elementor-widget-html .contact-close { position:static; }
.mp-design .mp-contact-form .elementor-select-wrapper { border:0; background:transparent; padding:0; }
@media(max-width:720px) { .mp-design .package-track { flex-direction:row; } }
/* Footer: centrado y distribución en móvil */
@media (max-width:720px) {
  .mp-design .footer-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:34px 24px;
  }

  /* Logo, Empresa y Envases: ancho completo */
  .mp-design .footer-grid > .footer-brand,
  .mp-design .footer-grid > .footer-col:nth-child(2),
  .mp-design .footer-grid > .footer-col:last-child {
    grid-column:1 / -1;
  }

  /* Industrias y Soluciones ocupan una columna cada una */
  .mp-design .footer-brand,
  .mp-design .footer-col {
    text-align:center;
  }

  .mp-design .footer-col {
    align-items:center;
  }

  .mp-design .footer-logo-card,
  .mp-design .footer-brand .elementor-widget-text-editor {
    margin-inline:auto;
  }

  .mp-design .footer-col .elementor-widget-button,
  .mp-design .footer-col .elementor-button {
    text-align:center;
  }

  .mp-design .footer-bottom {
    flex-direction:column;
    align-items:center;
    text-align:center;
  }

  .mp-design .footer-contact {
    width:100%;
    justify-content:center;
    text-align:center;
  }

  .mp-design .footer-contact .elementor-button {
    text-align:center;
  }
}