.elementor-818 .elementor-element.elementor-element-456a146{--display:flex;}.elementor-818 .elementor-element.elementor-element-430ffe9{--display:flex;}.elementor-818 .elementor-element.elementor-element-3550321{--display:flex;}.elementor-818 .elementor-element.elementor-element-8b0074e{--display:flex;}.elementor-818 .elementor-element.elementor-element-dcf8bbc{--display:flex;}.elementor-818 .elementor-element.elementor-element-5e1953cd{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--padding-top:80px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-818 .elementor-element.elementor-element-58f37cc{width:var( --container-widget-width, 50% );max-width:50%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -0px) 0px;padding:0px 0px 0px 50px;--container-widget-width:50%;--container-widget-flex-grow:0;text-align:start;font-family:"Poppins", Sans-serif;font-size:18px;font-weight:400;color:#000000;}.elementor-818 .elementor-element.elementor-element-58f37cc p{margin-block-end:15px;}.elementor-818 .elementor-element.elementor-element-7f3a2bc{--display:flex;}.elementor-818 .elementor-element.elementor-element-6bed9f2d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:30px;--padding-bottom:30px;--padding-left:0px;--padding-right:0px;}.elementor-818 .elementor-element.elementor-element-6bed9f2d:not(.elementor-motion-effects-element-type-background), .elementor-818 .elementor-element.elementor-element-6bed9f2d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#EA03B5;}.elementor-818 .elementor-element.elementor-element-19605a9d{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -18px) 0px;padding:0px 0px 0px 0px;column-gap:0px;text-align:center;font-family:"Montserrat", Sans-serif;font-size:14px;font-weight:500;color:#FFFFFF;}@media(max-width:1024px){.elementor-818 .elementor-element.elementor-element-19605a9d{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}}@media(max-width:767px){.elementor-818 .elementor-element.elementor-element-5e1953cd{--padding-top:50px;--padding-bottom:50px;--padding-left:10px;--padding-right:10px;}.elementor-818 .elementor-element.elementor-element-22619f2b img{max-width:70%;}.elementor-818 .elementor-element.elementor-element-58f37cc{margin:-13px 0px calc(var(--kit-widget-spacing, 0px) + -26px) 0px;padding:0px 0px 0px 0px;--container-widget-width:1000px;--container-widget-flex-grow:0;width:var( --container-widget-width, 1000px );max-width:1000px;text-align:center;font-size:18px;line-height:1.4em;}.elementor-818 .elementor-element.elementor-element-6bed9f2d{--padding-top:30px;--padding-bottom:30px;--padding-left:015px;--padding-right:015px;}.elementor-818 .elementor-element.elementor-element-19605a9d{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -20px) 0px;padding:0px 0px 0px 0px;font-size:10px;}}/* Start custom CSS for html, class: .elementor-element-f2c5c79 *//* ===== ANIMACIONES PREMIUM ===== */

.hero{
position:relative;
overflow:hidden;
}

/* Fondo animado */
.hero::before{
content:'';
position:absolute;
width:300px;
height:300px;
background:rgba(255,192,203,.15);
border-radius:50%;
top:-100px;
left:-100px;
animation:floatCircle 12s infinite alternate ease-in-out;
}

.hero::after{
content:'';
position:absolute;
width:250px;
height:250px;
background:rgba(122,76,194,.08);
border-radius:50%;
bottom:-100px;
right:-100px;
animation:floatCircle2 14s infinite alternate ease-in-out;
}

@keyframes floatCircle{
from{
transform:translate(0,0);
}
to{
transform:translate(100px,50px);
}
}

@keyframes floatCircle2{
from{
transform:translate(0,0);
}
to{
transform:translate(-120px,-60px);
}
}

/* Aparición elegante */

.hero h1,
.hero h2,
.hero p,
.badge{
opacity:0;
animation:fadeUp 1s ease forwards;
}

.hero h2{
animation-delay:.3s;
}

.hero p{
animation-delay:.6s;
}

@keyframes fadeUp{
from{
opacity:0;
transform:translateY(30px);
}
to{
opacity:1;
transform:translateY(0);
}
}

/* Mockup con zoom */

.hero img{
width:100%;
max-width:650px;
display:block;
margin:20px auto;
border-radius:18px;
box-shadow:0 10px 30px rgba(0,0,0,.12);
animation:zoomHero 6s ease-in-out infinite alternate;
transition:.5s;
}

@keyframes zoomHero{
0%{
transform:scale(1);
}
100%{
transform:scale(1.08);
}
}

/* Caja de precio flotante */

.price-box{
background:white;
max-width:420px;
margin:20px auto;
padding:20px;
border-radius:20px;
box-shadow:0 10px 25px rgba(0,0,0,.08);
animation:floatBox 4s ease-in-out infinite;
}

@keyframes floatBox{
0%,100%{
transform:translateY(0);
}
50%{
transform:translateY(-8px);
}
}

/* Precio latiendo */

.new-price{
font-size:60px;
font-weight:bold;
color:#ff0077;
line-height:1;
margin:10px 0;
animation:heartbeat 1.3s infinite;
}

@keyframes heartbeat{
0%,100%{
transform:scale(1);
}
50%{
transform:scale(1.12);
}
}

/* Botón premium */

.buy-btn{
display:block;
width:100%;
max-width:420px;
margin:20px auto;
background:linear-gradient(135deg,#ff5c8d,#ff0077);
color:white;
text-decoration:none;
padding:18px;
border-radius:50px;
font-size:22px;
font-weight:bold;
position:relative;
overflow:hidden;
box-shadow:0 10px 25px rgba(255,0,119,.30);
animation:pulse 1.5s infinite;
}

.buy-btn::before{
content:"";
position:absolute;
top:0;
left:-100%;
width:100%;
height:100%;
background:linear-gradient(
90deg,
transparent,
rgba(255,255,255,.5),
transparent
);
animation:shine 3s infinite;
}

@keyframes shine{
100%{
left:100%;
}
}

@keyframes pulse{
0%{
transform:scale(1);
}
50%{
transform:scale(1.05);
}
100%{
transform:scale(1);
}
}

/* Tarjetas animadas */

.card{
background:#fff7fb;
padding:20px;
border-radius:18px;
margin-bottom:15px;
box-shadow:0 5px 15px rgba(0,0,0,.05);
transition:.4s;
}

.card:hover{
transform:translateY(-8px) scale(1.03);
box-shadow:0 15px 30px rgba(214,51,132,.15);
}

/* Sobre mí */

.about img{
animation:profileFloat 5s ease-in-out infinite;
}

@keyframes profileFloat{
0%,100%{
transform:translateY(0);
}
50%{
transform:translateY(-10px);
}
}

/* Aparición al cargar */

.section{
animation:fadeSection 1.2s ease;
}

@keyframes fadeSection{
from{
opacity:0;
transform:translateY(40px);
}
to{
opacity:1;
transform:translateY(0);
}
}

/* Corazones flotantes */

.floating-heart{
position:fixed;
font-size:28px;
opacity:.12;
pointer-events:none;
z-index:1;
animation:floatHeart 14s linear infinite;
}

.h1{
left:10%;
}

.h2{
left:50%;
animation-delay:4s;
}

.h3{
left:80%;
animation-delay:8s;
}

@keyframes floatHeart{
0%{
transform:translateY(100vh) rotate(0deg);
}
100%{
transform:translateY(-150px) rotate(360deg);
}
}/* End custom CSS */