/**
 * Description: RESPONSIVE MEDIA QUERIES - ORGANIZED VERSION
 * Author: ttsernetopoulos
 * Version: 1.0
*/

/* ==========================================================================
   UTILITY CLASSES (Non-media specific)
   ========================================================================== */

/* Single utility class for proper vertical alignment */
.ac_disp_flex_col_center {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important;
}

/* Desktop - Default 3 columns */
.ac_tax_results_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-bottom: 30px;
}

/* General responsive utilities */
.ac_responsive_container {
    width: 100%;
    max-width: 1300px;
    margin: 0 auto;
    padding: 0 20px;
}

@media screen and (max-width: 984px) {
    .aegean_cuisine_acymailing_box p{ padding-bottom: 20px;}
}

/* ==========================================================================
   TABLET BREAKPOINT - 768px and below
   ========================================================================== */

@media (max-width: 768px) {

    body {
        font-size: 13px !important;
        font-weight: 300 !important;
        line-height: 1.5 !important;
    }

    .h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {font-weight: 300 !important;}
    
    /* --- BASIC LAYOUT ADJUSTMENTS --- */
    .ac_mt_30 { margin-top: 57px !important; }
    .ac_maxwidth_1300 { padding: 0 15px !important; }
    .ac_p_0_20 { padding: 0 15px !important; }
    .ac_pt_10 { padding-top: 20px !important; }
    .ac_mb_70 {margin-bottom: 65px !important;}
    .mt-3 { margin-top: 0rem !important; }

    /* --- BANNER STYLES --- */
    .ac_entity_banner {
        height: 400px !important;
        margin-top: -80px !important;
    }
    
    .ac_entity_banner h1 {
        font-size: 24px !important;
        line-height: 1.2 !important;
        margin-bottom: 15px !important;
    }
    
    .ac_pos_abs_left_center {
        position: relative !important;
        top: 135px !important;
        left: auto !important;
        transform: none !important;
        padding: 20px 15px !important;
    }


    #st-content-wrapper .st-heading-section, #st-content-wrapper .accordion-button {
        font-size: 22px !important;
        color: var(--aegean_cuisine_LightBlack);
        font-weight: 300 !important;
    }

    .ac_height_630 {height: 290px !important;}

    /* --- RESPONSIVE HEIGHT CLASSES --- */
    .ac_height_sm_500 { height: 500px !important; }
    .ac_height_sm_300 { height: 300px !important; }
    .ac_height_sm_400 { height: 400px !important; }
    .ac_height_420 { height: 400px !important; }
    
    /* --- RESPONSIVE WIDTH CLASSES --- */
    .ac_width_sm_100 { width: 100% !important; }
    
    /* --- RESPONSIVE MARGIN CLASSES --- */
    .ac_mt_sm_m0 { margin-top: 0px !important; }
    .ac_mb_sm_m0 { margin-bottom: 0px !important; }
    .ac_mt_sm_m80 { margin-top: -80px !important; }
    .ac_mt_sm_m50 { margin-top: 50px !important; }
    .ac_mt_sm_m57 { margin-top: 57px !important; }
    .ac_mt_sm_m75 { margin-top: 75px !important; }
    .ac_mb_sm_75 { margin-bottom: 75px !important; }
    .ac_mt_118 { margin-top: 118px; }
    .ac_mb_sm_20 { margin-bottom: 20px !important;}
    .ac_mb_sm_90 { margin-bottom: 40px !important; }
    .ac_mb_sm_50 { margin-bottom: 50px !important; }
    .ac_mb_sm_57 { margin-bottom: 57px !important; }
    .ac_mb_sm_30 { margin-bottom: 30px !important; }
    
    /* --- RESPONSIVE PADDING CLASSES --- */
    .ac_pb_sm_10 { padding-bottom: 10px !important; }
    .ac_p_sm_15 { padding: 0 15px !important; }
    .ac_p_sm_20 { padding: 20px !important; }
    .ac_pt_sm_60 { padding-top: 60px !important; }
    .ac_pt_sm_20 { padding-top: 20px !important; }
    .ac_pt_sm_40 { padding-top: 40px !important; }
    
    /* --- RESPONSIVE FONT SIZE CLASSES --- */
    .ac_fs_33 {font-size: 22px !important;}
    .ac_fs_28 { font-size: 22px !important; }
    .ac_fs_16 { font-size: 15px !important; }
    .ac_fs_sm_28 { font-size: 28px !important; }
    .ac_fs_sm_24 { font-size: 24px !important; }
    .ac_fs_sm_20 { font-size: 20px !important; }
    
    /* --- RESPONSIVE LAYOUT CLASSES --- */
    .ac_disp_sm_flex_col { display: flex !important; flex-direction: column !important; }
    .ac_disp_sm_flex_col_center { flex-direction: column !important; align-items: center !important; }
    .ac_pos_sm_relative { position: relative !important; }
    .ac_text_sm_center { text-align: center !important; }
    .ac_responsive_container { padding: 0 15px; }
    
    /* --- FLEXBOX RESPONSIVE ADJUSTMENTS --- */
    .ac_disp_flex_row_top {
        flex-wrap: wrap !important;
        /* gap: 5px !important; */
        /* margin-top: 20px; */
    }
    
    .ac_disp_flex_row_top a,
    .ac_disp_flex_row_top p,
    .ac_disp_flex_row_top span {
        font-size: 16px !important;
        margin-right: 10px !important;
    }

    .ac_disp_flex_col_center {
        align-items: center !important;
        text-align: center !important;
    }
    
    /* --- GRID RESPONSIVE ADJUSTMENTS --- */
    .ac_cpt_results_grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 20px !important;
    }
    
    .ac_tax_results_grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 20px !important;
    }

    .ac_grid_3_cols { 
        grid-template-columns: repeat(2, 1fr) !important; 
        gap: 20px !important;
        margin: 30px 0 !important;
    }
    
    .ac_grid_2_cols { 
        grid-template-columns: 1fr !important; 
        gap: 15px !important;
    }
    
    /* --- CAROUSEL RESPONSIVE ADJUSTMENTS --- */
    .ac_responsive_carousel { overflow-x: hidden; }
    .ac_carousel_wrapper {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    
    .ac-carousel .owl-nav {
        position: absolute;
        top: 41% !important;
        transform: translateY(-50%);
        display: flex;
        justify-content: space-between;
        width: 100%;
        z-index: 2;
    }

    .owl-stage-outer { 
        padding: 40px 0px 0px 0px !important; 
        width: 100% !important; 
        height: 100% !important;
    }

    .owl-carousel .owl-item img { 
        display: block; 
        width: 100%; 
        height: 332px !important;
    }

    #st-content-wrapper .st-gallery.style-slider .owl-stage-outer { border-radius: 0px !important; }
    #st-content-wrapper .st-gallery.style-slider { margin-top: -40px; position: relative; }
    
    /* --- SEARCH FORM RESPONSIVE --- */
    .ivory-search {
        width: 100% !important;
        max-width: none !important;
    }
    
    .ivory-search-form {
        width: 100% !important;
    }
    
    .ivory-search-form input {
        width: 100% !important;
        font-size: 16px !important;
    }
    
    /* --- COMPONENT SPECIFIC RESPONSIVE --- */
    .ac_responsive_map { height: 300px !important; }
    .ac_min_height_190 { min-height: 90px !important; }
    .ac_font_weight_400 { font-weight: 400 !important; }
    .ac_view_more_cpt_content:hover { padding: 10px 30px 10px 30px !important; }
    .ac_section_title { font-size: 1.5rem !important; }
    
    /* --- FOOD & BEVERAGE SHORTCODE RESPONSIVE --- */
    .ac_food_beverage_shortcode_wrapper .ac_pt_60 { padding-top: 40px !important; }
    .ac_food_beverage_shortcode_wrapper .ac_mb_80 { margin-bottom: 50px !important; }
    .ac_food_beverage_shortcode_wrapper .ac_disp_flex_row_top {
        flex-direction: column !important;
        align-items: flex-start !important;
    }
    .ac_food_beverage_shortcode_wrapper .ac_width_50 {
        width: 100% !important;
        margin-bottom: 30px !important;
    }
    .ac_food_beverage_shortcode_wrapper .ac_disp_flex_col_center_right {
        align-items: flex-start !important;
        width: 100% !important;
    }
    .ac_food_beverage_shortcode_wrapper .ac_search_form_wrapper { width: 100% !important; }
    .ac_food_beverage_shortcode_wrapper .ac_search_field_group { width: 100% !important; }
    .ac_food_beverage_shortcode_wrapper .ac_category_select,
    .ac_food_beverage_shortcode_wrapper .ac_island_select {
        width: 100% !important;
        min-width: 100% !important;
    }
    .ac_food_beverage_shortcode_wrapper .ac_height_sm_585 {
        height: auto !important;
        min-height: 400px !important;
    }
}

/* ==========================================================================
   MOBILE BREAKPOINT - 480px and below
   ========================================================================== */

@media (max-width: 480px) {
    
    /* --- BASIC LAYOUT ADJUSTMENTS --- */
    .ac_p_0_20 { padding: 0 10px !important; }
    .ac_maxwidth_1300 { padding: 0 10px !important; }
    .ac_mb_30 { margin-bottom: 20px !important; }
    .ac_mb_20 { margin-bottom: 15px !important; }
    .ac_responsive_container { padding: 0 10px; }
    
    /* --- BANNER STYLES --- */
    .ac_entity_banner {
        height: 364px !important;
        margin-top: 57px !important;
    }

    .ac_entity_banner h1 {
        font-size: 20px !important;
        margin-bottom: 0px !important;
    }
    
    /* --- RESPONSIVE HEIGHT CLASSES --- */
    .ac_height_xs_400 { height: 400px !important; }
    .ac_height_xs_250 { height: 250px !important; }
    .ac_height_xs_355 { height: 355px !important; }
    .ac_height_xs_300 { height: 300px !important; }
    
    /* --- RESPONSIVE WIDTH CLASSES --- */
    .ac_width_xs_100 { width: 100% !important; }
    .ac_width_100pct_xs { width: 100% !important; }
    
    /* --- RESPONSIVE MARGIN CLASSES --- */
    .ac_mt_xs_m60 { margin-top: -57px !important; }
    .ac_mt_xs_20 {margin-top: 8px !important;}
    .ac_mt_xs_30 { margin-top: 30px !important; }
    .ac_mb_xs_40 { margin-bottom: 40px !important; }
    .ac_mb_xs_20 { margin-bottom: 20px !important; }
    .ac_mb_xs_15 { margin-bottom: 15px !important; }
    
    /* --- RESPONSIVE PADDING CLASSES --- */
    .ac_p_xs_10 { padding: 0 10px !important; }
    .ac_p_xs_15 {padding: 15px 10px 15px 7px !important;}
    .ac_pt_xs_40 { padding-top: 40px !important; margin-bottom: 90px; }
    .ac_pt_xs_15 { padding-top: 15px !important; }
    .ac_pt_xs_30 { padding-top: 30px !important; }
    
    /* --- RESPONSIVE FONT SIZE CLASSES --- */
    .ac_fs_33 { font-size: 20px !important; }
    .ac_fs_28 { font-size: 20px !important; }
    .ac_fs_xs_24 { font-size: 24px !important; }
    .ac_fs_xs_22 { font-size: 22px !important; }
    .ac_fs_xs_20 { font-size: 20px !important; }
    .ac_fs_xs_18 { font-size: 18px !important; }
    .ac_fs_xs_14 { font-size: 14px !important; }
    .ac_fs_xs_12 { font-size: 12px !important; }
    
    /* --- RESPONSIVE LAYOUT CLASSES --- */
    .ac_disp_xs_flex_col { display: flex !important; flex-direction: column !important; }
    .ac_disp_xs_flex_col_start {
        display: flex !important;
        flex-direction: column !important;
        align-items: start !important;
    }
    .ac_disp_xs_flex_col_center {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }

    .ac_disp_xs_flex_col_start {
        display: flex !important;
        flex-direction: column !important;
        align-items: start !important;
    }
    
    .ac_pos_xs_relative { position: relative !important; }
    .ac_text_xs_center {text-align: left !important;}
    
    /* --- GRID RESPONSIVE ADJUSTMENTS --- */
    .ac_cpt_results_grid {
        grid-template-columns: 1fr !important;
        gap: 15px !important;
    }

    .ac_tax_results_grid {
        grid-template-columns: 1fr !important;
        gap: 15px !important;
    }
    
    /* --- SEARCH FORM RESPONSIVE --- */
    .ac_tax_search_sm_field {
        width: 250px;
        padding: 10px 40px 10px 15px !important;
        border-radius: 4px;
        border: 1px solid rgba(0, 0, 0, 0.1) !important;
    }
    
    .ac_search_form_wrapper {
        width: 100% !important;
        max-width: 100% !important;
    }
    
    /* --- COMPONENT SPECIFIC RESPONSIVE --- */
    .ac_responsive_map { height: 250px !important; }
    .ac_separator {
        width: 80px !important;
        height: 7px !important;
        margin-bottom: 20px !important;
    }
    .ac_cpt_item_card_style { margin-bottom: 20px !important; }
    
    /* --- FOOD & BEVERAGE SHORTCODE RESPONSIVE --- */
    .ac_food_beverage_shortcode_wrapper .ac_pt_60 { padding-top: 30px !important; }
    .ac_food_beverage_shortcode_wrapper .ac_mb_80 { margin-bottom: 40px !important; }
    .ac_food_beverage_shortcode_wrapper .ac_fs_28 { font-size: 22px !important; }
    .ac_food_beverage_shortcode_wrapper .ac_fs_24 { font-size: 20px !important; }
    .ac_food_beverage_shortcode_wrapper .ac_fs_22 { font-size: 18px !important; }
    .ac_food_beverage_shortcode_wrapper .ac_fs_18 { font-size: 16px !important; }
    .ac_food_beverage_shortcode_wrapper .ac_fs_16 { font-size: 15px !important; }
    .ac_food_beverage_shortcode_wrapper .ac_cpt_item_card_style { margin-bottom: 20px !important; }
    .ac_food_beverage_shortcode_wrapper .ac_p_24 { padding: 20px !important; }
    .ac_food_beverage_shortcode_wrapper .ac_results_section { margin-top: 30px !important; }
    .ac_food_beverage_shortcode_wrapper #ac-load-more-btn-shortcode {
        width: 100% !important;
        padding: 15px 20px !important;
    }
    .ac_food_beverage_shortcode_wrapper .ac_no_results { padding-top: 50px !important; }
}

/* ==========================================================================
   VERY SMALL MOBILE - 399px and below
   ========================================================================== */

@media (max-width: 399px) {
    .mobile-break .island-name { display: block; }
    .ac_fs_28 {font-size: 22px !important;}
}

/* ==========================================================================
   VERY SMALL MOBILE - 320px and below
   ========================================================================== */

@media (max-width: 320px) {
    .ac_maxwidth_1300 { padding: 0 10px !important; }
    .ac_fs_xs_24 { font-size: 20px !important; }
    .ac_fs_xs_22 {font-size: 22px !important;}
    .ac_fs_xs_18 { font-size: 16px !important; }
    .ac_height_xs_400 { height: 350px !important; }
    .ac_height_xs_250 { height: 200px !important; }
}

/* ==========================================================================
   TABLET SPECIFIC - 769px to 1024px
   ========================================================================== */

@media (min-width: 769px) and (max-width: 1024px) {
    .ac_entity_banner { height: 500px !important; }
    .ac_entity_banner h1 { font-size: 28px !important; }
    .ac_fs_33 { font-size: 28px !important; }
    .ac_fs_28 { font-size: 24px !important; }
}

/* ==========================================================================
   LANDSCAPE TABLET - 481px to 768px (landscape)
   ========================================================================== */

@media screen and (min-width: 481px) and (max-width: 768px) and (orientation: landscape) {
    .ac_height_sm_500 { height: 400px !important; }
    .ac_pt_sm_60 { padding-top: 40px !important; }
}

/* ==========================================================================
   MOBILE NAME DISPLAY - 400px and above
   ========================================================================== */

@media (min-width: 400px) {
    .mobile-break .island-name::before { content: " "; }
}

/* ==========================================================================
   PRINT STYLES
   ========================================================================== */

@media print {
    .ac_disp_print_none,
    .ac_cpt_item_card_heart,
    .ac_search_form_wrapper {
        display: none !important;
    }
}



/* Responsive Carousel Styles - Only container/screen fitting adjustments */

/* Make carousel containers fit screen properly */
.aegean_cuisine_companies_carousel_wrapper {
    width: 100%;
    overflow: hidden;
}

.aegean_cuisine_custom_cpt.owl-carousel {
    width: 100% !important;
}

/* Container responsive adjustments 
@media (max-width: 1200px) {
    .ac_maxwidth_1300 {
        max-width: 95% !important; 
        padding: 0 15px; 
    }
}
*/
@media (max-width: 768px) {
    /* Mobile container adjustments */
    .aegean_cuisine_companies_carousel_wrapper {
        padding: 15px 10px !important;
    }
    
    /*.ac_maxwidth_1300 {
        max-width: 100% !important;
        padding: 0 10px; 
    }*/
    
    /* Typography adjustments for mobile */
    .ac_fs_28 {
        font-size: 24px !important;
    }
    
    .ac_fs_30 {
        font-size: 22px !important;
    }
    
    /* Padding adjustments */
    .ac_p_25_10_25_10 {
        padding: 20px 10px !important;
    }
    
    /* Breadcrumb responsive */
    .ac_disp_flex_row_top {
        flex-wrap: wrap;
        /* gap: 5px; */
    }
    
    .ac_disp_flex_row_top .ac_fs_14 {
        font-size: 12px !important;
    }

    .row.ac_p_0_10{ padding: 0px !important;}

    div.wpforms-container-full .wpforms-image-choices.wpforms-image-choices-modern{display: grid !important;grid-template-columns: repeat(1, 1fr) !important;}

    #ac_button {
        display: inline-block;
        background-color: #FFF;
        width: 50px;
        height: 50px;
        text-align: center;
        border-radius: 50%;
        position: fixed;
        bottom: 100px !important;
        right: 20px !important;
        transition: background-color .3s, opacity .5s, visibility .5s;
        opacity: 0;
        visibility: hidden;
        z-index: 1000;
        border: 1px solid #017d9c;
    }


    .ac_mr_10 { margin-right: 0px !important; }


    .producer-contact-content.ac_fs_16.ac_mt_50.ac_text_grey { margin-top: 20px !important; } 
}

@media (max-width: 480px) {
    /* Extra small screens - only container adjustments */
    .ac_fs_28 {
        font-size: 22px !important;
    }
    .ac_mb_30 {margin-bottom: 24px !important;}
    
    .ac_p_25_10_25_10 {
        padding: 15px 5px !important;
    }
    
    .aegean_cuisine_companies_carousel_wrapper {
        padding: 0px !important;
    }
}





/* Producer Info Section Responsive Styles */

/* Base styles for all screens */
.producer-main-content {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.producer-image-container {
    width: 100%;
    text-align: center;
}

.producer-featured-image {
    transition: transform 0.3s ease;
}

.producer-featured-image:hover {
    transform: scale(1.02);
}

.producer-details-container {
    width: 100%;
    box-sizing: border-box;
}

.producer-detail-row {
    border-bottom: 1px solid #f0f0f0;
    padding-bottom: 15px;
}

.producer-detail-row:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.detail-label {
    font-weight: 500;
    min-width: 120px;
}

.detail-value {
    flex: 1;
}

.detail-value a {
    word-break: break-word;
}

.social-link:hover {
    transform: scale(1.1);
}

/* Tablet and Desktop Layout */
@media (min-width: 769px) {
    .producer-main-content {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 30px;
        align-items: start;
    }
    
    .producer-image-container {
        grid-column: 1;
    }
    
    .producer-details-container {
        grid-column: 2;
    }
    
    .producer-detail-row {
        display: grid;
        grid-template-columns: 140px 1fr;
        gap: 20px;
        align-items: start;
        padding-bottom: 20px;
        margin-bottom: 20px;
    }
    
    .detail-label {
        margin-bottom: 0 !important;
        padding-top: 2px;
    }
    
    .detail-value {
        margin-bottom: 0;
    }
}

/* Large Desktop Layout */
@media (min-width: 1200px) {
    .producer-main-content {
        grid-template-columns: 420px 1fr;
        gap: 40px;
    }
    
    .producer-details-container {
        padding: 35px !important;
    }
    
    .producer-detail-row {
        grid-template-columns: 160px 1fr;
        gap: 30px;
    }
}

/* Mobile Layout */
@media (max-width: 768px) {
    /* Breadcrumb */
    .ac_maxwidth_1300.ac_margin_0auto.ac_post_content .ac_disp_flex_row_top  p{ margin-bottom: 0;}

    .producer-main-content { gap: 15px;}
    
    .producer-image-container { margin-bottom: 15px !important;}
    .producer-featured-image { max-height: 300px !important;}
    
    .producer-details-container { padding: 20px !important;}
    
    .producer-detail-row {
        margin-bottom: 15px !important;
        padding-bottom: 12px;
    }
    
    .detail-label { margin-bottom: 5px !important;}
    
    .detail-value { padding-left: 0;}
    
    /* Stack phone/email links vertically on very small screens */
    .detail-value.ac_disp_flex_row_top {
        flex-direction: column !important;
        gap: 3px !important;
        align-items: flex-start !important;
    }
    
    .detail-value.ac_disp_flex_row_top span { display: none;}
    
    .social-links { justify-content: flex-start !important;}

    #st-content-wrapper.st-style-elementor .st-bg-feature {
        padding: 147px 0 !important;
        background-position: center center;
    }

    /* Buttons always hover */
    a.ac_view_more_cpt_content{
        color: var(--acWhite) !important;
        padding: 10px 30px 10px 30px !important;
    }

    a.ac_view_more_cpt_content.ac_back_islands{ background: var(--acLightBlue) !important;}
    a.ac_view_more_cpt_content.ac_back_products { background: var(--acBreadsPastries) !important;}
    a.ac_view_more_cpt_content.ac_back_restaurants{ background: var(--acWinesDrinks) !important;}
    a.ac_view_more_cpt_content.ac_back_recipes{ background: var(--acDesserts) !important;}

    .ac_view_more_cpt_content svg{ fill: var(--acWhite);}

    .ac_cpt_results_grid.ac_mb_70{ margin-bottom: 20px !important;}
    .ac_cpt_results_grid .btn-text svg,
    .ac_view_more_cpt_content .btn-text svg{ fill: var(--acTextColor) !important;}

    /* Posts Grid */
    .premium-blog-wrap.premium-blog-even .premium-blog-content-wrapper{ height: fit-content !important;}

    /* Single Post */
    .wp-singular.post-template-default.single.single-post .st-blog{ padding: 0 !important;} 
    .wp-singular.post-template-default.single.single-post .ac_lightbox_img::before { background: linear-gradient( to bottom right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.03) 50%, rgba(0, 0, 0, 0.16) 100% ) !important;}
}

/* Small Mobile Layout */
@media (max-width: 576px) {
    .producer-info-above-image h2 {
        font-size: 18px !important;
        line-height: 1.3;
    }
    
    .producer-featured-image {
        max-height: 250px !important;
    }
    
    .producer-details-container {
        padding: 15px !important;
    }
    
    .producer-detail-row {
        margin-bottom: 12px !important;
        padding-bottom: 10px;
    }
    
    .detail-label {
        font-size: 15px !important;
    }
    
    .detail-value {
        font-size: 15px !important;
    }
    
    .detail-value a {
        font-size: 15px !important;
    }
    
    .social-links {
        gap: 12px !important;
    }
    
    .social-link img {
        width: 28px !important;
        height: 28px !important;
    }
}

/* Extra Small Mobile Layout */
@media (max-width: 480px) {
    /* Further compress spacing for very small screens */
    .producer-details-container {
        padding: 12px !important;
    }
    
    .producer-detail-row {
        margin-bottom: 10px !important;
        padding-bottom: 8px;
    }
    
    .detail-label,
    .detail-value,
    .detail-value a {
        font-size: 14px !important;
    }
    
    .producer-featured-image {
        max-height: 325px !important;
    }
}

/* Landscape Mobile Layout */
@media (max-width: 768px) and (orientation: landscape) {
    .producer-main-content {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 20px;
    }
    
    .producer-featured-image {
        max-height: 250px !important;
    }

    .producer-main-content {
        grid-template-columns: 555px 1fr;
        gap: 40px;
    }
}

/* Print Styles */
@media print {
    .producer-main-content {
        display: block !important;
    }
    
    .producer-image-container {
        margin-bottom: 20px;
        page-break-inside: avoid;
    }
    
    .producer-details-container {
        box-shadow: none !important;
        border: 1px solid #ccc;
        page-break-inside: avoid;
    }
    
    .social-links {
        display: none; /* Hide social media icons in print */
    }
}

/* High DPI/Retina Display Adjustments */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .producer-featured-image {
        image-rendering: -webkit-optimize-contrast;
        image-rendering: crisp-edges;
    }
    
    .social-link img {
        image-rendering: -webkit-optimize-contrast;
        image-rendering: crisp-edges;
    }
}

/* Dark Mode Support (if needed) */
@media (prefers-color-scheme: dark) {
    .producer-details-container {
        background: #ffffff !important;
        color: #000000 !important;
    }
    
    .producer-detail-row {
        border-bottom-color: #f0f0f0 !important;
    }
    
    .detail-label,
    .detail-value {
        color: #000000 !important;
    }
}



/* Mobile responsive: separate the text from icons */
@media (max-width: 767px) {
    .share .share-icon-buttons {
        display: block;
    }
    
    /* Text "Μοιράσου το !" on its own line */
    .share .share-label {
        display: block;
        margin-right: 0 !important;
        margin-bottom: 10px;
        width: 100%;
    }
    
    /* Keep social icons in one horizontal line */
    .share .share-icon-buttons > a.share-item {
        display: inline-block !important;
        margin-right: 15px;
        vertical-align: middle;
    }
    
    .share .share-icon-buttons > a.share-item:last-child {
        margin-right: 0;
    }
    
    /* Remove any flex properties that might cause vertical stacking */
    .share .share-icon-buttons > a.share-item svg {
        vertical-align: middle;
    }
}
