.elementor-kit-4570{--e-global-color-primary:#F26C39;--e-global-color-secondary:#191B22;--e-global-color-text:#4F5B60;--e-global-color-accent:#F4A574;--e-global-color-7cf5b48:#D45520;--e-global-color-742e0f2:#FABA2A;--e-global-color-16a1940:#26B2DD;--e-global-color-2f549d1:#2E41E8;--e-global-color-9cc38de:#FAFBFC;--e-global-color-5feffae:#FEF5E7;--e-global-typography-primary-font-family:"Sofia Sans Condensed";--e-global-typography-primary-font-weight:700;--e-global-typography-primary-text-transform:uppercase;--e-global-typography-secondary-font-family:"Sofia Sans Condensed";--e-global-typography-secondary-font-weight:500;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:600;}.elementor-kit-4570 e-page-transition{background-color:#FFBC7D;}.elementor-kit-4570 a{color:var( --e-global-color-742e0f2 );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* width */
 ::-webkit-scrollbar {
     width: 20px;
 }
 /* Track */
 ::-webkit-scrollbar-track {
     border-radius: 0px;
 }
 /* Handle */
 ::-webkit-scrollbar-thumb {
     background: linear-gradient(#f26c39);; 
 }
 /* Handle on hover */
 ::-webkit-scrollbar-thumb:hover {
     background: #ee76445; 
 }
 
/* ==========================================
   CSS VARIABLES & ROOT SETTINGS
   ========================================== */
:root {
    /* Brand Colors */
    --primary-orange: #f26c39;
    --light-orange: #f4a574;
    --dark-grey: #152021;
    --medium-grey: #4f5b60;
    --teal: #26B2DD;
    --blurple: #2E41E8;
    
    /* UI Colors */
    --bg-subtle: rgba(79, 91, 96, 0.08);
    --text-primary: #152021;
    --text-secondary: #4f5b60;
    --border-subtle: rgba(79, 91, 96, 0.2);
    
    /* Terpene Colors */
    --myrcene: #06038d;
    --limonene: #f4c500;
    --pinene: #00af66;
    --caryophyllene: #aa0061;
    --linalool: #5c068c;
    --humulene: #97d700;
    --terpinolene: #ff671f;
}


/* ==========================================
   STRAIN TYPE COLORS (Your Brand Colors)
   ========================================== */
.strain-type-sativa {
    color: #faba2a !important;
}

.strain-type-hybrid {
    color: #26b2dd !important;
}

.strain-type-indica {
    color: #2e41e8 !important;
}

.strain-type-sativa .elementor-button {
    color: #faba2a !important;
    border-color: #faba2a !important;
}

.strain-type-hybrid .elementor-button {
    color: #26b2dd !important;
    border-color: #26b2dd !important;
}

.strain-type-indica .elementor-button {
    color: #2e41e8 !important;
    border-color: #2e41e8 !important;
}

/* ==========================================
   CUSTOM NAVIGATION
   ========================================== */
.strain-navigation-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    padding: 20px 0;
}

.strain-nav-btn {
    display: flex;
    align-items: center;
    gap: 15px;
    text-decoration: none;
    color: var(--text-primary) !important;
    font-weight: 600;
    font-size: 16px;
    letter-spacing: 2px;
    transition: all 0.3s ease;
    text-transform: uppercase;
    font-family: 'Sofia Sans Condensed', sans-serif;
    cursor: pointer;
}

.strain-nav-btn:hover {
    color: var(--primary-orange) !important;
}

.nav-arrow {
    font-size: 24px;
    color: var(--primary-orange);
    font-weight: 300;
    transition: transform 0.3s ease;
    display: inline-block;
}

.strain-nav-prev:hover .nav-arrow {
    transform: translateX(-3px);
}

.strain-nav-next:hover .nav-arrow {
    transform: translateX(3px);
}

.nav-label {
    text-transform: uppercase;
}

.strain-nav-divider {
    width: 1px;
    height: 50px;
    background: var(--border-subtle);
    margin: 0 20px;
}

/* ==========================================
   EFFECTS SECTION
   ========================================== */
.popup-strain-effects .section-header {
    font-family: 'Sofia Sans Condensed', sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: var(--dark-grey);
    margin-bottom: 12px;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 8px;
}

.popup-strain-effects .section-header::after {
    content: '';
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg, var(--border-subtle), transparent);
}

.popup-strain-effects .effects-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
}

.popup-strain-effects .effect-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    background: var(--bg-subtle);
    border-radius: 8px;
    transition: all 0.2s ease;
    cursor: default;
    position: relative;
    overflow: hidden;
}

.popup-strain-effects .effect-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background: linear-gradient(90deg, rgba(242, 108, 57, 0.1), transparent);
    transition: width 0.3s ease;
}

.popup-strain-effects .effect-item:hover::before {
    width: 100%;
}

.popup-strain-effects .effect-icon {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 1;
}

.popup-strain-effects .effect-icon i {
    font-size: 16px;
    color: var(--primary-orange);
}

.popup-strain-effects .effect-label {
    font-size: 12px;
    font-weight: 500;
    color: var(--text-primary);
    position: relative;
    z-index: 1;
}

/* ==========================================
   TERPENES SECTION
   ========================================== */
.popup-strain-terpenes .section-header {
    font-family: 'Sofia Sans Condensed', sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: var(--dark-grey);
    margin-bottom: 12px;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 8px;
}

.popup-strain-terpenes .section-header::after {
    content: '';
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg, var(--border-subtle), transparent);
}

.popup-strain-terpenes .terpene-cloud {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.popup-strain-terpenes .terpene-bubble {
    padding: 6px 14px;
    background: var(--bg-subtle);
    border: 1px solid var(--border-subtle);
    border-radius: 20px;
    font-size: 11px;
    font-weight: 500;
    color: var(--text-primary);
    transition: all 0.2s ease;
    position: relative;
    cursor: default;
}

.popup-strain-terpenes .terpene-bubble::after {
    content: attr(data-aroma);
    position: absolute;
    bottom: calc(100% + 4px);
    left: 50%;
    transform: translateX(-50%);
    padding: 4px 8px;
    background: var(--dark-grey);
    color: white;
    font-size: 10px;
    border-radius: 4px;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease;
    z-index: 9999;
}

.popup-strain-terpenes .terpene-bubble:hover {
    color: white;
    transform: translateY(-2px);
}

/* Always show terpene colors */
.popup-strain-terpenes .terpene-bubble {
    color: white;
}

.popup-strain-terpenes .terpene-bubble[data-aroma*="Myrcene"] { 
    background: var(--myrcene); 
}
.popup-strain-terpenes .terpene-bubble[data-aroma*="Limonene"] { 
    background: var(--limonene); 
}
.popup-strain-terpenes .terpene-bubble[data-aroma*="Pinene"] { 
    background: var(--pinene); 
}
.popup-strain-terpenes .terpene-bubble[data-aroma*="Caryophyllene"] { 
    background: var(--caryophyllene); 
}
.popup-strain-terpenes .terpene-bubble[data-aroma*="Linalool"] { 
    background: var(--linalool); 
}
.popup-strain-terpenes .terpene-bubble[data-aroma*="Humulene"] { 
    background: var(--humulene); 
}
.popup-strain-terpenes .terpene-bubble[data-aroma*="Terpinolene"] { 
    background: var(--terpinolene); 
}

/* Keep hover effect for lift */
.popup-strain-terpenes .terpene-bubble:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0,0,0,0.2);
}

.popup-strain-terpenes .terpene-bubble:hover::after {
    opacity: 1;
}

/* ==========================================
   SMOOTH TRANSITIONS
   ========================================== */
.popup-strain-name,
.popup-strain-cross,
.popup-strain-description,
.popup-strain-type,
.popup-strain-image,
.popup-strain-effects,
.popup-strain-terpenes {
    transition: opacity 0.3s ease;
}

/* ==========================================
   MOBILE RESPONSIVE
   ========================================== */

@media (max-width: 768px) {
    .elementor-popup-modal .dialog-widget-content,
    .elementor-popup-modal .dialog-message {
        overflow-x: hidden !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }

    /* Navigation Mobile */
    .strain-navigation-wrapper {
        gap: 5px;
    }
    
    .strain-nav-btn {
        font-size: 12px;
        letter-spacing: 1px;
    }
    
    .nav-label {
        font-size: 10px;
    }
    
    .nav-arrow {
        font-size: 20px;
    }
    
    .strain-nav-divider {
        height: 30px;
        margin: 0 10px;
    }
    
    /* Effects Grid Mobile */
    .popup-strain-effects .effects-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

/* Prevent layout shift during image transitions */
.popup-strain-image .elementor-widget-container {
    min-height: 300px; /* Adjust based on your typical image height */
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.popup-strain-image img {
    transition: opacity 0.3s ease;
    max-width: 100%;
    height: auto;
}

/* Optional: Add a subtle loading indicator */
.popup-strain-image .elementor-widget-container:empty::after {
    content: '';
    width: 40px;
    height: 40px;
    border: 3px solid rgba(0,0,0,0.1);
    border-top-color: var(--primary-orange);
    border-radius: 50%;
    animation: spin 1s linear infinite;
    position: absolute;
}

@keyframes spin {
    to { transform: rotate(360deg); }
}

/* Mobile specific */
@media (max-width: 768px) {
    .popup-strain-image .elementor-widget-container {
        min-height: 200px;
    }
}/* End custom CSS */