.vf-product-page { --vf-ink: #152752; --vf-blue: #3569ef; --vf-soft: #f2f7fb; color: var(--vf-ink); font: 400 17px/1.65 'Funnel Sans', sans-serif; }
.vf-product-page *, .vf-product-page *::before, .vf-product-page *::after { box-sizing: border-box; }
.vf-product-page h1, .vf-product-page h2, .vf-product-page h3, .vf-product-page h5, .vf-product-page h6 { font-family: inherit; color: inherit; text-transform: none; letter-spacing: -.025em; }
.vf-product-page a:focus-visible, .vf-product-page button:focus-visible, .vf-product-page [tabindex]:focus-visible { outline: 3px solid #8dd2ff; outline-offset: 4px; }
.vf-product-page section[id] { scroll-margin-top: 105px; }
.vf-product-page .vf-product-eyebrow { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; font-weight: 600; margin: 0 0 20px; }
.vf-product-hero { position: relative; isolation: isolate; min-height: 530px; display: flex; align-items: center; background: #f2f7fb; overflow: hidden; }
.vf-product-hero__image { position: absolute; inset: 0 0 0 auto; width: 55%; height: 100%; object-fit: contain; }
.vf-product-hero--lifestyle { color: #fff; min-height: clamp(510px, 43vw, 660px); background: #152752; }
.vf-product-hero--lifestyle .vf-product-hero__image { width: 100%; object-fit: cover; object-position: 60% center; z-index: -2; }
.vf-product-hero--lifestyle::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, #0e1b37e8 0%, #0e1b3790 40%, #0e1b370a 78%); }
.vf-product-hero__body { padding-block: 80px; }
.vf-product-hero h1 { font-size: clamp(42px, 5.5vw, 80px); line-height: 1.06; font-weight: 600; max-width: 640px; margin: 0 0 24px; }
.vf-product-hero:not(.vf-product-hero--lifestyle) h1 { max-width: 50%; font-size: clamp(36px, 4vw, 62px); }
.vf-product-hero .vf-product-eyebrow { color: #58657c; }
.vf-product-hero--lifestyle .vf-product-eyebrow { color: #8dd2ff; }
.vf-product-hero__lead { max-width: 480px; font-size: clamp(23px, 2.1vw, 30px); line-height: 1.3; margin: 0 0 20px; letter-spacing: -.02em; }
.vf-product-hero__detail { max-width: 400px; margin-bottom: 30px; color: #e7edf5; }
.vf-product-button, .vf-product-page .vf-buy-main { display: inline-flex; align-items: center; justify-content: center; gap: 24px; border: 1px solid transparent; border-radius: 5px; background: #3569ef; color: #fff; padding: 15px 26px; font: 600 16px/1.4 'Funnel Sans', sans-serif; text-transform: none; text-decoration: none; min-height: 52px; }
.vf-product-button:hover, .vf-product-page .vf-buy-main:hover { background: #254ec0; color: #fff; }
.vf-product-subnav { background: #f2f7fb; border-bottom: 1px solid #dfe7ef; }
.vf-product-subnav .container { display: flex; align-items: center; gap: 36px; padding-block: 18px; }
.vf-product-subnav a { color: #152752; font-size: 14px; font-weight: 500; text-decoration: none; }
.vf-product-subnav a:first-child { margin-right: auto; color: #3569ef; }
.vf-product-page .vf-product-config { padding: 72px 0 80px; }
.vf-product-config .producto-wrapper { --bs-gutter-x: 64px; }
.vf-product-config .info-producto { padding-left: calc(var(--bs-gutter-x) * .5); }
.vf-product-config .product-gallery { position: sticky; top: 120px; }
.vf-product-config .main-img { background: #f2f7fb; border-radius: 12px; overflow: hidden; }
.vf-product-config .main-img #current { display: block; width: 100%; height: auto; aspect-ratio: 1.12; object-fit: cover; object-position: 50% 50%; padding: 0; }
.vf-product-config .gallery-thumbnails { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; padding: 4px 0; }
.vf-product-config .product-gallery .gallery-thumbnails .gallery-thumb { width: 100%; max-width: none; height: auto; aspect-ratio: 4 / 3; min-width: 0; object-fit: cover; object-position: 50% 50%; border: 1px solid #dce5ef; border-radius: 6px; background: #fff; padding: 0; cursor: pointer; }
.vf-product-config .product-gallery .gallery-thumbnails .gallery-thumb.active { border: 2px solid #3569ef; }
.vf-product-config .breadcrumb { font-size: 12px; margin-bottom: 30px; }
.vf-product-config .producto-titulo { font-size: clamp(30px, 3vw, 44px); line-height: 1.15; font-weight: 600; margin-bottom: 14px !important; }
.vf-product-intro { color: #58657c; margin-bottom: 28px; }
.vf-product-config .form-wrap { flex-direction: column; align-items: stretch !important; gap: 8px; margin: 0 0 20px; }
.vf-product-config .form-wrap label { min-width: 0; font-size: 14px; font-weight: 600; }
.vf-product-config .form-control { border: 1px solid #cdd8e5; border-radius: 6px; height: 52px; background-color: #fff; color: #152752; font: 400 16px 'Funnel Sans', sans-serif; }
.vf-product-config .form-control:focus { border-color: #3569ef; box-shadow: 0 0 0 3px #3569ef20; }
.vf-product-config .nice-select { width: 100%; border: 1px solid #cdd8e5; border-radius: 6px; color: #152752; font-size: 16px; }
.vf-product-config .nice-select .list { width: 100%; max-height: 270px; overflow-y: auto; z-index: 20; }
.vf-product-config .precio { font-size: 36px; line-height: 1.2; font-weight: 600; color: #152752; }
.vf-product-config .precio-ant { font-size: 20px; color: #647087; text-decoration: line-through; }
.vf-product-config .vf-buy-actions { gap: 12px !important; }
.vf-product-page .vf-buy-secondary { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 15px 20px; background: #fff; color: #152752; border: 1px solid #cdd8e5; border-radius: 5px; font: 500 15px/1.4 'Funnel Sans', sans-serif; text-transform: none; }
.vf-product-page .vf-buy-secondary:hover { background: #f2f7fb; }
.vf-product-config .vf-buy-trust { border-block: 1px solid #e1e8f0; padding: 22px 0; font-size: 13px; color: #536078; }
.vf-product-config .vf-buy-trust li { margin: 8px 0; }
.vf-product-config .vf-buy-trust a { color: inherit; }
.vf-product-config .ficha-producto { justify-content: flex-start; gap: 36px !important; padding-block: 16px; }
.vf-product-config .ficha-label { font-size: 14px; color: #152752; }
.vf-product-page .producto-desc { color: #536078; font-size: 16px; line-height: 1.75; }
.vf-product-page .vf-desc-toggle { background: none; border: 0; color: #3569ef; padding: 8px 0; font: 600 14px 'Funnel Sans', sans-serif; }
.vf-product-page .vf-product-core { background: #f2f7fb; padding: 80px 0; }
.vf-product-page .vf-product-core h2 { font-size: clamp(30px, 3.3vw, 48px); line-height: 1.15; }
.vf-product-core .col-8 { width: 100%; max-width: 820px; }
.vf-product-core h5 { font-size: 22px; margin: 20px 0 16px; }
.vf-product-page .vf-product-finish { background: #152752; color: #fff; }
.vf-product-finish .section-md { padding-block: 72px; }
.vf-product-finish h2 { display: block; font-size: 36px; }
.vf-product-finish h2 > .icon { display: none; }
.vf-product-finish .text-light, .vf-product-finish .producto-desc { color: #dfe9f4 !important; }
.vf-product-finish .pe-7 { padding-right: 40px; }
.vf-product-finish h5 { font-size: 20px; line-height: 1.4; }
.vf-product-page .vf-product-details { background: #fff; padding: 64px 0; }
.vf-product-details > .container, .vf-product-related > .container { margin-top: 0 !important; }
.vf-product-details h5 { font-size: 22px; margin: 24px 0 14px; }
.vf-product-details .title-icon { font-size: 30px; }
.vf-product-details .title-icon .icon { display: none; }
.vf-product-details .text-light, .vf-product-related .text-light { color: #647087 !important; }
.vf-product-page .vf-product-related { padding: 60px 0; background: #f2f7fb; }
.vf-product-related .mas2 { font-size: clamp(28px, 3vw, 40px); }
.vf-product-related .card-body { padding: 24px !important; background: #fff; border-radius: 10px; height: 100%; }
.vf-product-related .card-image { width: 100%; overflow: hidden; border-radius: 6px; }
.vf-product-related .card-image .marco-a { display: block; width: 100%; }
.vf-product-related .card-image img { display: block; width: 100%; max-width: none; height: auto; aspect-ratio: 1 / 1; object-fit: cover; object-position: 50% 50%; }
.vf-product-related .card-simple-wrap { row-gap: 24px; }
.vf-product-related .card-title h5 { font-size: 22px; margin: 14px 0; }
.vf-product-related .btn-group { flex-wrap: wrap; gap: 8px; }
.vf-product-related .btn-group .btn { border-radius: 4px !important; font: 500 12px/1.5 'Funnel Sans', sans-serif; padding: 10px 12px; }
@media (max-width: 991px) {
.vf-product-page .vf-product-config { padding: 48px 0; }
.vf-product-config .product-gallery { position: static; }
.vf-product-config .main-img #current { aspect-ratio: 1.5; max-height: 440px; }
.vf-product-page .vf-product-finish .pe-7 { padding-right: 24px; }
}
@media (max-width: 767px) {
.vf-product-page .container { padding-inline: 24px; }
.vf-product-page section[id] { scroll-margin-top: 88px; }
.vf-product-hero, .vf-product-hero--lifestyle { display: block; min-height: 0; background: #152752; color: #fff; }
.vf-product-hero .vf-product-hero__image { position: relative; display: block; width: 100%; height: 270px; object-fit: contain; background: #f2f7fb; }
.vf-product-hero--lifestyle .vf-product-hero__image { object-fit: cover; object-position: 65% center; }
.vf-product-hero--lifestyle::before { display: none; }
.vf-product-hero__body { padding-block: 36px 42px; }
.vf-product-hero h1, .vf-product-hero:not(.vf-product-hero--lifestyle) h1 { max-width: 100%; font-size: 42px; }
.vf-product-hero .vf-product-eyebrow { color: #8dd2ff; }
.vf-product-hero__lead { font-size: 25px; }
.vf-product-hero__detail { font-size: 16px; }
.vf-product-subnav .container { gap: 20px; overflow-x: auto; }
.vf-product-subnav a { white-space: nowrap; font-size: 12px; }
.vf-product-config .producto-wrapper { --bs-gutter-x: 24px; --bs-gutter-y: 32px; }
.vf-product-config .main-img #current { aspect-ratio: 1.2; }
.vf-product-config .info-producto { padding-left: 12px; }
.vf-product-config .breadcrumb { margin-bottom: 24px; }
.vf-product-config .vf-buy-main { width: 100%; }
.vf-product-config .vf-buy-secondary { width: 100%; }
.vf-product-page .vf-product-core, .vf-product-page .vf-product-details, .vf-product-page .vf-product-related { padding: 44px 0; }
.vf-product-finish .section-md { padding-block: 44px; }
.vf-product-finish .box-image-item { min-height: 300px; }
}
.vf-product-config .acciones-producto .vf-buy-main, .vf-product-config .acciones-producto .vf-buy-secondary { min-height: 52px; padding: 15px 22px; margin: 0; }
.vf-product-config .vf-product-select { appearance: none; padding: 12px 42px 12px 16px; }

.vf-header.vf-header--hero { min-height: 0; }
.vf-header.vf-header--hero .vf-nav { background: transparent; }
.vf-header.vf-header--hero .vf-nav--scrolled { background: #212d53; }
.vf-header.vf-header--hero + main .vf-product-hero__body { padding-top: 150px; }
@media (max-width: 767px) {
    .vf-header.vf-header--hero { min-height: 78px; }
    .vf-header.vf-header--hero .vf-nav { background: #212d53; }
    .vf-header.vf-header--hero + main .vf-product-hero__body { padding-top: 36px; }
}
