 /* =====================================================
    ANCLAJE SOLAR ENERGY - Utility Classes
    Clases reutilizables para layout y estilos comunes
    ===================================================== */
 
 /* =====================================================
    Layout Utilities
    ===================================================== */
 .container {
     width: 100%;
     max-width: var(--container-width);
     margin: 0 auto;
     padding: 0 var(--space-6);
 }
 
 .section {
     padding: var(--section-padding) 0;
 }
 
 .section-header {
     text-align: center;
     margin-bottom: var(--space-12);
 }
 
 /* =====================================================
    Flexbox Utilities
    ===================================================== */
 .flex {
     display: flex;
 }
 
 .flex-col {
     flex-direction: column;
 }
 
 .flex-wrap {
     flex-wrap: wrap;
 }
 
 .items-center {
     align-items: center;
 }
 
 .items-start {
     align-items: flex-start;
 }
 
 .items-end {
     align-items: flex-end;
 }
 
 .justify-center {
     justify-content: center;
 }
 
 .justify-between {
     justify-content: space-between;
 }
 
 .justify-end {
     justify-content: flex-end;
 }
 
 .gap-2 { gap: var(--space-2); }
 .gap-4 { gap: var(--space-4); }
 .gap-6 { gap: var(--space-6); }
 .gap-8 { gap: var(--space-8); }
 
 /* =====================================================
    Text Utilities
    ===================================================== */
 .text-center {
     text-align: center;
 }
 
 .text-left {
     text-align: left;
 }
 
 .text-right {
     text-align: right;
 }
 
 .text-gradient {
     background: var(--gradient-primary);
     -webkit-background-clip: text;
     -webkit-text-fill-color: transparent;
     background-clip: text;
 }
 
 .text-highlight {
     color: var(--primary);
 }
 
 .text-muted {
     color: var(--gray-500);
 }
 
 .font-bold {
     font-weight: 700;
 }
 
 .font-semibold {
     font-weight: 600;
 }
 
 .uppercase {
     text-transform: uppercase;
 }
 
 .truncate {
     overflow: hidden;
     text-overflow: ellipsis;
     white-space: nowrap;
 }
 
 /* =====================================================
    Section Titles & Badges
    ===================================================== */
 .section-badge {
     display: inline-block;
     padding: var(--space-2) var(--space-5);
     background: rgba(245, 184, 0, 0.1);
     color: var(--primary);
     font-size: var(--text-sm);
     font-weight: 600;
     text-transform: uppercase;
     letter-spacing: 1px;
     border-radius: var(--radius-full);
     margin-bottom: var(--space-4);
 }
 
 .section-badge.light {
     background: rgba(255, 255, 255, 0.1);
     color: var(--white);
 }
 
 .section-title {
     font-family: var(--font-display);
     font-size: clamp(32px, 5vw, 48px);
     font-weight: 700;
     color: var(--dark);
     line-height: var(--leading-tight);
     margin-bottom: var(--space-5);
 }
 
 .section-title.light {
     color: var(--white);
 }
 
 .section-subtitle {
     font-size: var(--text-lg);
     color: var(--gray-600);
     max-width: 700px;
     margin: 0 auto var(--space-12);
 }
 
 /* =====================================================
    Visibility Utilities
    ===================================================== */
 .hidden {
     display: none !important;
 }
 
 .sr-only {
     position: absolute;
     width: 1px;
     height: 1px;
     padding: 0;
     margin: -1px;
     overflow: hidden;
     clip: rect(0, 0, 0, 0);
     white-space: nowrap;
     border-width: 0;
 }
 
 /* =====================================================
    Spacing Utilities
    ===================================================== */
 .mt-4 { margin-top: var(--space-4); }
 .mt-6 { margin-top: var(--space-6); }
 .mt-8 { margin-top: var(--space-8); }
 .mb-4 { margin-bottom: var(--space-4); }
 .mb-6 { margin-bottom: var(--space-6); }
 .mb-8 { margin-bottom: var(--space-8); }
 
 .p-4 { padding: var(--space-4); }
 .p-6 { padding: var(--space-6); }
 .p-8 { padding: var(--space-8); }
 
 /* =====================================================
    Width Utilities
    ===================================================== */
 .w-full {
     width: 100%;
 }
 
 .max-w-md {
     max-width: 448px;
 }
 
 .max-w-lg {
     max-width: 512px;
 }
 
 .max-w-xl {
     max-width: 576px;
 }