
/* Global Product Typography */
.suful-v9-wrapper { font-family: Arial, sans-serif; color: #1a1a1a; line-height: 1.6; max-width: 1200px; margin: 0 auto; }
.suful-v9-wrapper h2 { font-size: 24px; font-weight: bold; border-bottom: 2px solid #d9232d; padding-bottom: 10px; margin: 40px 0 20px; text-transform: uppercase; }
.suful-v9-wrapper h3 { font-size: 18px; font-weight: bold; margin-top: 25px; margin-bottom: 10px; color: #333; }
.suful-v9-wrapper p { font-size: 16px; margin-bottom: 15px; color: #555; }
.suful-v9-wrapper a { color: #d9232d; text-decoration: none; font-weight: bold; }
.suful-v9-wrapper a:hover { text-decoration: underline; }

/* Interspersed Full-Width Banner Image */
.suful-banner-img { 
    width: 100%; 
    height: auto; 
    border-radius: 6px; 
    margin: 20px 0 30px; 
    display: block; 
    box-shadow: 0 2px 6px rgba(0,0,0,0.08); 
}

/* Side-by-Side Alternating Feature Rows */
.suful-feature-row { 
    display: flex; 
    align-items: center; 
    gap: 30px; 
    margin: 35px 0; 
}
.suful-feature-row.reverse { 
    flex-direction: row-reverse; 
}
.suful-feature-text { 
    flex: 1; 
}
.suful-feature-text h3 { 
    margin-top: 0; 
}
.suful-feature-img { 
    flex: 1; 
}
.suful-feature-img img { 
    width: 100%; 
    height: auto; 
    border-radius: 6px; 
    display: block; 
    box-shadow: 0 2px 6px rgba(0,0,0,0.08); 
}

/* Custom Flexbox Image Gallery for 8 Unique Remaining Images (2-2-2-2 Layout) */
.suful-gallery { 
    display: flex; 
    flex-wrap: wrap; 
    gap: 15px; 
    margin: 30px 0; 
}
.suful-gallery img { 
    width: calc(50% - 7.5px);
    height: auto; 
    border-radius: 4px; 
    box-shadow: 0 2px 4px rgba(0,0,0,0.1); 
    transition: transform 0.3s ease; 
    display: block; 
    object-fit: cover; 
}
.suful-gallery img:hover { 
    transform: translateY(-3px); 
    box-shadow: 0 5px 15px rgba(0,0,0,0.15); 
}

/* Responsive Specs Table */
.suful-table-container { overflow-x: auto; margin: 30px 0; border: 1px solid #eaeaea; border-radius: 4px; }
.suful-specs-table { width: 100%; border-collapse: collapse; min-width: 600px; }
.suful-specs-table th, .suful-specs-table td { padding: 14px 20px; border-bottom: 1px solid #eaeaea; text-align: left; font-size: 15px; }
.suful-specs-table thead th { background-color: #f8f9fa; color: #333; font-weight: bold; text-transform: uppercase; letter-spacing: 0.5px; }
.suful-specs-table tbody tr:nth-child(even) { background-color: #fafafa; }
.suful-specs-table tbody tr:hover { background-color: #f1f1f1; }
.suful-specs-table td:first-child { font-weight: bold; color: #444; width: 35%; }

/* Pure CSS Accordion FAQ */
.suful-faq-section { margin: 40px 0; }
.suful-faq-section details { background: #f8f9fa; border: 1px solid #e9ecef; border-radius: 6px; margin-bottom: 15px; padding: 18px; transition: all 0.2s ease-in-out; }
.suful-faq-section details[open] { background: #ffffff; border-color: #d9232d; box-shadow: 0 4px 10px rgba(0,0,0,0.04); }
.suful-faq-section summary { font-size: 16px; font-weight: bold; cursor: pointer; list-style: none; color: #222; position: relative; padding-right: 30px; outline: none; }
.suful-faq-section summary::-webkit-details-marker { display: none; }
.suful-faq-section summary::after { content: '+'; position: absolute; right: 0; top: 50%; transform: translateY(-50%); font-size: 22px; color: #d9232d; font-weight: normal; }
.suful-faq-section details[open] summary::after { content: '-'; }
.suful-faq-section details p { margin-top: 15px; margin-bottom: 0; font-size: 15px; color: #555; line-height: 1.7; }

/* Mobile Responsiveness */
@media (max-width: 768px) {
    .suful-feature-row,
    .suful-feature-row.reverse {
        flex-direction: column;
    }
    .suful-gallery img {
        width: 100%;
    }
}
