/* Filters */
.nmp-top-filters{
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex-wrap:wrap;
    margin:0 0 30px 0;
}
.nmp-top-filters .filter-options{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
}
.nmp-top-filters h3,
.nmp-top-filters h4{
    color:#232323;
	font-family:'Open Sans',Helvetica,Arial,Lucida,sans-serif;
}
.nmp-top-filters h3{
    font-size:18px;
	line-height:38px;
	padding:0;
}
.nmp-top-filters h4{
    font-size:14px;
	line-height:16px;
	margin:0;
}
.nmp-top-filter select{
    font-size:14px;
}
.nmp-variation-select{
    font-size:15px;
}
.nmp-top-filter select,
.nmp-variation-select{
	font-family:'Open Sans',Helvetica,Arial,Lucida,sans-serif;
	line-height:16px;
	color:#232323;
	font-weight:400;
	border-color:#232323;
	padding:5px 16px 5px 10px;
	height:38px;
	width:100%;
}
.nmp-top-filter-action .clear-filter,
.nmp-show-nutrition-image{
    cursor:pointer;
    padding:9px 11px;
    background-color:#232323;
    border:solid 1px #232323;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:.2s all;
    font-family:'Red Hat Text', Helvetica, Arial, Lucida, sans-serif;
    font-weight:700;
    text-transform:uppercase;
    color: #ffffff;
    font-size:12px;
    line-height:18px;
}
.nmp-top-filter-action .clear-filter:hover{
    background-color:transparent;
    color:#232323;
}
.nmp-show-nutrition-image{
    width:100%;
}
@media only screen and (min-width:768px) and (max-width:860px){
    .nmp-top-filters h3{
        display:none;
    }
}
@media only screen and (min-width:768px){
    .nmp-top-filters{
        gap:12px;
    }
    .nmp-top-filters .filter-options{
        gap:10px;
    }
    .nmp-top-filters h3,
    .nmp-top-filter-action .clear-filter{
        margin:26px 0 0 0;
    }
}
@media only screen and (max-width:767px){
    .nmp-top-filters,
    .nmp-top-filters .filter-options{
        gap:24px;
    }
    .nmp-top-filters .filter-options > *,
    .nmp-top-filter-action,
    .nmp-top-filter-action > *{
        width:100%;
    }
    .nmp-top-filters h4{
        padding-bottom:10px;
    }
}
/* Card Listing */
.nmp-meal-list-v2{
    display:grid;
    gap:24px;
}
@media only screen and (min-width:981px){
    .nmp-meal-list-v2{
        grid-template-columns:repeat(3, minmax(0, 1fr));  
    }
}
@media only screen and (min-width:768px) and (max-width:980px){
    .nmp-meal-list-v2{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }
}
.nmp-meal-item{
    border:1px solid #232323;
    padding:20px;
    background:#fff;
}
.nmp-meal-secondary{
    display:flex;
    justify-content:center;
    align-items:center;
    margin-bottom:16px;
}
.nmp-meal-featured-image{
    display:flex;
}
.nmp-meal-featured-image img{
    width:100%;
    height:auto;
    border-radius:10px;
}
.nmp-meal-header{
    margin-bottom:10px;
}
.nmp-meal-title{
    font-family:'Open Sans',Helvetica,Arial,Lucida,sans-serif;
	font-size:24px;
	line-height:30px;
    margin:0;
}
.nmp-meal-description{
    display:none;
}
.nmp-meal-content{
    display:grid;
    grid-template-columns:1.7fr 1fr;
    gap:18px;
}
.nmp-meal-main{
    display:grid;
    gap:24px;
}
.nmp-meal-field{
    display:flex;
    gap:10px;
    width:100%;
}
.nmp-meal-field > label{
    font-size:13px;
    line-height:16px;
    font-weight:600;
    min-width:48px;
}
.nmp-meal-field input[type=radio]{
    margin:0;
}
.nmp-size-options{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}
.nmp-radio-label,
.nmp-price{
    font-size:15px;
    line-height:20px;
}
.nmp-radio-label{
    display:inline-flex;
    align-items:center;
    cursor:pointer;
    position:relative;
    gap:4px;
}
.nmp-radio-label input[type="radio"]{
    position:absolute;
    left:3px;
    opacity:0;
    cursor:pointer;
}
.nmp-radio-label .radio-circle{
    height:20px;
    width:20px;
    background-color:#fff;
    border-radius:50%;
    border:solid 1px #232323;
    position:relative;
}
.nmp-radio-label .radio-circle:after{
    content:'';
    top:4px;
    left:4px;
    width:10px;
    height:10px;
    border-radius:50%;
    position:absolute;
    background-color:#fff;
    display:none;
}
.nmp-radio-label input:checked ~ .radio-circle:after{
    display:block;
    background-color:#232323;
}
.nmp-field-price{
    display:none;
    align-items:center;
}
.nmp-price{
    font-weight:600;
}
/*.nmp-price-hidden{*/
/*    display:none;*/
/*}*/
.nmp-show-nutrition-image:disabled{
    opacity:.75;
    cursor:not-allowed;
}
.nmp-show-nutrition-image:hover:not(:disabled),
.nmp-pagination-arrow:hover:not(:disabled),
.nmp-page-number.nmp-page-inactive:hover{
    background-color:#8BC938;
    color:#232323;
    border-color:#8BC938;
}
/* Pagination Controls */
.nmp-pagination-controls{
    display:flex;
    justify-content:center;
    gap:10px;
    margin:40px 0 0 0;
    padding:0;
}
.nmp-pagination-arrow{
    font-size:16px;
    background-color:#fff;
}
.nmp-pagination-prev:after{
    content:'#';
}
.nmp-pagination-next:after{
    content:'$';
}
.nmp-pagination-prev:after,
.nmp-pagination-next:after{
    font-family:ETmodules;
    font-weight:400;
    font-size:18px;
    line-height:18px;
    display:flex;
    align-items:center;
    justify-content:center;
}
.nmp-pagination-arrow:disabled{
    background-color:transparent;
    opacity:0.75;
    cursor:not-allowed;
}
.nmp-pagination-numbers{
    display:flex;
    gap:10px;
    justify-content:center;
    flex-wrap:wrap;
}
.nmp-pagination-arrow,
.nmp-page-number{
    min-width:38px;
    height:38px;
    padding:0;
    border:1px solid #232323;
    font-size:14px;
    font-weight:600;
    cursor:pointer;
    transition:all 0.2s ease;
    color:#232323;
}
.nmp-page-number.nmp-page-active{
    background:#232323;
    color:#fff;
    border-color:#232323;
}
.nmp-page-number.nmp-page-inactive{
    background:#fff;
    color:#232323;
    border-color:#232323;
}
/* Popup CSS */
.nmp-meal-popup{
    position:fixed;
    top:0;
    left:0;
    width:100vw;
    height:100vh;
    background:rgba(0,0,0,.75);
    z-index:999;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    row-gap:16px;
}
.nmp-meal-popup.nmp-hide{
    display:none;
}
.nmp-popup-close{
    border:none;
    background:rgba(0,0,0,.75);
    font-size:24px;
    cursor:pointer;
    width:44px;
    height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    border-radius:50%;
    transition:background-color .2s ease;
}
.nmp-popup-close:hover{
    background:rgba(0,0,0,.25);
}
.nmp-meal-popup-header{
    display:flex;
    justify-content:flex-end;
    width:100%;
    max-width:550px;
}
.nmp-meal-popup-inner{
    width:100%;
    max-width:550px;
    background:#f5f2ea;
    border-radius:20px;
    overflow:hidden;
    max-height:calc(100vh - 60px);
}
.nmp-meal-popup-inner > .nmp-popup-content{
    overflow-y:auto;
    overflow-x:hidden;
    max-height:calc(100vh - 80px);
    font-size:16px;
    line-height:26px;
    color:#232323;
}
.nmp-meal-popup-inner > .nmp-popup-content table{
    width:100%;
    border-collapse:collapse;
    margin:0;
    background:#fff;
    color:#232323;
    border:solid 2px #232323;
}
.nmp-meal-popup-inner > .nmp-popup-content table th,
.nmp-meal-popup-inner > .nmp-popup-content table td{
    padding:8px 12px;
    border:none;
    border-bottom:1px solid #232323;
    vertical-align:top;
}
.nmp-meal-popup-inner > .nmp-popup-content table th{
    font-weight:700;
    color:#232323;
}
.nmp-meal-popup-inner > .nmp-popup-content table tr *:first-child{
    width:40%;
}
/*.nmp-popup-content tr:nth-child(even){*/
/*    background:#f5f2ea;*/
/*}*/
.nmp-meal-popup-inner > .nmp-popup-content p,
.nmp-meal-popup-inner > .nmp-popup-content ul,
.nmp-meal-popup-inner > .nmp-popup-content ol{
    margin:0 0 24px;
}
.nmp-meal-popup-inner > .nmp-popup-content a{
    color:#8bc938;
    text-decoration:underline;
}
.nmp-meal-popup-inner > .nmp-popup-image{
    max-width:100%;
    height:auto;
    display:block;
    border-radius:12px;
}
@media(min-width:481px){
    .nmp-meal-popup-inner > .nmp-popup-content{
        padding:30px;
    }
}
@media(max-width:480px){
    .nmp-meal-popup-inner > .nmp-popup-content{
        padding:20px;
    }
}