﻿/* Original Elementor styles are vendored separately. These rules implement
   local interactions and the intentionally redesigned contact experience. */
:root { --contact-purple:#44388b; --contact-deep:#302665; --contact-yellow:#f4c844; --contact-ink:#272336; --contact-muted:#676371; --contact-border:#898493; }
html { scroll-behavior:smooth; }
body { margin:0; }
#app { overflow-x:clip; }
.reveal-pending { opacity:0; }
:focus-visible { outline:3px solid #7561c8; outline-offset:4px; }
.elementor-invisible { visibility:visible!important; }
.elementor-menu-toggle { cursor:pointer; }
.elementor-nav-menu .menu-item-has-children { position:relative; }
.elementor-nav-menu .menu-item-has-children > a { padding-right:30px!important; }
.local-submenu-toggle { position:absolute; right:2px; top:50%; transform:translateY(-50%); width:30px; height:36px; padding:8px; border:0; color:inherit; background:transparent; border-radius:0; cursor:pointer; }
.local-submenu-toggle svg { width:12px; height:16px; }
.local-submenu-toggle:hover,.local-submenu-toggle:focus { background:transparent; color:var(--contact-purple); }
.elementor-nav-menu .sub-menu { display:none!important; position:absolute; top:100%; left:0; min-width:160px; }
.elementor-nav-menu .local-submenu-open > .sub-menu { display:block!important; }
.elementor-nav-menu--dropdown .menu-item-has-children .local-submenu-toggle { top:3px; transform:none; }
.elementor-nav-menu--dropdown .local-submenu-open > .sub-menu { position:static; }
.elementor-widget-nav-menu > .elementor-widget-container > nav.elementor-nav-menu--dropdown { display:none!important; }
.elementor-widget-nav-menu.local-menu-open > .elementor-widget-container > nav.elementor-nav-menu--dropdown { display:block!important; max-height:none!important; transform:none!important; }
.local-carousel { position:relative; }
.local-carousel .swiper-wrapper { display:block!important; transform:none!important; }
.local-carousel .swiper-slide { display:none!important; width:100%!important; height:100%; }
.local-carousel .swiper-slide.local-slide-active { display:block!important; }
.local-carousel .swiper-slide-bg { transform:none!important; }
.local-carousel .elementor-swiper-button { cursor:pointer; }
.maquila-section { padding:96px 24px; background:#f5f4f8; scroll-margin-top:32px; font-family:Poppins,sans-serif; }
.maquila-inner { max-width:1140px; margin:auto; }
.maquila-inner h2 { color:var(--contact-purple); font-size:clamp(38px,5vw,58px); line-height:1.1; letter-spacing:-1.8px; font-weight:600; margin:0; }
@media(max-width:767px) {
  .maquila-section { padding:56px 20px; }
}
.whatsapp-launcher { position:fixed; z-index:50; bottom:20px; right:20px; width:60px; height:60px; border-radius:50%; display:grid; place-items:center; color:#fff; background:#25d366; box-shadow:0 2px 8px #0003; transition:transform .18s; }
.whatsapp-launcher svg { width:34px; height:34px; }
.whatsapp-launcher[hidden] { display:none; }
.whatsapp-launcher:hover { color:#fff; transform:translateY(-3px); }
.contact-studio { padding:100px 24px; background:#f5f4f8; scroll-margin-top:24px; font-family:Poppins,sans-serif; }
.contact-studio * { box-sizing:border-box; }
.contact-studio-inner { max-width:1140px; margin:0 auto; display:grid; grid-template-columns:.92fr 1.08fr; box-shadow:0 14px 48px #3026650a; }
.contact-editorial { padding:56px 46px 40px; background:var(--contact-deep); color:#fff; display:flex; flex-direction:column; align-items:flex-start; }
.contact-eyebrow { display:block; font-size:10px; line-height:1.5; letter-spacing:1.7px; font-weight:600; }
.contact-editorial > .contact-eyebrow { color:#e0dcf4; }
.contact-editorial h2 { font-size:40px; font-weight:600; line-height:1.2; letter-spacing:-1.5px; color:#fff; margin:36px 0 24px; }
.contact-editorial h2 span { color:var(--contact-yellow); }
.contact-editorial > p { font-size:14px; line-height:1.9; color:#e0dcf0; max-width:350px; margin:0 0 38px; }
.contact-direct { color:#fff; border-top:1px solid #ffffff30; border-bottom:1px solid #ffffff30; padding:24px 0; width:100%; text-decoration:none; }
.contact-direct > span { display:block; font-size:11px; color:#d9d3ed; margin-bottom:8px; }
.contact-direct strong { display:flex; justify-content:space-between; align-items:center; font-size:27px; font-weight:500; letter-spacing:.2px; }
.contact-direct:hover { color:var(--contact-yellow); }
.contact-direct strong span { font-size:25px; font-weight:400; }
.contact-editorial-bottom { display:flex; flex-direction:column; gap:5px; padding-top:45px; margin-top:auto; font-size:11px; color:#d7d1e9; }
.contact-workspace { padding:48px 44px; background:#fff; color:var(--contact-ink); }
.contact-form-heading .contact-eyebrow { color:var(--contact-purple); }
.contact-form-heading h3 { font-size:27px; line-height:1.25; letter-spacing:-.6px; margin:12px 0 8px; font-weight:600; color:var(--contact-ink); }
.contact-form-heading p { margin:0 0 28px; font-size:13px; line-height:1.7; color:var(--contact-muted); }
.contact-form { display:grid; grid-template-columns:1fr 1fr; gap:20px 18px; }
.contact-field { min-width:0; display:flex; flex-direction:column; gap:8px; }
.contact-field-wide { grid-column:1/-1; }
.contact-field label { font-size:11px; line-height:1.5; font-weight:500; color:var(--contact-ink); }
.contact-field label > span:not(.contact-optional) { color:var(--contact-purple); }
.contact-optional { color:var(--contact-muted); font-size:10px; font-weight:400; }
.contact-field input,.contact-field textarea,.contact-field select { width:100%; min-width:0; border:1px solid var(--contact-border); background:#fff; color:var(--contact-ink); font:400 12px/1.5 Poppins,sans-serif; border-radius:3px; padding:12px; min-height:44px; box-shadow:none; transition:border-color .15s; }
.contact-field input::placeholder,.contact-field textarea::placeholder { color:#75717d; opacity:1; }
.contact-field input:focus,.contact-field textarea:focus,.contact-field select:focus { border-color:var(--contact-purple); outline:2px solid var(--contact-purple); outline-offset:2px; }
.contact-field textarea { resize:vertical; min-height:100px; }
.contact-channel-note { grid-column:1/-1; margin:0; font-size:11px; line-height:1.7; color:var(--contact-muted); }
.contact-submit { grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; width:100%; border:1px solid var(--contact-purple); border-radius:3px; background:var(--contact-purple); color:#fff; padding:15px 18px; font:500 13px/1.5 Poppins,sans-serif; cursor:pointer; transition:background .18s; }
.contact-submit span { font-size:21px; line-height:1; }
.contact-submit:hover,.contact-submit:focus { background:var(--contact-deep); color:#fff; }
.contact-submit:disabled { opacity:.6; cursor:wait; }
.contact-status { grid-column:1/-1; border-left:3px solid var(--contact-purple); padding:12px 15px; background:#f5f4f8; color:var(--contact-ink); font-size:12px; line-height:1.7; overflow-wrap:anywhere; }
.contact-status[hidden] { display:none; }
.contact-status a { color:var(--contact-purple); text-decoration:underline; text-underline-offset:3px; }
.local-not-found { padding-top:64px; text-align:center; }
.local-not-found h1,.local-not-found p,.local-not-found > a { margin:20px; }
.static-not-found { background:#f7f5ef; color:#302665; font:16px Arial,sans-serif; display:grid; place-items:center; min-height:100vh; text-align:center; }
.static-not-found main { padding:30px; }
.static-not-found h1 { font-size:72px; margin:0 0 10px; }
.static-not-found a { display:inline-block; background:#44388b; color:#fff; padding:14px 20px; text-decoration:none; border-radius:4px; }
.noscript { padding:20px; background:#f4c844; color:#302665; }
@media(max-width:1024px) {
  .elementor-widget-nav-menu.local-menu-open > .elementor-widget-container > nav.elementor-nav-menu--dropdown { position:absolute; width:100%; top:100%; left:0; z-index:40; }
  .contact-studio { padding:64px 24px; }
  .contact-editorial { padding:40px 32px; }
  .contact-editorial h2 { font-size:33px; }
  .contact-workspace { padding:40px 32px; }
  .contact-form { grid-template-columns:1fr; }
}
@media(max-width:767px) {
  .contact-studio { padding:48px 16px; }
  .contact-studio-inner { grid-template-columns:1fr; }
  .contact-editorial { padding:34px 28px; }
  .contact-editorial h2 { font-size:36px; margin-top:26px; }
  .contact-editorial > p { max-width:none; }
  .contact-editorial-bottom { padding-top:26px; }
  .contact-workspace { padding:34px 28px; }
  .contact-form { gap:18px; }
  .contact-field input,.contact-field textarea,.contact-field select { font-size:16px; }
  .whatsapp-launcher { width:56px; height:56px; bottom:16px; right:16px; }
}
@media(max-width:360px) { .contact-editorial,.contact-workspace { padding:28px 20px; }.contact-editorial h2 { font-size:31px; }.contact-direct strong { font-size:25px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }*,*::before,*::after { animation:none!important; transition:none!important; } }
