/* wallion.com on WordPress — measures taken from the Next.js build; applied globally, outside Elementor's per-widget CSS */
@media (min-width:768px){.elementor-widget-text-editor p,.elementor-widget-theme-post-content p,.e-con p:not(.wl-unit){text-align:justify}}
h1.elementor-heading-title{font-size:48px!important;font-weight:800!important;line-height:1.08!important;letter-spacing:-.02em}
@media (max-width:767px){h1.elementor-heading-title{font-size:36px!important}}
/* header: 90px over the hero, 70px once sticky; nav 15/500 right-aligned; languages mono with separators and an active state */
.elementor-location-header .elementor-sticky--active{padding-top:14px!important;padding-bottom:14px!important}
.elementor-location-header .elementor-sticky--active .elementor-widget-image img{max-height:28px;width:auto}
.elementor-location-header .elementor-nav-menu a,.elementor-location-header .elementor-icon-list-item a:not(.wl-lang),.elementor-location-header .elementor-widget-heading a:not(.wl-lang){font-size:15px!important;font-weight:500!important;color:rgba(255,255,255,.75)!important;transition:color .2s cubic-bezier(.4,0,.2,1)}
.elementor-location-header .elementor-icon-list-item a:hover,.elementor-location-header .elementor-icon-list-item a:hover .elementor-icon-list-text{color:#fff!important}
.elementor-location-header .elementor-icon-list-text{color:inherit!important}
/* nav right-aligned, 32px between links, sitting next to the languages like prod */
.elementor-location-header .elementor-element-c70f4bb .elementor-widget,.elementor-location-header .elementor-element-c70f4bb .elementor-widget-container,.elementor-location-header .elementor-element-c70f4bb .elementor-icon-list-items{width:100%!important}
.elementor-location-header .elementor-element-c70f4bb .elementor-icon-list-items{display:flex;justify-content:flex-end;gap:32px;flex-wrap:nowrap}
.elementor-location-header .elementor-element-c70f4bb .elementor-icon-list-item{margin:0!important;padding:0!important}
.elementor-location-header .elementor-element-c70f4bb .elementor-icon-list-item::after{display:none}
/* languages: one row, 8px apart, 12px mono */
.elementor-location-header .elementor-element-137800a4{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center;gap:8px!important;width:auto!important;margin:0 32px!important}
.elementor-location-header .elementor-element-137800a4 .elementor-icon-list-items{display:flex;gap:8px;flex-wrap:nowrap}
.elementor-location-header .elementor-element-137800a4 .elementor-icon-list-item{margin:0!important;padding:0!important}
.elementor-location-header .elementor-element-137800a4 .elementor-icon-list-item::after{display:none}
.elementor-location-header .elementor-element-137800a4 > .elementor-widget{width:auto!important}
.elementor-location-header .elementor-button{border-color:rgba(255,255,255,.35)!important}
.elementor-location-header .elementor-button{font-size:14px!important}
.elementor-location-header .elementor-icon-list-item a.wl-lang,.wl-lang{font-family:"Space Mono",ui-monospace,monospace!important;font-size:12px!important;font-weight:700!important;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.6)!important;line-height:16px}
.elementor-location-header .elementor-icon-list-item a.wl-lang--active,.wl-lang--active{color:#fff!important}
.elementor-location-header .elementor-icon-list-item a.wl-lang:hover{color:#fff!important}
.wl-sep{color:rgba(255,255,255,.35);margin:0 .4em 0 .15em;font:400 12px/1 "Space Mono",ui-monospace,monospace;display:inline-block;vertical-align:middle}
.elementor-location-header .elementor-widget:has(.wl-lang) .elementor-widget-container{display:flex;align-items:center;white-space:nowrap}
.elementor-location-header .e-con:has(> .elementor-widget .wl-lang){flex-wrap:nowrap!important;gap:6px!important;white-space:nowrap;flex:0 0 auto}
/* header row: never wrap; the nav column absorbs the slack so logo · nav · languages · CTA stay on one line like prod */
.elementor-location-header .elementor-element-6fe67c48{flex-wrap:nowrap!important;align-items:center;gap:0!important}
.elementor-location-header .elementor-element-c70f4bb{flex:1 1 auto!important;min-width:0;width:auto!important}
.elementor-location-header .elementor-element-c70f4bb .elementor-icon-list-items{justify-content:flex-end}
.elementor-location-header .elementor-element-11b00202{flex:0 0 auto!important;width:auto!important}
/* hero CTA 16px / 52px / r6 */
.elementor-element-34bf1e7a .elementor-button{font-size:16px!important;padding:14px 28px!important;border-radius:6px!important}
/* pricing: the middle card is the highlighted one */
.elementor-element-589111da .e-con.e-child:nth-child(2),.elementor-element-64f47009 .e-con.e-child:nth-child(2){border-color:#101011!important}
/* final CTA band: dot-grid decoration on the right, like prod */
.wl-cta-dots{position:absolute;right:48px;top:50%;transform:translateY(-50%);width:62px;height:48px;background-image:radial-gradient(circle,#E2353D 2px,transparent 2.5px);background-size:12px 12px;opacity:.9;pointer-events:none}
@media (max-width:1024px){.wl-cta-dots{display:none}}
/* TranslatePress footer dropdown in mono */
.trp-language-switcher,.trp-language-switcher *{font-family:"Space Mono",ui-monospace,monospace!important;font-size:12px!important;letter-spacing:.08em;text-transform:uppercase}

/* home hero: CTA button and the "Mira cómo ponemos precio" link on one row, like prod */
.elementor-element.elementor-element-48b04ad7{--flex-direction:row;--align-items:center;--gap:20px 20px;--flex-wrap:wrap;--justify-content:flex-start}
.elementor-element.elementor-element-48b04ad7 .elementor-widget{width:auto!important}
.elementor-element.elementor-element-48b04ad7 .elementor-button{font-size:16px!important;padding:14px 28px!important;border-radius:6px!important}
/* hero paragraph: 18px, 70% white, ~37ch like prod */
.elementor-element-34bf1e7a .elementor-widget-text-editor{font-size:18px!important;line-height:28px!important;max-width:372px;color:rgba(255,255,255,.7)!important}
/* generated pages (fixes/content/gen.py): hero paragraph, bordered cards, final CTA band, FAQ wrapper, contact form note */
.wl-hero-p .elementor-widget-container{max-width:62ch}
.e-con.wl-card{transition:border-color .2s,box-shadow .2s,transform .2s}
.e-con.wl-card:hover{border-color:#8F8D89!important;box-shadow:0 8px 24px rgba(16,16,17,.06);transform:translateY(-2px)}
.e-con.wl-card h2.elementor-heading-title,.e-con.wl-card h3.elementor-heading-title{font-size:20px!important;line-height:1.3!important}
.wl-cta-title .elementor-heading-title{max-width:20ch}
.wl-form-note{font-size:14px;color:#5C5B58;margin:0}
.wl-form-note a{color:#E2353D}
.elementor-form .elementor-field-type-select select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23101011' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}
/* hero wordmark snippets (handoff/02-design/hero-wordmark): the stage has no intrinsic width inside a flex column */
.wl-hero-stage,.wl-hero-stage .elementor-widget-container,.wl-hs{width:100%!important}
@media (min-width:768px){.wl-hero-mobile{display:none!important}}

/* prod spaces with gaps only: drop Elementor's 20px widget bottom margin inside flex containers */
.e-con .elementor-widget:not(:last-child){margin-block-end:0!important}
/* final CTA band everywhere */
.e-con.wl-cta h2.elementor-heading-title{font-size:48px!important;font-weight:800!important;line-height:1.08!important;max-width:20ch}
@media (max-width:767px){.e-con.wl-cta h2.elementor-heading-title{font-size:30px!important}}
/* /work cards: 18px titles like prod */
body.page-id-10000 .e-con .e-con h2.elementor-heading-title{font-size:18px!important;font-weight:600!important}

/* ---- band rhythm like prod. Elementor puts a boxed container's padding on .e-con-inner, so set it there and zero the outer box ---- */
.e-con.wl-flush{padding:0!important}
.e-con.e-parent.e-con-boxed:not(.wl-flush){padding-top:0!important;padding-bottom:0!important}
@media (min-width:768px){
  :is([data-elementor-type="wp-page"],[data-elementor-type="wp-post"]) > .e-con.e-parent.e-con-boxed:not(.wl-flush) > .e-con-inner,
  :is([data-elementor-type="wp-page"],[data-elementor-type="wp-post"]) > .e-con.e-parent.e-con-full:not(.wl-flush){padding-top:80px!important;padding-bottom:80px!important}
  body.home :is([data-elementor-type="wp-page"],[data-elementor-type="wp-post"]) > .e-con.e-parent.e-con-boxed:not(.wl-flush) > .e-con-inner,
  :is([data-elementor-type="wp-page"],[data-elementor-type="wp-post"]) > .e-con.e-parent.wl-cta.e-con-boxed > .e-con-inner,
  :is([data-elementor-type="wp-page"],[data-elementor-type="wp-post"]) > .e-con.e-parent.wl-cta.e-con-full{padding-top:128px!important;padding-bottom:128px!important}
  /* first band starts under the fixed header: 128px from the top like prod's pt-32 */
  :is([data-elementor-type="wp-page"],[data-elementor-type="wp-post"]) > .e-con.e-parent:first-child.e-con-boxed > .e-con-inner,
  :is([data-elementor-type="wp-page"],[data-elementor-type="wp-post"]) > .e-con.e-parent:first-child.e-con-full{padding-top:128px!important;padding-bottom:48px!important}
  body.home :is([data-elementor-type="wp-page"],[data-elementor-type="wp-post"]) > .e-con.e-parent:first-child.e-con-boxed > .e-con-inner{padding-top:112px!important;padding-bottom:64px!important}
}
@media (max-width:767px){
  :is([data-elementor-type="wp-page"],[data-elementor-type="wp-post"]) > .e-con.e-parent.e-con-boxed:not(.wl-flush) > .e-con-inner,
  :is([data-elementor-type="wp-page"],[data-elementor-type="wp-post"]) > .e-con.e-parent.e-con-full:not(.wl-flush){padding-top:64px!important;padding-bottom:64px!important}
  :is([data-elementor-type="wp-page"],[data-elementor-type="wp-post"]) > .e-con.e-parent:first-child.e-con-boxed > .e-con-inner{padding-top:96px!important;padding-bottom:40px!important}
}
body.wl-fixed-header .wl-post-hero{padding-top:128px}
body.wl-fixed-header .wl-404-main{padding-top:112px}
/* prod paragraphs carry no trailing margin inside a widget */
.elementor-widget-text-editor p:last-child,.elementor-widget-heading p.elementor-heading-title{margin-bottom:0!important}
