:root{--navy:#123f70;--navy2:#0b315b;--blue:#1689cf;--cyan:#13a8b5;--aqua:#dff5f6;--soft:#f4f9fc;--text:#19395c;--muted:#61758c;--white:#fff;--shadow:0 16px 45px rgba(16,57,91,.10)}
*{scroll-behavior:smooth}body{font-family:'Montserrat',Arial,sans-serif;color:var(--text);background:#fff;line-height:1.65}.section-space{padding:95px 0}.site-nav{height:82px;box-shadow:0 2px 18px rgba(0,0,0,.06);z-index:1030}.brand{display:flex;align-items:center;color:var(--navy)!important;line-height:1}.brand-mark{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--cyan),var(--blue));color:#fff;display:inline-flex;align-items:center;justify-content:center;margin-right:10px;font-size:21px}.brand strong{font-size:29px;font-weight:800}.brand b{font-size:29px;color:var(--cyan);font-weight:700}.brand small{display:block;font-size:7px;letter-spacing:3px;margin-top:5px;color:#66809b}.nav-link{font-size:13px;font-weight:600;color:var(--text)!important;margin-left:17px}.btn{border-radius:30px;font-weight:700;padding:.72rem 1.35rem;border:0}.btn-primary{background:linear-gradient(135deg,var(--navy),var(--blue));box-shadow:0 8px 22px rgba(18,63,112,.18)}.btn-primary:hover{filter:brightness(1.07)}.btn-whatsapp{background:#13adba;color:#fff!important}.btn-whatsapp:hover{background:#0b98a5;color:#fff}.hero-carousel{margin-top:82px}
.hero-slide{height:750px;position:relative;overflow:hidden;background:#eaf5fa}.hero-slide>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center}.hero-slide-1>img{object-position:center 48%}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,33,63,.82) 0%,rgba(8,53,91,.53) 43%,rgba(7,39,67,.06) 75%)}.hero-overlay.light{background:linear-gradient(90deg,rgba(255,255,255,.94),rgba(255,255,255,.48) 52%,rgba(255,255,255,.05))}.hero-content{position:relative;z-index:2;padding-top:145px;color:#fff;max-width:1150px}.hero-content-dark{color:var(--navy)}.eyebrow,.section-kicker{font-size:12px;letter-spacing:2.5px;font-weight:800;color:#42b6d5}.hero-content h1,.hero-content h2{font-size:62px;line-height:1.06;font-weight:800;max-width:650px;margin:16px 0}.hero-content h1 span,.hero-content h2 span,.section-heading h2 span,.intro-section h2 span,.targets-section h2 span,.contact-section h2 span{color:var(--cyan)}.hero-content p{font-size:19px;max-width:620px;margin-bottom:28px}.hero-actions .btn{margin-right:10px}.carousel-indicators li{width:32px;height:4px;border-radius:4px}.section-kicker{display:inline-block;color:var(--blue);margin-bottom:10px}.section-heading h2,.intro-section h2,.targets-section h2,.contact-section h2{font-size:40px;line-height:1.18;font-weight:800;margin:8px 0 12px}.section-heading p,.section-text{color:var(--muted);font-size:16px}.intro-section{background:linear-gradient(180deg,#fff,#f5fbfe)}.stat-card{display:flex;align-items:center;padding:22px;background:#fff;border-radius:18px;box-shadow:var(--shadow);margin-bottom:17px}.stat-icon{width:55px;height:55px;border-radius:16px;background:var(--aqua);color:var(--cyan);display:flex;align-items:center;justify-content:center;font-size:23px;margin-right:17px}.stat-card strong{display:block;font-size:18px;color:var(--navy)}.stat-card span{font-size:13px;color:var(--muted)}.benefits-section{background:var(--soft)}.benefit-card{height:100%;background:#fff;border-radius:22px;padding:32px 25px;box-shadow:0 10px 35px rgba(16,57,91,.06);transition:.25s}.benefit-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.icon-circle{width:60px;height:60px;border-radius:50%;background:#e7f7f8;color:var(--cyan);display:flex;align-items:center;justify-content:center;font-size:23px;margin-bottom:22px}.benefit-card h3{font-size:17px;font-weight:800;color:var(--navy);line-height:1.35}.benefit-card p{font-size:13px;color:var(--muted);margin-bottom:0}.targets-section{background:#fff}.parasites-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.parasites-grid>div{min-height:130px;border:1px solid #e3edf4;border-radius:20px;background:linear-gradient(145deg,#fff,#f2fafd);display:flex;align-items:center;padding:25px;box-shadow:0 10px 30px rgba(16,57,91,.05)}.parasites-grid i{font-size:34px;color:var(--cyan);width:65px}.parasites-grid span{font-size:16px;font-weight:800;color:var(--navy)}.products-section{background:#f5faff}.product-tabs{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.product-tab{border:1px solid #d6e7f1;background:#fff;color:var(--navy);border-radius:30px;padding:10px 18px;font-weight:700;cursor:pointer}.product-tab.active,.product-tab:hover{background:var(--navy);color:#fff;border-color:var(--navy)}.product-item{transition:.3s}.product-item.is-hidden{display:none}.product-card{height:100%;background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 10px 35px rgba(16,57,91,.08);margin-bottom:28px}.product-image-wrap{height:245px;background:#f7f7f5;display:flex;align-items:center;justify-content:center;position:relative;padding:20px}.product-image-wrap img{width:100%;height:100%;object-fit:contain}.period-badge{position:absolute;right:15px;top:15px;background:var(--navy);color:#fff;border-radius:20px;padding:5px 11px;font-size:11px;font-weight:800}.product-content{padding:23px}.product-content h3{font-size:21px;font-weight:800;color:var(--navy);margin-bottom:5px}.weight{font-size:13px;color:var(--muted);margin-bottom:18px}.weight i{color:var(--cyan)}.product-data{display:flex;border-top:1px solid #edf2f5;border-bottom:1px solid #edf2f5;margin-bottom:18px}.product-data span{flex:1;padding:11px 7px}.product-data span+span{border-left:1px solid #edf2f5}.product-data small,.product-data strong{display:block}.product-data small{font-size:10px;color:#7890a4}.product-data strong{font-size:13px;color:var(--navy)}.notice{background:#fff8e7;border:1px solid #f1dfad;color:#765e20;border-radius:15px;padding:15px 18px;font-size:12px}.notice i{margin-right:7px}.info-section{background:#fff}.info-panel{background:#f7fbfd;border:1px solid #e2edf3;border-radius:22px;padding:30px}.info-panel h3{font-size:19px;font-weight:800;color:var(--navy);margin-bottom:15px}.info-panel h3 i{color:var(--cyan);margin-right:9px}.info-panel p{font-size:13px;color:var(--muted)}.dose-table{font-size:12px;background:#fff;border-radius:12px;overflow:hidden}.dose-table thead{background:var(--navy);color:#fff}.dose-table th,.dose-table td{vertical-align:middle}.check-list{padding:0;margin:20px 0 0;list-style:none}.check-list li{font-size:12px;padding:8px 0;border-bottom:1px solid #e4edf2;color:var(--muted)}.check-list i{color:var(--cyan);margin-right:8px}.small-panel{min-height:150px}.technical-card{display:flex;align-items:center;gap:20px;background:linear-gradient(135deg,var(--navy),#176e9e);color:#fff;border-radius:25px;padding:28px 32px}.technical-card h3{font-size:19px;font-weight:800}.technical-card p{font-size:12px;margin:0;opacity:.85}.technical-icon{width:60px;height:60px;border-radius:16px;background:rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;font-size:25px}.technical-card>div:nth-child(2){flex:1}.cta-section{padding:0 0 95px}.cta-box{background:linear-gradient(135deg,#123f70,#0c718e);border-radius:30px;padding:50px 55px;color:#fff;display:flex;justify-content:space-between;align-items:center;gap:30px;position:relative;overflow:hidden}.cta-box:after{content:'';position:absolute;width:280px;height:280px;border:55px solid rgba(255,255,255,.05);border-radius:50%;right:-90px;top:-120px}.cta-box h2{font-size:34px;font-weight:800;margin:5px 0}.cta-box p{margin:0;opacity:.82}.cta-actions{display:flex;gap:10px;position:relative;z-index:2}.contact-section{background:#f6fbfe}.contact-detail{display:flex;align-items:center;margin-top:25px}.contact-detail>i{width:48px;height:48px;border-radius:14px;background:#e3f6f7;color:var(--cyan);display:flex;align-items:center;justify-content:center;font-size:22px;margin-right:15px}.contact-detail small{display:block;color:#8193a5}.contact-detail a{font-size:14px;font-weight:700;color:var(--navy)}.contact-form-card{background:#fff;border-radius:24px;padding:32px;box-shadow:var(--shadow)}.form-control{border:1px solid #dce8ef;border-radius:10px;height:48px;font-size:13px}.form-control:focus{border-color:#58bcd0;box-shadow:0 0 0 .15rem rgba(19,168,181,.12)}textarea.form-control{height:auto}.form-group label{font-size:12px;font-weight:800;color:var(--navy)}.form-note{display:block;color:#8294a4;margin-top:13px}.site-footer{background:#0d3763;color:#fff;padding:42px 0 20px}.footer-brand{display:flex;align-items:center;font-size:27px;font-weight:800}.footer-brand .brand-mark{background:rgba(255,255,255,.14);margin-right:10px}.site-footer small{letter-spacing:2px;font-size:8px;opacity:.7}.site-footer p{font-size:12px;opacity:.8}.site-footer a{color:#fff;font-size:13px}.social{font-size:20px!important;margin-left:18px;opacity:.9}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:30px;padding-top:17px;font-size:10px;opacity:.6}.floating-whatsapp{position:fixed;right:24px;bottom:22px;width:58px;height:58px;border-radius:50%;background:#13adba;color:#fff;display:flex;align-items:center;justify-content:center;font-size:29px;z-index:1000;box-shadow:0 10px 28px rgba(19,173,186,.35)}.floating-whatsapp:hover{color:#fff;transform:translateY(-3px)}@media(max-width:991px){.site-nav{height:72px}.hero-carousel{margin-top:72px}.nav-link{margin-left:0;padding:9px 0!important}.hero-slide{height:580px}.hero-content{padding-top:125px}.hero-content h1,.hero-content h2{font-size:46px}.technical-card{flex-wrap:wrap}.cta-box{display:block}.cta-actions{margin-top:25px}}@media(max-width:767px){.section-space{padding:70px 0}.hero-slide{height:570px}.hero-slide>img{object-position:60% center}.hero-overlay{background:linear-gradient(90deg,rgba(5,33,63,.88),rgba(5,33,63,.48))}.hero-content{padding:105px 25px 0}.hero-content h1,.hero-content h2{font-size:39px}.hero-content p{font-size:15px}.hero-actions .btn{display:block;width:100%;margin:8px 0}.section-heading h2,.intro-section h2,.targets-section h2,.contact-section h2{font-size:31px}.parasites-grid{grid-template-columns:1fr}.technical-card{padding:25px}.cta-box{padding:35px 28px}.cta-actions{display:block}.cta-actions .btn{width:100%;margin-bottom:9px}.contact-form-card{padding:23px}.product-image-wrap{height:220px}.brand strong,.brand b{font-size:24px}}@media(max-width:420px){.brand small{display:none}.hero-content h1,.hero-content h2{font-size:34px}.hero-slide{height:550px}}

/* ==========================================
   INTRO IMAGE
========================================== */

.intro-image {
    position: relative;
    overflow: hidden;
    border-radius: 24px;
    background: #f1f8fc;
    box-shadow: 0 15px 40px rgba(4, 46, 109, 0.10);
}

.intro-image img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform .5s ease;
}

.intro-image:hover img {
    transform: scale(1.02);
}


/* ==========================================
   BOTON GEN VET
========================================== */

.btn-genvet {
    display: inline-flex;
    align-items: center;
    padding: 12px 24px;
    border-radius: 30px;
    background: #09a7b5;
    color: #fff !important;
    font-weight: 600;
    transition: all .3s ease;
}

.btn-genvet:hover {
    background: #078d9a;
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(9, 167, 181, .25);
}

.genvet-logo {
    display: block;
    width: auto;
    height: 58px;
    max-width: 220px;
    object-fit: contain;
}

/* En dispositivos pequeños */
@media (max-width: 767px) {
    .genvet-logo {
        height: 48px;
        max-width: 190px;
    }
}

.footer-bottom a {
    color: inherit;
    font-weight: 600;
    text-decoration: none;
    transition: opacity 0.2s ease;
}

.footer-bottom a:hover {
    opacity: 0.7;
}

/* ============================================
   FICHA TÉCNICA
============================================= */

.technical-section {
    padding: 90px 0;
    background: #f7f9fc;
}

.technical-section .section-heading {
    margin-bottom: 45px;
}

.section-kicker {
    display: block;
    color: #042e6d;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.technical-section .section-heading h2 {
    font-size: 38px;
    font-weight: 300;
    color: #1c2940;
    margin: 0 0 15px;
}

.technical-section .section-heading h2 strong {
    font-weight: 700;
    color: #042e6d;
}

.technical-section .section-heading p {
    max-width: 700px;
    margin: auto;
    color: #687386;
    line-height: 1.7;
}

.technical-accordion {
    max-width: 950px;
    margin: auto;
}

.tech-item {
    background: #fff;
    border-radius: 10px;
    margin-bottom: 12px;
    box-shadow: 0 4px 18px rgba(4, 46, 109, 0.06);
    overflow: hidden;
}

.tech-header {
    width: 100%;
    border: 0;
    background: #fff;
    padding: 20px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-align: left;
    color: #1c2940;
    font-size: 16px;
    font-weight: 700;
    transition: all .25s ease;
    cursor: pointer;
}

.tech-header:hover,
.tech-header:focus {
    color: #042e6d;
    background: #f8faff;
    outline: none;
}

.tech-header > span {
    display: flex;
    align-items: center;
    gap: 14px;
}

.tech-header > span > i {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #eef4fc;
    color: #042e6d;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.tech-header > i {
    font-size: 12px;
    transition: transform .25s ease;
}

/* Todas comienzan abiertas */
.tech-header[aria-expanded="true"] > i {
    transform: rotate(180deg);
}

.tech-content {
    padding: 0 28px 25px 76px;
    color: #5d6878;
    font-size: 15px;
    line-height: 1.8;
}

.tech-content p {
    margin-bottom: 15px;
}

.tech-content h5 {
    color: #042e6d;
    font-weight: 700;
    margin-top: 20px;
    margin-bottom: 5px;
}

.tech-content ul {
    padding-left: 20px;
    margin-bottom: 0;
}

.tech-content li {
    margin-bottom: 12px;
}

.tech-highlight {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 12px 18px;
    background: #f1f6fd;
    border-radius: 8px;
    color: #042e6d;
}

.tech-highlight i {
    font-size: 20px;
}

.storage-box {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 20px;
    background: #f1f6fd;
    border-radius: 10px;
    color: #042e6d;
}

.storage-box > i {
    font-size: 28px;
}

.storage-box strong {
    display: block;
    font-size: 16px;
}

.storage-box p {
    margin: 3px 0 0;
    color: #687386;
}


/* ============================================
   RESPONSIVE
============================================= */

@media (max-width: 767px) {

    .technical-section {
        padding: 65px 0;
    }

    .technical-section .section-heading h2 {
        font-size: 30px;
    }

    .tech-header {
        padding: 16px;
        font-size: 14px;
    }

    .tech-header > span {
        gap: 10px;
    }

    .tech-header > span > i {
        width: 34px;
        height: 34px;
        flex-shrink: 0;
    }

    .tech-content {
        padding: 0 18px 22px 18px;
        font-size: 14px;
    }

    .storage-box {
        align-items: flex-start;
    }

}

.product-image-wrap {
    overflow: hidden;
}

.product-image-wrap img {
    transition: transform 0.3s ease;
}

.product-image-wrap:hover img {
    transform: scale(1.05);
}

/* ============================================
   VISOR / GALERÍA DE PRODUCTO
============================================= */

.product-image-wrap {
    overflow: hidden;
    cursor: zoom-in;
}

.product-image-wrap img {
    transition: transform 0.35s ease;
}

.product-image-wrap:hover img {
    transform: scale(1.05);
}


/* Visor */

.image-viewer {
    position: fixed;
    z-index: 99999;

    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    background: rgba(0, 0, 0, 0.88);

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 40px;

    opacity: 0;
    visibility: hidden;

    transition: opacity 0.25s ease,
                visibility 0.25s ease;

    cursor: zoom-out;
}


/* Cuando está activo */

.image-viewer.active {
    opacity: 1;
    visibility: visible;
}


/* Contenedor */

.image-viewer-content {
    width: 100%;
    height: 100%;

    display: flex;
    align-items: center;
    justify-content: center;
}


/* Imagen grande */

.image-viewer-content img {
    max-width: 90vw;
    max-height: 90vh;

    width: auto;
    height: auto;

    object-fit: contain;

    border-radius: 8px;

    box-shadow: 0 15px 50px rgba(0,0,0,.45);

    cursor: default;

    transform: scale(.92);

    transition: transform 0.3s ease;
}


/* Animación al abrir */

.image-viewer.active .image-viewer-content img {
    transform: scale(1);
}


/* Botón cerrar */

.image-viewer-close {
    position: absolute;

    top: 25px;
    right: 30px;

    width: 45px;
    height: 45px;

    border: 0;
    border-radius: 50%;

    background: rgba(255,255,255,.95);

    color: #042e6d;

    font-size: 18px;

    display: flex;
    align-items: center;
    justify-content: center;

    cursor: pointer;

    z-index: 2;

    transition: all .25s ease;
}

.image-viewer-close:hover {
    background: #042e6d;
    color: #fff;

    transform: rotate(90deg);
}


/* Móvil */

@media (max-width: 767px) {

    .image-viewer {
        padding: 20px;
    }

    .image-viewer-content img {
        max-width: 95vw;
        max-height: 85vh;
    }

    .image-viewer-close {
        top: 15px;
        right: 15px;

        width: 40px;
        height: 40px;
    }

}