:root {
      --h1-font-size: 3rem;
      --h2-font-size: 2.5rem;
      --h3-font-size: 2rem;
      --theme-color: #00CDB6
  }

  @media (max-width:768px) {
      :root {
          --h1-font-size: 2.5rem;
          --h2-font-size: 2rem;
          --h3-font-size: 1.7rem
      }
  }

  @media (max-width:480px) {
      :root {
          --h1-font-size: 2rem;
          --h2-font-size: 2rem;
          --h3-font-size: 1.7rem
      }
  }

.btn-s{zoom: .8;}

body, html {margin: 0; padding: 0; position: relative; width: 100%; height:100%;}
html {scroll-behavior: smooth;}
*{box-sizing: border-box; outline: none;  font-family:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;}
body{background: beige;}
footer{padding:30px 10px; width: 100%;}
#menu_logo{fill: white;}
#menu_user_name{margin-top: 20px; color: white; font-family: verdana; letter-spacing: 1px; font-size: 20px; text-transform:uppercase;}
#login_btn{border-radius: 5px; padding: 7px; background-color: green;}
#search_params_con_header{background-color: lightgrey; padding:10px; border-radius: 4px 4px 0px 0px;}
.param_cover {display: inline-flex; background-color: #0099CC; border-radius: 10px; color: white; gap:7px; padding: 2px 5px; margin: 5px; }
.param_cover .close_btn{cursor:pointer}
#main_con{width: 100%; transition: .3s; position: relative; background:inherit; float:right; min-height:100vh; height:max-content; display: flex;
            flex-direction: column;}
#main_con.shrink{width: calc(100% - 200px); margin-left:auto; float:unset;}
body.shrink footer{width: calc(100% - 200px); margin-left:auto; float:unset;}
#menu{height: 100%; width: 200px; background-color: #4a4a4f; position: fixed; z-index:10; left: -200px; transition: .3s; top: 0; overflow-y: auto;}
#menu::-webkit-scrollbar {width: 3px;}
#menu::-webkit-scrollbar-thumb { background: #00CDB6; }
#menu::-webkit-scrollbar-track { background: transparent; }

.op-0{opacity:0;}

#menu_name_card{position: sticky; background-color: #2D2D30; width: 100%; top: 50px; padding: 30px; height: auto; box-shadow: 0 2px 4px 0 rgba(0,0,0,.2),0 3px 30px 0 rgba(0,0,0,0.20)!important; z-index: 1;}
#menu_items{margin-top: 20px; margin-bottom: 70px; padding-top: 40px;}
.m-l-10{margin-left:10px;}
#menu.show{left: 0;}
.vl { border-left: 1px solid white; height: 20px; top: 15px; opacity: .7; }
.fw{width: 100%;background-color: lightgrey;}
.row, .col, .row-c, .col-c{display: flex !important; flex-wrap: wrap;}
.i-row-c{display: inline-flex !important; flex-wrap: wrap;}
.row-c, .col-c, .i-row-c{justify-content: center; align-items: center;}
.row, .row-c{flex-direction: row;}
.col, .col-c{flex-direction: column;}
.f-c-c{display: flex; justify-content: center; align-items: center;}
.jc-c{justify-content:center;}
.jc-sb{justify-content: space-between;}
.jc-sa{justify-content: space-around;}
.jc-fs{justify-content: flex-start;}
.jc-fe{justify-content: flex-end;}
.ai-fs{align-items: flex-start;}
.ai-fe{align-items: flex-end;}
.ai-s{align-items: stretch;}
.ai-b{align-items: baseline;}
.ac-sa{align-content: space-around;}
.ac-s{align-content: stretch;}
.ac-c{align-content: center;}
.ac-fs{align-content: flex-start;}
.ac-fe{align-content: flex-end;}
.p-0{padding: 0 !important;}
.m-0{margin: 0 !important;}
.m-tb-10{margin:10px 0;}
.box{width: 50px; height: 50px; background-color: lightgreen;}
.nav-box{box-sizing: border-box; width: 25%; height: 100%;color: white;}
.bg_theme {background-color: #00CDB6; color: white; fill: white;}
.bg_white{background-color: white; color: #262626;}
.bg_light{background-color: #fafafa;}
.clr_theme{color: #00CDB6;}
.bg_theme svg {fill: white;}
.top_nav_con{z-index: 1000;}
.top_nav_con, #search_nav{position: fixed; top: 0; margin: 0; width: 100%; height: 50px; transition: .3s;}
.top_nav_con > * {height: 100%; width: 100%;}
.top_nav_con > nav:nth-child(2){display: none; background-color: #f2f2f2;}
.brand_con{padding: 0px 10px; position: relative; left: 10px; color:#fff; text-decoration: none;}
.brand{position: relative; font-family: Roboto;font-weight: bold; margin-left: 5px; font-size: 20px;}
.switch { position: relative;width: 40px;height: 24px;}
.switch input {visibility: hidden;}
.slider {position: absolute;cursor: pointer;top: 0;left: 0;right: 0;bottom: 0;background-color: #ccc;-webkit-transition: .4s;transition: .4s;}
.slider:before {position: absolute;content: "";height: 16px;width: 16px;left: 4px;bottom: 4px;background-color: white;-webkit-transition: .4s;transition: .4s;}
input:checked + .slider {background-color: #5CB85C;}
input:focus + .slider {box-shadow: 0 0 1px #5CB85C;}
input:checked + .slider:before {-webkit-transform: translateX(16px);-ms-transform: translateX(16px);transform: translateX(16px);}
.slider.round {border-radius: 34px;}
.slider.round:before {border-radius: 50%;}
.vegtag{font: 14px Arial; margin-left: 10px; width: 55px;}

.shadow{box-shadow: 0 2px 4px 0 rgba(0,0,0,0.16),0 2px 1px 0 rgba(0,0,0,0.12)!important;}
.nav-shadow{box-shadow: 0 1px 2px 0 rgba(0,0,0,.1),0 2px 30px 0 rgba(0,0,0,0.10)!important; transition: .3s;}
.nav-shadow:hover{box-shadow: 0 1px 10px 0 rgba(0,0,0,.2),0 2px 30px 0 rgba(0,0,0,0.10)!important;}
.con-shadow{box-shadow: 0 1px 2px 0 rgba(0,0,0,.1),0 2px 5px 0 rgba(0,0,0,0.10)!important; transition: .3s;}
.con-shadow:hover{box-shadow: 0 1px 10px 0 rgba(0,0,0,.2),0 2px 20px 0 rgba(0,0,0,0.10)!important;}

.btn{padding: 10px 20px; background-color: lightgrey; border: none; border-radius: 4px; color: #333;
        text-decoration: none; margin: 0px; font-weight: bold; cursor: pointer;}


.btn-active {
        background-color: #0056b3; /* Adjust color for active state */
        color: white;
    }
.btn-success, .bg-success {
    background-color: #28a745;
    color: #fff;
}

.btn-primary {
    background-color: #007bff;
    color: #fff;
}

.btn-secondary {
    background-color: #6c757d;
    color: #fff;
}

.btn-danger {
    background-color: #dc3545;
    color: #fff;
}

.btn-warning {
    background-color: #ffc107;
    color: #000;
}

.no-cursor{cursor:unset;}

.btn-info {
    background-color: #17a2b8;
    color: #fff;
}

.btn-light {
    background-color: #f8f9fa;
    color: #343a40;
}

.btn-dark {
    background-color: #343a40;
    color: #f8f9fa;
}


.btn_primary, .btn_green{border-radius: 4px; color: white;}
.btn_primary{background-color: #007BFF; border: 1px solid #0063cc;}
.btn_green{background-color: #28A745; border: 1px solid #28a445;}
#user_i *{fill: white; color: white}

#mdl_left{position: fixed; height: 100%; width: 100%; opacity: 0; z-index:3; background-color: rgba(51, 51, 51,.7); left: -100%; transition: .7s;}
#mdl_left.show{opacity: 1; background-color: rgba(51, 51, 51,.7); left: 0%;}
#mdl_top{position: fixed; height: 100%; width: 100%; opacity: 0; background-color: rgba(51, 51, 51,.7); top: -100%; transition: .7s;}
#mdl_top.show{opacity: 1; background-color: rgba(51, 51, 51,.7); top: 0%;}

input[type="text"], input[type="number"], input[type="checkbox  "], select, textarea {border:1px solid lightgrey; border-radius: 3px; color: #262626; padding: 5px;}

#menu_items > *{width: 100%;}
#menu_items a{text-decoration: none; color: white; width: 100%; padding: 15px;  font-family: "Arial"; transition: .5s;}
hr.grey_80{border:none; margin:0; padding:0; width: 96% !important; margin-left:2%; margin-right:2%; background-color: grey; height: 1px;}
#menu_items a:hover{background-color: #00CDB6; color: white;}
#menu_logo svg{transform: scale(2.2);}
#menu_logo svg #logo_name{font-weight: bold;}
.glass_effect{
	background-repeat: no-repeat; background-position: -210px -210px, 0 0;
	background-image: -webkit-linear-gradient(top left, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0.2) 37%, rgba(255, 255, 255, 0.8) 45%, rgba(255, 255, 255, 0.0) 50% );
	background-image: -moz-linear-gradient( 0 0, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0.2) 37%, rgba(255, 255, 255, 0.8) 45%, rgba(255, 255, 255, 0.0) 50% );    
	background-image: -o-linear-gradient( 0 0, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0.2) 37%, rgba(255, 255, 255, 0.8) 45%, rgba(255, 255, 255, 0.0) 50% );
	background-image: linear-gradient( 0 0, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0.2) 37%, rgba(255, 255, 255, 0.8) 45%, rgba(255, 255, 255, 0.0) 50% );
	-moz-background-size: 250% 250%, 100% 100%; background-size: 250% 250%, 100% 100%;
	-webkit-transition: background-position 0s ease; -moz-transition: background-position 0s ease;       
	-o-transition: background-position 0s ease; transition: background-position 0s ease;
}
.glass_effect:hover { animation-name: glass_blur ; animation-duration: .56s; background-position: 0 0, 0 0; -webkit-transition-duration: 0.5s; -moz-transition-duration: 0.5s; transition-duration: 0.5s; }
@keyframes glass_blur { 0% {filter: blur(0px);} 50% {filter: blur(2px);} 100% {filter: blur(0px);} }

.r_card_con{display: flex; justify-content:space-around;  flex-wrap: wrap;}
.r_card_con .card{flex: 0 0 30%; min-width:300px; border-radius: 5px; margin:20px 0px; height: 330px;font-family: Open Sans;color: grey;cursor: pointer;}
.r_card_con img{width: 100%; height: 200px; border-radius: 5px 5px 0px 0px;}
.r_card_con .card .name{flex-grow:1; word-break: break-word; padding: 0 7px;}
.r_card_con .card .specs{flex-grow:5;}
.r_card_con .card .specs > * > *{padding: 7px;}



@media only screen and (min-width: 1200px) {
	.hide_f_l_xl{display: none !important;}
	.hide_f_s_m{display: flex !important;}
}

@media only screen and (min-width: 950px) {
	.hide_f_l_xl{display: none !important;}	
	.hide_f_s_m{display: flex !important;}
}


@media only screen and (min-width: 600px) {
	#main_con{top: 50px; padding: 10px; margin-bottom: 50px;}
	#nav_cat_con.active{background-color: rgba(77, 77, 77,.4);}
	#search_params_con{display: none;}
	#menu{z-index: 2;}
	#nav1{padding: 15px;}
	.nav1-sec-2{}
	.nav1-sec-2 div{font-family: arial; font-weight: bold; letter-spacing: .5px; font-size: 14px; }
	.nav1-sec-2 *{text-decoration: none; color: white; padding:0px 5px;}
	.nav1-sec-2 .fa{margin-top: -3px;}
	.no-t-d{text-decoration:none; color:inherit;}
	.nav1-sec-3{min-width: 220px; padding-right:20px; gap:20px;}
	.circle_cover,.circle_cover_res{background-color: rgba(77, 77, 77,.05); width: 44px; border-radius: 50%; cursor: pointer;}
	.circle_cover_res{background-color: rgba(77, 77, 77,.05); position: relative; left: 10px;padding: 10px 13px; top:0px; border-radius: 50%; cursor: pointer;}
	.circle_cover:hover,.circle_cover_res:hover{background-color: rgba(77, 77, 77,.1);}
	.circle_cover:active,.circle_cover_res:active{background-color: rgba(77, 77, 77,.2);}
	.circle_cover_res{margin-right: 0; top: 0; }
	#search_nav,#nav2{display: none !important;}
	#logo svg{width: 27px !important; font-weight: bold; margin-left: 4px;}
	.brand{top:1px;}

}

@media only screen and (min-width: 600px) and (max-width: 950px) {
	.hide_f_s_m{display: none !important;}
	.hide_f_l_xl{display: flex !important;}
	.nav1-sec-3{width: 55%;}
	.zoom_s_09{transform: scale(0.9);}
}
@media only screen and (min-width: 600px) and (max-width: 750px) {
	.hide_f_s_m{display: none !important;}
	.hide_f_l_xl{display: flex !important;}
}



@media only screen and (max-width: 600px) {
	#menu_items{ margin-top: 50px;  transition: .3s;}
	#menu_items.scrolled{margin-top:10px; }
	#menu_name_card{top: 80px; transition: .3s;}
	#menu_name_card.scrolled{top: 40px; }
	#main_con{top: 80px; padding: 10px; margin-bottom:80px;}
	#menu{z-index: 10;}
	.hide_f_s_m{display: none !important;}
	.nav1-sec-1{width: 100%;}
	.nav1-sec-2, .nav1-sec-3{display: none !important;}
	#nav2.scrolled{margin-top: -40px;}
	#nav2 > a{width: 25%; text-decoration:none; flex-grow:1; height: 100%; background-color: #fafafa; z-index: 900;}
	#nav2 .fa-heart{font-size: 20px;}
	#nav2 > *, #nav2 svg path{color:#00CDB6; fill: #00CDB6;}
	#nav2 > *:hover{background-color:rgba(38, 38, 38,0.1); color: white;}
	#nav2 > *:hover svg path{fill: white;}
	.nav2_item_active {background-color:rgba(38, 38, 38,0.1) !important; color: white !important; fill:white !important;}
	.nav2_item_active svg path{fill: white !important;}
	#search_type > .active{background-color: #f2f2f2; color: #00CDB6;}
	.top_nav_con{height: 80px;}
	.top_nav_con.hide{margin-top: -80px;}
	.top_nav_con > * {height: 50%; z-index: 2000;}
	.top_nav_con > nav:first-child{padding: 0 13px;}
	.top_nav_con > nav:nth-child(2){display: block;}
	#search_nav{height: 100px; font-family: "Open Sans"; z-index: 950;}
	#search_nav.hide{margin-top: -100px;}
	#search_nav > nav{position:relative; width: 100%; padding: 0 10px;  transition: .3s; z-index: 1000;}	
	#search_nav > nav:first-child {height: 40px; z-index: 200; z-index: 1100;}
	#search_nav > nav:first-child *{z-index: 200;}
	#search_nav > nav:nth-child(2) {height: 60px; z-index: 100; z-index: 900;}
	#search_nav > nav:nth-child(2) *{z-index: 100;}
	#search_nav > nav:nth-child(2) > *{width: 100%;}
	#search_nav > nav:nth-child(2) > *:first-child{height: 33px;}
	#search_nav > nav:nth-child(2) > *:nth-child(2){height: 27px; font-size: 14px;}
	#search_nav > nav:nth-child(2) *:nth-child(2) {padding: 0 10px;}
	#search_nav > nav:nth-child(2) > *:first-child > *:last-child{border-right: none;}
	#search_back_btn{font-size: 23px;}
	#srch_params_ct_name{padding: 0 !important;}
	#search_type_con.scrolled{margin-top: -33px;}
	#search_type_con > *:first-child > *{height: 100%; width: calc(100% / 3); border-right: 1px solid white;}
	#search_type_con > *:nth-child(2) {border-top: 1px solid #f2f2f2;}
	#search_type_con > *:first-child > div:hover {background-color: #f2f2f2; color: #00CDB6;}
	#search_params_con{transition: .7s;  position: fixed; opacity: 0; background-color: white; top: 110px; z-index: -1; margin-top: -300px; left: 2%; width: 96%; border-radius: 4px;}
	#search_params_con.show{opacity:1; margin-top:0px; z-index:100;}
	#search_params_con .close_btn{width: 20px; border: none; font-weight: 700; font-size: 10px; height: 20px;background-color: #F85B5E; border-radius: 50%; color: white;}
	.modal-content {width: 100% !important;}
}




.hide{transition: .4s;}
.modal.hide{display: none !important; transition: .4s;}

/*SIGNUP - LOGIN Modal - START*/

.modal,.modal2 {
  position: fixed; /* Stay in place */
  z-index: 99999; /* Sit on top */
  overflow: auto; /* Enable scroll if needed */
  width: 100%;
  height: 100%;
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
  -webkit-animation-name: fadeIn; /* Fade in the background */
  -webkit-animation-duration: 0.4s;
  animation-name: fadeIn;
  animation-duration: 0.4s;
  overflow: -moz-scrollbars-none;
  -ms-overflow-style: none;
}


.modal::-webkit-scrollbar { width: 0 !important }

.modal-content {
	width: 50%;
  background-color: #fefefe;
  -webkit-animation-name: slideIn;
  -webkit-animation-duration: 0.4s;
   margin:1%;
  animation-name: slideIn;
  animation-duration: 0.4s;border-radius: 5px; position: relative;
}

.grow{flex-grow: 1;}
.modal-content-con{color: white; background: rgb(67,196,165);
background: radial-gradient(circle, rgba(67,196,165,1) 0%, rgba(114,176,153,1) 100%);}
.gap-10{gap:10px;}
.modal-head{margin:0; padding: 20px; text-align: center; font-family: Roboto; text-shadow: 0 0 3px #FF0000, 0 0 50px red; font-weight: 100;}
#login-tab, #signup-tab{font-weight: 100; text-shadow: 0 0 3px #FF0000, 0 0 50px red; color: white; height: 50px;}
#login-tab{background-color: #00CDB6;}
#signup-tab{background-color: #45B39D;}

.social-con{ padding:10px 2%; background-color: #EFFAF8;}

.p-10{padding: 10px;}
.p-t-b-10{padding: 10px 0;}

.pt-10{padding-top: 10px;}

/*.social-btns-con{display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; -webkit-align-content: center;
	  align-content: center;}*/

.social-btns{width: 30%; padding: 10px; border:0; border-radius: 3px; color: white;}
.btn-g{background-color: #D64532;}
.btn-f{background-color: #3C5A9A;}
.btn-t{background-color: #1DAEE6;}

.modal-form{padding: 2%;}

.mt-20{margin-top: 20px;}
.br-5{border-radius:5px;}
.br-0{border-radius:0px !important;}
.mb-20{margin-bottom: 20px;}

/* The Close Button */
.close {
  color: white;
  float: right;
  font-size: 28px;
  font-weight: bold;
  background-color: transparent;  border:none; position: absolute; top: 20px; right: 20px;
}

.close:hover,
.close:focus {
  color: #000;
  text-decoration: none;
  cursor: pointer;
  -webkit-animation-name: fadeOut; /* Fade in the background */
  -webkit-animation-duration: 0.4s;
  animation-name: fadeOut;
  animation-duration: 0.4s;
}

.modal-header {
  padding: 2px 16px;
  background-color: #5cb85c;
  color: white;
}

.modal-body {padding: 2px 16px;}

.modal-footer {
  background-color: #5cb85c;
  color: white;
  padding:20px 2%; background-color: #f2f2f2; width: 100%; min-height:70px; margin:0; gap:2%;
}


.footer-main-btn{background-color: #007BFF; color: white; font-size: 1rem; padding: 10px; border-radius: 3px; border:none;}

.footer-close-btn{font-size: 1rem; padding: 10px; border:none; border-radius: 3px; background-color: #6C757D; color: white;}

#signup_con{position: relative; display: none;}



.modal-form-con > form input{ width: 100%;  margin:10px 0; padding: 10px 5px; border:1px solid lightgrey; border-radius: 3px; font-size: 17px;}
.alert{  padding:5px; border-radius:3px; margin: 5px 0 10px 0;}
.alert-danger{color:#a94442; background-color:#F2DEDE; border:1px solid #eac8c8;}
.alert-success{color: #3c763d; background-color: #DFF0D8; border:1px solid #bbddbc;}
.custom-alert{font-size: 1rem; padding: 10px;}
.max-w-60{max-width:60%;}


/* Add Animation */
@-webkit-keyframes slideIn {
  from {margin-top: -100px; opacity: 0} 
  to {margin-top: 0; opacity: 1}
}

@keyframes slideIn {
  from {margin-top: -100px; opacity: 0}
  to {margin-top: 0; opacity: 1}
}

@-webkit-keyframes fadeIn {
  from {opacity: 0} 
  to {opacity: 1}
}

@keyframes fadeIn {
  from {opacity: 0} 
  to {opacity: 1}
}
/*SIGNUP - LOGIN MODAL END*/

.heart {
    transform: scale(.85);
  width: 80px;
  height: 80px;
  position: absolute;
    top:-20px; right:0;
  background: url(https://cssanimation.rocks/images/posts/steps/heart.png) no-repeat;cursor: pointer;
  /*animation: fave-heart 1s steps(28);*/
}
    .heart2 {
  background-position: -2800px 0;
  transition: background 1s steps(28);
}
@keyframes fave-heart {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -2800px 0;
  }
}

.selectize-input input{width:auto !important;}
.delete-checkbox{display:none;}
.hide{display:none !important;}
.show{display:inherit !important;}
.w-auto{width: auto;}
.w-10{width: 10%;}
.w-100{width: 100%;}
#id_remember{width:auto;}


.txt-center{ text-align: center;}
.d-block{ display: block;}



.star-rating, .back-stars, .front-stars{ display: flex; }
.star-rating { align-self: end; align-self: center; }
.star-rating i{letter-spacing:3px;}
.back-stars { color: #d3d3d3; position: relative;}
.front-stars { color: #00cdb6; overflow: hidden; position: absolute; }


.r_card{overflow: hidden; border-radius: 5px; position:relative;
    box-shadow: 0 1px 2px 0 rgba(0,0,0,.1),0 2px 30px 0 rgba(0,0,0,0.10)!important;
    transition: .3s; max-width: 100%; background: #fff;
    display: flex; flex-direction: column; justify-content: space-between;
}

.r_card:hover {
    box-shadow: 0 1px 10px 0 rgba(0,0,0,.2),0 2px 30px 0 rgba(0,0,0,0.10)!important;
}

.r_card a {text-decoration:none; color: grey;}

.r_card .recipe_img_con {width: 100%; flex-grow:1; display: flex; align-items: center; justify-content:center;}
.r_card .recipe_img_con img {width: 100%; max-height:250px;}
.r_card .recipe_meta .name {
    margin: 0; padding:6px; height:2.4em; overflow: hidden; text-overflow: ellipsis;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; color: #333333;
}
.r_card  .ratings { position: relative; vertical-align: middle; display: inline-block;
    color: #b1b1b1; overflow: hidden;
}
.r_card  .ratings span{display: flex; align-items: center; flex-direction: column; justify-content: end;}
.r_card .specs_2 {display: flex; flex-wrap: wrap; padding:10px 0;}
.r_card .specs_2 > div {flex: 50%; align-self: center; display: flex; padding:7px 10px;}
.r_card .specs_2 > div:nth-child(even) {justify-content: end;}
.r_card .specs {padding:2px 6px; color: grey;}
.r_card .specs > div {padding: 3px 0;}
.r_card .rating_count {position: relative; top: 2px;}
.r_card .specs_2 > div.r_difficulty span { display: flex; align-items: center;}
.r_card .specs_2 > div.r_difficulty img { width: 30px;}

.r_card .heart_con {position:absolute; top: 0; right:0;}

.r_card .heart { transform: scale(.85); width: 80px; height: 80px; position: absolute;
    top:-20px; right:-5px; background: url(/static/portal/img/heart.png) no-repeat;
    cursor: pointer; /*animation: fave-heart 1s steps(28);*/ filter: contrast(.1);
}
.r_card .heart2 { background-position: -2800px 0; transition: background 1s steps(28); filter: contrast(1);}

@keyframes fave-heart {
    0% { background-position: 0 0; }
    100% { background-position: -2800px 0; }
}

@media screen and (max-width: 570px) {
    .r_card {min-width:100%; display: flex; flex-direction: unset; margin-left:0; z-index:0; height:100px;}
    .r_card .recipe_img_con {max-width: 40%; min-width: 40%; display: inline-block;}
    .r_card .recipe_img_con img {height:100%;}
    .r_card .star-rating .back-stars img, .star-rating .front-stars img{width: 18px !important; height: 18px !important;}
    .r_card .recipe_meta {max-width: 100%; width: auto; display: flex; flex-direction:column; justify-content: space-around; flex-grow: 1; padding: 3px 0;}
    .r_card .specs_2 {padding: 0 0 5px 0; font-size: 14px; flex-grow: 1;}
    .r_card .recipe_meta .name {padding:5px 30px 5px 5px; height: auto; text-align:left; max-height: 2.7em; font-size: 1em;}
    .r_card .recipe_meta .specs_2 > div {padding:5px 7px 0px 5px;}
    .r_card .recipe_meta .specs_2 > div.total_time {justify-content:end; flex: auto; flex-shrink:1;}
    .r_card .heart {top:-30px; right:-15px; height: 100px; width: 80px;}
    .r_card .specs_2 > div.total_ings { flex:auto; justify-content: flex-start;}
    .r_card .specs_2 > div.r_difficulty { flex:auto; justify-content: end;}
    .r_card .specs_2 > div.r_difficulty img { width: 25px;}
}

.ing-autocomplete-suggestions, .ing_search_suggestions {
    margin-top:5px;
    z-index:1; border: 1px solid #ddd; border-top: none; position: absolute;
    background-color: white; color: #484545; text-align:start; width: 100%; min-wdith:300px; border-radius: 5px; overflow: hidden;
}
.ing-autocomplete-container input[type="text"], .ing_search_suggestions input[type="text"] {margin-bottom: 0px !important;}

.ing-autocomplete-suggestions .suggestion, .ing_search_suggestions .suggestion{ padding: 10px; cursor: pointer; display: flex;}
.ing-autocomplete-suggestions .suggestion .image-error, .ing_search_suggestions .suggestion .image-error{width:35px;}

.ing-autocomplete-suggestions .suggestion .img_con, .ing_search_suggestions .suggestion .img_con{width: 60px; display:flex; justify-content:center;}
.ing-autocomplete-suggestions .suggestion img, .ing_search_suggestions .suggestion img{height: 35px; margin-right:10px; border-radius:10px;}

.ing-autocomplete-suggestions .suggestion .txt_con, .ing_search_suggestions .suggestion .txt_con {display: flex; flex-direction: column; justify-content: space-evenly;}

.ing-autocomplete-suggestions .suggestion .suggestion-row, .ing_search_suggestions .suggestion .suggestion-row {width: 100%;}
.ing-autocomplete-suggestions .suggestion .suggestion-row--smaller span:first-child, .ing_search_suggestions .suggestion .suggestion-row--smaller span:first-child{margin-right: 10px;}

.ing-autocomplete-suggestions .suggestion:hover,
.ing-autocomplete-suggestions .suggestion.highlighted,
 .ing_search_suggestions .suggestion:hover,
.ing_search_suggestions .suggestion.highlighted{ background-color: #f2f2f2; font-weight:500; }

.ing-autocomplete-container { position: relative; width: 300px; }


/* Base styles for the message container */
.messages {
    margin-bottom: 20px;
    position: fixed;
    width: 100%;
    padding: 10px;
    z-index: 1001;
    display: flex;
    justify-content: center;
}

.messages .alert {
    padding: 15px 40px 15px 15px;
    margin-bottom: 10px;
    border-radius: 4px;
    font-size: 16px;
    position: relative;
    opacity: 1;
    transition: opacity 0.5s ease-in-out, visibility 0s 5s;
    visibility: visible;
}

/* Success message (like Bootstrap 'alert-success') */
.messages .success {
    background-color: #d4edda;
    border: 1px solid #c3e6cb;
    color: #155724;
}

/* Error message (like Bootstrap 'alert-danger') */
.messages .danger, .messages .error {
    background-color: #f8d7da;
    border: 1px solid #f5c6cb;
    color: #721c24;
}

/* Warning message (like Bootstrap 'alert-warning') */
.messages .warning {
    background-color: #fff3cd;
    border: 1px solid #ffeeba;
    color: #856404;
}

/* Info message (like Bootstrap 'alert-info') */
.messages .info {
    background-color: #d1ecf1;
    border: 1px solid #bee5eb;
    color: #0c5460;
}

/* Close button */
.messages .close {
    position: absolute;
    top: 10px;
    right: 15px;
    color: inherit;
    background: transparent;
    border: none;
    font-size: 20px;
    cursor: pointer;
    line-height: 1;
}

/* Fade out the message after 5 seconds */
.messages .alert.fade-out {
    opacity: 0;
    visibility: hidden;
}

/* Smooth close animation */
.messages .close:hover {
    color: #000;
}

.r_card .clock_i{height:17px; width:17px;  filter: invert(0.6);}

.i-b{display: inline-block;}

.star-rating .back-stars,.star-rating .front-stars{gap: 2px;}
.star-rating .back-stars img,.star-rating .front-stars img{width:18px !important; height: 18px !important;}

.rdp .star-rating .back-stars,.rdp  .star-rating .front-stars{gap: 2px;}
.rdp .star-rating .back-stars img,.rdp  .star-rating .front-stars img{width:18px !important; height: 18px !important;}

/* FAQ Section Styling */

.faq-section_t_1 {
    background-color: #f4f4f4; padding: 30px; border-radius: 8px; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.faq-section_t_1 .faq-section-title {
  font-size: var(--h2-font-size); font-weight: 700; text-align: center; text-transform: uppercase;
  position: relative; color: #00A494; margin-bottom: 20px;
}

.faq-section_t_1 .faq-accordion-list { margin: 0; padding: 0; }

.faq-section_t_1 .faq-accordion {
  background: white; border: 1px solid #ddd; margin-bottom: 10px; border-radius: 5px;
  overflow: hidden; transition: box-shadow 0.3s ease;
}

.faq-section_t_1 .faq-accordion:hover { box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); }

.faq-section_t_1 .faq-header {
    display: flex; justify-content: space-between; align-items: center; padding: 15px;
    cursor: pointer; font-size: 1rem; font-weight: bold; color: #333;
}

.faq-section_t_1 .faq-header:hover { background-color: #f9f9f9; }

.faq-section_t_1 .faq-arrow { font-size: 1.2rem; color: #00A494; transition: transform 0.3s ease;  transform: rotate(0deg);}

.faq-section_t_1 .faq-answer {
    display: none; padding: 30px 15px; font-size: 0.95rem; color: #555; background-color:#f2f2f2;
    line-height: 1.5; margin:0;
}

.faq-section_t_1 .faq-accordion.active .faq-answer { display: block; }
.faq-section_t_1 .faq-accordion.active .faq-arrow { transform: rotate(45deg); }

.faq-section_t_1 .view-all-button {
  display: block; text-align: center; margin: 20px auto 0; padding: 10px 20px; background-color: #00A494;
  color: white; text-decoration: none; border-radius: 5px; font-size: 1rem; font-weight: bold;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); transition: background-color 0.3s ease, box-shadow 0.3s ease;
}

.faq-section_t_1 .view-all-button:hover { background-color: #007a6d; box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2); }

/* Responsive Design */
@media (max-width: 768px) {

  .faq-section_t_1 .faq-header { font-size: 0.95rem; }

  .faq-section_t_1 .view-all-button { font-size: 0.9rem; }
}

