/*
Theme Name:   Zerif PRO Child — CIC Analytic
Theme URI:    https://cic-analytic.com
Description:  Child theme de Zerif PRO para CIC Analytic. Catalogo de productos por industria y marca.
Author:       CIC Analytic
Author URI:   https://cic-analytic.com
Template:     zerif-pro
Version:      1.1.0
License:      GNU General Public License v2 or later
Text Domain:  zerif-pro-child
*/

.cic-catalog-page {
    padding-top: 40px;
    padding-bottom: 80px;
    background-color: #fbfcfc;
}
.cic-tax-hero {
    text-align: center;
    padding: 20px 15px 35px;
    margin-bottom: 35px;
    border-bottom: 1px solid #e6ece8;
}
.cic-breadcrumb {
    font-family: 'Lato', Helvetica, Arial, sans-serif;
    font-size: 13px;
    color: #8c9b94;
    margin-bottom: 15px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.cic-breadcrumb a {
    color: #3e8468;
    text-decoration: none;
    font-weight: 600;
}
.cic-breadcrumb a:hover {
    color: #035b41;
    text-decoration: underline;
}
.cic-breadcrumb .sep {
    margin: 0 8px;
    color: #b0c0b8;
}
.cic-breadcrumb .current {
    color: #555555;
    font-weight: 700;
}
.cic-tax-hero h1 {
    font-family: 'Montserrat', Helvetica, Arial, sans-serif;
    font-size: 34px;
    font-weight: 700;
    color: #222222;
    margin: 0 0 14px 0;
    line-height: 1.2;
}
.cic-tax-divider {
    width: 60px;
    height: 4px;
    background: #3e8468;
    margin: 0 auto 16px;
    border-radius: 2px;
}
.cic-tax-description {
    font-family: 'Lato', Helvetica, Arial, sans-serif;
    font-size: 15px;
    color: #55605a;
    max-width: 780px;
    margin: 0 auto;
    line-height: 1.6;
}
.cic-columns-wrapper {
    display: flex;
    gap: 32px;
    align-items: flex-start;
}
.cic-column {
    flex: 1;
    min-width: 0;
}
.cic-column-header {
    background: #ffffff;
    border: 1px solid #e2ece7;
    border-top: 4px solid #3e8468;
    border-radius: 6px;
    padding: 16px 20px;
    margin-bottom: 22px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-shadow: 0 2px 8px rgba(0,0,0,0.03);
}
.cic-column-header.cic-header-lab {
    border-top-color: #2b5d7d;
}
.cic-column-title-group h2 {
    font-family: 'Montserrat', Helvetica, Arial, sans-serif;
    font-size: 16px;
    font-weight: 700;
    color: #1e293b;
    margin: 0 0 3px 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    line-height: 1.3;
}
.cic-column-subtitle {
    font-family: 'Lato', Helvetica, Arial, sans-serif;
    font-size: 12px;
    color: #64748b;
    margin: 0;
}
.cic-column-badge {
    background: #eef6f2;
    color: #2e6d55;
    font-family: 'Montserrat', Helvetica, Arial, sans-serif;
    font-size: 11px;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: 20px;
    white-space: nowrap;
    border: 1px solid #d2e8de;
}
.cic-header-lab .cic-column-badge {
    background: #edf5fb;
    color: #2b5d7d;
    border-color: #d0e4f3;
}
.cic-card {
    background: #ffffff;
    border: 1px solid #e5ebe7;
    border-radius: 6px;
    padding: 22px;
    margin-bottom: 20px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.03);
    transition: all 0.25s ease-in-out;
    display: flex;
    flex-direction: column;
}
.cic-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(62, 132, 104, 0.12);
    border-color: #aac8bd;
}
.cic-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
    gap: 10px;
}
.cic-code-badge {
    display: inline-block;
    background: #f1f6f4;
    color: #2e6d55;
    font-family: 'Montserrat', Helvetica, Arial, sans-serif;
    font-size: 11px;
    font-weight: 700;
    padding: 3px 9px;
    border-radius: 4px;
    border: 1px solid #c9dfd6;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}
.cic-type-tag {
    font-family: 'Montserrat', Helvetica, Arial, sans-serif;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 2px 8px;
    border-radius: 12px;
}
.cic-type-proceso {
    background: #e6f4ea;
    color: #137333;
}
.cic-type-laboratorio {
    background: #e8f0fe;
    color: #1a73e8;
}
.cic-card-title {
    font-family: 'Montserrat', Helvetica, Arial, sans-serif;
    font-size: 16px;
    font-weight: 700;
    color: #222222;
    margin: 0 0 12px 0;
    line-height: 1.35;
}
.cic-card-title a {
    color: inherit;
    text-decoration: none;
    transition: color 0.2s ease;
}
.cic-card-title a:hover {
    color: #3e8468;
}
.cic-params-box {
    background: #f7faf8;
    border-left: 3px solid #3e8468;
    padding: 8px 12px;
    border-radius: 0 4px 4px 0;
    margin-bottom: 14px;
}
.cic-params-label {
    display: block;
    font-family: 'Montserrat', Helvetica, Arial, sans-serif;
    font-size: 10px;
    font-weight: 700;
    color: #55776a;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 2px;
}
.cic-params-text {
    font-family: 'Lato', Helvetica, Arial, sans-serif;
    font-size: 13px;
    font-weight: 700;
    color: #2c3e50;
    margin: 0;
    line-height: 1.4;
}
.cic-card-excerpt {
    font-family: 'Lato', Helvetica, Arial, sans-serif;
    font-size: 13.5px;
    color: #5f6b65;
    line-height: 1.6;
    margin: 0 0 18px 0;
    flex-grow: 1;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.cic-btn-card {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 9px 14px;
    background: #fdfefe;
    border: 1px solid #d2e4dc;
    border-radius: 4px;
    color: #2e6d55;
    font-family: 'Montserrat', Helvetica, Arial, sans-serif;
    font-size: 11.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-decoration: none;
    transition: all 0.2s ease;
}
.cic-btn-card:hover {
    background: #3e8468;
    color: #ffffff;
    border-color: #3e8468;
    text-decoration: none;
}
.cic-btn-card .arrow {
    font-size: 14px;
    transition: transform 0.2s ease;
}
.cic-btn-card:hover .arrow {
    transform: translateX(4px);
}
.cic-empty-notice {
    background: #ffffff;
    border: 1px dashed #d5ded9;
    border-radius: 6px;
    padding: 35px 20px;
    text-align: center;
    color: #8c9b94;
    font-family: 'Lato', Helvetica, Arial, sans-serif;
    font-size: 14px;
}
.cic-single-container {
    max-width: 1140px;
    margin: 0 auto;
    padding: 30px 15px 70px;
}
.cic-single-header-card {
    background: #ffffff;
    border: 1px solid #e5ebe7;
    border-radius: 8px;
    padding: 32px 36px;
    margin-bottom: 30px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}
.cic-single-title {
    font-family: 'Montserrat', Helvetica, Arial, sans-serif;
    font-size: 28px;
    font-weight: 700;
    color: #222222;
    margin: 12px 0 16px 0;
    line-height: 1.25;
}
.cic-specs-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 16px;
    background: #f7faf8;
    border: 1px solid #e0ebe5;
    border-radius: 6px;
    padding: 20px;
    margin-bottom: 20px;
}
.cic-spec-item {
    display: flex;
    flex-direction: column;
}
.cic-spec-label {
    font-family: 'Montserrat', Helvetica, Arial, sans-serif;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    color: #64748b;
    letter-spacing: 0.5px;
    margin-bottom: 4px;
}
.cic-spec-val {
    font-family: 'Lato', Helvetica, Arial, sans-serif;
    font-size: 15px;
    font-weight: 700;
    color: #1e293b;
}
.cic-tech-body {
    background: #ffffff;
    border: 1px solid #e5ebe7;
    border-radius: 8px;
    padding: 36px;
    margin-bottom: 30px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}
.cic-tech-body h3 {
    font-family: 'Montserrat', Helvetica, Arial, sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: #222222;
    margin: 0 0 20px 0;
    padding-bottom: 12px;
    border-bottom: 2px solid #3e8468;
}
.cic-tech-body p {
    font-family: 'Lato', Helvetica, Arial, sans-serif;
    font-size: 16px;
    color: #404040;
    line-height: 1.8;
    margin-bottom: 16px;
}
.cic-cta-box {
    background: linear-gradient(135deg, #035b41 0%, #3e8468 100%);
    border-radius: 8px;
    padding: 32px 36px;
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    box-shadow: 0 4px 16px rgba(3, 91, 65, 0.2);
}
.cic-cta-box h4 {
    font-family: 'Montserrat', Helvetica, Arial, sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: #ffffff;
    margin: 0 0 6px 0;
}
.cic-cta-box p {
    font-family: 'Lato', Helvetica, Arial, sans-serif;
    font-size: 14px;
    color: #d1eae1;
    margin: 0;
}
.cic-btn-cta {
    display: inline-block;
    background: #ffffff;
    color: #035b41;
    font-family: 'Montserrat', Helvetica, Arial, sans-serif;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 12px 24px;
    border-radius: 4px;
    text-decoration: none;
    white-space: nowrap;
    transition: all 0.2s ease;
}
.cic-btn-cta:hover {
    background: #aac8bd;
    color: #004530;
    text-decoration: none;
}
@media (max-width: 860px) {
    .cic-columns-wrapper {
        flex-direction: column;
        gap: 30px;
    }
    .cic-cta-box {
        flex-direction: column;
        text-align: center;
    }
}

/* --- Estilos para los Submenus / Dropdowns del Menu CIC v2 --- */
.navbar-inverse .navbar-nav > li > ul.sub-menu {
    background: #ffffff !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.12) !important;
    border: 1px solid #e5ebe7 !important;
    border-top: 3px solid #3e8468 !important;
    border-radius: 0 0 6px 6px !important;
    padding: 10px 0 !important;
    min-width: 240px !important;
}

}

/* Experiencia CIC 2026 */
.cic-site{--cic-ink:#123d39;--cic-green:#176b57;--cic-mint:#dcece7;--cic-paper:#f7f9f7;--cic-line:#d5e2dc;background:var(--cic-paper);color:#17342f;font-family:Lato,Arial,sans-serif}.cic-site *{box-sizing:border-box}.cic-header{min-height:78px;background:#fff;display:flex;align-items:center;gap:34px;padding:13px max(5vw,28px);border-bottom:1px solid var(--cic-line);position:sticky;top:0;z-index:20}.cic-brand{display:flex;gap:8px;align-items:center;text-transform:uppercase;color:var(--cic-ink);font-size:10px;line-height:1.05;font-weight:700;text-decoration:none;letter-spacing:.06em}.cic-brand-mark{font-size:26px;font-weight:900;letter-spacing:-.1em;color:var(--cic-green)}.cic-nav{display:flex;gap:24px;margin-left:auto}.cic-nav a,.cic-footer a{color:#315750;text-decoration:none;font-size:14px;font-weight:700}.cic-header-cta,.cic-button{background:var(--cic-green);color:#fff!important;padding:13px 18px;border:0;border-radius:3px;font-weight:800;text-decoration:none;cursor:pointer}.cic-hero{min-height:590px;padding:90px max(8vw,34px);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.6fr);align-items:center;gap:70px;background:linear-gradient(120deg,#f7f9f7 0%,#eef5f1 58%,#d9e9e2 100%)}.cic-hero-copy{max-width:780px}.cic-eyebrow{display:block;text-transform:uppercase;letter-spacing:.13em;color:var(--cic-green);font-weight:900;font-size:11px;margin-bottom:17px}.cic-hero h1,.cic-section h2{font-family:Georgia,serif;color:var(--cic-ink);font-weight:500;line-height:1.02;letter-spacing:-.035em}.cic-hero h1{font-size:clamp(42px,6vw,78px);margin:0 0 22px}.cic-hero p{font-size:19px;line-height:1.6;max-width:650px}.cic-hero-search{display:flex;max-width:660px;background:#fff;border:1px solid #bccfc7;border-radius:4px;padding:5px;margin:30px 0 17px}.cic-hero-search input{border:0;outline:0;flex:1;padding:13px;font-size:15px}.cic-hero-search button{background:var(--cic-ink);color:#fff;border:0;border-radius:2px;padding:0 19px;font-weight:700}.cic-hero-actions{display:flex;align-items:center;gap:22px}.cic-text-link{font-weight:800;color:var(--cic-green);text-decoration:none}.cic-hero-panel{background:var(--cic-ink);color:#fff;padding:45px 36px;min-height:330px;box-shadow:18px 18px 0 #abcfc0}.cic-hero-panel span{letter-spacing:.14em;font-size:11px;font-weight:900;color:#a8d6c4}.cic-hero-panel strong{display:block;font-family:Georgia,serif;font-size:37px;line-height:1.15;font-weight:400;margin:30px 0}.cic-hero-panel p{font-size:14px;color:#d9e8e2}.cic-section{padding:95px max(8vw,34px)}.cic-section-heading{max-width:730px;margin-bottom:43px}.cic-section h2{font-size:clamp(34px,4vw,54px);margin:0 0 18px}.cic-section-heading p{font-size:17px;line-height:1.6;color:#47655e}.cic-solutions{background:#fff}.cic-solution-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.cic-solution-card{padding:30px;background:var(--cic-paper);border:1px solid var(--cic-line);text-decoration:none;color:var(--cic-ink);min-height:250px;display:flex;flex-direction:column;transition:.2s}.cic-solution-card:hover{transform:translateY(-5px);box-shadow:0 15px 30px #17493a16}.cic-solution-card span{color:var(--cic-green);font-weight:900}.cic-solution-card h3{font-family:Georgia,serif;font-size:28px;font-weight:500;margin:38px 0 8px}.cic-solution-card p{line-height:1.5;margin:0}.cic-solution-card b{margin-top:auto;color:var(--cic-green)}.cic-industries{background:var(--cic-ink)}.cic-industries h2{color:#fff}.cic-industry-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #5c8980;border-left:1px solid #5c8980}.cic-industry-grid a{color:#fff;text-decoration:none;border-right:1px solid #5c8980;border-bottom:1px solid #5c8980;padding:24px 18px;display:flex;justify-content:space-between;font-weight:700}.cic-industry-grid a:hover{background:#24594f}.cic-catalog-preview{background:#e2eee8}.cic-catalog-links{display:flex;flex-wrap:wrap;gap:11px}.cic-catalog-links a{padding:13px 18px;text-decoration:none;border:1px solid #a7c5b9;color:var(--cic-ink);font-weight:800;background:#fff}.cic-contact-section{background:#fff;display:grid;grid-template-columns:1fr 1fr;gap:75px}.cic-contact-copy p,.cic-contact-copy li{line-height:1.6;color:#45645d}.cic-contact-copy ul{padding-left:18px}.cic-contact-form{display:grid;grid-template-columns:1fr 1fr;gap:16px;background:var(--cic-paper);padding:30px;border:1px solid var(--cic-line)}.cic-contact-form label{font-size:12px;text-transform:uppercase;font-weight:800;letter-spacing:.06em;color:#45645d}.cic-contact-form input,.cic-contact-form textarea{display:block;width:100%;background:#fff;border:1px solid #c1d3cc;padding:12px;margin-top:7px;font:inherit}.cic-contact-form textarea{min-height:120px;resize:vertical}.cic-field-full{grid-column:1/-1}.cic-form-success{grid-column:1/-1;background:#dcefe7;color:#175d4b;padding:12px}.cic-assistant{position:fixed;bottom:22px;right:22px;z-index:30}.cic-assistant-toggle{background:var(--cic-ink);color:#fff;border:0;border-radius:24px;padding:13px 18px;font-weight:800;box-shadow:0 8px 25px #123d3930}.cic-assistant-panel{width:320px;background:#fff;border:1px solid var(--cic-line);box-shadow:0 18px 50px #123d3930;padding:20px}.cic-assistant-panel>div{display:flex;justify-content:space-between;font-size:18px;color:var(--cic-ink)}.cic-assistant-close{border:0;background:transparent;font-size:22px}.cic-assistant-panel p{font-size:14px;line-height:1.5}.cic-assistant-panel [data-answer]{width:100%;text-align:left;padding:10px;margin-bottom:8px;border:1px solid #c7ddd5;background:#f7faf8;color:#285349;font-weight:700}.cic-assistant-answer{color:var(--cic-green);font-weight:700}.cic-assistant-panel a{color:var(--cic-green);font-weight:800}.cic-footer{background:#0c2d29;color:#d8e9e3;padding:35px max(8vw,34px);display:flex;justify-content:space-between;gap:24px}.cic-footer div{display:grid;gap:5px}.cic-footer span{font-size:13px}.cic-footer a{color:#d8e9e3}@media(max-width:800px){.cic-header{gap:15px}.cic-nav{display:none}.cic-header-cta{margin-left:auto;font-size:12px;padding:10px}.cic-hero,.cic-contact-section{grid-template-columns:1fr;gap:35px;padding-top:65px;padding-bottom:65px}.cic-hero-panel{min-height:0}.cic-solution-grid,.cic-industry-grid{grid-template-columns:1fr 1fr}.cic-contact-form{grid-template-columns:1fr}.cic-field-full{grid-column:auto}.cic-footer{display:grid}.cic-hero-search{display:grid}.cic-hero-search button{padding:13px}.cic-hero-actions{flex-wrap:wrap}}

.navbar-inverse .navbar-nav > li > ul.sub-menu > li > a {
    color: #334155 !important;
    font-family: 'Lato', Helvetica, Arial, sans-serif !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    padding: 8px 20px !important;
    display: block !important;
    transition: all 0.2s ease !important;
    border: none !important;
}

.navbar-inverse .navbar-nav > li > ul.sub-menu > li > a:hover {
    background: #f0f7f4 !important;
    color: #3e8468 !important;
    padding-left: 24px !important;
}

/* ============================================================
   FILTROS DE PRODUCTO (Todos / Proceso / Laboratorio)
   ============================================================ */
.cic-filter-bar {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 28px;
    padding: 16px 20px;
    background: #ffffff;
    border: 1px solid #e2ece7;
    border-radius: 8px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.04);
}
.cic-filter-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 18px;
    border: 1.5px solid #d2e4dc;
    border-radius: 30px;
    background: #f8faf8;
    color: #334155;
    font-family: 'Montserrat', Helvetica, Arial, sans-serif;
    font-size: 12.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    cursor: pointer;
    transition: all 0.2s ease;
}
.cic-filter-btn:hover {
    background: #eef6f2;
    border-color: #3e8468;
    color: #3e8468;
}
.cic-filter-btn.active {
    background: #3e8468;
    border-color: #3e8468;
    color: #ffffff;
    box-shadow: 0 3px 10px rgba(62,132,104,0.25);
}
.cic-filter-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 22px;
    height: 22px;
    padding: 0 6px;
    border-radius: 11px;
    font-size: 11px;
    font-weight: 700;
    background: rgba(255,255,255,0.3);
    color: inherit;
}
.cic-filter-btn.active .cic-filter-count {
    background: rgba(255,255,255,0.25);
}

/* ============================================================
   GRID DE PRODUCTOS
   ============================================================ */
.cic-products-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
    gap: 22px;
    margin-bottom: 20px;
}
.cic-results-count {
    font-family: 'Lato', Helvetica, Arial, sans-serif;
    font-size: 13px;
    color: #8c9b94;
    margin-bottom: 30px;
    text-align: right;
}

/* ============================================================
   ACCIONES DE CARD: Ficha + Folleto
   ============================================================ */
.cic-card-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: auto;
}
.cic-btn-card {
    flex: 1;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    padding: 9px 14px;
    background: #fdfefe;
    border: 1px solid #d2e4dc;
    border-radius: 4px;
    color: #2e6d55;
    font-family: 'Montserrat', Helvetica, Arial, sans-serif;
    font-size: 11.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-decoration: none;
    transition: all 0.2s ease;
    min-width: 0;
}
.cic-btn-card:hover {
    background: #3e8468;
    color: #ffffff;
    border-color: #3e8468;
    text-decoration: none;
}
.cic-btn-folleto {
    display: inline-flex;
    align-items: center;
    padding: 9px 12px;
    background: #f0f7f4;
    border: 1px solid #c9dfd6;
    border-radius: 4px;
    color: #2e6d55;
    font-family: 'Montserrat', Helvetica, Arial, sans-serif;
    font-size: 11px;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
    transition: all 0.2s ease;
}
.cic-btn-folleto:hover {
    background: #2e6d55;
    color: #ffffff;
    text-decoration: none;
}
.cic-btn-folleto-big {
    display: inline-block;
    padding: 10px 20px;
    background: #2e6d55;
    color: #ffffff;
    border-radius: 4px;
    font-family: 'Montserrat', Helvetica, Arial, sans-serif;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.2s ease;
}
.cic-btn-folleto-big:hover {
    background: #035b41;
    color: #ffffff;
    text-decoration: none;
}
.cic-single-footer-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid #edf2ef;
}

/* ============================================================
   FAQ ACCORDION
   ============================================================ */
.cic-faq-box {
    background: #ffffff;
    border: 1px solid #e5ebe7;
    border-radius: 8px;
    padding: 30px 36px;
    margin-bottom: 28px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}
.cic-faq-box h3 {
    font-family: 'Montserrat', Helvetica, Arial, sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: #222222;
    margin: 0 0 22px 0;
    padding-bottom: 12px;
    border-bottom: 2px solid #3e8468;
}
.cic-faq-item {
    border-bottom: 1px solid #edf2ef;
    margin-bottom: 0;
}
.cic-faq-item:last-child {
    border-bottom: none;
}
.cic-faq-q {
    width: 100%;
    text-align: left;
    background: none;
    border: none;
    padding: 16px 40px 16px 0;
    font-family: 'Lato', Helvetica, Arial, sans-serif;
    font-size: 15px;
    font-weight: 700;
    color: #1e293b;
    cursor: pointer;
    position: relative;
    transition: color 0.2s ease;
    line-height: 1.4;
}
.cic-faq-q::after {
    content: '+';
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 22px;
    font-weight: 300;
    color: #3e8468;
    transition: transform 0.2s ease;
}
.cic-faq-q.open {
    color: #3e8468;
}
.cic-faq-q.open::after {
    content: '\2212';
}
.cic-faq-a {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}
.cic-faq-a.open {
    max-height: 400px;
}
.cic-faq-a p {
    font-family: 'Lato', Helvetica, Arial, sans-serif;
    font-size: 14.5px;
    color: #475569;
    line-height: 1.7;
    padding: 0 0 16px 0;
    margin: 0;
}
.cic-faq-a a {
    color: #3e8468;
    text-decoration: underline;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 768px) {
    .cic-products-grid {
        grid-template-columns: 1fr;
    }
    .cic-filter-bar {
        padding: 12px;
    }
    .cic-faq-box {
        padding: 20px;
    }
    .cic-single-footer-row {
        flex-direction: column;
    }
    .cic-cta-box {
        flex-direction: column;
        text-align: center;
    }
}

.cic-catalog-shell{padding:75px max(8vw,34px);background:#f7f9f7;min-height:80vh}.cic-catalog-shell h1{font-family:Georgia,serif;font-size:clamp(38px,5vw,62px);line-height:1;margin:0;color:#123d39}.cic-catalog-shell>p{font-size:17px;color:#47655e}.cic-filter-panel{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:12px;padding:18px;background:#e2eee8;margin:35px 0 18px}.cic-filter-panel label{font-size:11px;text-transform:uppercase;font-weight:900;letter-spacing:.08em;color:#365c53}.cic-filter-panel input,.cic-filter-panel select{width:100%;display:block;padding:11px;border:1px solid #bdd3ca;background:#fff;margin-top:6px;font:inherit;color:#17342f}.cic-catalog-item[hidden]{display:none!important}.cic-catalog-item{min-width:0}.cic-products-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.cic-products-grid .cic-card{height:100%;background:#fff;border:1px solid #d5e2dc;padding:22px;display:flex;flex-direction:column}.cic-products-grid .cic-card-actions{margin-top:auto}.cic-card-title{font-family:Georgia,serif;font-weight:500;font-size:25px;line-height:1.15}.cic-card-title a{color:#123d39;text-decoration:none}.cic-card-top{display:flex;justify-content:space-between;gap:8px}.cic-code-badge,.cic-type-tag{font-size:11px;text-transform:uppercase;letter-spacing:.07em;padding:5px 8px;border-radius:2px;font-weight:900}.cic-code-badge{background:#e6f0eb;color:#176b57}.cic-type-tag{background:#e5ecea;color:#375b53}.cic-type-laboratorio{background:#e9e5f1;color:#584474}.cic-params-label{font-size:11px;text-transform:uppercase;font-weight:900;color:#5d746d}.cic-params-text{margin:5px 0 15px;color:#1e4a40}.cic-btn-card{color:#176b57;font-weight:900;text-decoration:none}.cic-results-count{font-weight:800;color:#45645d}.cic-empty-notice{padding:30px;background:#fff;border:1px solid #d5e2dc}.cic-empty-notice a{color:#176b57;font-weight:800}@media(max-width:900px){.cic-products-grid{grid-template-columns:repeat(2,1fr)}.cic-filter-panel{grid-template-columns:1fr 1fr}}@media(max-width:600px){.cic-products-grid,.cic-filter-panel{grid-template-columns:1fr}}
