/* Einsatz-Empfehlung als Zitat über dem Lifestyle-Banner */
.caribou-usage-quote {
    margin: 2em 0 0;
    padding: 1.5em 2em 1.5em 3em;
    position: relative;
    border: none;
    text-align: center;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}
.caribou-usage-quote::before {
    content: '\201E'; /* „ vorne unten */
}
.caribou-usage-quote::after {
    content: '\201C'; /* " hinten oben, andersherum (dt. Standard) */
}
.caribou-usage-quote::before,
.caribou-usage-quote::after {
    font-size: 4em;
    line-height: 1;
    opacity: 0.25;
    font-family: Georgia, serif;
    position: absolute;
}
.caribou-usage-quote::before {
    top: 0;
    left: 0.4em;
}
.caribou-usage-quote::after {
    top: 0.2em;
    right: 0.2em;
}
.caribou-usage-quote__text {
    font-size: 1.5rem;
    font-weight: 500;
    font-style: italic;
    line-height: 1.5;
    margin: 0;
    color: #333;
}

/* Zielgruppen-Statement ("Ideal für...") unter der H1 */
.caribou-product-target-group {
    font-size: 14px;
    color: #444;
    font-weight: 500;
    margin: 10px 0 8px 0;
    line-height: 1.4;
}

/* FAQ-Accordion im Tab "Häufige Fragen" */
.caribou-product-faq { margin: 1em 0; }
.caribou-faq-item {
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    margin-bottom: 8px;
    overflow: hidden;
}
.caribou-faq-question {
    padding: 12px 16px;
    cursor: pointer;
    font-weight: 500;
    font-size: 15px;
}
.caribou-faq-answer {
    padding: 0 16px 12px;
    font-size: 14px;
    line-height: 1.6;
}

/* WICHTIG: Überschreibe Theme-CSS das Tabs versteckt */
.product-page-tabs,
.product-page-tabs.woocommerce-tabs,
.woocommerce-tabs.wc-tabs-wrapper {
    display: block !important;
}

/* Styling für AI-generierte Produktbeschreibung */
.woocommerce-Tabs-panel--description p,
.product-section.description .entry-content p {
    margin-bottom: 1.2em;
    line-height: 1.7;
    text-align: justify;
}

.woocommerce-Tabs-panel--description p:last-child,
.product-section.description .entry-content p:last-child {
    margin-bottom: 0;
}

/* Zwischenüberschriften in der AI-Beschreibung */
.woocommerce-Tabs-panel--description h3,
.product-section.description .entry-content h3 {
    font-size: 17px;
    font-weight: 600;
    color: #2c3e50;
    margin: 1.6em 0 0.5em 0;
    padding: 0;
    line-height: 1.3;
    letter-spacing: -0.01em;
}
/* Erste Überschrift braucht keinen oberen Abstand */
.woocommerce-Tabs-panel--description h3:first-child,
.product-section.description .entry-content h3:first-child {
    margin-top: 0;
}

/* Dezente Hervorhebungen in der AI-Beschreibung */
.woocommerce-Tabs-panel--description strong,
.product-section.description .entry-content strong {
    font-weight: 600;
    color: #1a1a1a;
}

ul.tabs.wc-tabs {
border-bottom: 1px solid #ddd !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li { padding: 0 !important; }

.woocommerce div.product .product-page-tabs .woocommerce-tabs ul.tabs li a:after {
bottom: -3px !important;
}

.woocommerce div.product .product-page-tabs .woocommerce-tabs .panel {
    margin: 0 0 3em !important;
}

/* Lifestyle-Banner: 21:9 Vollbreiten-Bild über den Tabs */
.caribou-lifestyle-banner-wrapper {
    width: 100%;
    max-width: 100vw;
    margin: 2em 0 4em;
    overflow: hidden;
}
.caribou-lifestyle-banner {
    width: 100%;
    aspect-ratio: 21 / 9;
    object-fit: cover;
    display: block;
}

/* Styling für technische Details-Tabelle */
.caribou-technical-details table,
.caribou-ai-technical-details table {
    width: 100%;
    border-collapse: collapse;
    margin: 20px 0;
}

.caribou-technical-details th,
.caribou-ai-technical-details th {
    background-color: #f8f8f8;
    padding: 12px;
    text-align: left;
    font-weight: 600;
    border-bottom: 2px solid #ddd;
}

.caribou-technical-details td,
.caribou-ai-technical-details td {
    padding: 10px 12px;
    border-bottom: 1px solid #eee;
}

.caribou-technical-details tr:hover,
.caribou-ai-technical-details tr:hover {
    background-color: #fafafa;
}

/* =============================================
   SPIDER CHART: SVG Performance-Profil Styling
   ============================================= */

/* Wrapper: Zentriert, max-width für große Screens */
.caribou-spider-chart-wrapper {
    max-width: 800px;
    margin: 10px auto 30px;
}

/* SVG füllt den Wrapper responsive */
.caribou-spider-chart {
    width: 100%;
    height: auto;
}

/* Gitter-Ringe (die Pentagon-Umrisse) */
.caribou-spider-grid-ring {
    fill: none;
    stroke: #e0e0e0;
    stroke-width: 0.8;
}

/* Achsenlinien (Mitte → Außen) */
.caribou-spider-axis {
    stroke: #d0d0d0;
    stroke-width: 0.6;
}

/* Achsenlinien ohne echte Daten: gestrichelt + heller */
.caribou-spider-axis--no-data {
    stroke: #e8e8e8;
    stroke-dasharray: 4,3;
    stroke-width: 0.5;
}

/* Daten-Fläche (das farbige Polygon) */
.caribou-spider-area {
    fill: url(#caribou-spider-fill);
    stroke: #2d6a4f;
    stroke-width: 2;
    stroke-linejoin: round;
    /* Einblend-Animation */
    animation: caribouSpiderFadeIn 0.8s ease-out;
}

/* Punkte auf den Achsen */
.caribou-spider-dot {
    fill: #2d6a4f;
    stroke: #fff;
    stroke-width: 1.5;
    transition: r 0.2s ease;
}
.caribou-spider-dot:hover {
    r: 6;
}

/* Labels (Achsen-Beschriftung) */
.caribou-spider-label {
    font-size: 13px;
    font-weight: 600;
    fill: #333;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

/* Score-Wert (z.B. "100%") */
.caribou-spider-score {
    font-size: 12px;
    font-weight: 700;
    fill: #2d6a4f;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

/* Detail-Text (z.B. "10.000 mm") */
.caribou-spider-detail {
    font-size: 10px;
    fill: #888;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

/* "Keine Daten" (n.b.) Labels: ausgegraut + kursiv */
.caribou-spider-label--no-data {
    fill: #bbb;
    font-weight: 400;
}

/* "n.b." Score-Anzeige: ausgegraut + kursiv */
.caribou-spider-score--no-data {
    fill: #ccc;
    font-weight: 400;
    font-style: italic;
}

/* Fade-In Animation */
@keyframes caribouSpiderFadeIn {
    from {
        opacity: 0;
        transform: scale(0.85);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* ============================
 * Spider Chart Legende
 * ============================ */
.caribou-spider-legend {
    max-width: 600px;
    margin: 0 auto 20px;
    padding: 15px 20px;
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    font-size: 13px;
    color: #555;
    line-height: 1.6;
}
.caribou-spider-legend__title {
    margin: 0 0 8px 0;
    font-size: 14px;
    font-weight: 600;
    color: #333;
}
.caribou-spider-legend__list {
    margin: 0;
    padding: 0 0 0 18px;
    list-style: disc;
}
.caribou-spider-legend__list li {
    margin-bottom: 3px;
}
.caribou-spider-legend__list li strong {
    color: #333;
}
.caribou-spider-legend__nb {
    margin: 10px 0 0 0;
    font-size: 12px;
    color: #888;
    font-style: italic;
}

/* ============================
 * Einsatz-Empfehlung
 * ============================ */
.caribou-usage-recommendation {
    max-width: 600px;
    margin: 0 auto 20px;
    padding: 14px 18px;
    background: linear-gradient(135deg, #f0f7ff 0%, #e8f4f8 100%);
    border-left: 4px solid #3b82f6;
    border-radius: 6px;
    font-size: 14px;
    line-height: 1.5;
    color: #333;
    display: flex;
    align-items: flex-start;
    gap: 10px;
}
.caribou-usage-recommendation__icon {
    font-size: 20px;
    flex-shrink: 0;
    line-height: 1.2;
}
.caribou-usage-recommendation__text strong {
    color: #1e40af;
}

/* Responsive */
@media (max-width: 768px) {
    .caribou-spider-chart-wrapper {
        max-width: 100%;
        margin: 5px auto 20px;
    }
    .caribou-spider-label {
        font-size: 11px;
    }
    .caribou-spider-score {
        font-size: 10px;
    }
    .caribou-spider-detail {
        font-size: 9px;
    }
    
    .caribou-technical-details table,
    .caribou-ai-technical-details table {
        font-size: 13px;
    }
    .caribou-quick-badges {
        gap: 4px;
    }
    .caribou-badge {
        font-size: 11px;
        padding: 3px 8px;
    }
    .caribou-tech-group-title {
        font-size: 14px !important;
    }
    .caribou-spider-legend {
        padding: 12px 14px;
        font-size: 12px;
    }
    .caribou-usage-recommendation {
        padding: 12px 14px;
        font-size: 13px;
    }
}

/* ============================
 * Quick-Badges (Pill-Style)
 * ============================ */
.caribou-quick-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 10px 0 15px 0;
}
.caribou-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.3;
    white-space: nowrap;
}
.caribou-badge__icon {
    font-size: 13px;
}
/* Typ: highlight (z.B. "Neu") */
.caribou-badge--highlight {
    background: #fff3cd;
    color: #856404;
    border: 1px solid #ffc107;
}
/* Typ: feature (z.B. "Packable", "Schneefang") */
.caribou-badge--feature {
    background: #e8f5e9;
    color: #2e7d32;
    border: 1px solid #a5d6a7;
}
/* Typ: season (z.B. "Ganzjährig", "Herbst/Winter") */
.caribou-badge--season {
    background: #e3f2fd;
    color: #1565c0;
    border: 1px solid #90caf9;
}

/* Low Stock Badge */
.caribou-low-stock-badge {
    display: inline-block;
    background: #fff0f0;
    color: #c62828;
    border: 1px solid #ef9a9a;
    font-size: 13px;
    font-weight: 600;
    padding: 5px 12px;
    border-radius: 4px;
    margin: 8px 0 4px 0;
}
.caribou-low-stock-badge__icon {
    margin-right: 2px;
}

/* ============================
 * Gruppierte Tech-Tabelle
 * ============================ */
.caribou-grouped-tech-table .caribou-tech-group {
    margin-bottom: 20px;
}
.caribou-grouped-tech-table .caribou-tech-group:last-child {
    margin-bottom: 0;
}
.caribou-tech-group-title {
    font-size: 15px;
    font-weight: 600;
    margin: 0 0 8px 0;
    padding-bottom: 5px;
    border-bottom: 2px solid #f0f0f0;
    color: #333;
}
.caribou-grouped-tech-table .caribou-technical-details {
    margin: 0 0 10px 0;
}
.caribou-grouped-tech-table .caribou-technical-details td {
    padding: 5px 10px;
    border-bottom: 1px solid #f5f5f5;
}
.caribou-grouped-tech-table .caribou-technical-details td:first-child {
    width: 35%;
    color: #666;
}

.cps-hero { background: linear-gradient(135deg, #1a3a2a 0%, #2d5a3f 100%); color: #fff; padding: 3rem 2rem; border-radius: 12px; margin-bottom: 2.5rem; text-align: center; }
.cps-hero h1 { font-size: 2rem; margin: 0 0 1rem; line-height: 1.3; color: #fff; }
.cps-hero .cps-hero-sub { font-size: 1.15rem; opacity: .9; max-width: 700px; margin: 0 auto 1.5rem; line-height: 1.6; color: #fff; }
.cps-hero .cps-hero-stats { display: flex; justify-content: center; gap: 2rem; flex-wrap: wrap; margin-top: 1.5rem; }
.cps-hero .cps-stat { text-align: center; }
.cps-hero .cps-stat-num { display: block; font-size: 2rem; font-weight: 700; }
.cps-hero .cps-stat-label { font-size: .85rem; opacity: .8; }
.cps-hero .cps-cta { display: inline-block; margin-top: 1.5rem; padding: .75rem 2rem; background: #e8a838; color: #1a3a2a; font-weight: 700; border-radius: 8px; text-decoration: none; transition: background .2s; }
.cps-hero .cps-cta:hover { background: #f0be5a; }

.cps-section-title { font-size: 1.5rem; margin: 2.5rem 0 1.2rem; padding-bottom: .5rem; border-bottom: 2px solid #2d5a3f; color: #1a3a2a; }

/* Produkt-Grid: CSS Grid statt Float, um margin-right-Umbruch zu vermeiden */
.caribou-plussize-grid ul.products { display: grid !important; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
.caribou-plussize-grid ul.products li.product { width: 100% !important; margin: 0 !important; float: none !important; }
.caribou-plussize-grid ul.products::before { display: none !important; }


@media (max-width: 768px) {
    .caribou-plussize-grid ul.products { grid-template-columns: repeat(2, 1fr); gap: 1rem; }
}
@media (max-width: 480px) {
    .caribou-plussize-grid ul.products  { grid-template-columns: 1fr; }
}

/* Kategorie-Nav */
.cps-catnav { display: flex; flex-wrap: wrap; gap: .6rem; margin-bottom: 2rem; }
.cps-catnav a { display: inline-flex; align-items: center; gap: .4rem; padding: .55rem 1.1rem; background: #f4f7f5; border: 1px solid #d0ddd5; border-radius: 24px; color: #2d5a3f; text-decoration: none; font-size: .9rem; font-weight: 500; transition: all .2s; }
.cps-catnav a:hover { background: #2d5a3f; color: #fff; border-color: #2d5a3f; }
.cps-catnav-group { margin-bottom: 1.2rem; }
.cps-catnav-group strong { display: block; margin-bottom: .5rem; font-size: .95rem; color: #555; }

/* USP Grid */
.cps-usp-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 1.5rem; margin: 1.5rem 0 2.5rem; }
.cps-usp-card { background: #f9fafb; border: 1px solid #e5e7eb; border-radius: 10px; padding: 1.5rem; text-align: center; }
.cps-usp-card .cps-usp-icon { font-size: 2rem; margin-bottom: .5rem; }
.cps-usp-card h3 { font-size: 1.05rem; margin: 0 0 .5rem; color: #1a3a2a; }
.cps-usp-card p { font-size: .9rem; color: #555; margin: 0; line-height: 1.5; }

/* Größentabelle */
.cps-size-table { width: 100%; border-collapse: collapse; margin: 1rem 0 2rem; font-size: .9rem; }
.cps-size-table th { background: #2d5a3f; color: #fff; padding: .65rem .8rem; text-align: left; font-weight: 600; }
.cps-size-table td { padding: .6rem .8rem; border-bottom: 1px solid #e5e7eb; }
.cps-size-table tr:nth-child(even) td { background: #f9fafb; }
.cps-size-table .cps-highlight { background: #e8f5ee !important; font-weight: 600; }

/* Material-Cards */
.cps-mat-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 1rem; margin: 1rem 0 2rem; }
.cps-mat-card { padding: 1.2rem; border-radius: 8px; border-left: 4px solid #2d5a3f; background: #f4f7f5; }
.cps-mat-card h4 { margin: 0 0 .4rem; color: #1a3a2a; font-size: .95rem; }
.cps-mat-card p { margin: 0; font-size: .85rem; color: #555; line-height: 1.5; }
.cps-mat-card a { color: #2d5a3f; font-weight: 600; }

/* Feature-Cards (dynamisch mit Links + Counts) */
.cps-features { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 1.2rem; margin: 1.2rem 0 2.5rem; }
.cps-feature { display: flex; align-items: flex-start; gap: .8rem; padding: 1.1rem; background: #f4f7f5; border-radius: 8px; border: 1px solid #e5ebe8; transition: border-color .2s, box-shadow .2s; }
.cps-feature:hover { border-color: #2d5a3f; box-shadow: 0 2px 8px rgba(45,90,63,.1); }
.cps-feature-icon { flex-shrink: 0; width: 40px; height: 40px; background: #2d5a3f; color: #fff; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 1.1rem; }
.cps-feature h4 { margin: 0 0 .25rem; font-size: .95rem; color: #1a3a2a; }
.cps-feature h4 a { color: #1a3a2a; text-decoration: none; }
.cps-feature h4 a:hover { color: #2d5a3f; text-decoration: underline; }
.cps-feature p { margin: 0; font-size: .85rem; color: #555; line-height: 1.45; }
.cps-feature-count { display: inline-block; margin-top: .4rem; font-size: .8rem; color: #2d5a3f; font-weight: 600; }
.cps-feature-count span { background: #e8f5ee; padding: .15rem .5rem; border-radius: 10px; margin-right: .3rem; }

/* Farb-Swatches */
.cps-colors { display: flex; flex-wrap: wrap; gap: 1rem; margin: 1rem 0 2rem; }
.cps-color-link { display: flex; flex-direction: column; align-items: center; gap: .35rem; text-decoration: none; color: #333; font-size: .85rem; transition: transform .15s; }
.cps-color-link:hover { transform: scale(1.05); }
.cps-color-swatch { width: 48px; height: 48px; border-radius: 50%; border: 2px solid #ddd; box-shadow: inset 0 0 0 2px #fff; }
.cps-color-count { font-size: .75rem; color: #888; }

/* FAQ */
.cps-faq { margin: 1.5rem 0 2.5rem; }
.cps-faq details { border: 1px solid #e5e7eb; border-radius: 8px; margin-bottom: .6rem; overflow: hidden; }
.cps-faq summary { padding: 1rem 1.2rem; font-weight: 600; cursor: pointer; background: #f9fafb; color: #1a3a2a; list-style: none; display: flex; justify-content: space-between; align-items: center; }
.cps-faq summary::after { content: '+'; font-size: 1.3rem; font-weight: 300; color: #999; transition: transform .2s; }
.cps-faq details[open] summary::after { content: '−'; }
.cps-faq .cps-faq-answer { padding: 0 1.2rem 1rem; line-height: 1.6; color: #444; font-size: .95rem; }

/* Responsive */
@media (max-width: 768px) {
    .cps-hero { padding: 2rem 1.2rem; }
    .cps-hero h1 { font-size: 1.5rem; }
    .cps-hero .cps-hero-stats { gap: 1rem; }
}

.cbw-hero { background: linear-gradient(135deg, #1a3050 0%, #2c5282 100%); color: #fff; padding: 3rem 2rem; border-radius: 12px; margin-bottom: 2.5rem; text-align: center; }
.cbw-hero h1 { font-size: 2rem; margin: 0 0 1rem; line-height: 1.3; color: #fff; }
.cbw-hero .cbw-hero-sub { font-size: 1.15rem; opacity: .9; max-width: 720px; margin: 0 auto 1.5rem; line-height: 1.6; color: #fff; }
.cbw-hero .cbw-hero-stats { display: flex; justify-content: center; gap: 2rem; flex-wrap: wrap; margin-top: 1.5rem; }
.cbw-hero .cbw-stat { text-align: center; }
.cbw-hero .cbw-stat-num { display: block; font-size: 2rem; font-weight: 700; }
.cbw-hero .cbw-stat-label { font-size: .85rem; opacity: .8; }
.cbw-hero .cbw-cta { display: inline-block; margin-top: 1.5rem; padding: .75rem 2rem; background: #e8a838; color: #1a3050; font-weight: 700; border-radius: 8px; text-decoration: none; transition: background .2s; }
.cbw-hero .cbw-cta:hover { background: #f0be5a; }

.cbw-section-title { font-size: 1.5rem; margin: 2.5rem 0 1.2rem; padding-bottom: .5rem; border-bottom: 2px solid #2c5282; color: #1a3050; }

/* Produkt-Grid: CSS Grid statt Float, um margin-right-Umbruch zu vermeiden */
.caribou-bluewave-grid ul.products { display: grid !important; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
.caribou-bluewave-grid ul.products li.product { width: 100% !important; margin: 0 !important; float: none !important; }
.caribou-bluewave-grid ul.products::before { display: none !important; }


@media (max-width: 768px) {
    .caribou-bluewave-grid ul.products { grid-template-columns: repeat(2, 1fr); gap: 1rem; }
}
@media (max-width: 480px) {
    .caribou-bluewave-grid ul.products { grid-template-columns: 1fr; }
}

/* Kategorie-Nav */
.cbw-catnav { display: flex; flex-wrap: wrap; gap: .6rem; margin-bottom: 2rem; }
.cbw-catnav a { display: inline-flex; align-items: center; gap: .4rem; padding: .55rem 1.1rem; background: #f0f4f8; border: 1px solid #c8d6e5; border-radius: 24px; color: #2c5282; text-decoration: none; font-size: .9rem; font-weight: 500; transition: all .2s; }
.cbw-catnav a:hover { background: #2c5282; color: #fff; border-color: #2c5282; }
.cbw-catnav-group { margin-bottom: 1.2rem; }
.cbw-catnav-group strong { display: block; margin-bottom: .5rem; font-size: .95rem; color: #555; }

/* USP Grid */
.cbw-usp-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 1.5rem; margin: 1.5rem 0 2.5rem; }
.cbw-usp-card { background: #f9fafb; border: 1px solid #e5e7eb; border-radius: 10px; padding: 1.5rem; text-align: center; }
.cbw-usp-card .cbw-usp-icon { font-size: 2rem; margin-bottom: .5rem; }
.cbw-usp-card h3 { font-size: 1.05rem; margin: 0 0 .5rem; color: #1a3050; }
.cbw-usp-card p { font-size: .9rem; color: #555; margin: 0; line-height: 1.5; }

/* Produkttypen-Grid */
.cbw-types-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 1.2rem; margin: 1.2rem 0 2.5rem; }
.cbw-type-card { padding: 1.2rem; border-radius: 8px; border-left: 4px solid #2c5282; background: #f0f4f8; }
.cbw-type-card h4 { margin: 0 0 .4rem; font-size: .95rem; }
.cbw-type-card h4 a { color: #1a3050; text-decoration: none; font-weight: 600; }
.cbw-type-card h4 a:hover { color: #2c5282; text-decoration: underline; }
.cbw-type-card p { margin: 0; font-size: .85rem; color: #555; line-height: 1.5; }

/* Feature-Cards */
.cbw-features { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 1.2rem; margin: 1.2rem 0 2.5rem; }
.cbw-feature { display: flex; align-items: flex-start; gap: .8rem; padding: 1.1rem; background: #f0f4f8; border-radius: 8px; border: 1px solid #dce4ed; transition: border-color .2s, box-shadow .2s; }
.cbw-feature:hover { border-color: #2c5282; box-shadow: 0 2px 8px rgba(44,82,130,.1); }
.cbw-feature-icon { flex-shrink: 0; width: 40px; height: 40px; background: #2c5282; color: #fff; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 1.1rem; }
.cbw-feature h4 { margin: 0 0 .25rem; font-size: .95rem; color: #1a3050; }
.cbw-feature h4 a { color: #1a3050; text-decoration: none; }
.cbw-feature h4 a:hover { color: #2c5282; text-decoration: underline; }
.cbw-feature p { margin: 0; font-size: .85rem; color: #555; line-height: 1.45; }
.cbw-feature-count { display: inline-block; margin-top: .4rem; font-size: .8rem; color: #2c5282; font-weight: 600; }
.cbw-feature-count span { background: #e0ecf8; padding: .15rem .5rem; border-radius: 10px; margin-right: .3rem; }

/* Farb-Swatches */
.cbw-colors { display: flex; flex-wrap: wrap; gap: 1rem; margin: 1rem 0 2rem; }
.cbw-color-link { display: flex; flex-direction: column; align-items: center; gap: .35rem; text-decoration: none; color: #333; font-size: .85rem; transition: transform .15s; }
.cbw-color-link:hover { transform: scale(1.05); }
.cbw-color-swatch { width: 48px; height: 48px; border-radius: 50%; border: 2px solid #ddd; box-shadow: inset 0 0 0 2px #fff; }
.cbw-color-count { font-size: .75rem; color: #888; }

/* FAQ */
.cbw-faq { margin: 1.5rem 0 2.5rem; }
.cbw-faq details { border: 1px solid #e5e7eb; border-radius: 8px; margin-bottom: .6rem; overflow: hidden; }
.cbw-faq summary { padding: 1rem 1.2rem; font-weight: 600; cursor: pointer; background: #f9fafb; color: #1a3050; list-style: none; display: flex; justify-content: space-between; align-items: center; }
.cbw-faq summary::after { content: '+'; font-size: 1.3rem; font-weight: 300; color: #999; transition: transform .2s; }
.cbw-faq details[open] summary::after { content: '−'; }
.cbw-faq .cbw-faq-answer { padding: 0 1.2rem 1rem; line-height: 1.6; color: #444; font-size: .95rem; }

/* Responsive */
@media (max-width: 768px) {
    .cbw-hero { padding: 2rem 1.2rem; }
    .cbw-hero h1 { font-size: 1.5rem; }
    .cbw-hero .cbw-hero-stats { gap: 1rem; }
}