/* ============================================================
   FINAL IMAGE CMS + DYNAMIC LAYOUT SYSTEM
   ============================================================ */

/* Scope strictly to dynamic wrappers to avoid destroying site layout */
.dynamic-image-wrapper img, .dynamic-image-wrapper picture {
    display: block;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important; /* Phase 6: NO CROPPING POLICY */
}

.dynamic-image-wrapper {
    display: block;
    width: 100%;
}

/* Priority 2: RESPONSIVE IMAGE CONTAINER SYSTEM */
.dynamic-image-wrapper.layout-portrait {
    max-height: 75vh !important;
    width: auto !important;
    margin: 0 auto;
}
.dynamic-image-wrapper.layout-landscape {
    max-width: 100% !important;
    height: auto !important;
}
.dynamic-image-wrapper.layout-square {
    max-width: 100% !important;
    max-height: 80vh !important;
    margin: 0 auto;
}

/* Priority 4: HEADER SUBTITLE VISIBILITY */
.logo-subtitle, .hero-eyebrow-text, .hero-since {
    color: #ffffff !important;
    font-weight: 700 !important;
    text-shadow: 0px 2px 4px rgba(0,0,0,0.9);
    opacity: 1 !important;
    letter-spacing: 1px;
}

/* Priority 5: EXECUTION STANDARDS SECTION */
.comparison-box, .comparison-box-header h4, .compare-row, .compare-them, .compare-us, .compare-us strong {
    color: #ffffff !important;
    text-shadow: 0px 1px 3px rgba(0,0,0,0.9);
}
.comparison-box {
    background: rgba(15, 15, 15, 0.95) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
}
.compare-them {
    color: #e0e0e0 !important;
}
