/** Shopify CDN: Minification failed

Line 35:0 All "@import" rules must come first

**/
/* --- File: retail-lighting-pro.css (Complete & Aggressive Override) --- */

/* 1. ROOT VARIABLES (from original site) */
:root {
    --theme-font-body: 'Inter', sans-serif;
    --theme-font-heading: 'Inter', sans-serif;
    --theme-color-brand: #4950bc;
    --theme-color-brand-dim: #2f36a2;
    --theme-color-brand-light: #6269d5;
    --theme-color-text-light: #272525;
    --theme-color-text-dark: #FFFFFF;
    --theme-color-heading-light: #000000;
    --theme-color-heading-dark: #FFFFFF;
    --theme-bg-page: #f6f4f4;
    --theme-bg-card-light: #FFFFFF;
    --theme-bg-card-dark: #4950bc;
    --theme-bg-accent-light: #dadbf1;
    --theme-bg-accent-dark: #565dc9;
    --theme-callout-bg: #c7c9eaff;
    --theme-callout-text: #292d70;
    --theme-border-color: #E5E0DF;
    --theme-border-radius: 0.6em;
    --box-border-radius: 0.35em;
    --theme-shadow: 0 0.25em 0.375em -0.0625em rgba(0, 0, 0, 0.1), 0 0.125em 0.25em -0.0625em rgba(0, 0, 0, 0.06);
    --line-height-body: 1.6;
    --line-height-heading: 1.25;
}

/* 2. FONT IMPORT */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

/* 3. MAIN PAGE CONTAINER & RESET (Aggressive reset) */
.jainsons-pro-container {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    min-height: 100vh !important;
    font-family: var(--theme-font-body) !important;
    background-color: var(--theme-bg-page) !important;
    color: var(--theme-color-text-light) !important;
}
/* Ensure theme's main container doesn't add padding */
.jainsons-pro-container .page-width,
.jainsons-pro-container .shopify-section {
    padding: 0 !important;
    max-width: none !important;
    margin: 0 !important;
}
.jainsons-pro-container p,
.jainsons-pro-container h1,
.jainsons-pro-container h2,
.jainsons-pro-container h3,
.jainsons-pro-container h4,
.jainsons-pro-container table,
.jainsons-pro-container ul,
.jainsons-pro-container li,
.jainsons-pro-container div,
.jainsons-pro-container section {
    font-family: var(--theme-font-body) !important;
    box-sizing: border-box !important;
}

/* 4. CARD STYLING (Sections) */
.jpro-card {
    max-width: 1000px !important;
    margin: 40px auto !important;
    background-color: #FFFFFF !important;
    border-radius: var(--theme-border-radius) !important;
    box-shadow: var(--theme-shadow) !important;
    overflow: hidden !important;
    padding: 0 !important;
}
.jpro-card:first-child {
    margin-top: 0px !important;
}

.jpro-card-dark {
    background-color: var(--theme-bg-card-dark) !important;
    color: var(--theme-color-text-dark) !important;
}
.jpro-card-accent-left {
    display: grid !important;
    grid-template-columns: 37.5% 62.5% !important;
    max-width: 1000px !important;
    margin: 40px auto !important;
    background-color: #FFFFFF !important;
    border-radius: var(--theme-border-radius) !important;
    box-shadow: var(--theme-shadow) !important;
    overflow: hidden !important;
    padding: 0 !important;
}
.jpro-card-accent-left .jpro-card-accent-bg {
    background-size: cover !important;
    background-position: center !important;
    min-height: 400px;
    width: 100%;
}
.jpro-card-accent-left .jpro-card-content {
    padding: 3.5em !important;
}

.jpro-card-content {
    padding: 3.5em !important; 
    width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

/* 5. TYPOGRAPHY (Maximum enforcement) */
.jpro-card h1, .jpro-card h2, .jpro-card h3, .jpro-card h4 {
    font-family: var(--theme-font-heading) !important;
    font-weight: 700 !important;
    line-height: var(--line-height-heading) !important;
    color: var(--theme-color-heading-light) !important;
    margin-bottom: 0.5em !important;
    margin-top: 1em !important;
    letter-spacing: -0.03em !important;
}
.jpro-card h1:first-child, .jpro-card h2:first-child, .jpro-card h3:first-child, .jpro-card h4:first-child {
    margin-top: 0 !important;
}
.jpro-card h1 { font-size: 2.5em !important; }
.jpro-card h2 { font-size: 2.0em !important; }
.jpro-card h3 { font-size: 1.5em !important; }
.jpro-card h4 { font-size: 1.25em !important; }

.jpro-card-dark h1, .jpro-card-dark h2, .jpro-card-dark h3, .jpro-card-dark h4 {
    color: var(--theme-color-heading-dark) !important;
}

.jpro-card p {
    font-size: 1em !important;
    line-height: var(--line-height-body) !important;
    margin-top: 0 !important;
    margin-bottom: 1.25em !important;
    color: var(--theme-color-text-light) !important;
}
.jpro-card-dark p { color: var(--theme-color-text-dark) !important; }

/* 6. LINKS & BUTTONS */
.jpro-card a {
    text-decoration: none !important;
    font-weight: 600 !important;
    color: var(--theme-color-brand) !important;
}
.jpro-card-dark a { color: white !important; }

.jpro-button-group {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 1em !important;
    margin: 1.5em 0 !important;
    justify-content: center !important;
}
.jpro-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0.75em 1.5em !important;
    font-weight: 600 !important;
    font-size: 1em !important;
    border-radius: 0.375em !important;
    text-align: center !important;
    min-width: 12em !important;
    box-sizing: border-box !important;
    transition: all 0.2s ease !important;
}
.jpro-button-solid {
    background-color: var(--theme-color-brand) !important;
    color: white !important;
    border: 2px solid var(--theme-color-brand) !important;
}
.jpro-button-solid:hover { background-color: var(--theme-color-brand-dim) !important; }
.jpro-button-outline {
    background-color: transparent !important;
    color: var(--theme-color-brand) !important;
    border: 2px solid var(--theme-color-brand) !important;
}
.jpro-button-outline:hover { background-color: rgba(73, 80, 188, 0.1) !important; }
.jpro-card-dark .jpro-button-solid {
    background-color: white !important;
    color: var(--theme-color-brand) !important;
    border-color: white !important;
}
.jpro-card-dark .jpro-button-outline {
    color: white !important;
    border: 2px solid white !important;
}

/* 7. GRID & LAYOUT STYLES */
.jpro-grid-2col {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 2.5em !important;
    align-items: center !important;
    margin: 2em 0 !important;
}
.jpro-grid-3col {
    display: grid !important;
    grid-template-columns: 1fr 1fr 1fr !important;
    gap: 2em !important;
    margin: 2em 0 !important;
}
.jpro-grid-40-60 { grid-template-columns: 4fr 6fr !important; }
.jpro-grid-55-45 { grid-template-columns: 5.5fr 4.5fr !important; }

/* 8. IMAGE STYLES */
.jpro-image {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    border-radius: var(--theme-border-radius) !important;
    margin: 1.5em 0 !important;
}

/* 9. STATS BLOCK */
.jpro-stats-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important;
    gap: 2em !important;
    text-align: center !important;
    margin: 2em 0 !important;
}
.jpro-stat-item { padding: 0 !important; }
.jpro-stat-item .stat-number {
    font-size: 3.3em !important;
    line-height: 1 !important;
    color: var(--theme-color-brand) !important;
    margin-bottom: 0.25em !important;
}
.jpro-card-dark .jpro-stat-item .stat-number {
    color: white !important;
}
.jpro-stat-item h4 { margin: 0.5em 0 !important; }
.jpro-stat-item p { font-size: 0.9em !important; margin: 0 !important; }

/* 10. BLOCKQUOTE */
.jpro-blockquote {
    border-inline-start: 4px solid var(--theme-color-brand) !important;
    padding-inline-start: 1.5em !important;
    margin: 2em 0 !important;
    font-size: 1.1em !important;
    font-weight: 500 !important;
}
.jpro-card-dark .jpro-blockquote {
    border-inline-start-color: white !important;
}

/* 11. OUTLINE BOX GRID */
.jpro-outline-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important;
    gap: 1.5em !important;
    margin: 2em 0 !important;
}
.jpro-outline-item {
    padding: 1.5em !important;
    border: 2px solid var(--theme-bg-accent-light) !important;
    border-radius: var(--theme-border-radius) !important;
    text-align: left !important;
}
.jpro-outline-item h4 { margin-top: 0 !important; }
.jpro-outline-item p { font-size: 0.9em !important; margin-bottom: 0 !important; }

/* 12. TABLE */
.jpro-table-wrapper { overflow-x: auto !important; }
.jpro-table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin: 2em 0 !important;
    border: 1px solid var(--theme-border-color) !important;
    border-radius: var(--theme-border-radius) !important;
    overflow: hidden !important;
}
.jpro-table th, .jpro-table td {
    padding: 1em !important;
    text-align: left !important;
    border-bottom: 1px solid var(--theme-border-color) !important;
    box-sizing: border-box !important;
}
.jpro-table th {
    background-color: #f9f9f9 !important;
    font-weight: 700 !important;
}
.jpro-table tbody tr:nth-child(even) {
    background-color: #fdfdfd !important;
}

/* 13. CALLOUT BOX */
.jpro-callout {
    background-color: var(--theme-callout-bg) !important;
    border-radius: var(--theme-border-radius) !important;
    padding: 1.5em !important;
    margin: 2em 0 !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 1em !important;
}
.jpro-callout-icon {
    flex-shrink: 0 !important;
    width: 24px !important;
    height: 24px !important;
    fill: var(--theme-callout-icon) !important;
    margin-top: 0.2em !important;
}
.jpro-callout p {
    color: var(--theme-callout-text) !important;
    font-weight: 500 !important;
    margin: 0 !important;
}

/* 14. NUMBERED LIST (Deliverables Card) */
.jpro-numbered-item {
    display: flex !important;
    gap: 1.5em !important;
    align-items: flex-start !important;
    padding: 1.5em !important;
    background-color: var(--theme-bg-accent-dark) !important;
    border-radius: var(--theme-border-radius) !important;
    margin-bottom: 1em !important;
}
.jpro-numbered-item .item-number {
    font-size: 1.5em !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    color: white !important;
    background-color: var(--theme-color-brand) !important;
    border-radius: 50% !important;
    width: 40px !important;
    height: 40px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}
.jpro-numbered-item h4, .jpro-numbered-item p {
    color: white !important;
    margin-top: 0.2em !important;
}

/* 15. ICON GRID (Parameters, Promise, CTA) */
.jpro-icon-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important;
    gap: 2em !important;
    margin: 2em 0 !important;
}
.jpro-icon-item {
    text-align: left !important;
    display: flex !important;
    flex-direction: column !important;
}
.jpro-icon-item-centered {
    text-align: center !important;
}
.jpro-icon-item-dark {
    background-color: var(--theme-bg-accent-dark) !important;
    padding: 1.5em !important;
    border-radius: var(--theme-border-radius) !important;
    color: white !important;
}
.jpro-icon-item-dark h4 { color: white !important; }
.jpro-icon-item-dark p { color: white !important; }

.jpro-icon-item .icon-wrapper {
    font-size: 1.5em !important;
    font-weight: 700 !important;
    color: var(--theme-color-brand) !important;
    background-color: var(--theme-bg-accent-light) !important;
    border-radius: 50% !important;
    width: 60px !important;
    height: 60px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-bottom: 1em !important;
    flex-shrink: 0 !important;
}
.jpro-icon-item-centered .icon-wrapper {
    margin: 0 auto 1em auto !important;
}
.jpro-card-dark .jpro-icon-item .icon-wrapper {
    background-color: var(--theme-color-brand-light) !important;
    color: white !important;
}
.jpro-icon-item h4 { margin: 0 0 0.5em 0 !important; }
.jpro-icon-item p { font-size: 0.9em !important; margin-bottom: 0 !important; }

.jpro-icon-item img { 
    width: 30px !important;
    height: 30px !important;
    filter: invert(25%) sepia(58%) saturate(3048%) hue-rotate(228deg) brightness(89%) contrast(90%) !important;
}
.jpro-card-dark .jpro-icon-item img {
    filter: invert(100%) !important;
}

/* 16. BULLET LISTS */
.jpro-card ul {
    list-style: disc !important;
    margin: 1.5em 0 !important;
    padding-inline-start: 1.5em !important;
}
.jpro-card li {
    font-size: 1em !important;
    line-height: var(--line-height-body) !important;
    margin-bottom: 0.5em !important;
}

/* 17. HR DIVIDER */
.jpro-divider {
    border: 0 !important;
    border-top: 1px solid var(--theme-border-color) !important;
    margin: 2.5em 0 !important;
    height: 1px !important;
    background-color: var(--theme-border-color) !important;
}

/* 18. RESPONSIVENESS */
@media (max-width: 768px) {
    .jpro-card-content {
        padding: 1.5em !important;
    }
    .jpro-grid-2col,
    .jpro-grid-3col,
    .jpro-grid-40-60,
    .jpro-grid-55-45,
    .jpro-card-accent-left {
        grid-template-columns: 1fr !important;
        gap: 1.5em !important;
    }
    .jpro-card-accent-left .jpro-card-accent-bg {
        border-radius: var(--theme-border-radius) var(--theme-border-radius) 0 0 !important;
    }
    .jpro-card h1 { font-size: 2em !important; }
    .jpro-card h2 { font-size: 1.75em !important; }
    .jpro-card h3 { font-size: 1.25em !important; }
    .jpro-card h4 { font-size: 1.1em !important; }
    .jpro-button {
        min-width: 100% !important;
    }
}