@media(min-width:768px){.elementor-1078 .elementor-element.elementor-element-dca3004{width:58%;}.elementor-1078 .elementor-element.elementor-element-dca3006{width:42%;}.elementor-1078 .elementor-element.elementor-element-dca300e{width:58%;}.elementor-1078 .elementor-element.elementor-element-dca3010{width:42%;}.elementor-1078 .elementor-element.elementor-element-dca3020{width:100%;}.elementor-1078 .elementor-element.elementor-element-dca3014{width:16%;}.elementor-1078 .elementor-element.elementor-element-dca3016{width:16%;}.elementor-1078 .elementor-element.elementor-element-dca3018{width:16%;}.elementor-1078 .elementor-element.elementor-element-dca301a{width:16%;}.elementor-1078 .elementor-element.elementor-element-dca301c{width:16%;}.elementor-1078 .elementor-element.elementor-element-dca301e{width:16%;}.elementor-1078 .elementor-element.elementor-element-dca3024{width:50%;}.elementor-1078 .elementor-element.elementor-element-dca3027{width:50%;}}/* Start custom CSS *//* ===== Sobre mi (1078) — tokens de la identidad existente ===== */
.fv-hero,.fv-body,.fv-logos,.fv-cta{--y:#F8E287;--ink:#2A2724;--muted:#55504A;--hair:#E8DFC2;--cream:#FBF7EA;--soft:#FAFAF9}

/* --- HERO --- */
.fv-hero{background:#fff;overflow:hidden}
.fv-hero > .elementor-container{align-items:stretch}
.fv-hero .fv-hero-txt{padding:clamp(64px,7vw,104px) clamp(24px,4vw,56px) clamp(64px,7vw,104px) clamp(24px,7vw,120px);display:flex;flex-direction:column;justify-content:center}
.fv-hero .fv-hero-img{padding:0;display:flex;align-items:flex-end}
.fv-photo{width:100%;margin:0}
.fv-photo img{width:100%;height:100%;max-height:660px;object-fit:cover;object-position:top center;display:block}
.fv-eyebrow{margin-bottom:26px}
.fv-eyebrow .elementor-heading-title{display:inline-block;background:var(--y);color:var(--ink);font-family:'Oswald',sans-serif;font-weight:600;font-size:12px;letter-spacing:.18em;text-transform:uppercase;padding:7px 14px;line-height:1}
.fv-h1{margin-bottom:34px}
.fv-h1 .elementor-heading-title{font-family:'Oswald',sans-serif;font-weight:700;text-transform:uppercase;color:var(--ink);font-size:clamp(2.05rem,4.4vw,4rem);line-height:1.05}
.fv-uline{background:linear-gradient(transparent 58%,var(--y) 58%);-webkit-box-decoration-break:clone;box-decoration-break:clone;white-space:nowrap}
.fv-sub .elementor-widget-container{max-width:27ch}
.fv-sub p{font-family:'Fanwood Text',Georgia,serif;font-size:clamp(1.2rem,1.7vw,1.6rem);line-height:1.5;color:var(--ink);margin:0}

/* --- LINEA DE TIEMPO + CITA --- */
.fv-body{background:#fff;padding:clamp(64px,8vw,120px) clamp(24px,7vw,120px) clamp(56px,7vw,100px)}
.fv-timeline{position:relative;padding-left:118px}
.fv-timeline::before{content:'';position:absolute;left:35px;top:36px;bottom:52px;width:1px;background:var(--y)}
.fv-timeline .elementor-widget:not(:last-child){margin-bottom:0}
.fv-step-title{position:relative}
.fv-step-title .elementor-heading-title{font-family:'Oswald',sans-serif;font-weight:600;text-transform:uppercase;font-size:clamp(1.15rem,1.7vw,1.5rem);letter-spacing:.04em;color:var(--ink);line-height:1.2}
.fv-step-title::before{content:'';position:absolute;left:-118px;top:50%;transform:translateY(-50%);width:72px;height:72px;border:1px solid var(--y);border-radius:50%;background-color:#fff;background-position:center;background-repeat:no-repeat;background-size:30px 30px}
.fv-step-1::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232A2724' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z'/%3E%3Cpath d='M12 15l-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z'/%3E%3Cpath d='M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0'/%3E%3Cpath d='M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5'/%3E%3C/svg%3E")}
.fv-step-2::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232A2724' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E")}
.fv-step-3::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232A2724' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18h6'/%3E%3Cpath d='M10 22h4'/%3E%3Cpath d='M15.09 14c.18-.98.65-1.74 1.41-2.5A4.65 4.65 0 0 0 18 8 6 6 0 0 0 6 8c0 1 .23 2.23 1.5 3.5A4.61 4.61 0 0 1 8.91 14'/%3E%3C/svg%3E")}
.fv-step-text{margin-top:16px}
.fv-step-text .elementor-widget-container{max-width:56ch}
.fv-step-text p{font-family:'Montserrat',sans-serif;font-weight:300;font-size:16px;line-height:1.9;color:var(--muted);margin:0}
.fv-timeline .fv-step-text + .fv-step-title{margin-top:68px}
.fv-quote-col{display:flex;align-items:center;padding-left:clamp(0px,3vw,48px)}
.fv-quote{width:100%;margin:0}
.fv-quote .elementor-widget-container{border:1px solid var(--y);border-radius:6px;padding:52px 40px 46px;text-align:center;background:#fff}
.fv-quote .elementor-widget-container::before{content:'\201C';display:block;font-family:'Fanwood Text',Georgia,serif;color:var(--y);font-size:64px;line-height:.55;margin-bottom:20px}
.fv-quote .elementor-widget-container::after{content:'';display:block;width:64px;height:1px;background:var(--y);margin:0 auto}
.fv-quote p{font-family:'Fanwood Text',Georgia,serif;font-size:clamp(1.15rem,1.6vw,1.45rem);line-height:1.8;color:var(--ink);margin:0 0 30px}

/* --- LOGOS --- */
.fv-logos{background:var(--soft);padding:clamp(44px,5vw,68px) clamp(20px,6vw,90px)}
.fv-logos-title{margin-bottom:34px}
.fv-logos-title .elementor-heading-title{font-family:'Oswald',sans-serif;font-weight:500;font-size:11px;letter-spacing:.34em;text-transform:uppercase;color:var(--muted);text-align:center}
.fv-logos-row > .elementor-container{align-items:center}
.fv-logo-cell{display:flex;align-items:center;justify-content:center}
.fv-logo-cell + .fv-logo-cell{border-left:1px solid var(--hair)}
.fv-logo{margin:0}
.fv-logo img{max-height:46px;width:auto;filter:grayscale(1);opacity:.6;transition:opacity .25s ease,filter .25s ease}
.fv-logo:hover img{opacity:1;filter:grayscale(0)}

/* --- CIERRE --- */
.fv-cta{background:var(--cream);padding:clamp(56px,7vw,96px) clamp(24px,7vw,120px)}
.fv-cta > .elementor-container{align-items:center}
.fv-cta-title{margin-bottom:20px}
.fv-cta-title .elementor-heading-title{font-family:'Oswald',sans-serif;font-weight:700;text-transform:uppercase;font-size:clamp(1.5rem,2.6vw,2.25rem);color:var(--ink);line-height:1.1}
.fv-cta-title .elementor-widget-container::after{content:'';display:block;width:56px;height:2px;background:var(--y);margin-top:20px}
.fv-cta-sub p{font-family:'Montserrat',sans-serif;font-weight:300;font-size:16px;line-height:1.85;color:var(--muted);margin:0;max-width:38ch}
.fv-cta-btns > .elementor-widget-wrap{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:flex-end}
.fv-cta-btns .elementor-widget{width:auto;margin:0}
.fv-btn .elementor-button{font-family:'Oswald',sans-serif;font-weight:600;letter-spacing:.12em;text-transform:uppercase;font-size:13px;padding:18px 30px;border-radius:2px;transition:transform .2s ease,background .2s ease}
.fv-btn-wa .elementor-button{background:var(--y);color:var(--ink);border:1px solid var(--y)}
.fv-btn-out .elementor-button{background:transparent;color:var(--ink);border:1px solid var(--y)}
.fv-btn .elementor-button:hover{transform:translateY(-2px)}
.fv-btn-out .elementor-button:hover{background:var(--y)}
.fv-btn .elementor-button:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
@media (prefers-reduced-motion:reduce){.fv-btn .elementor-button{transition:none}.fv-btn .elementor-button:hover{transform:none}}

/* --- RESPONSIVE --- */
@media (max-width:1024px){
 .fv-timeline{padding-left:96px}
 .fv-timeline::before{left:29px}
 .fv-step-title::before{left:-96px;width:60px;height:60px;background-size:26px 26px}
}
@media (max-width:767px){
 .fv-hero > .elementor-container{flex-direction:column}
 .fv-hero .fv-hero-txt{padding:44px 24px 64px}
 .fv-photo img{max-height:420px}
 .fv-sub .elementor-widget-container{max-width:none}
 .fv-uline{white-space:normal}
 .fv-body{padding:64px 24px 56px}
 .fv-timeline{padding-left:0}
 .fv-timeline::before{display:none}
 .fv-step-title{padding-left:70px;min-height:56px;display:flex;align-items:center}
 .fv-step-title::before{left:0;width:56px;height:56px;background-size:24px 24px}
 .fv-timeline .fv-step-text + .fv-step-title{margin-top:48px}
 .fv-quote-col{padding:46px 0 0}
 .fv-logos-row > .elementor-container{flex-wrap:wrap}
 .fv-logo-cell{width:33.333%!important;padding:16px 0}
 .fv-logo-cell:nth-child(3n+1){border-left:0}
 .fv-cta{padding:56px 24px}
 .fv-cta > .elementor-container{gap:30px}
 .fv-cta-btns > .elementor-widget-wrap{justify-content:flex-start}
}

/* --- ajustes tras revision visual --- */
.fv-h1{margin-bottom:48px}
.fv-logo-cell{padding:0 clamp(8px,1.4vw,22px);min-width:0}
.fv-logo img{max-height:42px;max-width:100%;width:auto;height:auto;object-fit:contain;display:block;margin:0 auto}
.fv-logos-row > .elementor-container{width:100%}
@media (max-width:767px){.fv-logo-cell{padding:16px 10px}}

/* --- blindaje: el CSS por-elemento del kit gana por especificidad --- */
.elementor .fv-eyebrow .elementor-heading-title{color:var(--ink)!important;font-family:'Oswald',sans-serif!important}
.elementor .fv-h1 .elementor-heading-title{color:var(--ink)!important;font-family:'Oswald',sans-serif!important}
.elementor .fv-step-title .elementor-heading-title{color:var(--ink)!important;font-family:'Oswald',sans-serif!important}
.elementor .fv-cta-title .elementor-heading-title{color:var(--ink)!important;font-family:'Oswald',sans-serif!important}
.elementor .fv-logos-title .elementor-heading-title{color:var(--muted)!important;font-family:'Oswald',sans-serif!important}
.elementor .fv-sub p{font-family:'Fanwood Text',Georgia,serif!important;color:var(--ink)!important}
.elementor .fv-quote p{font-family:'Fanwood Text',Georgia,serif!important;color:var(--ink)!important}
.elementor .fv-step-text p,.elementor .fv-cta-sub p{font-family:'Montserrat',sans-serif!important;color:var(--muted)!important}

/* --- blindaje de espaciado (Elementor fija margin-bottom:20px a los widgets) --- */
.elementor .fv-eyebrow{margin-bottom:28px!important}
.elementor .fv-h1{margin-bottom:44px!important}
.elementor .fv-logos-title{margin-bottom:36px!important}
.elementor .fv-cta-title{margin-bottom:22px!important}
.elementor .fv-step-text{margin-top:14px!important;margin-bottom:0!important}
.elementor .fv-timeline .fv-step-text + .fv-step-title{margin-top:72px!important}
@media (max-width:767px){.elementor .fv-timeline .fv-step-text + .fv-step-title{margin-top:52px!important}.elementor .fv-h1{margin-bottom:32px!important}}

/* --- movil: el titular manda, la foto va debajo del subtitulo --- */
@media (max-width:767px){
 .elementor .fv-hero > .elementor-container{flex-direction:column!important}
 .elementor .fv-hero .fv-hero-txt{padding:44px 24px 32px!important}
 .elementor .fv-photo img{max-height:380px!important;object-position:center 12%!important}
}/* End custom CSS */