/* parity.css — measured against the Next.js build (compare/bandtree.mjs, compare/bandids.mjs). Loaded after site.css. */

/* ---- type: display headings on a 1.0 / 1.11 line, eyebrows 12/16, body 17/1.625 ---- */
@media (min-width:768px){
  body .elementor .elementor-element .elementor-widget-heading h1.elementor-heading-title{line-height:1!important}
  .e-con.wl-cta h2.elementor-heading-title{line-height:1!important}
  .elementor-widget-heading h2.elementor-heading-title{line-height:1.11!important}
  :is(.elementor-element-96f2a0e,.elementor-element-d5a56d8c) h2.elementor-heading-title{line-height:36px!important}
}
.elementor-widget-heading p.elementor-heading-title{line-height:16px!important}
.elementor-widget-text-editor,.elementor-widget-text-editor p{line-height:1.625!important}
/* eyebrow → heading: 16px like prod (the container gap is 24) */
body:not(.home) .e-con > .elementor-widget-heading:has(> p.elementor-heading-title) + .elementor-widget-heading:has(> h2,> h1),
body:not(.home) .e-con-inner > .elementor-widget-heading:has(> p.elementor-heading-title) + .elementor-widget-heading:has(> h2,> h1){margin-top:-8px!important}
body.home :is(.e-con-inner,.e-con) > .elementor-widget-heading:has(> p.elementor-heading-title) + .elementor-widget-heading:has(> h2){margin-top:16px!important}
/* buttons: 16/24, 14px vertical padding (52px tall) like prod's .btn-primary; header and hero keep their own rules */
:is([data-elementor-type="wp-page"],[data-elementor-type="wp-post"]) .elementor-button.elementor-size-sm,
:is([data-elementor-type="wp-page"],[data-elementor-type="wp-post"]) .elementor-button.elementor-size-xs{font-size:16px!important;line-height:24px!important;padding:13px 24px!important;border-radius:6px!important}

/* hero lead paragraph 17/1.625 like prod on every page */
:is([data-elementor-type="wp-page"],[data-elementor-type="wp-post"]) > .e-con.e-parent:first-child .elementor-widget-text-editor,:is([data-elementor-type="wp-page"],[data-elementor-type="wp-post"]) > .e-con.e-parent:first-child .elementor-widget-text-editor p{font-size:17px!important;line-height:1.625!important}


/* ---- final CTA band: 52ch paragraph, 40px before the button ---- */
.e-con.wl-cta .elementor-widget-text-editor{max-width:506px!important}
.e-con.wl-cta .elementor-widget-button{margin-top:16px!important}


/* ---- home: grids 56px under the H2 (prod mt-14), none where the band starts with the grid ---- */
body.home [data-elementor-type="wp-post"] > .e-con.e-parent > .e-con-inner > .elementor-widget-heading + .e-con{margin-top:56px!important}
body.home [data-elementor-type="wp-post"] > .e-con.e-parent > .e-con-inner > .e-con:first-child{margin-top:0!important}
/* home module cards: 01 number 12/16 then 12px, title 20/28, text 16px under */
body.home .elementor-element-43d2f32c .e-con.e-child > .elementor-widget-heading:first-child{margin-bottom:12px!important}
body.home .elementor-element-43d2f32c .e-con.e-child h3.elementor-heading-title{font-size:20px!important;font-weight:600!important}
body.home .elementor-element-43d2f32c .e-con.e-child > .elementor-widget-text-editor{margin-top:16px!important}
/* home steps: number row with hairline (prod), 20px to the title, 12px to the text */
body.home .elementor-element-cd14822 .e-con.e-child > .elementor-widget-heading:first-child p.elementor-heading-title{display:flex;align-items:center;gap:16px;line-height:20px!important;font-weight:700!important}
body.home .elementor-element-cd14822 .e-con.e-child > .elementor-widget-heading:first-child p.elementor-heading-title::after{content:"";flex:1;height:1px;background:#DEDCD8}
body.home .elementor-element-cd14822 .e-con.e-child > .elementor-widget-heading:first-child{margin-bottom:20px!important}
body.home .elementor-element-cd14822 .e-con.e-child > .elementor-widget-text-editor{margin-top:12px!important}

/* ---- /about "Siempre sabrás": text column 56ch, portrait 320px, list items 12px apart ---- */
@media (min-width:768px){
  .elementor-element-ccc3d4d8 .e-con.e-child:has(> .elementor-widget-text-editor){max-width:565px}
  .elementor-element-ccc3d4d8 .elementor-widget-image img,.elementor-element-3ae87728 .elementor-widget-image img{max-width:320px;aspect-ratio:4/5;object-fit:cover}
}
.elementor-element-ccc3d4d8 .elementor-widget-text-editor li + li{margin-top:12px}
.elementor-element-ccc3d4d8 .elementor-widget-text-editor p + ul{margin-top:16px}

/* ---- /pricing "¿Por qué una licencia?": 5/7 grid, 30px title, 60ch paragraph ---- */
@media (min-width:768px){
  .elementor-element-83ffe8c9 > .e-con-inner{display:grid!important;grid-template-columns:5fr 7fr;column-gap:40px;align-items:start}
  .elementor-element-83ffe8c9 h2.elementor-heading-title{font-size:30px!important;line-height:36px!important;font-weight:600!important}
  .elementor-element-83ffe8c9 .elementor-widget-text-editor{max-width:584px!important}
}

/* ---- case studies: 72ch column, 16:9 image, 64px before the text ---- */
@media (min-width:768px){
  :is(.elementor-element-47cc962b,.elementor-element-ce083755) > .e-con-inner > .e-con{max-width:721px}
  :is(.elementor-element-47cc962b,.elementor-element-ce083755) .elementor-widget-image img{aspect-ratio:16/9;object-fit:cover;width:100%}
}

/* ---- /software module grid: 48px gaps like prod ---- */
body.page-id-12115 .elementor-element-dcd95e5 .e-con:has(> .e-con.wl-card){--gap:48px 48px;gap:48px!important;padding:0!important}
@media (min-width:768px){body.page-id-12115 .elementor-element-dcd95e5 .e-con.wl-card{--width:calc(50% - 24px);width:calc(50% - 24px)!important}}
/* generated cards: number 12/16 then 12px, title then 16px */
body .e-con.wl-card.wl-card > .elementor-widget-heading:has(p.elementor-heading-title){margin-bottom:0!important}
body .e-con.wl-card.wl-card > .elementor-widget-heading:has(p.elementor-heading-title) + .elementor-widget-heading{margin-top:0!important}
body .e-con.wl-card.wl-card > .elementor-widget-heading + .elementor-widget-text-editor{margin-top:4px!important}

/* ---- /contact: steps list 32px under the eyebrow, CTA 40px under the list, form 40px under its intro ---- */
.elementor-element-96f2a0e .e-con.e-child > .elementor-widget-heading:first-child + .e-con{margin-top:8px!important}
.elementor-element-96f2a0e .e-con.e-child > .elementor-widget-button{margin-top:16px!important}
.elementor-element-96f2a0e .e-con.e-child > .elementor-widget-text-editor + .elementor-widget-form{margin-top:20px!important}

/* ---- home pricing band: intro row = 48ch paragraph + red text link, 12px under the H2; grid 56px under; cards 40px with 24px rhythm ---- */
@media (min-width:768px){
  body.home .elementor-element-64f47009.e-con.e-parent > .e-con-inner > .e-con.e-con-full:has(> .e-con > .elementor-widget-heading > h3){margin-top:56px!important}
}
body.home .elementor-element-64f47009 > .e-con-inner > .e-con:has(> .e-con > .elementor-widget-button) > .e-con{padding:0!important;border:0!important;background:transparent!important}
body.home .elementor-element-64f47009 > .e-con-inner > .e-con:has(> .e-con > .elementor-widget-button){align-items:flex-end!important}
body.home .elementor-element-64f47009 > .e-con-inner > .e-con:has(> .e-con > .elementor-widget-button) .elementor-widget-text-editor{max-width:467px!important}
body.home .elementor-element-64f47009 > .e-con-inner > .e-con:has(> .e-con > .elementor-widget-button) .elementor-button{padding:0!important;background:transparent!important;border:0!important;color:#E2353D!important;font-weight:500!important;font-size:16px!important}
body.home .elementor-element-64f47009 > .e-con-inner > .e-con:has(> .e-con > .elementor-widget-button) .elementor-button:hover{color:#C42930!important}
/* ---- home form band: 16px under the intro, 40px before the form card ---- */
body.home .elementor-element-66ccc8a1 .elementor-widget-text-editor + .elementor-widget-text-editor{margin-top:16px!important}
body.home .elementor-element-66ccc8a1 .elementor-widget-text-editor + .e-con{margin-top:40px!important}
/* ---- /software/automatizacion-ia "Qué entra / Qué no entra": two columns like prod ---- */
@media (min-width:768px){
  .elementor-element-bb64739 > .e-con-inner{display:grid!important;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;grid-auto-flow:column;column-gap:32px;row-gap:16px;align-items:start}
  .elementor-element-bb64739 h2.elementor-heading-title{font-size:30px!important;line-height:36px!important;font-weight:700!important}
  .elementor-element-bb64739 .elementor-widget-text-editor,.elementor-element-bb64739 .elementor-widget-text-editor p{font-size:16px!important;line-height:26px!important}
}

/* ---- forms (Elementor Pro) sized like prod's inputs: mono 12/16 labels + 8px, 15px fields with 12px padding, 52px submit ---- */
.elementor-form .elementor-field-group > label,.elementor-form .elementor-field-label{font-family:"Space Mono",ui-monospace,monospace!important;font-size:12px!important;line-height:16px!important;margin-bottom:8px!important;padding-bottom:0!important;letter-spacing:.04em;text-transform:none}
.elementor-form .elementor-field-group .elementor-field-textual{font-size:15px!important;line-height:24px!important;padding:12px 16px!important;border-radius:4px!important}
.elementor-form .elementor-field-group select.elementor-field-textual{line-height:normal!important;height:44px!important}
.elementor-form .elementor-field-group textarea.elementor-field-textual{min-height:0!important}
.elementor-form .elementor-field-type-submit .elementor-button{font-size:16px!important;line-height:24px!important;padding:13px 24px!important;border-radius:6px!important}
.elementor-form .elementor-field-group{margin-bottom:0!important;padding-bottom:0!important}
.elementor-form .elementor-form-fields-wrapper{row-gap:24px;margin-bottom:0!important}
.elementor-form .elementor-field-type-html{line-height:20px!important;font-size:14px!important}
/* /contact steps list: flush rows, 12/16 red number, 16/24 text, 20px apart */
.elementor-element-96f2a0e .e-con.e-child .e-con.e-child{padding:0!important}
.elementor-element-96f2a0e .e-con.e-child .e-con.e-child .e-con{padding:0!important;gap:16px!important;align-items:flex-start!important}
.elementor-element-96f2a0e .e-con.e-child .e-con.e-child .e-con > .elementor-widget-heading{margin-top:4px!important}
.elementor-element-96f2a0e .e-con.e-child .e-con.e-child .e-con .elementor-widget-text-editor,.elementor-element-96f2a0e .e-con.e-child .e-con.e-child .e-con .elementor-widget-text-editor p{font-size:16px!important;line-height:24px!important}

/* ---- blog index cards like prod: flush 16:9 image, 32px body, 20/28 title, 15px excerpt, red "Leer →" 24px under ---- */
body.page-id-10005 .elementor-element-c6f924eb > .e-con-inner > .e-con{padding:0!important}
body.page-id-10005 .elementor-element-c6f924eb .e-con.e-child{padding:0!important;gap:0!important;overflow:hidden}
body.page-id-10005 .elementor-element-c6f924eb .e-con.e-child > .elementor-widget-image{margin:0!important;width:100%!important}
body.page-id-10005 .elementor-element-c6f924eb .e-con.e-child > .elementor-widget-image img{width:100%!important;aspect-ratio:16/9;object-fit:cover;display:block}
body.page-id-10005 .elementor-element-c6f924eb .e-con.e-child > .elementor-widget:not(.elementor-widget-image){margin-left:32px!important;margin-right:32px!important}
body.page-id-10005 .elementor-element-c6f924eb .e-con.e-child > .elementor-widget-image + .elementor-widget{margin-top:32px!important}
body.page-id-10005 .elementor-element-c6f924eb .e-con.e-child > .elementor-widget-heading + .elementor-widget-heading{margin-top:12px!important}
body.page-id-10005 .elementor-element-c6f924eb .e-con.e-child > .elementor-widget-text-editor{margin-top:12px!important}
body.page-id-10005 .elementor-element-c6f924eb .e-con.e-child > .elementor-widget-button{margin-top:24px!important;margin-bottom:32px!important}
body.page-id-10005 .elementor-element-c6f924eb .e-con.e-child h2.elementor-heading-title{line-height:28px!important}
body.page-id-10005 .elementor-element-c6f924eb .e-con.e-child .elementor-widget-text-editor,body.page-id-10005 .elementor-element-c6f924eb .e-con.e-child .elementor-widget-text-editor p{font-size:15px!important;line-height:1.625!important}

/* ---- pricing cards (/pricing and home): 18/28 title, 24px to the price, 4px to the duration, 24px to the 15px text; 32px padding on mobile ---- */
:is(.elementor-element-589111da,.elementor-element-64f47009) > .e-con-inner > .e-con:has(> .e-con > .elementor-widget-heading > h3) > .e-con.e-child{gap:0!important}
:is(.elementor-element-589111da,.elementor-element-64f47009) > .e-con-inner > .e-con:has(> .e-con > .elementor-widget-heading > h3) > .e-con.e-child > .elementor-widget-text-editor{margin-top:4px!important}
:is(.elementor-element-589111da,.elementor-element-64f47009) > .e-con-inner > .e-con:has(> .e-con > .elementor-widget-heading > h3) > .e-con.e-child > .elementor-widget-heading + .elementor-widget-heading,
:is(.elementor-element-589111da,.elementor-element-64f47009) > .e-con-inner > .e-con:has(> .e-con > .elementor-widget-heading > h3) > .e-con.e-child > .elementor-widget-heading + .e-con{margin-top:24px!important}
:is(.elementor-element-589111da,.elementor-element-64f47009) > .e-con-inner > .e-con:has(> .e-con > .elementor-widget-heading > h3) > .e-con.e-child > .elementor-widget-text-editor:last-child{margin-top:24px!important}
:is(.elementor-element-589111da,.elementor-element-64f47009) > .e-con-inner > .e-con:has(> .e-con > .elementor-widget-heading > h3) > .e-con.e-child > .elementor-widget-text-editor:last-child,:is(.elementor-element-589111da,.elementor-element-64f47009) > .e-con-inner > .e-con:has(> .e-con > .elementor-widget-heading > h3) > .e-con.e-child > .elementor-widget-text-editor:last-child p{font-size:15px!important;line-height:1.625!important}
:is(.elementor-element-589111da,.elementor-element-64f47009) > .e-con-inner > .e-con:has(> .e-con > .elementor-widget-heading > h3) > .e-con.e-child > .elementor-widget-text-editor:not(:last-child) p{font-size:12px!important;line-height:16px!important}
@media (max-width:767px){
  :is(.elementor-element-589111da,.elementor-element-64f47009) > .e-con-inner > .e-con{padding:0!important}
  :is(.elementor-element-589111da,.elementor-element-64f47009) > .e-con-inner > .e-con:has(> .e-con > .elementor-widget-heading > h3) > .e-con.e-child{padding:32px!important}
}

/* ---- /about quote band: 18/1.625 on a 660px measure ---- */
.elementor-element-4d837c02 .elementor-widget-text-editor{max-width:660px!important}
.elementor-element-4d837c02 .elementor-widget-text-editor,.elementor-element-4d837c02 .elementor-widget-text-editor p{font-size:18px!important;line-height:1.625!important}
/* ---- contact line (pricing band / home form band): centred, 32px under ---- */
.e-con.wl-contact-line .elementor-widget-text-editor{text-align:center!important;margin-bottom:32px!important}
.e-con.wl-contact-line .elementor-widget-text-editor p{text-align:center!important}
.elementor-element-66ccc8a1 .elementor-widget-text-editor p,.elementor-element-66ccc8a1 h2.elementor-heading-title,.elementor-element-10ae80b0 .elementor-widget-text-editor p,.elementor-element-10ae80b0 h2.elementor-heading-title{text-align:center!important}
/* ---- heroes without an eyebrow: the H1 keeps prod's 16px top offset ---- */
@media (min-width:768px){:is([data-elementor-type="wp-page"],[data-elementor-type="wp-post"]) > .e-con.e-parent:first-child > .e-con-inner > .elementor-widget-heading:first-child:has(> h1){margin-top:16px!important}}
/* ---- /software use-case cards on mobile: 24px padding, 20/28 titles, 15px text, flush grid ---- */
@media (max-width:767px){
  body.page-id-12115 .e-con:has(> .e-con.wl-card){padding:0!important}
  body.page-id-12115 .e-con.wl-card:not(:has(h2)){padding:24px!important}
  body.page-id-12115 .e-con.wl-card h3.elementor-heading-title{font-size:20px!important;line-height:28px!important}
  body.page-id-12115 .e-con.wl-card .elementor-widget-text-editor,body.page-id-12115 .e-con.wl-card .elementor-widget-text-editor p{font-size:15px!important;line-height:1.625!important}
}

/* ---- display type: prod's display face is Archivo at 125% width with -0.02em tracking ---- */
.e-con.wl-cta h2.elementor-heading-title,body .elementor .elementor-widget-heading h1.elementor-heading-title{font-stretch:125%!important;letter-spacing:-.02em!important}
/* ---- home: "Ver todos los proyectos" is a red text link; portrait band paragraphs 24px apart; hero rhythm 16/20/32 ---- */
body.home .elementor-element-c68a985 > .e-con-inner > .elementor-widget-button .elementor-button{padding:0!important;background:transparent!important;border:0!important;color:#E2353D!important;font-weight:500!important;font-size:16px!important;line-height:24px!important}
body.home .elementor-element-c68a985 > .e-con-inner > .elementor-widget-button .elementor-button:hover{color:#C42930!important}
body.home .elementor-element-3ae87728 .elementor-widget-text-editor + .elementor-widget-text-editor{margin-top:24px!important}
body.home .elementor-element-34bf1e7a .e-con .elementor-widget-heading:has(> h1) + .elementor-widget-text-editor{margin-top:20px!important}
body.home .elementor-element-34bf1e7a .e-con .elementor-widget-text-editor + .e-con{margin-top:32px!important}
@media (max-width:767px){
  body.home .elementor-element-43d2f32c .e-con.e-child{padding:32px!important}
  body.home .elementor-element-34bf1e7a > .e-con-inner > .e-con{margin-top:0!important}
  /* /software module cards on mobile: 32px padding, 24/32 titles, 32px apart */
  body.page-id-12115 .elementor-element-dcd95e5 .e-con:has(> .e-con.wl-card){gap:32px!important}
  body.page-id-12115 .elementor-element-dcd95e5 .e-con.wl-card{padding:32px!important}
  body.page-id-12115 .elementor-element-dcd95e5 .e-con.wl-card h2.elementor-heading-title{font-size:24px!important;line-height:32px!important}
}
body.page-id-12115 .elementor-element-dcd95e5 .e-con.wl-card.wl-card > .elementor-widget-heading:has(> h2) + .elementor-widget-text-editor{margin-top:4px!important}
/* ---- narrow text pages (generated): 18/28 body, 8px between list items, 59px ink buttons like prod ---- */
@media (min-width:768px){.e-con.wl-narrow .elementor-widget-text-editor:not(.wl-hero-p),.e-con.wl-narrow .elementor-widget-text-editor:not(.wl-hero-p) p,.e-con.wl-narrow .elementor-widget-text-editor:not(.wl-hero-p) li{font-size:18px!important;line-height:28px!important}}
@media (max-width:767px){.e-con.wl-narrow .elementor-widget-text-editor:not(.wl-hero-p),.e-con.wl-narrow .elementor-widget-text-editor:not(.wl-hero-p) p,.e-con.wl-narrow .elementor-widget-text-editor:not(.wl-hero-p) li{font-size:16px!important;line-height:26px!important}}
.e-con.wl-narrow .elementor-widget-text-editor li + li{margin-top:8px}
.e-con.wl-narrow .elementor-widget-text-editor + .elementor-widget-text-editor:has(> ul,> ol){margin-top:-8px!important}
.e-con.wl-narrow .elementor-widget-button{margin-top:8px!important}
.e-con.wl-narrow .elementor-button.elementor-size-sm{font-size:17px!important;line-height:27px!important;padding:15px 24px!important}
/* ---- Elementor's default 10px container padding has no equivalent on prod ---- */
:is(.elementor-element-ccc3d4d8,.elementor-element-96f2a0e,.elementor-element-47cc962b,.elementor-element-ce083755,.elementor-element-b664fb4,.elementor-element-3ae87728) .e-con.e-child:not(.wl-card){padding:0!important}
.elementor-element-10ae80b0 .e-con.e-child:not(:has(> .elementor-widget-form)){padding:0!important}
/* ---- image boxes keep their aspect ratio before the lazy image loads (no layout shift, like prod's wrappers) ---- */
.elementor-element-c68a985 .e-con.e-child > .elementor-widget-image,:is(.elementor-element-47cc962b,.elementor-element-ce083755) .elementor-widget-image,body.page-id-10000 .e-con .e-con.e-child > .elementor-widget-image,body.page-id-10005 .elementor-element-c6f924eb .e-con.e-child > .elementor-widget-image{aspect-ratio:16/9;width:100%;overflow:hidden}
:is(.elementor-element-3ae87728,.elementor-element-ccc3d4d8) .elementor-widget-image{aspect-ratio:4/5;width:100%;max-width:320px;overflow:hidden}
.elementor-element-c68a985 .e-con.e-child > .elementor-widget-image img,:is(.elementor-element-47cc962b,.elementor-element-ce083755) .elementor-widget-image img,body.page-id-10000 .e-con .e-con.e-child > .elementor-widget-image img,body.page-id-10005 .elementor-element-c6f924eb .e-con.e-child > .elementor-widget-image img,:is(.elementor-element-3ae87728,.elementor-element-ccc3d4d8) .elementor-widget-image img{display:block;width:100%!important;height:100%!important;object-fit:cover;max-width:none}

:is(.elementor-element-47cc962b,.elementor-element-ce083755) .elementor-widget-image + .elementor-widget{margin-top:40px!important}
/* ---- home: card number → title keeps 12px (steps 20px); final CTA 24/40 rhythm on the gap-0 home bands ---- */
body.home .elementor-element-43d2f32c .e-con.e-child > .elementor-widget-heading:has(> p) + .elementor-widget-heading{margin-top:0!important}
body.home .elementor-element-cd14822 .e-con.e-child > .elementor-widget-heading:has(> p) + .elementor-widget-heading{margin-top:0!important}
body.home .elementor-element-41aa6c62 .elementor-widget-heading + .elementor-widget-text-editor{margin-top:24px!important}
body.home .elementor-element-41aa6c62 .elementor-widget-button{margin-top:40px!important}
/* ---- /pricing intro paragraph 48ch, 12px under the H2, grid 56px under ---- */
@media (min-width:768px){
  .elementor-element-589111da > .e-con-inner > .elementor-widget-text-editor{max-width:467px!important;margin-top:-12px!important}
  .elementor-element-589111da > .e-con-inner > .e-con:has(> .e-con > .elementor-widget-heading > h3){margin-top:32px!important}
}
/* ---- blog grid: 24px gaps, 600-weight one-line titles ---- */
body.page-id-10005 .elementor-element-c6f924eb > .e-con-inner > .e-con{gap:24px!important}
body.page-id-10005 .elementor-element-c6f924eb .e-con.e-child h2.elementor-heading-title{font-weight:600!important;font-stretch:100%!important;letter-spacing:0!important}
/* ---- home modules grid: no wrapper padding (Elementor adds 32px on mobile); portrait box 320×400 top-aligned; hero stage gone on mobile; eyebrow→H1 16px ---- */
body.home .elementor-element-43d2f32c > .e-con-inner > .e-con{padding:0!important}
:is(.elementor-element-3ae87728,.elementor-element-ccc3d4d8) .elementor-widget-image{max-width:320px!important;aspect-ratio:4/5!important}
body.home .elementor-element-3ae87728 > .e-con-inner > .e-con{align-items:flex-start!important}
body.home .elementor-element-3ae87728 > .e-con-inner > .e-con > .e-con:has(.elementor-widget-text-editor){margin-top:10px!important}
body.home .elementor-element-34bf1e7a .elementor-widget-heading:has(> p) + .elementor-widget-heading:has(> h1){margin-top:16px!important}
@media (max-width:767px){body.home .elementor-element-34bf1e7a .e-con:has(> .wl-hero-stage){display:none!important}}

/* ---- home modules grid: 24px gaps → 588px cards like prod ---- */
@media (min-width:768px){
  body.home .elementor-element-43d2f32c > .e-con-inner > .e-con{gap:24px!important}
  body.home .elementor-element-43d2f32c > .e-con-inner > .e-con > .e-con.e-child{--width:calc(50% - 12px);width:calc(50% - 12px)!important}
}
/* ---- secondary section titles drop to 24/32 on mobile (prod text-2xl md:text-3xl) ---- */
@media (max-width:767px){
  :is(.elementor-element-83ffe8c9,.elementor-element-96f2a0e,.elementor-element-d5a56d8c) h2.elementor-heading-title{font-size:24px!important;line-height:32px!important}
}
/* ---- /work cards like prod: flush 16:9 image, 32px body, 18/28 title, 12px to the 15px text ---- */
body.page-id-10000 .elementor-element-d55b07e6 > .e-con-inner > .e-con{padding:0!important;gap:24px!important}
body.page-id-10000 .e-con .e-con.e-child:not(:has(> .e-con)){padding:0!important;gap:0!important}
body.page-id-10000 .e-con .e-con.e-child > .elementor-widget-image{margin:0!important}
body.page-id-10000 .e-con .e-con.e-child > .elementor-widget:not(.elementor-widget-image){margin-left:32px!important;margin-right:32px!important}
body.page-id-10000 .e-con .e-con.e-child > .elementor-widget-image + .elementor-widget{margin-top:32px!important}
body.page-id-10000 .e-con .e-con.e-child > .elementor-widget-heading + .elementor-widget-text-editor{margin-top:12px!important;margin-bottom:32px!important}
body.page-id-10000 .e-con .e-con.e-child h2.elementor-heading-title{line-height:28px!important}
/* ---- heading widths like prod: h3 and bold (non-display) h2s are normal width; display-sub section titles stay 110% ---- */
.elementor-widget-heading h3.elementor-heading-title{font-stretch:100%!important}
.e-con.wl-narrow h2.elementor-heading-title,.e-con.wl-card h2.elementor-heading-title,body.page-id-12115 h2.elementor-heading-title,body.page-id-10000 .e-con .e-con h2.elementor-heading-title,body.page-id-10005 .e-con .e-con h2.elementor-heading-title,.elementor-element-bb64739 h2.elementor-heading-title{font-stretch:100%!important}

/* ---- /work: 672px column like prod's max-w-2xl ---- */
@media (min-width:768px){body.page-id-10000 .elementor-element-d55b07e6 > .e-con-inner > .e-con{max-width:672px}}
/* ---- /about "Cómo trabajamos": grid 48px under the title; number → title 24px, title → text 12px ---- */
.elementor-element-d5a56d8c .elementor-widget-heading + .e-con{margin-top:24px!important}
.elementor-element-d5a56d8c .e-con.e-child > .elementor-widget-heading:has(> p){margin-bottom:8px!important}
.elementor-element-d5a56d8c .e-con.e-child > .elementor-widget-text-editor{margin-top:-4px!important}
/* ---- home: pricing intro row 12px under the H2 at every width; hero lead stays 16/26 ---- */
body.home .elementor-element-64f47009.e-con.e-parent > .e-con-inner > .e-con.e-con-full:has(> .e-con > .elementor-widget-button){margin-top:12px!important}
:is([data-elementor-type="wp-page"],[data-elementor-type="wp-post"]) > .e-con.e-parent:first-child.elementor-element-34bf1e7a .elementor-widget-text-editor,:is([data-elementor-type="wp-page"],[data-elementor-type="wp-post"]) > .e-con.e-parent:first-child.elementor-element-34bf1e7a .elementor-widget-text-editor p{font-size:18px!important;line-height:28px!important}
@media (max-width:767px){:is([data-elementor-type="wp-page"],[data-elementor-type="wp-post"]) > .e-con.e-parent:first-child.elementor-element-34bf1e7a .elementor-widget-text-editor,:is([data-elementor-type="wp-page"],[data-elementor-type="wp-post"]) > .e-con.e-parent:first-child.elementor-element-34bf1e7a .elementor-widget-text-editor p{font-size:16px!important;line-height:26px!important}}
