.elementor-kit-16{--e-global-color-primary:#191A1F;--e-global-color-secondary:#6E6A66;--e-global-color-text:#3A3A40;--e-global-color-accent:#F24D26;--e-global-color-vunto_paper:#FBF9F6;--e-global-color-vunto_cream:#F1EBE1;--e-global-color-vunto_dark:#16151B;--e-global-color-vunto_vermilion_text:#C73E18;--e-global-color-vunto_line:#E6E1D8;--e-global-color-vunto_white:#FFFFFF;--e-global-typography-primary-font-family:"Fraunces";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Hanken Grotesk";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Hanken Grotesk";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Hanken Grotesk";--e-global-typography-accent-font-weight:700;--e-global-typography-primary-line-height:1.08em;--e-global-typography-secondary-line-height:1.25em;--e-global-typography-text-font-size:18px;--e-global-typography-text-line-height:1.7em;--e-global-typography-accent-font-size:13px;--e-global-typography-accent-letter-spacing:1.4px;color:#3A3A40;font-family:"Hanken Grotesk", sans-serif;font-size:18px;font-weight:400;line-height:1.7em;}.elementor-kit-16 button,.elementor-kit-16 input[type="button"],.elementor-kit-16 input[type="submit"],.elementor-kit-16 .elementor-button{background-color:#F24D26;font-family:"Hanken Grotesk", sans-serif;font-size:16px;font-weight:600;color:#FFFFFF;border-radius:8px 8px 8px 8px;padding:17px 34px 17px 34px;}.elementor-kit-16 button:hover,.elementor-kit-16 button:focus,.elementor-kit-16 input[type="button"]:hover,.elementor-kit-16 input[type="button"]:focus,.elementor-kit-16 input[type="submit"]:hover,.elementor-kit-16 input[type="submit"]:focus,.elementor-kit-16 .elementor-button:hover,.elementor-kit-16 .elementor-button:focus{background-color:#C73E18;color:#FFFFFF;}.elementor-kit-16 e-page-transition{background-color:#FFBC7D;}.elementor-kit-16 a{color:#C73E18;}.elementor-kit-16 a:hover{color:#F24D26;}.elementor-kit-16 h1{color:#191A1F;font-family:"Fraunces", sans-serif;font-size:64px;font-weight:600;line-height:1.05em;letter-spacing:-1px;}.elementor-kit-16 h2{color:#191A1F;font-family:"Fraunces", sans-serif;font-size:44px;font-weight:600;line-height:1.12em;letter-spacing:-0.5px;}.elementor-kit-16 h3{color:#191A1F;font-family:"Fraunces", sans-serif;font-size:28px;font-weight:600;line-height:1.22em;}.elementor-kit-16 h4{color:#191A1F;font-family:"Hanken Grotesk", sans-serif;font-size:21px;font-weight:600;line-height:1.35em;}.elementor-kit-16 h5{color:#191A1F;font-family:"Hanken Grotesk", sans-serif;font-size:18px;font-weight:600;}.elementor-kit-16 h6{color:#C73E18;font-family:"Hanken Grotesk", sans-serif;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-16 h1{font-size:48px;}.elementor-kit-16 h2{font-size:36px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-16 h1{font-size:36px;}.elementor-kit-16 h2{font-size:29px;}.elementor-kit-16 h3{font-size:23px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS */html{scroll-behavior:smooth}
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
::selection{background:#F24D26;color:#FBF9F6}
a{transition:color .2s ease}
.elementor-button{transition:transform .18s ease,background-color .2s ease,box-shadow .2s ease}
.elementor-button:hover{transform:translateY(-2px);box-shadow:0 12px 26px -10px rgba(242,77,38,.55)}
:focus-visible{outline:2px solid #F24D26;outline-offset:3px}
img{max-width:100%;height:auto}
.vunto-eyebrow{display:inline-block;font-family:'Hanken Grotesk',sans-serif;font-weight:700;font-size:13px;letter-spacing:1.6px;text-transform:uppercase;color:#C73E18}
.e-con > .e-con-inner{align-items:stretch}
.elementor-widget-icon .elementor-icon-wrapper{text-align:left}
.elementor-widget-icon .elementor-icon{justify-content:flex-start}
.elementor-widget-icon-list .elementor-icon-list-icon{margin-top:.18em}

.vunto-eyebrow{display:block}
.vunto-eyebrow .elementor-heading-title{display:inline-block}

/* force-left card content (override Elementor v4 default center) */
.e-con > .e-con-inner{align-items:stretch!important}
.elementor-widget-icon .elementor-icon-wrapper{text-align:left!important}
.elementor-widget-icon .elementor-icon{justify-content:flex-start!important}

/* Vunto v2 animations */
/* Card hover lift on grid children */
.e-con.e-grid > .e-con.e-flex { transition: transform .28s ease, box-shadow .28s ease; }
.e-con.e-grid > .e-con.e-flex:hover { transform: translateY(-4px); box-shadow: 0 20px 44px -22px rgba(25,26,31,0.18); }
/* Image hover zoom (within cards) */
.vunto-card-image img { transition: transform .55s cubic-bezier(.22,.61,.36,1); }
.e-con.e-grid > .e-con.e-flex:hover .vunto-card-image img { transform: scale(1.05); }
/* Sticky header: backdrop-blur when stuck */
.elementor-sticky--active.e-con { background-color: rgba(251,249,246,.86) !important; -webkit-backdrop-filter: saturate(180%) blur(12px); backdrop-filter: saturate(180%) blur(12px); box-shadow: 0 4px 24px -14px rgba(25,26,31,.10); }
/* Button glow tightened */
.elementor-button:hover { box-shadow: 0 14px 30px -10px rgba(242,77,38,.50), 0 2px 0 rgba(255,255,255,.08) inset; }
/* Hero card subtle float */
@keyframes vuntoFloat { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-6px); } }
/* Image rounded outer top-corners only (when bleeding within card padding) */
.vunto-card-image .elementor-widget-container { overflow: hidden; border-radius: 15px 15px 0 0; }
.vunto-card-image img { display: block; width: 100%; height: auto; object-fit: cover; aspect-ratio: 16/9; }
/* Will-change for perf */
.e-con.e-grid > .e-con.e-flex { will-change: transform; }

/* Vunto v3: contained card images (no bleed) */
.vunto-card-image .elementor-widget-container { margin: 0 0 18px !important; border-radius: 12px; overflow: hidden; }
.vunto-card-image img { width: 100% !important; height: auto !important; aspect-ratio: 16/9; object-fit: cover; }
.vunto-card-image { margin: 0 !important; }

/* Vunto v4: logo dot + color refresh + depth */
.elementor-location-header .elementor-widget-heading:first-of-type .elementor-heading-title { position: relative; display: inline-block; padding-top: 8px; }
.elementor-location-header .elementor-widget-heading:first-of-type .elementor-heading-title::before { content: ''; position: absolute; top: 0; left: 6px; width: 8px; height: 8px; border-radius: 50%; background: #F24D26; box-shadow: 0 0 0 0 rgba(242,77,38,0); animation: vuntoDot 3.4s ease-in-out infinite; }
@keyframes vuntoDot { 0%, 100% { box-shadow: 0 0 0 0 rgba(242,77,38,0); } 50% { box-shadow: 0 0 0 6px rgba(242,77,38,0.18); } }
body { background-color: #F8F6F1; }
.e-con.e-flex.e-con-boxed { box-shadow: 0 4px 18px -14px rgba(25, 26, 31, 0.10); }
.e-con.e-grid > .e-con.e-flex:hover { box-shadow: 0 28px 56px -22px rgba(25,26,31,0.22), 0 6px 14px -8px rgba(25,26,31,0.10); }
.e-con[style*='background-color:#F1EBE1'], .e-con[style*='background-color: #F1EBE1'] { background-image: radial-gradient(ellipse 1100px 600px at 50% -10%, rgba(255,255,255,0.65), transparent 70%); }
.elementor-page > .elementor section:first-of-type .e-con-boxed:has(.elementor-widget-icon-list) { transition: transform .35s ease, box-shadow .35s ease; transform: perspective(900px) rotateX(0deg) rotateY(0deg); }
.elementor-page > .elementor section:first-of-type .e-con-boxed:has(.elementor-widget-icon-list):hover { transform: perspective(900px) rotateX(1.5deg) rotateY(-1.5deg) translateY(-4px); }
h2 { letter-spacing: -0.4px; }
.e-con[style*='background-color:#16151B'], .e-con[style*='background-color: #16151B'] { background-image: radial-gradient(ellipse 900px 500px at 50% 0%, rgba(255,255,255,0.04), transparent 60%); }
.vunto-card-image .elementor-widget-container { box-shadow: 0 8px 24px -16px rgba(25,26,31,0.18); }
.elementor-button { background-image: linear-gradient(180deg, rgba(255,255,255,0.08), rgba(0,0,0,0.05)); }
.elementor-button:hover { background-image: linear-gradient(180deg, rgba(255,255,255,0.14), rgba(0,0,0,0.05)); }

/* Vunto v5: depth + textures + un-flatten */
.e-con[style*='background-color:#F1EBE1'], .e-con[style*='background-color: #F1EBE1'] { background-image: url('https://vunto.online/wp-content/uploads/2026/05/texture-cool-paper-grain.png'), radial-gradient(ellipse 1100px 600px at 50% -10%, rgba(255,255,255,0.65), transparent 70%); background-size: cover; background-blend-mode: overlay, normal; }
.elementor-page > div > section + section::before, .elementor section > .e-con:not(:first-child) { position: relative; }
.e-con.e-grid > .e-con.e-flex { box-shadow: 0 1px 0 rgba(25,26,31,0.04), 0 6px 18px -10px rgba(25,26,31,0.10); border-color: rgba(230,225,216,0.85); }
.e-con.e-grid > .e-con.e-flex:hover { transform: translateY(-6px); box-shadow: 0 30px 60px -22px rgba(25,26,31,0.22), 0 8px 20px -10px rgba(25,26,31,0.12); border-color: rgba(242,77,38,0.18); }
.e-con.e-grid > .e-con.e-flex:not([style*='background']):hover { transform: translateY(-3px); }
.elementor-widget-icon-list { /* placeholder */ }
h1 { letter-spacing: -1.5px; }
h2 { letter-spacing: -0.6px; }
.e-con[style*='background-color:#16151B'], .e-con[style*='background-color: #16151B'] { background-image: radial-gradient(ellipse 900px 500px at 50% 0%, rgba(255,255,255,0.06), transparent 60%), radial-gradient(ellipse 600px 400px at 100% 100%, rgba(242,77,38,0.08), transparent 70%); }
.elementor-sticky--active.e-con { background-color: rgba(248,246,241,0.82) !important; border-bottom: 1px solid rgba(25,26,31,0.06); }
.e-con.e-grid > .e-con.e-flex:hover .vunto-card-image img { transform: scale(1.07); }
.elementor-page .e-con-boxed:has(> .e-con-inner > .elementor-widget-heading + .elementor-widget-text-editor + .elementor-widget-divider) { animation: vuntoFloatGentle 6.5s ease-in-out infinite; }
@keyframes vuntoFloatGentle { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-5px); } }
::selection { background: #F24D26; color: #FBF9F6; }
body { font-feature-settings: 'kern' 1, 'liga' 1, 'ss01' 1; }
.e-con[style*='background-color:#F1EBE1']::after, .e-con[style*='background-color: #F1EBE1']::after { content: ''; position: absolute; inset: 0; pointer-events: none; background-image: radial-gradient(ellipse 800px 300px at 50% 50%, transparent 60%, rgba(25,26,31,0.025) 100%); }
html { scroll-padding-top: 84px; }
.elementor-button { box-shadow: 0 1px 0 rgba(255,255,255,0.18) inset, 0 8px 18px -8px rgba(242,77,38,0.35); }
.elementor-button:hover { box-shadow: 0 1px 0 rgba(255,255,255,0.22) inset, 0 18px 36px -12px rgba(242,77,38,0.55); }

/* v6-anim-fix */
.elementor-invisible{visibility:visible !important;animation:vuntoFadeUp 0.7s ease-out both;}
@keyframes vuntoFadeUp{0%{opacity:0;transform:translateY(28px);}100%{opacity:1;transform:translateY(0);}}

/* v8-section-contrast */
/* Alternating tonal bg on top-level cream containers so section boundaries are visible. */
main > .elementor > .e-con.e-parent, .elementor-section-wrap > .elementor-section { position:relative; }
main .e-con.e-parent:nth-of-type(even):not([style*="background-color: rgb(25"]):not([style*="background-color: rgb(20"]):not([style*="background-color: rgb(15"]) { background-color: #EFEAE0 !important; }
main .e-con.e-parent:nth-of-type(odd):not([style*="background-color: rgb(25"]):not([style*="background-color: rgb(20"]):not([style*="background-color: rgb(15"]) { background-color: #F8F6F1 !important; }
/* Subtle line at the top of each parent section so boundary is felt even at similar tones. */
main .e-con.e-parent + .e-con.e-parent::before { content:""; position:absolute; top:0; left:10%; right:10%; height:1px; background: linear-gradient(90deg, transparent, rgba(25,26,31,0.08), transparent); }

/* v8-phones */
.vunto-phone-shot img{max-height:520px !important;width:auto !important;max-width:260px !important;border-radius:32px;box-shadow:0 30px 80px -20px rgba(25,26,31,0.32),0 0 0 1px rgba(25,26,31,0.04);background:#fff;}
.vunto-phones-section{position:relative;}
.vunto-phones-section .e-con-inner > .e-con{align-items:flex-end !important;}
@media (max-width:768px){.vunto-phone-shot img{max-height:400px !important;max-width:200px !important;}}

/* v8-logo — remove old pulsing dot now that logo SVG carries the brand mark. */
.elementor-location-header .elementor-widget-heading:first-of-type .elementor-heading-title::before{display:none !important;}
.site-logo img, .custom-logo, .elementor-element .elementor-widget-image img[src*="vunto-logo"]{max-height:46px !important;width:auto !important;}
@media (max-width:768px){.site-logo img, .custom-logo, .elementor-element .elementor-widget-image img[src*="vunto-logo"]{max-height:36px !important;}}

/* v8b-logo-fix */
.vunto-site-logo{flex-shrink:0;}
.vunto-site-logo img{display:block !important;height:46px !important;width:auto !important;max-width:none !important;min-width:160px;}
@media (max-width:768px){.vunto-site-logo img{height:34px !important;min-width:120px;}}
.vunto-site-logo a{display:inline-block;line-height:0;}

/* v9-mobile-header */
@media (max-width:1024px){
  .elementor-location-header .e-con.e-parent{padding:10px 16px !important;}
  .elementor-location-header .e-con-boxed > .e-con-inner{flex-wrap:nowrap !important;gap:12px !important;}
  .elementor-location-header .e-con.e-child{flex-wrap:nowrap !important;}
  .vunto-site-logo img{height:32px !important;min-width:110px !important;}
  .elementor-location-header .elementor-widget-button{display:none !important;}
  .elementor-location-header .elementor-nav-menu--main{margin-left:auto;}
  .elementor-location-header .elementor-menu-toggle{padding:6px !important;font-size:22px !important;}
}
@media (max-width:480px){
  .vunto-site-logo img{height:28px !important;min-width:96px !important;}
  .elementor-location-header .e-con.e-parent{padding:8px 14px !important;}
}

/* v9-mobile-spacing */
@media (max-width:1024px){
  .vunto-phones-section{padding-top:24px !important;padding-bottom:24px !important;}
  .vunto-phones-section .e-con-inner{flex-direction:column !important;gap:36px !important;}
  .vunto-phone-shot img{max-height:460px !important;max-width:220px !important;}
  main .e-con.e-parent{padding-top:48px !important;padding-bottom:48px !important;}
}
@media (max-width:480px){
  main .e-con.e-parent{padding-top:36px !important;padding-bottom:36px !important;padding-left:16px !important;padding-right:16px !important;}
  .vunto-phones-section{padding-top:16px !important;padding-bottom:16px !important;}
}
.elementor-location-header img[src*="vunto-logo"]{background:transparent !important;}

/* v9-logo-blend */
.elementor-location-header img[src*="vunto-logo-final"]{mix-blend-mode:multiply;background:transparent !important;}

/* v10-palette — cooler neutral, less antique. */
:root{ --vunto-bg:#FAFAFA; --vunto-bg-alt:#F2F1EE; --vunto-card:#FFFFFF; --vunto-ink:#1A1B22; --vunto-muted:#6E6E76; --vunto-accent:#F24D26; --vunto-card-border:rgba(26,27,34,0.06); }
body{background-color:var(--vunto-bg) !important;}
main .e-con.e-parent:nth-of-type(even){background-color:var(--vunto-bg-alt) !important;}
main .e-con.e-parent:nth-of-type(odd){background-color:var(--vunto-bg) !important;}
/* Cards with visible boundary on neutral bg */
.e-con.e-grid > .e-con.e-flex,
.e-con.e-grid > .e-con.e-con-boxed,
.elementor-widget-icon-box,
.e-con[class*="card"],
.e-con-boxed.e-flex:has(.elementor-widget-heading + .elementor-widget-text-editor),
.elementor-widget-image-box .elementor-image-box-wrapper{
  background-color:var(--vunto-card) !important;
  border:1px solid var(--vunto-card-border);
  border-radius:18px;
  box-shadow:0 1px 2px rgba(26,27,34,0.04),0 8px 24px -16px rgba(26,27,34,0.08);
}
/* Hero accent card */
.e-con-boxed:has(.elementor-widget-icon-list){background-color:var(--vunto-card) !important;}
/* Sticky header lighter glass */
.elementor-sticky--active.e-con{background-color:rgba(250,250,250,0.86) !important;}

/* v10-card-scope — tighten card styling, do not wrap top-level hero columns. */
/* Reset over-eager card rules first. */
.e-con.e-grid > .e-con.e-flex,
.e-con.e-grid > .e-con.e-con-boxed,
.e-con[class*="card"],
.e-con-boxed.e-flex:has(.elementor-widget-heading + .elementor-widget-text-editor),
.elementor-widget-image-box .elementor-image-box-wrapper{ background-color:transparent !important; border:none !important; box-shadow:none !important; border-radius:0 !important; }
/* Real cards: only direct children of grid containers AND not the page hero. */
main .e-con.e-grid > .e-con-boxed:not(.vunto-not-card){
  background-color:var(--vunto-card) !important;
  border:1px solid var(--vunto-card-border) !important;
  border-radius:18px !important;
  box-shadow:0 1px 2px rgba(26,27,34,0.04),0 8px 24px -16px rgba(26,27,34,0.10) !important;
}
/* The hero informe card on Inicio keeps its bg via inline style; just ensure border exists. */

/* v10c-mock-card */
.vunto-mock-card{ background-color:#FFFFFF !important; border:1px solid var(--vunto-card-border) !important; border-radius:22px !important; padding:32px !important; box-shadow:0 2px 4px rgba(26,27,34,0.04),0 24px 60px -32px rgba(26,27,34,0.18) !important; }

/* v10d-mock-id — target informe card by id directly. */
.elementor-element-c7c2050{ background-color:#FFFFFF !important; border:1px solid rgba(26,27,34,0.06) !important; border-radius:22px !important; padding:32px !important; box-shadow:0 2px 4px rgba(26,27,34,0.04),0 24px 60px -32px rgba(26,27,34,0.18) !important; }

/* v11-testimonials */
.vunto-testimonial{background:#FFFFFF;border:1px solid rgba(26,27,34,0.06);border-radius:18px;flex:1 1 280px;min-width:240px;box-shadow:0 1px 2px rgba(26,27,34,0.04),0 16px 36px -24px rgba(26,27,34,0.12);}
.vunto-testimonials-grid{align-items:stretch !important;}
.vunto-testimonials-section{position:relative;}
@media (max-width:768px){.vunto-testimonial{flex:1 1 100%;}}
/* v11-2col-feature */
.vunto-feature-row .e-con-inner{align-items:center !important;}
.vunto-feature-row .vunto-phone-shot img{max-height:540px !important;max-width:280px !important;}
.vunto-feature-row .vunto-eyebrow{color:#6E6E76;}
@media (max-width:880px){
  .vunto-feature-row{flex-direction:column !important;}
  .vunto-feature-row .e-con-inner{flex-direction:column !important;}
  .vunto-feature-row .vunto-phone-shot img{max-height:420px !important;max-width:220px !important;}
}

/* v11-testimonials-byid */
/* ES grid */
.elementor-element-378a1f8{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:24px !important;align-items:stretch !important;}
/* EN grid */
.elementor-element-e29b533{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:24px !important;align-items:stretch !important;}
/* Cards ES */
.elementor-element-d985e69, .elementor-element-2224a35, .elementor-element-c18ecf3,
/* Cards EN */
.elementor-element-c86ca82, .elementor-element-c3c41a6, .elementor-element-1b2dee5{
  background:#FFFFFF !important;
  border:1px solid rgba(26,27,34,0.08) !important;
  border-radius:20px !important;
  padding:28px !important;
  box-shadow:0 1px 2px rgba(26,27,34,0.04),0 18px 40px -26px rgba(26,27,34,0.18) !important;
}
@media (max-width:880px){
  .elementor-element-378a1f8,.elementor-element-e29b533{grid-template-columns:1fr !important;}
}

/* v11-testimonials-grid-fix */
.elementor-element-378a1f8 > .e-con-inner,
.elementor-element-e29b533 > .e-con-inner{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:24px !important;align-items:stretch !important;}
.elementor-element-378a1f8 > .e-con-inner > .e-con,
.elementor-element-e29b533 > .e-con-inner > .e-con{width:100% !important;max-width:100% !important;}
@media (max-width:880px){
  .elementor-element-378a1f8 > .e-con-inner,
  .elementor-element-e29b533 > .e-con-inner{grid-template-columns:1fr !important;}
}

/* v11-grid-width-fix */
.elementor-element-378a1f8,.elementor-element-e29b533{ width:100% !important; max-width:1180px !important; margin-left:auto !important; margin-right:auto !important;}
.elementor-element-378a1f8 > .e-con-inner,.elementor-element-e29b533 > .e-con-inner{ max-width:1180px !important; width:100% !important;}

/* v11-section-stretch */
.elementor-element-1e67eda > .e-con-inner > *,
.elementor-element-f6bcdfa > .e-con-inner > *{ align-self:stretch !important; }
.elementor-element-1e67eda > .e-con-inner,
.elementor-element-f6bcdfa > .e-con-inner{ width:100% !important; align-items:stretch !important; }

/* v11-grid-final — grid only on .e-con-inner, outer stays flex. */
.elementor-element-378a1f8,.elementor-element-e29b533{display:flex !important; flex-direction:column !important;}
.elementor-element-378a1f8 > .e-con-inner,
.elementor-element-e29b533 > .e-con-inner{display:grid !important; grid-template-columns:repeat(3,1fr) !important; gap:24px !important; width:100% !important; max-width:1180px !important;}
@media (max-width:880px){
  .elementor-element-378a1f8 > .e-con-inner,.elementor-element-e29b533 > .e-con-inner{grid-template-columns:1fr !important;}
}

/* v12-icon-cards — wrap each icon-box widget in card style. */
.elementor-widget-icon-box{ background:#FFFFFF !important; border:1px solid rgba(26,27,34,0.06) !important; border-radius:18px !important; padding:28px !important; box-shadow:0 1px 2px rgba(26,27,34,0.04), 0 16px 36px -24px rgba(26,27,34,0.12) !important; }
.elementor-widget-icon-box .elementor-icon-box-icon{margin-bottom:14px !important;}
.elementor-widget-icon-box .elementor-icon-box-title{margin:0 0 8px !important; font-weight:600 !important;}
.elementor-widget-icon-box .elementor-icon-box-description{color:#42434B !important; line-height:1.55 !important;}

/* v12-pro-card-restore — keep Pro plan card dark; same for any container explicitly styled dark. */
.elementor-element-18b77d8, .elementor-element-69113c4{ background-color:#16151B !important; border-color:rgba(255,255,255,0.08) !important; }
.elementor-element-18b77d8 *:not(a):not(.elementor-button), .elementor-element-69113c4 *:not(a):not(.elementor-button){ color:#FAFAFA !important; }
.elementor-element-18b77d8 .elementor-heading-title,.elementor-element-69113c4 .elementor-heading-title{ color:#FFFFFF !important; }
/* Recomendado eyebrow ticker on Pro */
.elementor-element-18b77d8 [class*=eyebrow], .elementor-element-18b77d8 .recomendado{color:#F24D26 !important;}

/* v12b-pro-card — higher specificity, restore dark */
body main .e-con.e-grid > .elementor-element-18b77d8,
body main .elementor-element-18b77d8{ background-color:#16151B !important; border:1px solid rgba(255,255,255,0.08) !important; color:#FAFAFA !important; }
body main .elementor-element-18b77d8 .elementor-heading-title{ color:#FFFFFF !important; }
body main .elementor-element-18b77d8 p, body main .elementor-element-18b77d8 li, body main .elementor-element-18b77d8 .elementor-widget-text-editor{ color:#D8D6E0 !important; }
body main .elementor-element-18b77d8 .elementor-icon-list-text{ color:#D8D6E0 !important; }
body main .elementor-element-18b77d8 .elementor-button{ background-color:#F24D26 !important; color:#FFFFFF !important; }
body main .elementor-element-69113c4{ background-color:#16151B !important; }
body main .elementor-element-69113c4 .elementor-heading-title, body main .elementor-element-69113c4 p{ color:#FAFAFA !important; }

/* v12c-pro-specificity — match Elementor per-post CSS chain depth. */
body.elementor-page .elementor-64 .elementor-element.elementor-element.elementor-element-18b77d8,
body.elementor-page .elementor-108 .elementor-element.elementor-element.elementor-element-18b77d8,
html body .elementor-element.elementor-element-18b77d8{ background-color:#16151B !important; }
html body .elementor-element-18b77d8 .elementor-heading-title{ color:#FFFFFF !important; }
html body .elementor-element-18b77d8 .elementor-icon-list-text, html body .elementor-element-18b77d8 p, html body .elementor-element-18b77d8 li{ color:#D8D6E0 !important; }
html body .elementor-element-18b77d8 .elementor-button{ background-color:#F24D26 !important; color:#FFFFFF !important; border-color:#F24D26 !important;}

/* v13-mobile-header-compact */
@media (max-width:1024px){
  .elementor-location-header .vunto-lang-switcher{font-size:10px !important;gap:2px !important;}
  .elementor-location-header .vunto-lang-switcher .vunto-lang{padding:3px 7px !important;border-radius:999px !important;}
  .elementor-location-header .e-con.e-child{flex-wrap:nowrap !important; gap:8px !important; flex-shrink:1 !important;}
  .elementor-location-header .vunto-lang-widget{flex-shrink:0 !important;}
}
@media (max-width:480px){
  .elementor-location-header .vunto-lang-switcher{font-size:10px !important;}
  .elementor-location-header .vunto-lang-switcher .vunto-lang{padding:2px 6px !important;}
}

/* v13b-mobile-lang-hide — lang switcher in mobile menu only. */
@media (max-width:768px){
  .elementor-location-header .vunto-lang-widget{display:none !important;}
}

/* v13c-pro-text — force light text on every descendant of dark cards. */
html body .elementor-element-18b77d8, html body .elementor-element-18b77d8 *,
html body .elementor-element-69113c4, html body .elementor-element-69113c4 *{ color:#EDEBF0 !important; }
html body .elementor-element-18b77d8 .elementor-heading-title,
html body .elementor-element-69113c4 .elementor-heading-title{ color:#FFFFFF !important; }
html body .elementor-element-18b77d8 .elementor-button,
html body .elementor-element-69113c4 .elementor-button{ background-color:#F24D26 !important; color:#FFFFFF !important; border-color:#F24D26 !important;}
html body .elementor-element-18b77d8 .elementor-icon-list-icon i, html body .elementor-element-18b77d8 .elementor-icon-list-icon svg{ color:#F24D26 !important; fill:#F24D26 !important;}
html body .elementor-element-18b77d8 [class*=eyebrow], html body .elementor-element-18b77d8 .recomendado{ color:#F24D26 !important;}

/* v14-card-.elementor-kit-16 — grid children are nested under e-con-inner. */
main .e-con.e-grid > .e-con-inner > .e-con.e-child:not(.vunto-not-card):not(.elementor-element-18b77d8):not(.elementor-element-69113c4){
  background-color:#FFFFFF !important;
  border:1px solid rgba(26,27,34,0.06) !important;
  border-radius:18px !important;
  padding:28px !important;
  box-shadow:0 1px 2px rgba(26,27,34,0.04),0 16px 36px -24px rgba(26,27,34,0.12) !important;
}

/* v14b-card-no-main — no main ancestor. */
html body .e-con.e-grid > .e-con-inner > .e-con.e-child:not(.vunto-not-card):not(.elementor-element-18b77d8):not(.elementor-element-69113c4){
  background-color:#FFFFFF !important;
  border:1px solid rgba(26,27,34,0.06) !important;
  border-radius:18px !important;
  padding:28px !important;
  box-shadow:0 1px 2px rgba(26,27,34,0.04),0 16px 36px -24px rgba(26,27,34,0.12) !important;
}

/* v14c-card-text — force dark text inside white cards even on dark sections. */
html body .e-con.e-grid > .e-con-inner > .e-con.e-child:not(.vunto-not-card):not(.elementor-element-18b77d8):not(.elementor-element-69113c4) .elementor-heading-title{ color:#1A1B22 !important; }
html body .e-con.e-grid > .e-con-inner > .e-con.e-child:not(.vunto-not-card):not(.elementor-element-18b77d8):not(.elementor-element-69113c4) p,
html body .e-con.e-grid > .e-con-inner > .e-con.e-child:not(.vunto-not-card):not(.elementor-element-18b77d8):not(.elementor-element-69113c4) .elementor-icon-list-text,
html body .e-con.e-grid > .e-con-inner > .e-con.e-child:not(.vunto-not-card):not(.elementor-element-18b77d8):not(.elementor-element-69113c4) .elementor-widget-text-editor{ color:#42434B !important; }

/* v15-hero-phone */
.vunto-hero-phone img{max-height:580px !important;max-width:300px !important;width:auto !important;height:auto !important;border-radius:36px !important;box-shadow:0 30px 80px -20px rgba(26,27,34,0.35),0 0 0 1px rgba(26,27,34,0.05) !important;background:#FFFFFF !important;}
@media (max-width:880px){.vunto-hero-phone img{max-height:440px !important;max-width:240px !important;}}

/* v15-pricing-align — equal-height pricing tier cards with bottom-aligned buttons. */
html body .e-con.e-grid > .e-con-inner > .e-con.e-child:has(.elementor-widget-button){
  display:flex !important; flex-direction:column !important; justify-content:space-between !important;
}
html body .e-con.e-grid > .e-con-inner > .e-con.e-child .elementor-widget-button{ margin-top:auto !important; }
html body .e-con.e-grid > .e-con-inner{ align-items:stretch !important; }
html body .e-con.e-grid > .e-con-inner > .e-con.e-child{ height:100% !important; min-height:100% !important; }
/* v15-spacing-tighten */
html body main .e-con.e-parent, html body article .e-con.e-parent{ padding-top:72px !important; padding-bottom:72px !important; }
@media (max-width:1024px){ html body main .e-con.e-parent, html body article .e-con.e-parent{ padding-top:48px !important; padding-bottom:48px !important; } }
@media (max-width:480px){ html body main .e-con.e-parent, html body article .e-con.e-parent{ padding-top:36px !important; padding-bottom:36px !important; } }
/* v15-icon-color — ensure icons render visibly on neutral bg. */
html body .elementor-widget-icon-box .elementor-icon i,
html body .elementor-widget-icon-box .elementor-icon svg,
html body .elementor-widget-icon i,
html body .elementor-widget-icon svg{ color:#F24D26 !important; fill:#F24D26 !important; font-size:24px !important; }
html body .elementor-widget-icon-box .elementor-icon{ background:transparent !important; padding:0 !important; }

/* v16-blog-grid — 3-col grid + card style on archive. */
.site-main{padding:48px 24px !important; max-width:1240px !important; margin:0 auto !important;}
.site-main .page-header{margin-bottom:40px !important; text-align:center !important;}
.site-main .page-header h1{font-family:Fraunces,Playfair,serif !important; font-size:48px !important; font-weight:600 !important; color:#1A1B22 !important; text-transform:none !important;}
.site-main .page-header h1::before{content:"Blog "; display:none;}
.site-main .page-content{display:grid !important; grid-template-columns:repeat(3,1fr) !important; gap:28px !important;}
.site-main .page-content > article.post{background:#FFFFFF !important; border:1px solid rgba(26,27,34,0.06) !important; border-radius:18px !important; overflow:hidden !important; box-shadow:0 1px 2px rgba(26,27,34,0.04),0 16px 36px -24px rgba(26,27,34,0.12) !important; transition:transform 0.2s ease, box-shadow 0.2s ease; display:flex !important; flex-direction:column !important; padding:0 !important; margin:0 !important;}
.site-main .page-content > article.post:hover{transform:translateY(-4px); box-shadow:0 4px 8px rgba(26,27,34,0.06),0 32px 60px -32px rgba(26,27,34,0.22) !important;}
.site-main .page-content > article.post .post-thumbnail{margin:0 !important; padding:0 !important;}
.site-main .page-content > article.post .post-thumbnail img{width:100% !important; height:200px !important; object-fit:cover !important; display:block !important;}
.site-main .page-content > article.post .entry-header,.site-main .page-content > article.post .entry-content,.site-main .page-content > article.post header,.site-main .page-content > article.post footer{padding:0 24px !important;}
.site-main .page-content > article.post .entry-title,.site-main .page-content > article.post h2{font-family:Fraunces,Playfair,serif !important; font-size:20px !important; font-weight:600 !important; color:#1A1B22 !important; margin-top:20px !important; margin-bottom:10px !important; line-height:1.35 !important;}
.site-main .page-content > article.post .entry-title a,.site-main .page-content > article.post h2 a{color:inherit !important; text-decoration:none !important;}
.site-main .page-content > article.post .entry-content,.site-main .page-content > article.post .entry-summary,.site-main .page-content > article.post p{font-size:14px !important; line-height:1.55 !important; color:#42434B !important; margin-bottom:16px !important; padding-bottom:0 !important;}
.site-main .page-content > article.post .entry-meta{display:none !important;}
.site-main .page-content > article.post footer{padding-bottom:24px !important; margin-top:auto !important;}
@media (max-width:1024px){ .site-main .page-content{grid-template-columns:repeat(2,1fr) !important;} }
@media (max-width:680px){ .site-main .page-content{grid-template-columns:1fr !important;} }

/* v17-bg-overlay — background images with dark overlay on key sections. */
/* Inicio: final CTA + 5dim section */
.elementor-30 .elementor-element[style*="background-color: rgb(25"], .elementor-30 .elementor-element[style*="background-color: rgb(20"], .elementor-30 .elementor-element[style*="background-color: rgb(15"]{
  position:relative;
  background-image: linear-gradient(135deg, rgba(20,21,28,0.85) 0%, rgba(35,32,40,0.92) 100%), url("https://vunto.online/wp-content/uploads/2026/05/mixed-old-new-1024x559.png") !important;
  background-size: cover !important;
  background-position: center !important;
  background-blend-mode: multiply !important;
}
/* Descargar hero — add subtle bg */
.page-id-73 main > .e-con.e-parent:first-of-type, .page-id-75 main > .e-con.e-parent:first-of-type,
.elementor-73 .elementor-element-5007aec, .elementor-75 > .elementor-element > .e-con:first-child{
  position:relative;
  background-image: linear-gradient(180deg, rgba(250,250,250,0.94) 0%, rgba(242,241,238,0.96) 100%), url("https://vunto.online/wp-content/uploads/2026/05/modern-headphones-phone-1024x559.png") !important;
  background-size: cover !important;
  background-position: center !important;
}

/* v17-precios-fit */
.elementor-element-9a59db9{ min-height:auto !important; height:auto !important; padding-top:24px !important; padding-bottom:64px !important; }

/* v17b-descargar-bg */
html body .elementor-73 .elementor-element-a377cb2{
  position:relative;
  background-image: linear-gradient(135deg, rgba(250,250,250,0.78) 0%, rgba(242,241,238,0.92) 100%), url("https://vunto.online/wp-content/uploads/2026/05/modern-headphones-phone-1024x559.png") !important;
  background-size: cover !important;
  background-position: center !important;
  background-attachment: fixed !important;
}
@media (max-width:1024px){ html body .elementor-73 .elementor-element-a377cb2{ background-attachment:scroll !important; } }

/* v17c-pricing-section-fit — force section to content height. */
html body .elementor-element-9a59db9{ min-height:auto !important; height:auto !important; }
html body .elementor-element-9a59db9 > .e-con-inner{ min-height:auto !important; height:auto !important; }
html body .elementor-element-9a59db9 .e-grid{ min-height:auto !important; height:auto !important; }
html body .elementor-element-9a59db9 .e-grid > .e-con-inner{ min-height:auto !important; height:auto !important; }
/* Reset min-height:100% rule on grid children for pricing section only — cards should grow naturally but cap at content. */
html body .elementor-element-9a59db9 .e-grid > .e-con-inner > .e-con.e-child{ min-height:auto !important; height:auto !important; align-self:stretch !important; }

/* v18-grid-rows — grid rows auto so empty cells do not reserve space. */
html body .e-con.e-grid > .e-con-inner{ grid-template-rows:auto !important; grid-auto-rows:auto !important; }
html body .e-con.e-grid{ min-height:auto !important; height:auto !important; }
html body .e-con.e-grid > .e-con-inner{ min-height:auto !important; height:auto !important; }

/* v19-logo-center — vertically center logo in header. */
.elementor-location-header .vunto-site-logo{display:flex !important;align-items:center !important;align-self:center !important;}
.elementor-location-header .vunto-site-logo img{align-self:center !important;vertical-align:middle !important;display:block !important;}
.elementor-location-header .e-con.e-parent > .e-con-inner{align-items:center !important;}
.elementor-location-header .e-con.e-child{align-items:center !important;}

/* v19-ver-planes — center the Ver todos los planes button below pricing on Inicio. */
html body .elementor-element-3c222e5{ text-align:center !important; display:flex !important; justify-content:center !important; }
html body .elementor-element-3c222e5 .elementor-button-wrapper{ text-align:center !important; width:100% !important; }
html body .elementor-element-3c222e5 .elementor-button-wrapper a, html body .elementor-element-3c222e5 .elementor-button{ margin-left:auto !important; margin-right:auto !important; }

/* v20-hero-person — reset phone-shot constraints for the new wide person photo. */
.vunto-hero-phone img{max-height:none !important;max-width:100% !important;width:100% !important;height:auto !important;border-radius:18px !important;box-shadow:0 30px 80px -28px rgba(26,27,34,0.25),0 0 0 1px rgba(26,27,34,0.05) !important;background:transparent !important;}
@media (max-width:880px){.vunto-hero-phone img{max-width:100% !important;}}

/* v21-ham-right — push hamburger to far right of mobile header. */
@media (max-width:1024px){
  .elementor-location-header .elementor-widget-nav-menu{margin-left:auto !important;width:auto !important;flex:0 0 auto !important;}
  .elementor-location-header .elementor-nav-menu__container{display:flex !important;justify-content:flex-end !important;}
  .elementor-location-header .elementor-menu-toggle{margin-left:auto !important;}
  .elementor-location-header .e-con.e-child{justify-content:flex-end !important;}
}

/* v21b-ham-right — widget right + restore default menu container. */
@media (max-width:1024px){
  .elementor-location-header .elementor-widget-nav-menu{margin-left:auto !important;width:auto !important;flex:0 0 auto !important;}
  .elementor-location-header .elementor-nav-menu__container{display:block !important;text-align:right !important;}
  .elementor-location-header .elementor-menu-toggle{margin-left:auto !important;display:inline-flex !important;}
  .elementor-location-header .e-con.e-child:has(.elementor-widget-nav-menu){justify-content:flex-end !important;flex-direction:row !important;}
}

/* v21c-ham-right — only push widget, do not touch menu container. */
@media (max-width:1024px){
  .elementor-location-header .elementor-widget-nav-menu{margin-left:auto !important;}
  .elementor-location-header .e-con.e-child:has(.elementor-widget-nav-menu){justify-content:flex-end !important;}
  /* hide desktop nav items, show only toggle */
  .elementor-location-header .elementor-nav-menu--main:not(.elementor-nav-menu--dropdown) > .elementor-nav-menu{display:none !important;}
}

/* v21d-mobile-header-compact — hamburger flush right + tight vertical. */
@media (max-width:1024px){
  /* Header container vertical compact */
  .elementor-location-header > .e-con.e-parent{padding-top:8px !important;padding-bottom:8px !important;padding-left:16px !important;padding-right:16px !important;min-height:auto !important;}
  .elementor-location-header .e-con.e-parent > .e-con-inner{padding:0 !important;width:100% !important;max-width:100% !important;}
  /* Push right children flex-end */
  .elementor-location-header .e-con.e-parent > .e-con-inner > .e-con.e-child:last-child{margin-left:auto !important;justify-content:flex-end !important;padding-right:0 !important;}
  /* Nav-menu widget tight right */
  .elementor-location-header .elementor-widget-nav-menu{margin:0 !important;padding:0 !important;}
  .elementor-location-header .elementor-menu-toggle{margin:0 !important;padding:6px !important;}
  /* Hide non-dropdown menu items */
  .elementor-location-header .elementor-nav-menu--main:not(.elementor-nav-menu--dropdown) > .elementor-nav-menu{display:none !important;}
  /* Sticky header same compact */
  .elementor-sticky--active{padding-top:8px !important;padding-bottom:8px !important;}
}

/* v21e-ham-tight — hamburger button compact + container right. */
@media (max-width:1024px){
  .elementor-location-header .elementor-widget-nav-menu{display:inline-flex !important;width:auto !important;align-self:center !important;}
  .elementor-location-header .elementor-widget-nav-menu .elementor-widget-container{width:auto !important;display:inline-flex !important;justify-content:flex-end !important;}
  .elementor-location-header .elementor-nav-menu__container{width:auto !important;display:inline-block !important;}
  .elementor-location-header .elementor-menu-toggle{width:44px !important;height:44px !important;padding:0 !important;display:inline-flex !important;align-items:center;justify-content:center;background:transparent !important;border:none !important;}
  .elementor-location-header .elementor-menu-toggle:hover{background:rgba(26,27,34,0.04) !important;border-radius:8px;}
  .elementor-location-header .e-con.e-parent > .e-con-inner > .e-con.e-child:last-child{flex-grow:0 !important;width:auto !important;}
}

/* v21f-header-byid — explicit .elementor-kit-16 for right header child. */
@media (max-width:1024px){
  html body .elementor-element-e7eb493, html body .elementor-element-1bdd091{justify-content:flex-end !important;margin-left:auto !important;width:auto !important;flex:0 1 auto !important;}
  html body .elementor-element-23e649f, html body .elementor-element-7aac20f{align-self:center !important;margin-left:auto !important;width:auto !important;}
  html body .elementor-element-23e649f .elementor-widget-container, html body .elementor-element-7aac20f .elementor-widget-container{display:inline-flex !important;justify-content:flex-end !important;width:auto !important;}
}

/* v21g-ham-absolute — hamburger pinned to right edge of header. */
@media (max-width:1024px){
  .elementor-location-header > .e-con.e-parent{position:relative !important;}
  .elementor-location-header .elementor-menu-toggle{position:absolute !important;right:16px !important;top:50% !important;transform:translateY(-50%) !important;width:44px !important;height:44px !important;display:flex !important;align-items:center;justify-content:center;background:transparent !important;border:none !important;z-index:10;}
  .elementor-location-header .elementor-menu-toggle:hover{background:rgba(26,27,34,0.04) !important;border-radius:8px;}
  /* Logo width tight, no expansion */
  
}

/* v21h-ham-static — make all nav-menu wrappers position:static so absolute toggle anchors to header. */
@media (max-width:1024px){
  .elementor-location-header .elementor-widget-nav-menu, .elementor-location-header .elementor-widget-container, .elementor-location-header .elementor-nav-menu__container{position:static !important;}
  .elementor-location-header .elementor-menu-toggle{right:16px !important;}
}

/* v21i-ham-final — strip absolute, force flex chain right. */
@media (max-width:1024px){
  /* remove abs */
  .elementor-location-header .elementor-menu-toggle{position:static !important;transform:none !important;right:auto !important;top:auto !important;width:44px !important;height:44px !important;padding:0 !important;background:transparent !important;border:none !important;display:inline-flex !important;align-items:center;justify-content:center;}
  /* widget width auto + push right */
  html body .elementor-element-23e649f, html body .elementor-element-7aac20f{width:auto !important;max-width:fit-content !important;margin-left:auto !important;flex:0 0 auto !important;}
  html body .elementor-element-23e649f .elementor-widget-container, html body .elementor-element-7aac20f .elementor-widget-container{width:auto !important;padding:0 !important;}
  html body .elementor-element-23e649f .elementor-nav-menu__container, html body .elementor-element-7aac20f .elementor-nav-menu__container{width:auto !important;display:inline-block !important;}
  /* row parent flex-end */
  html body .elementor-element-e7eb493, html body .elementor-element-1bdd091{justify-content:flex-end !important;flex-grow:0 !important;flex-shrink:0 !important;}
}

/* v21j-ham-tightest — widget forced compact + margin-auto. */
@media (max-width:1024px){
  html body .elementor-element-23e649f, html body .elementor-element-7aac20f{ width:44px !important; max-width:44px !important; margin-left:auto !important; flex:0 0 44px !important; }
  html body .elementor-element-23e649f .elementor-widget-container, html body .elementor-element-7aac20f .elementor-widget-container{ width:44px !important; padding:0 !important; }
  html body .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu{ display:none !important; visibility:hidden !important; width:0 !important; }
  html body .elementor-location-header .elementor-menu-toggle{ position:relative !important; }
}

/* v21k-strip-padding — remove stale padding-right preventing hamburger flush. */
@media (max-width:1024px){
  html body .elementor-location-header .e-con.e-parent > .e-con-inner{padding-right:8px !important;padding-left:8px !important;}
}/* End custom CSS */