.header-city {
	display: inline-block;
    font-weight: 400 !important;
	font-size: 1.0em;
	margin-top: 0px;
	color: white !important;
}
.navbar-ct-black{
    background-image:url(/public/assets/img/pat__.webp);
    border-radius:0 
}
.carousel-inner>.item {
    padding: 0;
    transition: transform 0.8s ease-in-out !important;
    -webkit-transition: transform 0.8s ease-in-out !important;
}

.carousel-inner>.item>a>img,
.carousel-inner>.item>img {
    border-radius: 0;
    box-shadow: 0 2px 2px rgb(204 197 185 / .5);
    margin-left: 0;
    max-width: 100%;
}

@media (max-width: 768px) {
    #carousel {
        display: block !important;
    }

    .carousel-inner>.item>a>img,
    .carousel-inner>.item>img,
    .carousel-inner>.item picture img {
        width: 100%;
        height: auto;
    }
}
#city-select .btn,#city-select-mobile .btn{
    margin:0 0px;
    font-size:15px 
}
#cart-container .btn{
    margin-bottom:0 
}
.cart-holder{
    margin-top:5px 
}
#header-navbar{
    z-index:auto;
    background-image:url(/public/assets/img/pat__.webp);
    border-radius:0 
}
#city-select a.active,#city-select-mobile a.active{
    background:#ad0000;
    color:#fff 
}
.spinner-overlay{
    width:100%;
    height:100%;
    background:rgb(255 255 255 / .7);
    position:absolute;
    top:0;
    left:0;
    z-index:2 
}
.spinner{
    animation:rotator 1.4s linear infinite;
    position:absolute;
    top:50%;
    left:50%;
    margin-top:-33px;
    margin-left:-33px 
}
@keyframes rotator{
    0%{
        transform:rotate(0) 
    }
    100%{
        transform:rotate(270deg) 
    }
}
.path{
    stroke-dasharray:187;
    stroke-dashoffset:0;
    transform-origin:center;
    animation:dash 1.4s ease-in-out infinite,colors 5.6s ease-in-out infinite 
}
@keyframes colors{
    0%{
        stroke:#00bcd4 
    }
    25%{
        stroke:#f44336 
    }
    50%{
        stroke:#ff9800 
    }
    75%{
        stroke:#5cb860 
    }
    100%{
        stroke:#9c27b0 
    }
}
@keyframes dash{
    0%{
        stroke-dashoffset:187 
    }
    50%{
        stroke-dashoffset:47;
        transform:rotate(135deg) 
    }
    100%{
        stroke-dashoffset:187;
        transform:rotate(450deg) 
    }
}
.card .description{
    height:75px;
    font-size:1em;
    line-height:1.3;
    letter-spacing:-.01em;
    overflow:hidden;
    hyphens:none;
    -webkit-hyphens:none;
    -ms-hyphens:none 
}
.description-wrapper{
    height:95px;
    overflow:visible;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    gap:4px 
}
.selectpicker.item-mod-select{
    max-height:90px 
}
.description-text{
    font-size:1em;
    line-height:1.4;
    text-align:justify;
    display:-webkit-box;
    -webkit-line-clamp:4;
    -webkit-box-orient:vertical;
    overflow:visible 
}
.item-mod-select{
    position:absolute;
    bottom:103px;
    left:0;
    z-index:1000;
    overflow:visible;
    padding-right:25px;
    padding-left:15px 
}
#mNavbar{
    padding:0 
}
#mNavbar.navbar-fixed-top{
    z-index:999 
}
.cart-item-row{
    margin-right:0 
}
.btn-change-cart-qty{
    font-size:.93em!important 
}
.dropdown-notification-list>li>a .notification-text{
    position:relative;
    text-align:center 
}
.btn-magnify:focus,.btn-magnify:hover{
    -webkit-transform:scale(1.05);
    -moz-transform:scale(1.05);
    -o-transform:scale(1.05);
    -ms-transform:scale(1.05);
    transform:scale(1.05);
    transition-duration:.23s 
}
.card .content a img{
    -webkit-transform:scale(1);
    -moz-transform:scale(1);
    -o-transform:scale(1);
    -ms-transform:scale(1);
    transform:scale(1);
    transition-duration:.4s 
}
.card .content:hover a img{
    -webkit-transform:scale(1.12);
    -moz-transform:scale(1.12);
    -o-transform:scale(1.12);
    -ms-transform:scale(1.12);
    transform:scale(1.05);
    transition-duration:.4s 
}
.call-phone{
    padding-left:0;
    margin-top:0px!important;
    margin-bottom:-5px!important;
    margin-left:0!important 
}
.header-h5{
    margin-bottom:0;
    margin-top:5px;
	color:white;
}
.modal-header{
    border:none 
}
.modal-header .close{
    font-size:3em 
}
.modal-body{
    overflow:hidden 
}
.card .controls{
    overflow:hidden;
    padding-left:10px;
    padding-right:10px 
}
.ingredients-row .btn{
    margin-bottom:10px 
}
.modal-footer{
    padding-top:10px 
}
.card .content a img{
    cursor:pointer 
}
.cart-footer-total{
    line-height:69px;
    font-size:16px 
}
ul.cart-items-list{
    list-style:none;
    margin-left:5px;
    padding-left:0 
}
ul.cart-items-list>li:before{
    content:"+";
    margin-right:4px 
}
form.contact .row{
    padding-bottom:4px 
}
.dropdown-menu.inner li:first-child a{
    padding-top:5px 
}
.pb20{
    margin-bottom:20px 
}
.navbar:not(.navbar-fixed-top) .logo-portable{
    display:none 
}
.navbar-fixed-top .logo-portable{
    display:none 
}
@media (max-width:767px){
	.modal-footer .pizza-total-p {
        text-align:center;
        font-size: 20px !important;
        margin-bottom:16px;
    }
    .nav-open .navbar .container{
        left:0 
    }
    .navbar .navbar-collapse.collapse.in,.navbar .navbar-collapse.collapsing{
        display:block!important 
    }
    .navbar-fixed-top .logo-portable{
        filter:invert(100%);
        height:67px 
    }
    #cart-wrapper{
        display:none 
    }
    #cart-wrapper-mobile{
        margin-left:25px;
        display:inline-block 
    }
    #cart-mobile-contents{
        position:fixed;
        left:0;
        top:0;
        background:#fff;
        width:100%;
        height:100%;
        overflow-y:scroll;
        z-index:9999999999 
    }
    .navbar-toggle{
        margin-right:0 
    }
    #mNavbar{
        position:fixed;
        width:100%;
        top:0 
    }
    .modal-body{
        padding:10px 25px 
    }
    #delivery-zone-popup .modal-body{
        padding:0 
    }
    .navbar h6{
        text-align:center 
    }
    .navbar-toggle .icon-bar{
        position:relative;
        transition:all .2s ease-in-out 
    }
    .navbar-toggle:not(.collapsed) .icon-bar:nth-of-type(2){
        top:6px;
        transform:rotate(45deg) 
    }
    .navbar-toggle:not(.collapsed) .icon-bar:nth-of-type(3){
        background-color:#fff0 
    }
    .navbar-toggle:not(.collapsed) .icon-bar:nth-of-type(4){
        top:-6px;
        transform:rotate(-45deg) 
    }
    #cart-wrapper-mobile .nav-pills{
        margin-top:16px 
    }
    form.contact input[type=text]{
        margin-bottom:10px 
    }
    .bootstrap-datetimepicker-widget.dropdown-menu.usetwentyfour.top.open{
        bottom:45px!important 
    }
    .header-h5{
        text-align:center 
    }
    .call-phone{
        width:100%;
        margin-top:12px!important;
        padding:0 10px 
    }
    #city-select button,#city-select-mobile button{
        display:block;
        width:100% 
    }
    .dropdown-menu-right{
        width:calc(100vw - 80px) 
    }
    footer nav.pull-left{
        float:none!important 
    }
    footer nav ul li{
        width:100%;
        padding:0!important;
        margin:5px!important 
    }
    footer nav ul li:first-child{
        padding-top:15px!important;
        padding-bottom:10px!important;
        font-size:1.2em 
    }
    footer .copyright{
        padding-top:10px;
        font-size:1.2em;
		float:center;
		margin-top: 3px;
		font-size: 13px
    }
    #delivery-zone-popup input{
        margin-bottom:10px 
    }
    #delivery-zone-popup .form-group{
        padding-left:15px;
        padding-right:15px 
    }
    .dropdown-menu-right{
        position:unset 
    }
    .dropdown-backdrop{
        position:unset 
    }
}
.nopadding{
    padding:0 
}
.cart-mobile-hide{
    font-size:4em;
    display:block 
}
.navbar-header{
    width:100% 
}
.logo-container .logo{
    width:100% 
}
#map-canvas{
    width:auto;
    height:500px 
}
.bootstrap-datetimepicker-widget table{
    width:100%;
    text-align:center 
}
.day.active,.day.active.today{
    font-weight:700;
    font-size:1em;
    padding:0;
    background-color:#b33c12;
    color:#fff 
}
.picker-switch .fa.fa-clock-o{
    display:none 
}
.timepicker .separator{
    background-color:#fff0 
}
.datepicker .table-condensed>tbody>tr>td{
    padding:8px 
}
.datepicker table .fa.fa-chevron-left,.datepicker table .fa.fa-chevron-right{
    width:auto;
    float:none 
}
.glyphicon.glyphicon-map-marker{
    color:#d84866 
}
.index #header-navbar-mobile{
    padding-top:78px 
}
input.datetimepicker{
    background-color:#fff!important;
    cursor:alias!important;
    color:#000;
    opacity:1 
}
.modal-footer .pizza-total-p{
    padding-top:8px; 
	font-size: 16px;
}
.pizza-q{
    margin-top:5px 
}
@media (max-width:991px){
    .navbar-header{
        float:none 
    }
    .navbar-toggle{
        display:block 
    }
    .navbar-collapse{
        border-top:1px solid #fff0;
        box-shadow:inset 0 1px 0 rgb(255 255 255 / .1) 
    }
    .navbar-collapse.collapse{
        display:none!important 
    }
    .navbar-nav{
        float:none!important;
        margin:7.5px -15px 
    }
    .navbar-nav>li{
        float:none 
    }
    .navbar-nav>li>a{
        padding-top:10px;
        padding-bottom:10px 
    }
    .navbar-text{
        float:none;
        margin:15px 0 
    }
    .navbar-collapse.collapse.in{
        display:block!important 
    }
    .collapsing{
        overflow:hidden!important 
    }
    .logo-container{
        overflow:hidden 
    }
    #cart-wrapper{
        display:none 
    }
    #cart-wrapper-mobile{
        margin-left:25px;
        display:inline-block 
    }
    #cart-mobile-contents{
        position:fixed;
        left:0;
        top:0;
        background:#fff;
        width:100%;
        height:100%;
        overflow-y:scroll;
        z-index:9999999999 
    }
    .carousel-indicators{
        z-index:2 
    }
    #cart-wrapper-mobile .nav-pills{
        margin-top:16px 
    }
    form.contact input[type=text]{
        margin-bottom:10px;
    }
	input.form-control, .border-input {
		font-size: 16px !important;
		transform: scale(0.9);
		transform-origin: left center;
		width: 111.1%;
	}
	textarea.form-control {
		font-size: 16px !important;
		width: 100%;
		transform: none;
	}
    footer nav ul li{
        padding-left:0!important;
        padding-right:0!important;
        padding-bottom:5px!important;
        margin-left:5px!important;
        margin-right:5px!important;
        margin-bottom:5px!important 
    }
    #delivery-zone-popup input{
        margin-bottom:10px 
    }
}
.modal-footer .btn{
    margin:0 
}
html,body{
    height:100%;
    margin:0 
}
html::-webkit-scrollbar,body::-webkit-scrollbar{
    width:8px 
}
html::-webkit-scrollbar-track,body::-webkit-scrollbar-track{
    background:#aaa 
}
html::-webkit-scrollbar-thumb,body::-webkit-scrollbar-thumb{
    background-color:#f7f7f7;
    border-radius:10px 
}
html,body{
    scrollbar-width:thin;
    scrollbar-color:#d54242 #ffffff 
}
#wrap{
    min-height:100%;
    height:auto;
    margin:0 auto -73px;
    padding:0 0 73px 
}
#footer{
    height:60px;
    background-color:#f5f5f5 
}
.m-navbar-link{
    font-weight:600 
}
.halfpic-1{
    position:absolute;
    top:0;
    clip-path:polygon(0 0,50% 0,50% 100%,0 100%);
    -webkit-clip-path:polygon(0 0,50% 0,50% 100%,0 100%) 
}
.halfpic-2{
    position:absolute;
    top:0;
    clip-path:polygon(50% 0,100% 0,100% 100%,50% 100%);
    -webkit-clip-path:polygon(50% 0,100% 0,100% 100%,50% 100%) 
}
.halfpic-1,.halfpic-2 img{
    -webkit-transform:scale(.9);
    -moz-transform:scale(.9);
    -o-transform:scale(.9);
    -ms-transform:scale(.9);
    transform:scale(.9) 
}
.half-pics{
    height:20px 
}
.card .label-success{
    top:0;
    left:0;
    Z-INDEX:99999;
    position:absolute;
    top:0;
    left:0;
    border-radius:10px 0 10px 0;
    border-width:0 0 0 4px;
    border-style:solid;
    color:#fff;
    background:#97CD14;
    border-color:#97CD14 
}
.card .label-vegan{
    position:absolute;
    top:-8px;
    right:0;
    z-index:99999 
}
.card .label-vegan img{
    margin-left:5px 
}
.item-mod-select.btn-group{
    margin-bottom:15px 
}
.footer-black .container .pull-left{
    width:100% 
}
.card .title{
    font-size:1.2em 
}
.card .title a{
    hyphens:auto 
}
.card .controls .pull-right{
    min-height:40px 
}
.item-options-size.modern-options {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 15px;
}
.nutrition-block {
    margin: 12px 0;
    padding: 3px;
    border-radius: 10px;
    box-sizing: border-box;
}

.nutrition-title {
    font-size: 12px;
    font-weight: 600;
    color: #333;
    margin-bottom: 8px;
}

.nutrition-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px;
    width: 100%;
    box-sizing: border-box;
}

.nutrition-item {
    flex: 1 1 0;
    min-width: 0;
    text-align: center;
    padding: 6px 4px;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    background: #fff;
    box-sizing: border-box;
}

.nutrition-label {
    font-size: 12px;
    color: #999;
    margin-bottom: 3px;
    word-break: break-word;
}

.nutrition-value {
    font-size: 11px;
    font-weight: 600;
    color: #333;
    word-break: break-all;
}

.nutrition-note {
    font-size: 10px;
    color: #bbb;
    margin-top: 6px;
    margin-bottom: 0;
}

@media (max-width: 480px) {
    .nutrition-grid {
        gap: 4px;
    }
    .nutrition-item {
        padding: 5px 2px;
    }
    .nutrition-value {
        font-size: 10px;
    }
    .nutrition-label {
        font-size: 12px;
    }
}

/* OPTION */
.item-options-size.modern-options .radio {
    display: flex;
    align-items: center;
    padding: 12px 12px;
    border: 1px solid #e6e6e6;
    border-radius: 30px;
    background: #fafafa;
    cursor: pointer;
    transition: all 0.15s ease;
	margin: 0;
    position: relative;
}

/* HOVER */
.item-options-size.modern-options .radio:hover {
    border-color: #d2d2d2;
    background: #f6f6f6;
}

/* SELECTED */
.item-options-size.modern-options .radio.checked {
    border-color: #6f9900;
    background: #f3f9e6;
    box-shadow: 0 6px 16px rgba(111, 153, 0, 0.12);
}

/* HIDE INPUT */
.item-options-size.modern-options .radio input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

/* CUSTOM RADIO */
.item-options-size.modern-options .radio i {
    width: 18px;
    height: 18px;
    border: 2px solid #cfcfcf;
    border-radius: 50%;
    margin-right: 12px;
    flex-shrink: 0;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

/* INNER DOT */
.item-options-size.modern-options .radio.checked i {
    border-color: #6f9900;
}

.item-options-size.modern-options .radio.checked i:after {
    content: '';
    width: 8px;
    height: 8px;
    background: #6f9900;
    border-radius: 50%;
}

/* TEXT */
.item-options-size.modern-options .radio label {
    flex: 1;
    font-size: 14px;
    color: #222;
}

/* PRICE */
.item-options-size.modern-options .radio strong {
    margin-left: auto;
    font-weight: 700;
    color: #403e3e;
    white-space: nowrap;
}

/* SELECTED PRICE */
.item-options-size.modern-options .radio.checked strong {
    color: #5f8500;
}

/* ACCESSIBILITY */
.item-options-size.modern-options .radio:focus-within {
    outline: 2px solid rgba(111, 153, 0, 0.25);
    outline-offset: 2px;
}

.item-options-size.modern-options .radio:active {
    transform: scale(0.985);
    background: rgba(111, 153, 0, 0.06);
}

/* REMOVE ICONS */
.item-options-size.modern-options .icons {
    display: none !important;
}
/* Сетка для ингредиентов */
.ingredients-grid {
    display: grid;
    /* Автоматическое заполнение: минимум 180px, если не лезет — растягивается */
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 6px;
    margin-top: 10px;
}

/* Контейнер ингредиента */
.ingredient-item {
    cursor: pointer;
    position: relative;
    margin: 0;
    user-select: none; /* Чтобы текст не выделялся синим при частых кликах */
}

/* Скрываем стандартный чекбокс */
.ingredient-item input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

/* Визуальный блок (карточка) */
.ingredient-content {
    display: flex;
    align-items: center;
    padding: 6px 10px;
    background: #fafafa;
    border: 1px solid #e6e6e6;
    border-radius: 7px;
	gap: 1px;
    transition: all 0.25s ease;
    height: 100%;
}

/* Ховер эффект */
.ingredient-item:hover .ingredient-content {
    border-color: #ccc;
    background: #f0f0f0;
    transform: translateY(-1px);
}

/* Состояние: ВЫБРАНО */
.ingredient-item input:checked + .ingredient-content {
    background: #f3f9e6;
    border-color: #6f9900;
    box-shadow: 0 4px 12px rgba(111, 153, 0, 0.15);
}

/* Иконка (плюсик) */
.ingredient-icon {
    width: 18px;
    height: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #eee;
    border-radius: 50%;
    margin-right: 8px;
    font-size: 8px;
    color: #666;
    transition: all 0.3s ease;
	transform-origin: center;
    flex-shrink: 0;
}

/* Изменение иконки при выборе */
.ingredient-item input:checked + .ingredient-content .ingredient-icon {
    background: #6f9900;
    color: #fff;
   /* transform: rotate(45deg); */
	transform-origin: center;
}

/* Название ингредиента */
.ingredient-name {
    flex: 1;
    font-size: 12.5px;
    color: #66615b;
    line-height: 1.1;
	word-break: break-word;
    transition: color 0.2s;
	transform-origin: center;
}

.ingredient-item input:checked + .ingredient-content .ingredient-name {
    color: #000;
    font-weight: 600;
}

/* Цена */
.ingredient-price {
    font-size: 12px;
    color: #888;
    margin-left: 5px;
    white-space: nowrap;
}

.ingredient-item input:checked + .ingredient-content .ingredient-price {
    color: #5f8500;
}

/* Адаптивность под мобил */
@media (max-width: 480px) {
    .ingredients-grid {
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }
    
    .ingredient-content {
        padding: 8px;
        flex-direction: column;
        text-align: center;
    }

    .ingredient-icon {
        margin-right: 0;
        margin-bottom: 5px;
    }

    .ingredient-price {
        margin-left: 0;
        margin-top: 4px;
    }
}
@media screen and (max-width:768px) and (orientation:landscape){
    .card img{
        width:auto;
        max-width:52%;
        aspect-ratio:auto;
        display:block;
        margin:0 auto 
    }
}
/* Стиль для мобильного меню */
@media (max-width: 768px) {
    .navbar-nav > li > a {
        padding: 15px 20px;
        border-bottom: 1px solid #f0f0f0;
        font-size: 16px;
        color: #333;
        transition: background 0.3s;
    }

    .navbar-nav > li > a:active, 
    .navbar-nav > li > a:hover {
        background-color: #f8f9fa;
        color: #007bff;
    }
	
}
