/**
 * Product Pages Styles
 * Estilos compartilhados para todas as páginas de produtos
 */

/* =============================================================================
   BASE PRODUCT PAGE
   ============================================================================= */

.product-page {
    max-width: 1200px;
    margin: 0 auto;
    padding: var(--spacing-8) var(--spacing-3);
}

/* =============================================================================
   PRODUCT HERO
   ============================================================================= */

.product-hero {
    text-align: center;
    margin-bottom: var(--spacing-5);
    padding: var(--spacing-10) var(--spacing-4);
    border-radius: var(--radius-2xl);
    color: white;
}

.product-hero--blue {
    background: linear-gradient(135deg, var(--blue-royal) 0%, var(--blue-royal-hover) 100%);
}

.product-hero--magenta {
    background: linear-gradient(135deg, var(--magenta) 0%, var(--magenta-hover) 100%);
}

.product-hero--gradient {
    background: linear-gradient(135deg, var(--blue-royal) 0%, var(--magenta) 100%);
}

.product-hero--lgpd {
    background: linear-gradient(135deg, rgba(168, 237, 234, 0.8) 0%, rgba(254, 214, 227, 0.8) 100%);
    color: var(--text-primary);
}

.product-hero--pricing {
    background: linear-gradient(135deg, rgba(255, 234, 167, 0.9) 0%, rgba(250, 177, 160, 0.9) 100%);
    color: var(--text-primary);
}

.product-hero--warning {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    color: white;
}

.product-hero--success {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    color: white;
}

.product-hero h1 {
    font-size: var(--font-size-4xl);
    font-weight: var(--font-weight-bold);
    margin-bottom: var(--spacing-4);
    color: #ddd;
}

.product-hero p {
    font-size: var(--font-size-xl);
    max-width: 800px;
    margin: 0 auto;
    opacity: 0.95;
}

.product-hero--lgpd p {
    opacity: 1;
}

.product-hero .icon-wrapper {
    width: 80px;
    height: 80px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: var(--radius-lg);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto var(--spacing-4);
}

.product-hero--lgpd .icon-wrapper {
    background: rgba(255, 255, 255, 0.5);
}

.product-hero-actions {
    margin-top: var(--spacing-6);
}

.product-hero-actions .btn-hero {
    margin-right: var(--spacing-3);
}

.product-hero-actions .btn-hero:last-child {
    margin-right: 0;
}

.btn-hero--hero-primary {
    background: white;
    color: var(--blue-royal);
}

.product-hero--magenta .btn-hero--hero-primary {
    color: var(--magenta);
}

.btn-hero--hero-secondary {
    background: rgba(255, 255, 255, 0.2);
    color: white;
    border: 2px solid white;
}

.product-hero--lgpd .btn-hero--hero-primary,
.product-hero--pricing .btn-hero--hero-primary {
    background: var(--text-primary);
    color: white;
}

.product-hero--lgpd .btn-hero--hero-secondary,
.product-hero--pricing .btn-hero--hero-secondary {
    background: rgba(255, 255, 255, 0.8);
    color: var(--text-primary);
    border: 2px solid var(--text-primary);
}

.product-hero--warning .btn-hero--hero-primary,
.product-hero--success .btn-hero--hero-primary {
    background: white;
}

.product-hero--warning .btn-hero--hero-primary {
    color: #f59e0b;
}

.product-hero--success .btn-hero--hero-primary {
    color: #10b981;
}

.product-hero--pricing .icon-wrapper [data-icon] {
    color: var(--text-primary);
}

/* =============================================================================
   SECTIONS
   ============================================================================= */

.product-section {
    margin-bottom: var(--spacing-12);
}

.product-section h2 {
    font-size: var(--font-size-3xl);
    font-weight: var(--font-weight-bold);
    text-align: center;
    margin-bottom: var(--spacing-6);
}

/* =============================================================================
   GRIDS
   ============================================================================= */

.features-grid,
.dimensions-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: var(--spacing-6);
    margin-top: var(--spacing-8);
}

/* =============================================================================
   CARDS
   ============================================================================= */

.feature-card,
.dimension-card {
    background: white;
    border-radius: var(--radius-lg);
    padding: var(--spacing-6);
    box-shadow: var(--shadow-md);
}

.feature-card h3,
.dimension-card h3 {
    font-size: var(--font-size-xl);
    font-weight: var(--font-weight-bold);
    margin-bottom: var(--spacing-2);
}

.feature-card p,
.dimension-card p {
    color: var(--text-secondary);
    line-height: var(--line-height-relaxed);
}

/* Icon Wrapper in Cards */
.feature-icon,
.dimension-icon {
    width: 48px;
    height: 48px;
    border-radius: var(--radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: var(--spacing-4);
}

.dimension-icon {
    /* Dimension icons share same styles as feature icons */
}

.feature-icon--blue {
    background: linear-gradient(135deg, var(--blue-royal) 0%, var(--blue-royal-hover) 100%);
}

.feature-icon--magenta {
    background: linear-gradient(135deg, var(--magenta) 0%, var(--magenta-hover) 100%);
}

.feature-icon--lgpd {
    background: linear-gradient(135deg, rgba(168, 237, 234, 0.8) 0%, rgba(254, 214, 227, 0.8) 100%);
}

.feature-icon--pricing {
    background: linear-gradient(135deg, rgba(255, 234, 167, 0.9) 0%, rgba(250, 177, 160, 0.9) 100%);
}

.feature-icon--warning {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
}

.feature-icon--success {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
}

.feature-icon svg,
.dimension-icon svg,
.feature-icon [data-icon],
.dimension-icon [data-icon] {
    color: white;
}

.feature-icon--lgpd svg,
.feature-icon--lgpd [data-icon] {
    color: var(--text-primary);
}

.feature-icon--success {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
}

/* Icon inside hero wrapper */
.product-hero .icon-wrapper [data-icon] {
    color: white;
}

.product-hero--lgpd .icon-wrapper [data-icon] {
    color: var(--text-primary);
}

/* =============================================================================
   PRODUCT CTA SECTION
   ============================================================================= */

.product-cta {
    text-align: center;
    background: linear-gradient(135deg, var(--bg-gray-soft) 0%, var(--bg-white) 100%);
    border-radius: var(--radius-2xl);
    padding: var(--spacing-5);
}

.product-cta h2 {
    font-size: var(--font-size-3xl);
    font-weight: var(--font-weight-bold);
    margin-bottom: var(--spacing-4);
}

.product-cta p {
    font-size: var(--font-size-lg);
    color: var(--text-secondary);
    margin-bottom: var(--spacing-6);
}

