:root{--color-infinito: #355BD7;--color-infinito-10: rgba(53, 91, 215, .1);--color-infinito-20: rgba(53, 91, 215, .2);--color-infinito-50: rgba(53, 91, 215, .5);--color-marfil: #F8F5EF;--color-marfil-10: rgba(248, 245, 239, .1);--color-marfil-20: rgba(248, 245, 239, .2);--color-marfil-50: rgba(248, 245, 239, .5);--color-profundo: #142E3A;--color-profundo-10: rgba(20, 46, 58, .1);--color-profundo-20: rgba(20, 46, 58, .2);--color-profundo-50: rgba(20, 46, 58, .5);--color-cielo: #E9F1F7;--color-cielo-10: rgba(233, 241, 247, .1);--color-cielo-20: rgba(233, 241, 247, .2);--color-cielo-50: rgba(233, 241, 247, .5);--color-bronce: #B79B73;--color-bronce-10: rgba(183, 155, 115, .1);--color-bronce-20: rgba(183, 155, 115, .2);--color-bronce-50: rgba(183, 155, 115, .5);--color-white: #FFFFFF;--color-black-overlay: rgba(0, 0, 0, .6);--color-success: #25D366;--color-error: #DC2626;--color-warning: #F59E0B;--font-sans: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-serif: "Cormorant Garamond", Georgia, serif;--text-xs: clamp(.75rem, .7vw + .5rem, .875rem);--text-sm: clamp(.875rem, .8vw + .5rem, 1rem);--text-base: clamp(1rem, 1vw + .5rem, 1.125rem);--text-lg: clamp(1.125rem, 1.2vw + .5rem, 1.25rem);--text-xl: clamp(1.25rem, 1.5vw + .5rem, 1.5rem);--text-2xl: clamp(1.5rem, 2vw + .5rem, 2rem);--text-3xl: clamp(2rem, 3vw + .5rem, 2.5rem);--text-4xl: clamp(2.5rem, 4vw + 1rem, 3.5rem);--text-display: clamp(2.5rem, 5vw + 1rem, 4.5rem);--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--leading-tight: 1.15;--leading-snug: 1.3;--leading-normal: 1.6;--leading-relaxed: 1.75;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--space-24: 96px;--space-32: 128px;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(20, 46, 58, .05);--shadow-md: 0 4px 6px -1px rgba(20, 46, 58, .1), 0 2px 4px -1px rgba(20, 46, 58, .06);--shadow-lg: 0 10px 15px -3px rgba(20, 46, 58, .1), 0 4px 6px -2px rgba(20, 46, 58, .05);--shadow-xl: 0 20px 25px -5px rgba(20, 46, 58, .1), 0 10px 10px -5px rgba(20, 46, 58, .04);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--z-base: 1;--z-dropdown: 40;--z-sticky: 50;--z-modal: 100;--z-toast: 150;--z-whatsapp: 200;--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1200px;--container-2xl: 1400px}
*,*:before,*:after{box-sizing:border-box}
*{margin:0;padding:0}
html{scroll-behavior:smooth;font-family:var(--font-sans);color:var(--color-profundo);background-color:var(--color-white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{line-height:var(--leading-normal)}
img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}
input,button,textarea,select{font:inherit;color:inherit;border:none;background:none}
button{cursor:pointer}
ul,ol{list-style:none}
table{border-collapse:collapse;border-spacing:0}
a{text-decoration:none;color:inherit}
:focus-visible{outline:2px solid var(--color-infinito);outline-offset:2px}
::selection{background-color:var(--color-infinito);color:var(--color-white)}
::-webkit-scrollbar{width:8px}
::-webkit-scrollbar-track{background:var(--color-marfil)}
::-webkit-scrollbar-thumb{background:var(--color-bronce);border-radius:var(--radius-full)}
::-webkit-scrollbar-thumb:hover{background:var(--color-profundo)}
@media(prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}
*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
.text-display{font-family:var(--font-serif);font-size:var(--text-display);line-height:var(--leading-tight);letter-spacing:-.02em;font-weight:var(--weight-medium)}
.text-h1{font-size:var(--text-4xl);line-height:var(--leading-tight);font-family:var(--font-serif);font-weight:var(--weight-medium)}
.text-h2{font-size:var(--text-3xl);line-height:var(--leading-tight);font-family:var(--font-serif);font-weight:var(--weight-medium)}
.text-h3{font-size:var(--text-2xl);line-height:var(--leading-snug);font-family:var(--font-serif);font-weight:var(--weight-medium)}
.text-h4{font-size:var(--text-xl);line-height:var(--leading-snug);font-family:var(--font-sans);font-weight:var(--weight-semibold)}
.text-h5{font-size:var(--text-lg);line-height:var(--leading-snug);font-family:var(--font-sans);font-weight:var(--weight-semibold)}
.text-h6{font-size:var(--text-base);line-height:var(--leading-snug);font-family:var(--font-sans);font-weight:var(--weight-semibold)}
.text-body-lg{font-size:var(--text-lg);line-height:var(--leading-relaxed);font-family:var(--font-sans)}
.text-body{font-size:var(--text-base);line-height:var(--leading-normal);font-family:var(--font-sans)}
.text-body-sm{font-size:var(--text-sm);line-height:var(--leading-normal);font-family:var(--font-sans)}
.text-eyebrow{font-size:var(--text-xs);line-height:var(--leading-normal);font-family:var(--font-sans);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.1em}
.text-caption{font-size:var(--text-xs);line-height:var(--leading-normal);font-family:var(--font-sans);color:var(--color-profundo-50)}
.text-serif{font-family:var(--font-serif)}
.text-sans{font-family:var(--font-sans)}
.text-primary{color:var(--color-profundo)}
.text-secondary{color:var(--color-infinito)}
.text-muted{color:var(--color-profundo-50)}
.text-white{color:var(--color-white)}
.text-accent{color:var(--color-cielo)}
.text-bronze{color:var(--color-bronce)}
.text-center{text-align:center}
.text-left{text-align:left}
.text-right{text-align:right}
.font-regular{font-weight:var(--weight-regular)}
.font-medium{font-weight:var(--weight-medium)}
.font-semibold{font-weight:var(--weight-semibold)}
.font-bold{font-weight:var(--weight-bold)}
.text-balance{text-wrap:balance}
.container{width:100%;max-width:var(--container-xl);margin-inline:auto;padding-inline:var(--space-4)}
.container-narrow{width:100%;max-width:800px;margin-inline:auto;padding-inline:var(--space-4)}
@media(min-width:768px){.container,.container-narrow{padding-inline:var(--space-8)}
}
.section-padding{padding-block:var(--space-16)}
@media(min-width:768px){.section-padding{padding-block:var(--space-24)}
}
.flex{display:flex}
.flex-col{flex-direction:column}
.flex-center{display:flex;align-items:center;justify-content:center}
.flex-between{display:flex;align-items:center;justify-content:space-between}
.flex-wrap{flex-wrap:wrap}
.items-center{align-items:center}
.justify-center{justify-content:center}
.grid{display:grid}
.grid-2,.grid-3,.grid-4{display:grid;grid-template-columns:1fr}
@media(min-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}
}
@media(min-width:1024px){.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-4{grid-template-columns:repeat(4,1fr)}
}
.gap-2{gap:var(--space-2)}
.gap-4{gap:var(--space-4)}
.gap-6{gap:var(--space-6)}
.gap-8{gap:var(--space-8)}
.gap-12{gap:var(--space-12)}
.hidden{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}
.visible-mobile{display:block}
.hidden-mobile{display:none}
@media(min-width:768px){.visible-mobile{display:none}
.hidden-mobile{display:block}
}
.rounded-sm{border-radius:var(--radius-sm)}
.rounded-md{border-radius:var(--radius-md)}
.rounded-lg{border-radius:var(--radius-lg)}
.rounded-xl{border-radius:var(--radius-xl)}
.rounded-full{border-radius:var(--radius-full)}
.shadow-sm{box-shadow:var(--shadow-sm)}
.shadow-md{box-shadow:var(--shadow-md)}
.shadow-lg{box-shadow:var(--shadow-lg)}
.shadow-xl{box-shadow:var(--shadow-xl)}
.bg-infinito{background-color:var(--color-infinito)}
.bg-marfil{background-color:var(--color-marfil)}
.bg-profundo{background-color:var(--color-profundo)}
.bg-cielo{background-color:var(--color-cielo)}
.bg-white{background-color:var(--color-white)}
.w-full{width:100%}
.max-w-full{max-width:100%}
@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}
to{opacity:1;transform:translateY(0)}
}
@keyframes fadeIn{0%{opacity:0}
to{opacity:1}
}
@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}
to{opacity:1;transform:scale(1)}
}
@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}
to{opacity:1;transform:translate(0)}
}
@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}
to{opacity:1;transform:translate(0)}
}
@keyframes float{0%{transform:translateY(0)}
50%{transform:translateY(-10px)}
to{transform:translateY(0)}
}
@keyframes shimmer{0%{background-position:-1000px 0}
to{background-position:1000px 0}
}
@keyframes pulse-soft{0%{transform:scale(1);opacity:1}
50%{transform:scale(1.05);opacity:.8}
to{transform:scale(1);opacity:1}
}
@media(prefers-reduced-motion:no-preference){.animate-on-scroll{opacity:0;transform:translateY(40px) scale(.98);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}
.animate-on-scroll.is-visible{opacity:1;transform:translateY(0) scale(1)}
.animate-fade-up{animation:fadeInUp .8s cubic-bezier(.16,1,.3,1) forwards}
.animate-fade-in{animation:fadeIn .8s cubic-bezier(.16,1,.3,1) forwards}
.animate-scale-in{animation:scaleIn .8s cubic-bezier(.16,1,.3,1) forwards}
.animate-delay-1{animation-delay:.1s;transition-delay:.1s}
.animate-delay-2{animation-delay:.2s;transition-delay:.2s}
.animate-delay-3{animation-delay:.3s;transition-delay:.3s}
.animate-delay-4{animation-delay:.4s;transition-delay:.4s}
.animate-delay-5{animation-delay:.5s;transition-delay:.5s}
.card-hover-lift{transition:transform var(--transition-normal),box-shadow var(--transition-normal)}
.card-hover-lift:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
}
@media(prefers-reduced-motion:reduce){.animate-on-scroll{opacity:1;transform:none;transition:none}
.animate-fade-up,.animate-fade-in,.animate-scale-in{animation:none;opacity:1;transform:none}
.card-hover-lift{transition:none}
.card-hover-lift:hover{transform:none}
}
.header{position:fixed;top:0;left:0;width:100%;height:64px;z-index:var(--z-sticky);background-color:var(--color-profundo);transition:box-shadow var(--transition-normal);display:flex;align-items:center}
@media(min-width:1024px){.header{height:72px}
}
.header--scrolled{box-shadow:var(--shadow-sm)}
.header__container{display:flex;align-items:center;justify-content:space-between;width:100%;height:100%}
.header__logo{display:flex;align-items:center;z-index:calc(var(--z-sticky) + 1)}
.header__nav{display:none}
@media(min-width:1024px){.header__nav{display:flex;align-items:center;gap:var(--space-8)}
}
.header__nav-link{color:var(--color-white);font-weight:var(--weight-medium);font-size:var(--text-sm);position:relative;transition:color var(--transition-fast)}
.header__nav-link:after{content:"";position:absolute;bottom:-4px;left:0;width:100%;height:2px;background-color:var(--color-infinito);transform:scaleX(0);transform-origin:right;transition:transform var(--transition-normal)}
.header__nav-link:hover{color:var(--color-infinito)}
.header__nav-link:hover:after{transform:scaleX(1);transform-origin:left}
.header__cta{display:none}
@media(min-width:1024px){.header__cta{display:flex;align-items:center;background-color:var(--color-infinito);color:var(--color-white);padding:var(--space-2) var(--space-6);border-radius:var(--radius-full);font-weight:var(--weight-semibold);font-size:var(--text-sm);transition:background-color var(--transition-fast)}
.header__cta:hover{background-color:var(--color-profundo)}
}
.header__mobile-toggle{display:flex;flex-direction:column;justify-content:space-around;width:24px;height:24px;background:transparent;border:none;cursor:pointer;z-index:calc(var(--z-sticky) + 1)}
@media(min-width:1024px){.header__mobile-toggle{display:none}
}
.header__mobile-toggle span{width:24px;height:2px;background:var(--color-white);border-radius:var(--radius-full);transition:all var(--transition-normal);position:relative}
.mobile-menu-open{overflow:hidden}
.mobile-menu-open .header__mobile-toggle span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.mobile-menu-open .header__mobile-toggle span:nth-child(2){opacity:0}
.mobile-menu-open .header__mobile-toggle span:nth-child(3){transform:rotate(-45deg) translate(5px,-6px)}
.header__mobile-menu{position:fixed;top:0;left:0;width:100%;height:100vh;height:100dvh;background-color:var(--color-marfil);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--space-8);opacity:0;visibility:hidden;transition:opacity var(--transition-normal),visibility var(--transition-normal);z-index:var(--z-sticky)}
.mobile-menu-open .header__mobile-menu{opacity:1;visibility:visible}
.header__mobile-link{font-size:var(--text-2xl);font-family:var(--font-serif);color:var(--color-profundo)}
.hero{position:relative;min-height:calc(100vh - 64px);padding-top:64px;display:flex;align-items:center;background-color:var(--color-marfil);overflow:hidden}
@media(min-width:1024px){.hero{min-height:calc(100vh - 72px);padding-top:72px}
}
.hero:before{content:"";position:absolute;top:-20%;right:-10%;width:70%;height:70%;background:radial-gradient(circle,var(--color-cielo-50) 0%,transparent 70%);border-radius:var(--radius-full);z-index:0}
.hero__container{display:flex;flex-direction:column;gap:var(--space-12);position:relative;z-index:var(--z-base);width:100%}
@media(min-width:1024px){.hero__container{flex-direction:row;align-items:center;gap:var(--space-16)}
}
.hero__content{flex:1;display:flex;flex-direction:column;gap:var(--space-6);text-align:center;padding-top:var(--space-8)}
@media(min-width:1024px){.hero__content{flex:0 0 55%;text-align:left;padding-top:0}
}
.hero__eyebrow{color:var(--color-bronce);font-weight:var(--weight-semibold)}
.hero__title{color:var(--color-profundo)}
.hero__subtitle{color:var(--color-profundo-50);max-width:600px;margin-inline:auto}
@media(min-width:1024px){.hero__subtitle{margin-inline:0}
}
.hero__actions{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-4)}
@media(min-width:640px){.hero__actions{flex-direction:row;justify-content:center}
}
@media(min-width:1024px){.hero__actions{justify-content:flex-start}
}
.btn-primary{display:inline-flex;align-items:center;justify-content:center;background-color:var(--color-infinito);color:var(--color-white);padding:var(--space-4) var(--space-8);border-radius:var(--radius-full);font-weight:var(--weight-semibold);box-shadow:var(--shadow-md);transition:all var(--transition-normal)}
.btn-primary:hover{background-color:var(--color-profundo);box-shadow:var(--shadow-lg);transform:translateY(-2px)}
.btn-secondary{display:inline-flex;align-items:center;justify-content:center;background-color:transparent;color:var(--color-infinito);border:2px solid var(--color-infinito);padding:var(--space-4) var(--space-8);border-radius:var(--radius-full);font-weight:var(--weight-semibold);transition:all var(--transition-normal)}
.btn-secondary:hover{background-color:var(--color-infinito-10)}
.hero__microphrase{margin-top:var(--space-2)}
.hero__visual{flex:1;display:flex;justify-content:center;align-items:center;position:relative;padding-bottom:var(--space-8)}
@media(min-width:1024px){.hero__visual{flex:0 0 45%;padding-bottom:0}
}
.hero__composition{position:relative;width:100%;max-width:500px;aspect-ratio:4 / 5;margin:0 auto}
.hero__composition-main{position:absolute;top:0;right:0;width:80%;height:85%;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);z-index:1}
.hero__composition-secondary{position:absolute;bottom:0;left:0;width:50%;aspect-ratio:1;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-xl);border:8px solid var(--color-white);z-index:2;transform:translateY(-20px)}
.hero__composition-accent{position:absolute;top:15%;left:-5%;width:35%;aspect-ratio:3 / 4;border-radius:var(--radius-sm);overflow:hidden;box-shadow:var(--shadow-md);border:4px solid var(--color-marfil);z-index:3;transform:rotate(-4deg)}
.hero__img{width:100%;height:100%;object-fit:cover}
.insight{background-color:var(--color-white);position:relative}
.insight__grid{display:flex;flex-direction:column;gap:var(--space-12)}
@media(min-width:1024px){.insight__grid{flex-direction:row;align-items:center;gap:var(--space-20)}
}
.insight__visual{flex:1;position:relative;aspect-ratio:1}
@media(min-width:1024px){.insight__visual{flex:0 0 50%}
}
.insight__composition-base{position:absolute;top:10%;left:0;width:70%;aspect-ratio:4/3;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-md);z-index:1;transform:rotate(-2deg)}
.insight__composition-top{position:absolute;bottom:5%;right:5%;width:60%;aspect-ratio:1;border-radius:var(--radius-sm);overflow:hidden;box-shadow:var(--shadow-lg);border:10px solid var(--color-white);z-index:2;transform:rotate(3deg)}
.insight__image{width:100%;height:100%;object-fit:cover}
.insight__content{flex:1;display:flex;flex-direction:column;gap:var(--space-6)}
@media(min-width:1024px){.insight__content{flex:0 0 calc(50% - var(--space-20))}
}
.insight__title{color:var(--color-profundo)}
.insight__body{color:var(--color-profundo-50);max-width:65ch}
.insight__closing{margin-top:var(--space-4);color:var(--color-profundo);font-weight:var(--weight-bold);font-size:var(--text-lg);border-left:3px solid var(--color-bronce);padding-left:var(--space-4)}
.insight__divider{width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--color-bronce-20),transparent);margin-top:var(--space-16)}
.history-section{background-color:var(--color-marfil);position:relative;overflow:hidden}
.history-section__grid{display:flex;flex-direction:column;gap:var(--space-12)}
@media(min-width:1024px){.history-section__grid{flex-direction:row;align-items:center;gap:var(--space-16)}
}
.history-section__content{flex:1;display:flex;flex-direction:column;gap:var(--space-6);text-align:center}
@media(min-width:1024px){.history-section__content{flex:0 0 45%;text-align:left}
}
.history-section__labels{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-4);justify-content:center}
@media(min-width:1024px){.history-section__labels{justify-content:flex-start}
}
.history-section__label{padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);background-color:var(--color-white);color:var(--color-profundo);font-size:var(--text-sm);font-weight:var(--weight-medium);box-shadow:var(--shadow-sm);border:1px solid var(--color-profundo-10)}
.history-section__visual{flex:1;position:relative;display:flex;justify-content:center;align-items:center;min-height:400px}
@media(min-width:1024px){.history-section__visual{flex:0 0 55%;min-height:600px}
}
.history-section__composition{position:relative;width:100%;max-width:500px;aspect-ratio:1}
.history-section__comp-main{position:absolute;top:0;left:0;width:75%;height:80%;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-md);z-index:1}
.history-section__comp-phone{position:absolute;bottom:0;right:5%;width:35%;aspect-ratio:9/19;border-radius:24px;overflow:hidden;box-shadow:var(--shadow-xl);border:6px solid var(--color-profundo);background:var(--color-white);z-index:3;transform:translateY(-10%)}
.history-section__comp-music{position:absolute;top:20%;right:0;width:40%;padding:var(--space-4);background:var(--color-white);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);z-index:2;display:flex;align-items:center;gap:var(--space-3);transform:rotate(3deg)}
.history-section__comp-text{position:absolute;bottom:15%;left:-5%;width:50%;padding:var(--space-4);background:var(--color-white);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);z-index:4;font-family:var(--font-serif);font-style:italic;font-size:var(--text-sm);color:var(--color-profundo);border-left:3px solid var(--color-bronce)}
.history-section__img{width:100%;height:100%;object-fit:cover}
.products{background-color:var(--color-marfil)}
.products__header{text-align:center;max-width:700px;margin-inline:auto;margin-bottom:var(--space-12);display:flex;flex-direction:column;gap:var(--space-4)}
.products__grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:var(--space-6);padding-bottom:var(--space-8);scrollbar-width:none;-ms-overflow-style:none;padding-inline:max(var(--space-4),calc((100vw - 1200px)/2));margin-inline:calc(-1*max(var(--space-4),calc((100vw - 1200px)/2)))}
.products__grid::-webkit-scrollbar{display:none}
.product-card{background-color:transparent;display:flex;flex-direction:column;height:100%;flex:0 0 85%;min-width:280px;scroll-snap-align:center}
@media(min-width:768px){.product-card{flex:0 0 45%;scroll-snap-align:start}
}
@media(min-width:1024px){.product-card{flex:0 0 28%;scroll-snap-align:start}
}
.product-card__image-wrapper{position:relative;width:100%;aspect-ratio:4 / 3;overflow:hidden;background-color:var(--color-cielo);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}
.product-card__image{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}
.product-card:hover .product-card__image{transform:scale(1.05)}
.product-card__body{padding:var(--space-4) 0 0 0;display:flex;flex-direction:column;flex:1;gap:var(--space-2)}
.product-card__title{color:var(--color-profundo);font-size:var(--text-xl);font-family:var(--font-serif);font-weight:500}
.product-card__desc{color:var(--color-profundo-50);font-size:var(--text-sm);flex:1;line-height:var(--leading-relaxed)}
.product-card__cta{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-bronce);font-family:var(--font-serif);font-weight:600;font-size:var(--text-base);font-style:italic;margin-top:var(--space-4);transition:gap var(--transition-fast);text-decoration:none}
.product-card:hover .product-card__cta{gap:var(--space-4)}
.product-card__cta svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.nfc-demo{background-color:var(--color-white);text-align:center}
.nfc-demo__header{margin-bottom:var(--space-16);max-width:600px;margin-inline:auto}
.nfc-demo__steps{display:flex;flex-direction:column;gap:var(--space-12);position:relative;align-items:center}
@media(min-width:768px){.nfc-demo__steps{flex-direction:row;justify-content:center;gap:var(--space-16)}
}
.nfc-demo__step{flex:1;display:flex;flex-direction:column;align-items:center;gap:var(--space-4);position:relative;z-index:1;max-width:280px}
.nfc-demo__step-icon{width:80px;height:80px;border-radius:var(--radius-full);background-color:var(--color-white);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-2);color:var(--color-profundo);border:1px solid var(--color-profundo-10);position:relative}
.nfc-demo__connector{display:none}
@media(min-width:768px){.nfc-demo__connector{display:block;position:absolute;top:40px;left:calc(50% + 40px);width:calc(100% - 80px);height:1px;background:var(--color-profundo-10);z-index:0}
}
.nfc-demo__step-icon svg{width:32px;height:32px;stroke-width:1px}
.nfc-demo__step-number{color:var(--color-bronce);font-family:var(--font-serif);font-size:var(--text-xl);font-weight:400;line-height:1}
.nfc-demo__step-title{color:var(--color-profundo);font-weight:500;font-size:var(--text-lg)}
.nfc-demo__step-desc{color:var(--color-profundo-50);font-size:var(--text-sm);line-height:var(--leading-relaxed)}
.nfc-demo__disclaimer{margin-top:var(--space-16);font-size:var(--text-xs);color:var(--color-profundo-50)}
.how-it-works{background-color:var(--color-cielo);text-align:center}
.how-it-works__header{margin-bottom:var(--space-16)}
.how-it-works__timeline{display:grid;grid-template-columns:1fr;gap:var(--space-12);position:relative}
@media(min-width:768px){.how-it-works__timeline{grid-template-columns:repeat(2,1fr)}
}
@media(min-width:1024px){.how-it-works__timeline{grid-template-columns:repeat(4,1fr);gap:var(--space-6)}
.how-it-works__timeline:before{content:"";position:absolute;top:24px;left:10%;right:10%;height:1px;background-color:var(--color-bronce-50);z-index:0}
}
@media(max-width:1023px){.how-it-works__timeline:before{content:"";position:absolute;top:24px;bottom:24px;left:50%;width:1px;transform:translate(-50%);background-color:var(--color-bronce-50);z-index:0}
}
.how-it-works__step{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);position:relative;z-index:1}
.how-it-works__number{font-family:var(--font-serif);font-size:4rem;line-height:1;color:var(--color-infinito-20);font-weight:300;margin-bottom:calc(var(--space-2) * -1);z-index:-1}
.how-it-works__icon{color:var(--color-profundo);margin-top:var(--space-2)}
.how-it-works__icon svg{width:28px;height:28px;stroke-width:1px}
.how-it-works__title{color:var(--color-profundo);font-weight:var(--weight-medium);font-size:var(--text-lg);margin-top:var(--space-2)}
.how-it-works__desc{color:var(--color-profundo-50);font-size:var(--text-sm);max-width:250px;line-height:var(--leading-relaxed)}
.how-it-works__action{margin-top:var(--space-16);display:flex;justify-content:center}
.testimonials{background-color:var(--color-marfil);overflow:hidden}
.testimonials__header{text-align:center;margin-bottom:var(--space-12)}
.testimonials__grid{display:flex;overflow-x:auto;gap:var(--space-6);padding-bottom:var(--space-8);margin-inline:calc(var(--space-4) * -1);padding-inline:var(--space-4);scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.testimonials__grid::-webkit-scrollbar{display:none}
@media(min-width:768px){.testimonials__grid{display:grid;grid-template-columns:repeat(2,1fr);overflow-x:visible;padding-bottom:0;margin-inline:0;padding-inline:0}
}
@media(min-width:1024px){.testimonials__grid{grid-template-columns:repeat(3,1fr);gap:var(--space-8)}
}
.testimonial-card{flex:0 0 85%;scroll-snap-align:center;background-color:var(--color-white);border-radius:var(--radius-xl);padding:var(--space-8);display:flex;flex-direction:column;gap:var(--space-6);box-shadow:var(--shadow-sm);border:1px solid rgba(183,155,115,.1)}
@media(min-width:768px){.testimonial-card{flex:auto}
}
.testimonial-card__stars{display:flex;gap:var(--space-1);color:var(--color-bronce)}
.testimonial-card__stars svg{width:20px;height:20px;fill:currentColor}
.testimonial-card__quote{font-family:var(--font-serif);font-size:var(--text-lg);font-style:italic;color:var(--color-profundo);line-height:var(--leading-relaxed);flex:1}
.testimonial-card__author{display:flex;flex-direction:column}
.testimonial-card__name{font-weight:var(--weight-bold);color:var(--color-profundo)}
.testimonial-card__date{font-size:var(--text-sm);color:var(--color-profundo-50)}
.testimonial-placeholder{text-align:center;padding:var(--space-12) var(--space-6);background-color:#ffffff80;border:1px dashed var(--color-bronce-50);border-radius:var(--radius-xl);display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}
.testimonial-placeholder svg{width:48px;height:48px;color:var(--color-bronce)}
.testimonial-placeholder__text{color:var(--color-profundo-50);font-size:var(--text-lg)}
.trustpilot-container{margin-top:var(--space-12);display:flex;justify-content:center}
.trust{background-color:var(--color-white)}
.trust__header{text-align:center;margin-bottom:var(--space-12)}
.trust__grid{display:grid;grid-template-columns:1fr;gap:var(--space-6)}
@media(min-width:640px){.trust__grid{grid-template-columns:repeat(2,1fr);gap:var(--space-8)}
}
.trust__card{padding:var(--space-8);border-radius:var(--radius-lg);border:1px solid var(--color-cielo);background-color:var(--color-white);display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-4);transition:border-color var(--transition-normal),box-shadow var(--transition-normal)}
.trust__card:hover{border-color:var(--color-infinito-20);box-shadow:var(--shadow-sm)}
.trust__icon{width:48px;height:48px;border-radius:var(--radius-md);background-color:var(--color-infinito-10);color:var(--color-infinito);display:flex;align-items:center;justify-content:center}
.trust__icon svg{width:24px;height:24px}
.trust__title{color:var(--color-profundo);font-weight:500;font-size:var(--text-lg)}
.trust__desc{color:var(--color-profundo-50);font-size:var(--text-sm);line-height:var(--leading-relaxed)}
.plans{background-color:var(--color-cielo)}
.plans__header{text-align:center;margin-bottom:var(--space-16)}
.plans__grid{display:grid;grid-template-columns:1fr;gap:var(--space-8);max-width:1000px;margin-inline:auto;align-items:center}
@media(min-width:768px){.plans__grid{grid-template-columns:repeat(3,1fr);gap:var(--space-6)}
}
.plans__card{background-color:var(--color-white);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-md);display:flex;flex-direction:column;position:relative;height:100%}
.plans__card--featured{border-top:6px solid var(--color-infinito);transform:scale(1);box-shadow:var(--shadow-lg);z-index:2}
@media(min-width:768px){.plans__card--featured{transform:scale(1.05)}
}
.plans__card-badge{position:absolute;top:0;left:50%;transform:translate(-50%,-50%);background-color:var(--color-infinito);color:var(--color-white);padding:var(--space-1) var(--space-4);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.05em}
.plans__card-header{text-align:center;margin-bottom:var(--space-6);padding-bottom:var(--space-6);border-bottom:1px solid var(--color-cielo)}
.plans__card-title{color:var(--color-profundo);font-family:var(--font-serif);font-size:var(--text-2xl);font-weight:var(--weight-bold);margin-bottom:var(--space-2)}
.plans__card-subtitle{color:var(--color-profundo-50);font-size:var(--text-sm)}
.plans__card-body{display:flex;flex-direction:column;flex:1}
.plans__price{margin-bottom:var(--space-6);text-align:center}
.plans__price-text{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--color-profundo)}
.plans__features{list-style:none;padding:0;display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-8);flex:1}
.plans__features li{display:flex;align-items:flex-start;gap:var(--space-3);color:var(--color-profundo);font-size:var(--text-sm);line-height:var(--leading-snug)}
.plans__features li:before{content:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="%23B79B73" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"></polyline></svg>');display:block;width:20px;height:20px;flex-shrink:0;margin-top:2px}
.b2b{background-color:var(--color-profundo);color:var(--color-marfil)}
.b2b__grid{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:800px;margin:0 auto}
.b2b__content{display:flex;flex-direction:column;align-items:center;gap:var(--space-6)}
.b2b__benefits{display:flex;flex-direction:column;gap:var(--space-4);list-style:none;padding:0;margin:var(--space-8) 0;width:100%}
@media(min-width:768px){.b2b__benefits{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:var(--space-6)}
}
.b2b__benefit{display:flex;align-items:center;gap:var(--space-3);font-family:var(--font-serif);font-size:var(--text-lg);color:var(--color-marfil);font-style:italic}
.b2b__benefit svg{stroke:var(--color-bronce)}
.b2b__cta{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);background-color:transparent;color:var(--color-marfil);border:1px solid var(--color-bronce);padding:var(--space-4) var(--space-8);border-radius:var(--radius-full);font-weight:500;transition:all var(--transition-normal);text-decoration:none;font-family:var(--font-sans)}
.b2b__cta:hover{background-color:var(--color-bronce);color:var(--color-profundo)}
.b2b__cta svg{width:20px;height:20px;fill:none;stroke:currentColor}
.faq{background-color:var(--color-marfil)}
.faq__header{text-align:center;margin-bottom:var(--space-12)}
.faq__list{max-width:800px;margin-inline:auto;display:flex;flex-direction:column;gap:var(--space-4)}
.faq-item{background-color:var(--color-white);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-normal)}
.faq-item:hover{box-shadow:var(--shadow-md)}
.faq-item__button{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--space-6);background:transparent;text-align:left;gap:var(--space-4)}
.faq-item__question{font-weight:var(--weight-semibold);font-size:var(--text-lg);color:var(--color-profundo);transition:color var(--transition-fast)}
.faq-item[aria-expanded=true] .faq-item__question{color:var(--color-infinito)}
.faq-item__icon{flex-shrink:0;width:24px;height:24px;color:var(--color-profundo-50);transition:transform var(--transition-normal),color var(--transition-fast);display:flex;align-items:center;justify-content:center}
.faq-item[aria-expanded=true] .faq-item__icon{transform:rotate(180deg);color:var(--color-infinito)}
.faq-item__answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--transition-normal)}
.faq-item[aria-expanded=true] .faq-item__answer{grid-template-rows:1fr}
.faq-item__answer-inner{overflow:hidden}
.faq-item__answer-content{padding:0 var(--space-6) var(--space-6) var(--space-6);color:var(--color-profundo-50);font-size:var(--text-body);line-height:var(--leading-relaxed)}
.faq-item__answer-content p:not(:last-child){margin-bottom:var(--space-4)}
.cta-final{background:var(--color-profundo);color:var(--color-marfil);text-align:center;position:relative;overflow:hidden;border-top:1px solid rgba(255,255,255,.05)}
.cta-final:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at center,rgba(53,91,215,.15) 0%,transparent 70%);pointer-events:none}
.cta-final__container{position:relative;z-index:1;max-width:800px;margin-inline:auto;display:flex;flex-direction:column;align-items:center;gap:var(--space-8)}
.cta-final__title{color:var(--color-marfil);font-family:var(--font-serif);font-weight:500}
.cta-final__subtitle{color:#f8f5efcc;font-size:var(--text-lg);max-width:600px;line-height:var(--leading-relaxed)}
.cta-final__actions{display:flex;flex-direction:column;gap:var(--space-4);width:100%;max-width:300px}
@media(min-width:640px){.cta-final__actions{flex-direction:row;max-width:none;justify-content:center}
}
.btn-white,.cta-final__btn-primary{display:inline-flex;align-items:center;justify-content:center;background-color:var(--color-marfil);color:var(--color-profundo);padding:var(--space-4) var(--space-8);border-radius:var(--radius-full);font-weight:500;font-family:var(--font-sans);transition:all var(--transition-normal);text-decoration:none}
.btn-white:hover,.cta-final__btn-primary:hover{background-color:var(--color-white);transform:translateY(-2px)}
.btn-outline-white,.cta-final__btn-secondary{display:inline-flex;align-items:center;justify-content:center;background-color:transparent;color:var(--color-marfil);border:1px solid var(--color-marfil);padding:var(--space-4) var(--space-8);border-radius:var(--radius-full);font-weight:500;font-family:var(--font-sans);transition:all var(--transition-normal);text-decoration:none}
.btn-outline-white:hover,.cta-final__btn-secondary:hover{background-color:#f8f5ef1a}
.footer{background-color:var(--color-profundo);color:var(--color-marfil);padding-top:var(--space-16);padding-bottom:var(--space-8)}
.footer__grid{display:grid;grid-template-columns:1fr;gap:var(--space-12);margin-bottom:var(--space-16)}
@media(min-width:640px){.footer__grid{grid-template-columns:repeat(2,1fr)}
}
@media(min-width:1024px){.footer__grid{grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--space-8)}
}
.footer__brand{display:flex;flex-direction:column;gap:var(--space-4)}
.footer__logo{display:inline-block}
.footer__desc{color:#f8f5efb3;font-size:var(--text-sm);max-width:300px}
.footer__tagline{font-size:var(--text-sm);font-style:italic;color:var(--color-bronce);margin-top:var(--space-2)}
.footer__heading{color:var(--color-white);font-weight:var(--weight-bold);font-size:var(--text-lg);margin-bottom:var(--space-4)}
.footer__nav-col{display:flex;flex-direction:column;gap:var(--space-3)}
.footer__nav-col a{color:#f8f5efcc;font-size:var(--text-sm);transition:color var(--transition-fast);display:inline-flex;align-items:center;position:relative;width:fit-content;text-decoration:none}
.footer__nav-col a:after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:1px;background-color:var(--color-bronce);transform:scaleX(0);transform-origin:right;transition:transform var(--transition-normal)}
.footer__nav-col a:hover{color:var(--color-white)}
.footer__nav-col a:hover:after{transform:scaleX(1);transform-origin:left}
.footer__social{display:flex;gap:var(--space-4)}
.footer__social a{width:40px;height:40px;border-radius:var(--radius-full);background-color:#ffffff1a;color:var(--color-white);display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal);text-decoration:none}
.footer__social a:hover{background-color:var(--color-infinito);transform:translateY(-2px)}
.footer__social a svg{width:20px;height:20px}
.footer__bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:var(--space-8);display:flex;flex-direction:column;gap:var(--space-4);align-items:center;text-align:center}
@media(min-width:768px){.footer__bottom{flex-direction:row;justify-content:space-between;text-align:left}
}
.footer__copyright{color:#f8f5ef80;font-size:var(--text-sm)}
.footer__legal{display:flex;gap:var(--space-6)}
.footer__legal-link{color:#f8f5ef80;font-size:var(--text-sm);transition:color var(--transition-fast);text-decoration:none}
.footer__legal-link:hover{color:var(--color-white)}
.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:var(--color-black-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);opacity:0;visibility:hidden;transition:all var(--transition-normal)}
.modal-overlay.is-open{opacity:1;visibility:visible}
.modal-container{background-color:var(--color-white);border-radius:var(--radius-xl);width:100%;max-width:560px;max-height:90vh;overflow-y:auto;position:relative;transform:translateY(20px);transition:transform var(--transition-normal);padding:var(--space-8)}
.modal-overlay.is-open .modal-container{transform:translateY(0)}
@media(max-width:639px){.modal-container{height:100%;max-height:100%;border-radius:0;padding:var(--space-6)}
}
.modal-close{position:absolute;top:var(--space-4);right:var(--space-4);width:40px;height:40px;border-radius:var(--radius-full);background-color:var(--color-marfil);display:flex;align-items:center;justify-content:center;color:var(--color-profundo);transition:background-color var(--transition-fast)}
.modal-close:hover{background-color:var(--color-cielo)}
.modal-header{text-align:center;margin-bottom:var(--space-8)}
.form-group{margin-bottom:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}
.form-label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-profundo)}
.form-control{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-bronce-50);border-radius:var(--radius-md);background-color:var(--color-white);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}
.form-control:focus{outline:none;border-color:var(--color-infinito);box-shadow:0 0 0 3px var(--color-infinito-20)}
textarea.form-control{resize:vertical;min-height:100px}
.form-checkbox-group{display:flex;align-items:flex-start;gap:var(--space-3);margin-block:var(--space-6)}
.form-checkbox{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border:1px solid var(--color-bronce-50);border-radius:4px;background-color:var(--color-white);flex-shrink:0;margin-top:2px;cursor:pointer;position:relative;transition:all var(--transition-fast)}
.form-checkbox:checked{background-color:var(--color-infinito);border-color:var(--color-infinito)}
.form-checkbox:checked:after{content:"";position:absolute;left:6px;top:2px;width:6px;height:10px;border:solid var(--color-white);border-width:0 2px 2px 0;transform:rotate(45deg)}
.form-checkbox-label{font-size:var(--text-sm);color:var(--color-profundo-50);cursor:pointer}
.btn-submit{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-2);background-color:var(--color-infinito);color:var(--color-white);padding:var(--space-4);border-radius:var(--radius-full);font-weight:var(--weight-bold);transition:all var(--transition-normal)}
.btn-submit:hover:not(:disabled){background-color:var(--color-profundo)}
.btn-submit:disabled{opacity:.7;cursor:not-allowed}
.field--error .form-control{border-color:var(--color-error)}
.field--error .form-control:focus{box-shadow:0 0 0 3px #dc262633}
.field--success .form-control{border-color:var(--color-success)}
.field--success .form-control:focus{box-shadow:0 0 0 3px #25d36633}
.form-message{font-size:var(--text-xs);margin-top:var(--space-1)}
.form-message--error{color:var(--color-error)}
@keyframes spin{to{transform:rotate(360deg)}
}
.spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:var(--color-white);border-radius:50%;animation:spin 1s linear infinite}
.form-success-view{text-align:center;padding:var(--space-8) 0;display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}
.form-success-icon{width:64px;height:64px;border-radius:var(--radius-full);background-color:#25d3661a;color:var(--color-success);display:flex;align-items:center;justify-content:center}
.whatsapp-float{position:fixed;bottom:calc(var(--space-6) + env(safe-area-inset-bottom,0px));right:var(--space-5);z-index:var(--z-whatsapp);display:flex;align-items:center;justify-content:center;background-color:var(--color-white);color:#25d366;border:1px solid var(--color-profundo-10);border-radius:var(--radius-full);width:56px;height:56px;box-shadow:var(--shadow-md);transition:all var(--transition-normal);text-decoration:none;overflow:hidden}
.whatsapp-float:hover{background-color:var(--color-marfil);border-color:#25d366;width:140px;justify-content:flex-start;padding-left:16px;box-shadow:var(--shadow-lg)}
.whatsapp-btn{display:inline-flex;align-items:center;text-decoration:none}
.whatsapp-float svg{flex-shrink:0}
.whatsapp-float__label{opacity:0;font-weight:500;font-size:var(--text-sm);white-space:nowrap;color:var(--color-profundo);margin-left:8px;transition:opacity var(--transition-normal);transition-delay:.1s}
.whatsapp-float:hover .whatsapp-float__label{opacity:1}
.whatsapp-hidden{opacity:0;pointer-events:none;transform:translateY(20px)}


