/* Theme Start */

@font-face {
  font-family: 'FlatBrushRegular';
  font-style: normal;
  src: url(../fonts/FlatBrushRegular.woff2) format('woff2');
}

@font-face {
  font-family: 'PleinVariable';
  font-style: normal;
  src: url(../fonts/Plein-Variable.ttf) format('truetype');
}

:root {
  --primary-color: #254596;
  --secondary-color: #FBC10E;
  --tertiary-color: #FFFFFF;
  --surface-color: #FFFFFF;
  --background-1-color: #FEF9F7;
  --background-2-color: #E74E0F;
  --error-color: #E74E0F;
  --success-color: #648144;
  --warning-color: #FBC10E;
  --disabled-color: #d4d4d4;
  --on-primary-color: #FFFFFF;
  --on-secondary-color: #FFFFFF;
  --on-secondary-variant-color: #000000;
  --on-tertiary-color: #000000;
  --on-tertiary-variant-color: #D21033;
  --on-surface-color: #323232;
  --on-surface-variant-color: #254596;
  --on-background-color: #292C2E;
  --on-background-variant-color: #085687;
  --on-error-color: #FFFFFF;
  --on-success-color: #FFFFFF;
  --text-1-color: #254596;
  --text-2-color: #22272C;
  --text-3-color: #FFFFFF;
  --special-font: 'FlatBrushRegular', Helvetica, Arial, sans-serif;
  --main-font: 'PleinVariable', Helvetica, Arial, sans-serif;
  --secondary-font: 'PleinVariable', Helvetica, Arial, sans-serif;
  --shadow: 0px 4px 8px 3px rgba(0, 0, 0, 0.15), 0px 1px 3px rgba(0, 0, 0, 0.3) !important;
  --ripple: rgba(210, 16, 51, 0.3);
  --product-image-width: 156px;
  --border-radius: 12px;
  --arrow-size: 6px;
  --placeholder-color: #505050;
  --dashed: 1px dashed #254596;
  --solid: 1px solid #DEDEDE;
  --max-width: 1280px;
  --tertiary-color-rgb: 255, 255, 255;
  --max-width: 1300px;
}

/* Animations */
@keyframes pulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}

@view-transition {
  navigation: auto;
}

/* Overrides */
body {
  font-family: var(--main-font);
  font-synthesis-weight: none;
  background: var(--background-1-color) !important;
}

.wrapper {
  max-width: var(--max-width);
}

a img {
  opacity: 1;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--special-font) !important;
  color: var(--text-1-color) !important;
}

.text-primary {
  color: var(--primary-color) !important;
}

.font-special {
  font-family: var(--special-font) !important;
}

input[type="text"], input[type="email"], input[type="tel"], input[type="date"], input[type="password"], select, .form-group select {
  border: 2px solid var(--primary-color);
}

hr.dotted {
  border-top: var(--dashed);
}

.inner-banner {
    display: none;
}

.head_wraps {
    width: 20px;
    height: 20px;
    position: relative;
}

.head_wraps span {
  display: block;
  position: absolute;
  height: 4px;
  width: 100%;
  background: var(--secondary-color);
  left: 0;
  transform: rotate(0deg);
  transition: .15s ease-in-out;
}

.overlay .head_wraps span {
  background: var(--primary-color);
}


.head_wraps span:first-child {
  top: 0;
}
.head_wraps span:nth-child(2) {
  top: 8px;
}
.head_wraps span:nth-child(3) {
  top: 16px;
}

.closebtn .head_wraps span:first-child {
  top: 8px;
  width: 0;
  left: 50%;
}

.closebtn .head_wraps span:nth-child(2) {
    top: 8px;
    transform: rotate(45deg);
}

.closebtn .head_wraps span:nth-child(3) {
    top: 8px;
    transform: rotate(-45deg);
}

input[type="text"], input[type="email"], input[type="tel"], input[type="date"], input[type="password"], select {
  border-radius: 4px;
}

input:focus-within, input:focus {
  border-color: var(--text-2-color) !important;
}

.checkmark {
    border-color: var(--text-2-color);
}

span.checkmark {
    border-radius: 3px;
    background: transparent;
}

.form-check input:checked ~ .checkmark:after {
    border: solid var(--on-primary-color);
    border-width: 0px 2px 2px 0;
    left: 5px;
    top: -1px;
    width: 6px;
    height: 14px;
}

input:checked ~ .checkmark, 
.form-check-label input:checked ~ .checkmark {
    background: var(--text-2-color);
    border-color: var(--text-2-color);
}

.account-page span.required {
  z-index: 2;
}

.account-page .order-confirmation-details {
  padding-top: 15px;
}

.page.account-page .title,
.page.account-page .title strong {
  font-weight: 700;
}

.attribute-description {
    margin-bottom: 20px;
    margin-top: -15px;
}

.checkout-page .back-to-menu {
  margin-top: 15px;
}

.checkout-page .section.payment-info {
  margin-top: 0;
  margin-bottom: 3rem;
}

.page-title h1 {
  font-size: 32px;
  line-height: 1.2;
  text-transform: uppercase;
}

.checkout-page .page-title {
  margin-bottom: 0 !important;
}

.checkout-sub-title {
  display: none;
}

.checkout-page-form .form-check-label .checkmark {
    border-color: var(--text-1-color);
}

.checkout-page .back-to-menu.pt-3 {
  padding: 0 !important;
  margin-top: 15px;
  margin-left: 0 !important;

  a {
    padding-left: 0 !important;
  }
}

.checkout-page-form .form-check-label input:checked ~ .checkmark {
    border-color: var(--primary-color);
    background-color: var(--primary-color);
}

.checkout-page-form a, .checkout-page-form a:hover, .form-check-label a, .form-check-label a:hover {
  font-weight: 500;
  text-decoration: underline;
}

.checkout-page-form .dic {
  margin-bottom: 15px;
}

.discount-code {
  max-width: 100%;
}

.discount-code .btn.apply-coupon-btn {
    background-color: var(--primary-color);
}

.form-check .form-check-label {
    font-family: var(--secondary-font);
}

.checkout-page .form-check-label {
    width: auto;
}

.modal-content {
    border: none !important;
    background: transparent !important;
}

.modal .modal-content {
    background: var(--surface-color) !important;
}

.address-list-page .modal .modal-content {
    background: transparent !important;
}

.modal .close-icon {
  color: var(--text-1-color);
  font-size: 18px;
  right: 15px;
  top: 15px;
  z-index: 2;
}

#ClearAll .modal-content {
    background: transparent !important;
}

/* Store selection */
.store-selection-page .master-wrapper-content, .home-page .master-wrapper-content {
    max-width: 100% !important;
}

.store-selection-page .map_locations .map_section .map-search-box .find-form-group input {
  border-right: none;
}

.map_locations .map_section .map_search-location {
  width: 405px;
  right: 71px;
  top: -7px;
  @media (min-width: 768px) and (max-width: 991px) {
    width: 340px;
  }
}
.map_locations .map_section .map-search-box .find-form-group {
  max-width: 285px;
  @media (min-width: 992px) {
    max-width: 350px;
  }
}
.map_locations .map_section .map-search-box .find-form-group .nxg-ac-container {
  width: 100%;
}
.map_locations .map_section .map-search-box .find-form-group input {
  width: 100%;
}

.map-search-box .btn.js-nxg-ac-btn {
  padding: 6px 12px;
  width: 98px;
  border-radius: 0 calc(var(--border-radius) / 3 * 2) calc(var(--border-radius) / 3 * 2) 0;
}
/* end of Store selection */


.home-page .master-wrapper-content {
    background: var(--primary-color);
}

.home-page .lets_started {
    margin: 0 auto;
    background: none;
    width: 100%;
    max-width: var(--max-width);
    font: var(--secondary-font);
    padding: 60px 30px 60px 0;
}

.lets_started {
  min-height: calc(100vh - 146px);
} 


.lets_started .search_wrap .search_title {
  text-transform: uppercase;
  font-size: 40px;
}

.lets_started .search_box .location_icon .nxg-icon {
  transform: scale(1.3);
}

.search_box .main_title {
  font-size: 32px;
  text-transform: uppercase;
}

.search_box .label_note {
  font-size: 1rem;
}

#btnfind {
  width: auto;
}

.form-group .nxg-ac-container input[type="text"] {
    height: 100%;
}

.find-form-group input {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-right: none !important;
  opacity: 1;
}

.find-form-group .error_note {
  font-style: normal;
  left: 0;
}

.home-page .search_wrap {
    min-width: 400px;
}

#bag-image {
    padding-right: 32px;
    margin-left: -90px;
    height: auto;
}

.home-page .lets_started .search_wrap .search_title {
    text-transform: uppercase;
    font-size: 40px;
    line-height: 48px;
    color: var(--text-3-color) !important;
    margin-bottom: 30px;
    text-align: left;
}


.home-page .find_btn {
    background: var(--background-2-color);
    color: var(--primary-color);
    border-radius: 8px;
}

.home-page #btnfind {
    background: var(--background-2-color);
    color: var(--text-2-color);
    border-radius: 8px;
}


.home-page #dvselectpostcode:not(.error) input:not(:placeholder-shown) + #btnfind {
    background: var(--tertiary-color);
    color: var(--primary-color);
}

.home-page input#txtfindpostcode {
    width: 100%;
    text-align: center;
    margin-bottom: 14px;
    border-radius: 4px;
    font-size: 16px;
    padding: 12px;
    outline: none;
}

.home-page input#txtfindpostcode:focus {
    outline: 2px solid var(--text-1-color);
}

.home-page #btnusemylocation {
    margin-top: 20px;
}

    #btnusemylocation {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 45px;
}

#targetMyLocation {
    margin-left: 10px;
    height: 20px;
}

.home-page .btn-outline, .home-page .btn-outline:hover {
    color: var(--on-primary-color);
    background: var(--primary-color);
    border: var(--on-primary-color) solid 2px;
}

.error_note {
    color: var(--text-3-color);
    font-family: var(--secondary-font);
    font-size: 10px;
    margin-top: 5px;
}

.back-to-locations {
  top: 15px;
  left: 20px;
}

.back-to-locations a, .back_manu, .back-to-menu a, .back_manu a:hover, .back_manu:hover, .back-to-menu a:hover {
  color: var(--primary-color);
  font-family: var(--secondary-font);
  text-transform: uppercase;
  font-weight: 700;
  text-decoration: none;
}

.back-to-locations::before, .back-to-menu::before, .back_manu::before {
    border-right: var(--arrow-size) solid var(--primary-color);
}

// Optimistic UI Checkout
#co-orderSummary-form {
  position: relative;
}

.price-loading {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
  background: var(--background-1-color);
  opacity: 0.2;
  animation-name: fadeIn20;
  animation-duration: 0.1s;
}

.btn, .btn-outline {
    border-radius: calc(var(--border-radius) / 3 * 2);
    font-family: var(--main-font);
}

.btn-outline {
    color: var(--text-1-color);
}

    .btn.disabled, .btn-outline.disabled {
        background: var(--disabled-color) !important;
        color: var(--text-2-color);
        opacity: 1;
    }

button.btn.btn-minus.btn-number,
button.btn.btn-plus.btn-number,
button.btn.btn-minus.btn-number:focus,
button.btn.btn-plus.btn-number:focus {
    color: var(--text-1-color);
}

.form-group select {
  background: unset;
  color: var(--text-2-color);
  border-radius: 4px;
}

.map_locations .left_locations .location_title {
  font-family: var(--main-font);
  text-transform: uppercase;
  font-size: 32px;
}

.map_locations .left_locations .btn.js-nxg-ac-btn {
    background: var(--primary-color);
    margin-top: 0;
    border: 0;
    padding: 12px 32px;
}

.map_locations .left_locations .location_subtitle {
  display: none;
}

.left_locations .find-form-group {
    display: flex;
    margin: 15px 0;
}

.left_locations #btnfind {
    margin-top: 0;
}

.left_locations .d-md-none.mb-1 {
  display: block !important;
}

.search_box, .card, .eu-cookie-bar-notification, #PaymentMethod, .map_locations #storemap {
    border-radius: 0 !important;
}


/* Header */
.header {
  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3), 0px 1px 3px 1px rgba(0, 0, 0, 0.15);
}

.header_main {
  max-width: 1360px;
}

.header-links {
  display: none;
  align-items: center;
  margin-bottom: 0;
}

.header-logo img {
    width: 100%;
    max-width: 126px;
    height: auto;
}

.header-links a {
  color: var(--primary-color) !important;
  font-family: var(--secondary-font);
  font-weight: 700;
  font-size: 12px;
  line-height: 1.2;
  letter-spacing: .05em;
  padding: 6px 10px;

  @media (min-width: 1024px) {
    font-size: 14px;
  }

  @media (min-width: 1200px) {
    font-size: 16px;
  } 
}

.header-links a:hover {
    color: var(--primary-color);
}

.header-links a.order-btn {
  background-color: var(--secondary-color);
  border-radius: calc(var(--border-radius)/3*2);
  color: var(--text-3-color) !important;
  text-transform: uppercase;
  text-wrap: nowrap;
}

.header-links li {
  margin: 0;
  text-align: left;
}

.order_basket {
  white-space: nowrap;
}

@media (min-width: 992px) {
  .header-links {
    display: flex;
  }
}

@media (min-width: 1200px) {
  .header-links a {
      padding: 6px 14px;
  }
}

.overlay {
  display: flex !important;
  align-items: center;
  transition: all .3s;
  background: var(--secondary-color);
  top: 0 !important;
  transform: translateX(-101%);
}

.master-wrapper-page.open .overlay {
  transform: translateX(0);
}

.master-wrapper-page.active .overlay {
  top: 40px;
}

.overlay a.closebtn {
  top: 25px;
  width: 20px;
  right: 16px !important;
}

.overlay-content {
  top: 0;
  text-align: left;
  overflow: hidden;
}

#myNav .overlay-content ul li a {
  color: var(--text-1-color);
  text-transform: uppercase;
  line-height: 60px;
  height: 60px;
  padding: 0 20px;
  font-size: 20px;
  font-weight: 600;
  text-overflow: ellipsis;
}

#myNav .overlay-content ul li .order-btn {
    background-color: var(--primary-color);
    border-radius: calc(var(--border-radius)/3*2);
    color: var(--text-3-color) !important;
    margin-top: 20px;
}

/* Inbound */
.form-group.select::before {
    border-top: var(--arrow-size) solid var(--text-1-color);
}

.order-type-notes {
    padding-left: 4.9em;
    text-indent: -4.9em;
}

.map_locations .left_locations {
  max-width: 400px;
  scroll-behavior: smooth;
}

.map_locations .left_locations .card {
  padding: 20px;
}

    .map_locations .left_locations h3 {
      font-size: 32px;
      text-transform: uppercase;
    }

    .map_locations .left_locations .location_text a {
        font-family: var(--secondary-font);
        font-size: 12px;
        line-height: 20px;
        font-weight: bold;
    }

    .map_locations .left_locations .btn {
        font-family: var(--main-font);
        font-size: 14px;
        color: var(--text-3-color);
    }

    .map_locations .left_locations .btn-outline {
        color: var(--text-1-color);
    }

.map_locations .btn-outline {
    border: var(--text-1-color) solid 2px;
    color: var(--text-3-color);
}

.map_locations .left_locations .location_count {
    background: url(/Themes/TakaTakaUK/Content/images/location-icon.svg) no-repeat;
    width: 24px;
    height: 32px;
    font-size: 16px;
}

.note {
    font-size: 10px;
    line-height: 12px;
}

.map_locations .left_locations .btn-outline {
    position: relative;
}

.marketplace-btn img {
    max-height: 30px;
    height: initial;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
}


/* Menu */
.right-section-bg {
  top: 80px;
  border-radius: 0;
  z-index: 1;
}

.right-section-bg .border-top {
  border-top: var(--dashed) !important;
}

.right-box-footer {
  border-top: none;
}

.right-section-bg .icon-container {
  transform: scale(0.8) translateX(-8px);
}

.right-section-bg .min-order {
  margin-top: 0;
}

.cat-listing-slider .owl-carousel .owl-stage-outer {
    height: 48px;
}

.cat-listing-slider .owl-carousel .owl-nav button.owl-next, .cat-listing-slider .owl-carousel .owl-nav button.owl-prev {
  height: 45px !important;
}

.cat-listing-slider .item {
    padding: 10px 3px;
}

.cat-listing-slider button.owl-prev span, .cat-listing-slider button.owl-next span {
    border-right: 3px solid var(--primary-color);
    border-bottom: 3px solid var(--primary-color);
}

.cat-listing-slider .item a {
    font-family: var(--secondary-font) !important;
    padding: 6px 10px;
    color: var(--primary-color);
    text-transform: none;
    font-weight: 600;
    font-size: 16px;
}

.cat-listing-slider .item a.select {
  background-color: var(--secondary-color);
  border-radius: 2px;
  color: var(--primary-color);
}

.cat-listing-slider a.select:after {
    display: none;
}

.listing-description {
    color: var(--text-2-color);
    font-family: var(--secondary-font);
    font-weight: 400;
}
.listing-description .warning {
    margin-top: 5px;
    margin-bottom: 0;
}

.change {
    align-self: center;
}

.right-box-body {
    max-height: 50vh;
}

.right-box-body .pro-title, .right-box-body .pro-price {
  color: var(--primary-color);
}

    .right-box-body .pro-title-price {
        font-weight: 700;
        font-size: 16px;
    }

    
button.btn.btn-minus.btn-number-nxg, button.btn.btn-plus.btn-number-nxg, button.btn.btn-minus.btn-number-nxg:focus, button.btn.btn-plus.btn-number-nxg:focus, .qty-plus-minus .form-control.input-number, .totalcount input[type="text"] {
  color: var(--text-1-color) !important;
  font-family: var(--main-font);
  font-size: 30px;
  font-weight: 700;
  line-height: 30px;
  height: 30px;
  position: relative;
}

.qty-plus-minus .form-control.input-number, .totalcount input[type="text"] {
  top: -4px;
}

.qty-item .count {
    background: var(--text-1-color) !important;
}

.warning {
    display: flex;
    background: var(--warning-color);
    font-size: 12px;
    line-height: 12px;
    padding: 14px;
    text-align: left !important;
}

    .warning:before {
        content: "";
        background: url(/Themes/TakaTakaUK/Content/images/warning.svg) no-repeat;
        width: 20px;
        flex-shrink: 0;
    }

    .warning div {
        float: none;
    }

    .warning a {
      display: inline-block;
    }

    .warning a:hover {
      color: var(--text-1-color);
    }

.content .warning {
    float: none;
}

.order-allergies-notes, .group-order-before-info {
    display: flex;
    font-size: 14px;
    line-height: 20px;
    padding: 10px 0;
    border-top: var(--dashed);
    color: var(--text-2-color);
    font-family: var(--secondary-font);
}

    .order-allergies-notes:before, .group-order-before-info:before {
        content: "";
        background: url(/Themes/TakaTakaUK/Content/images/info.svg) no-repeat;
        width: 32px;
        flex-shrink: 0;
    }

.modal-nutrition-and-allergens .modal-title {
    font-size: 20px;
    line-height: 28px;
    padding-top: 0;
    font-weight: bold;
}

.content div span {
    color: var(--text-2-color);
    opacity: 0.6;
    font-size: 16px;
    line-height: 24px;
}

.tab button span {
  font-family: var(--special-font);
  font-size: 24px;
}


.tab button.active span {
  border-bottom: 4px solid var(--primary-color);
  color: var(--text-1-color);
  opacity: 1;
  font-weight: bold;
}

.nutrition-subtitle th {
    font-family: var(--secondary-font);
    font-weight: bold;
}

.allergens-and-nutrition-subtitle {
    border: none;
}

.allergen {
  color: var(--primary-color);
  font-size: 16px;
  font-family: var(--secondary-font);
  font-weight: bold;
}

.main-title img {
    display: none;
}

.modal .main_title,
.modal h4,
.modal h5,
.remove-items-popup .search_wrap .search_box.not_found .main_title {
    text-transform: uppercase;
    color: var(--text-1-color);
    font-size: 32px;
    line-height: 1.2;
    padding: 0 !important;
    text-align: center;
}

.modal .modal-content.remove-items-popup {
    border: none;
    background: transparent !important;
    text-align: center;
}

.modal-body-with-icon {
  padding-top: 75px;
}

.modal-icon {
  width: 94px;
  height: 94px;
  top: -50px;
  border: 1px solid #eeeeef;
  border-radius: 100%;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  background: #fff;
  font-size: 42px;
  color: var(--error-color);
}

.modal-icon,
.remove-items-popup .search_wrap .search_box .location_icon {
    box-shadow: var(--shadow);
}

.remove-items-popup .subtitle {
    font-size: 16px;
    font-family: var(--secondary-font);
    line-height: 24px;
    margin-bottom: 15px;
}

#CancelGroupOrdering .location_icon + .close, #RemoveGuestFromOrdering .location_icon + .close {
    margin-top: -50px;
}

.back-to-locations::before, .back-to-menu::before, .back_manu::before {
  margin-right: 8px;
}

.listing-page .back_manu {
  @media (min-width: 1200px) {
      padding-left: 20px;
  }

}


.listing-page .order-summary {
    display: none;
}

.listing-page .collection-header {
    border: none;
    padding: 0 0 10px 0;
    font-weight: 600;
}

.html-product-details-page body.modal-open {
  padding-right: 0 !important;
}

.html-product-details-page .sub-container {
  padding: 0 20px 65px 20px;
}

.product-wrapper {
  margin: 0 auto;
  max-width: 1280px;
  width: 100%;
}

.totalprice p {
  font-weight: 700;
}

.html-product-details-page .main-content-area {
  margin: 0;
  max-width: none;
}

.html-product-details-page .started_content {
  padding: 0;
}

.html-product-details-page .main_container {
  margin: 0;
  max-width: unset;
  width: 100%;
  padding: 0;
}

.product_content {
  margin-top: 0;
  padding-bottom: 10px;
}

.product-banner {
  padding: 20px 0;
}

.content-info .pro-content {
  float: none;
}

.account-page {
    min-height: calc(100vh - 494px);
}

.account-page .form-group input {
  padding-left: 10px !important;
}

.account-page .page-title h1 {
  @media (max-width: 767px) {
    font-size: 32px;
    line-height: 1.2;
  }
}

.account-page .heading-title {
  font-size: 21px;
}

form.my-account {
  font-family: var(--secondary-font);
  box-shadow: var(--shadow);
  padding: 20px;
}

form.form-fields.my-account {
  .form-group {
    position: relative;
  }

  .required {
    position: absolute;
    top: 6px;
    right: 14px;
    z-index: 2;
  }
}


.html-product-details-page .backmanu {
    margin: 0;
}

.pro-content {
    padding: 0;
}

.content {
  margin-top: 15px;
}

.pro-content.full-width-pro-content {
  width: 100%;
}

.mgs-button, .mgs-button:hover, .mgs-button:focus {
    color: var(--text-3-color);
    float: right;
    background-color: var(--secondary-color);
    margin-bottom: 10px;
}

    .mgs-button.btn-outline, .mgs-button.btn-outline:hover, .mgs-button.btn-outline:focus, .no-toppings-modal .btn.btn-outline {
        border-color: var(--secondary-color);
        color: var(--secondary-color);
    }

.product-list-content .main-title {
    font-size: 32px;
    line-height: 40px;
    text-transform: uppercase;
    margin-top: 15px;
}

.product-list-content .product-list {
    margin: 5px -1% 15px -1%;
}


.product-list-content .product-title, .product-list-content .product-title a {
    font-family: var(--main-font) !important;
    font-size: 16px;
    line-height: 20px;
    text-transform: none;
    word-break: break-word;
    margin-bottom: 0;
    white-space: initial;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}


.qty-item {
    color: transparent;
}

    .qty-item .count {
        right: 10px;
        bottom: 10px;
        background: var(--text-2-color);
    }



.items-box-disabled {
  opacity: 0.6;
  border: 1px solid var(--tertiary-color);
}

.product-list-content .items-box .details {
  display: inline-flex;
  flex-direction: column;
  height: 100%;
}

.product-list .items-box .description {
  color: var(--text-2-color);
  font-size: 14px;
  -webkit-line-clamp: 3;
  height: auto;
  margin-top: 10px;

  @media(min-width: 768px) {
    font-size: 12px;
  }
}

.product-list .items-box .add-info {
  margin-top: auto;
  padding-top: 5px;
}

.product-list-content .product-list .items-box {
  border: none;
  margin: 0;
  padding: 5px;
  background: none;
  position: relative;
  z-index: 0;
}

.product-list-content .product-list .items-box .box-content {
  border: 1px solid var(--tertiary-color);
}

.product-list-content .product-list .items-box a {
  border: none;
  background: var(--surface-color);
}

.product-list-content .product-list .items-box a:hover, .product-list-content .product-list .items-box a:focus {
  border: none;
  background: var(--surface-color);
  box-shadow: var(--shadow);
}

.product-list-content .product-list .items-box.select:before, .product-list-content .product-list .items-box:hover:before {
  content: "";
  position: absolute;
  top: 5px;
  left: 0;
  width: 100%;
  height: calc(100% - 10px);
  z-index: -1;
  background: var(--background-2-color);
  transform: rotate(-2deg);
  transition: all 0.2s ease;
}

.product-list-content .product-list .items-box:hover:before {
  background: var(--secondary-color);
}

.product-list-content .product-list .items-box.items-box-disabled:before {
  display: none;
}


.product-list-content .product-list .items-box a:hover, .product-list-content .product-list .items-box a:focus, .product-list-content .product-list .items-box.select a {
  box-shadow: 0px 2px 5px 0 rgba(0, 0, 0, 0.15);
}

.product-list .items-box .limited-item-caption {
  font-size: 12px;
  margin-left: 10px;
  line-height: 1.2;
}

.product-list-content .product-list .items-box .picture {
  background-size: cover;
  background-repeat: no-repeat;
}

.product-list-content .product-list .items-box {
  height: 167px;
}

.product-list-content .items-box .product-info, .product-list-content .items-box:hover .product-info {
  position: relative;
  top: 0;
  left: 0;
}

.product-list .items-box .price.actual-price, .product-list .items-box .limited-item-caption {
  font-size: 14px;
}

.product-list-content .items-box .prices {
  position: static;
}

.product-list-content .items-box .qty-item {
  position: absolute;
  right: 10px;
  top: 0;
  background: var(--secondary-color);
  font-size: 0;
  padding: 0px 5px 0px 20px;
  line-height: 20px;
}

.product-list-content .items-box .qty-item:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -9px;
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 9px 34px 0 0px;
  border-color: var(--secondary-color) transparent transparent transparent;
}

.product-list-content .items-box .qty-item .count {
  color: var(--primary-color);
  background: none !important;
  font-size: 18px;
  position: relative;
  right: 8px;
  top: 2px;
  bottom: auto;
}

.add-buttons {
    margin-top: 20px;
}

.input-group-append button, .input-group-append button:hover, .input-group-append button:focus, #NXGcanlink .input-group-append .btn {
    background: var(--secondary-color);
}

.content h2 {
  color: var(--text-1-color);
  font-size: 40px;
  line-height: 1.2;
  text-transform: uppercase;
}

.pro-content h4 {
  font-family: var(--main-font);
  font-weight: 600;
  font-size: 28px;
  margin-bottom: 16px;
  text-transform: uppercase;
}

.review-btn .btn {
    background-color: var(--primary-color);
}

.review-btn .btn.disabled {
  display: none;
}

.review-btn, .collection-header {
  padding-top: 0;
  padding-bottom: 15px;
  border: none;
}

.delete-edit-item {
    margin-left: 20px;
}

.delete-edit-item-id, .delete-edit-item-id:hover {
    color: var(--on-surface-color);
}

.delete-edit-item ~ .delete-edit-item .delete-edit-item-id {
    color: var(--on-surface-color);
}

.cell_1:not(.check_redio) label {
    padding-bottom: 12px !important;
}


.form-check input[type="radio"] + *::before {
    border-color: var(--text-2-color);
}

.form-check input[type="radio"]:checked + *::before {
    background: radial-gradient(var(--text-2-color) 0%, var(--text-2-color) 40%, transparent 50%, transparent);
    border-color: var(--text-2-color);
}

.checkout-page-form .form-check .form-check-label {
    font-family: var(--secondary-font);
}

.collection-header h6 {
    margin: 0;
}

.order-type-details {
    font-weight: bold;
}

.review-btn a.btn {
  text-align: center;
  display: flex;
  justify-content: space-between;
}
.review-btn .btn span {
    float: none;
}

.right-box-footer p:first-child {
    text-align: center;
}

/* Group Ordering */
.btn.buttonGroupOrdering, .btn.buttonGroupOrdering:hover, .btn.buttonGroupOrdering:focus {
    border-color: var(--background-2-color);
    background: var(--primary-color);
    color: var(--on-primary-color);
}


/* Account */

.customer-info-page .form-fields {
    border-radius: calc(var(--border-radius)/3);
}

.account-item .info, .account-item .name span {
    font-family: var(--secondary-font);
}

.register-warning-info {
    font-family: var(--secondary-font);
}

.my-account a, .my-account a:hover {
    color: var(--primary-color);
    font-weight: bold;
    text-decoration: underline;
}

.account-order-preview .btn-outline, .account-order-preview .btn-outline:hover,
.account-order-preview .btn-outline:focus, .btn-outline.edit-button,
.btn-outline.edit-button:hover, .btn-outline.edit-button:focus,
.order-list-page .btn-outline, .order-list-page .btn-outline:hover, .order-list-page .btn-outline:focus {
    border-color: var(--text-1-color);
    color: var(--text-1-color);
}

/* Outbound */
.cart-total .order-total {
  font-size: 21px;
  line-height: 1.2;
  font-weight: 700;
  color: var(--text-1-color);
}

.order-subtotal {
    display: none;
}

.checkout-page {
  padding: 0;
  max-width: 1200px;
  @media (min-width: 1024px) {
    padding: 0 20px;
  }
}

#deliveryForm {
  @media (min-width: 1024px) {
    width: 90%;
  }
}

.checkout-main-title {
  font-size: 32px;
  line-height: 1.2;
  text-align: center;
  text-transform: uppercase;
  padding-top: 0;

  @media (min-width: 768px) {
    text-align: left;
    margin-bottom: 1.5rem;
  }
}

.checkout-page .right-section-bg {
    margin-top: -50px;
}

.checkout-page .order-summary {
    font-size: 32px;
    line-height: 1.2;
    padding-bottom: 10px;
}

.checkout-page-form .form-control {
    border: 1px solid #DEDEDE;
}

.checkout-page .product-grid.cross-sells .item-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 30px;
}

.cross-sells {
  padding: 0 0 1rem;
}

.cross-sells .title {
  font-size: 1rem;
  line-height: 1.2;
  font-weight: 500;
  text-align: center;
  border-top: var(--dashed);
  padding-top: 1rem;
  padding-bottom: 0;
}

.cross-sells .item-box {
  position: relative;
  width: 50%;
  padding: 0 7px;

  @media (min-width: 576px) {
    width: 50%;
  }
  @media (min-width: 1024px) {
    width: 25%;
  }

}

.cross-sells .details {
  display: block;
  text-align: center;
}

.cross-sells .picture {
  margin: 0 auto;
  width: 90%;
  max-width: 135px;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  border: 2px solid var(--primary-color);
  overflow: hidden;

  img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

.cross-sells .item-box .description {
    display: inline-block;
    font-family: var(--secondary-font);
    font-size: 14px;
    line-height: 19px;
    height: 58px;
    overflow: hidden;
    text-overflow: ellipsis;
    color: var(--text-2-color);
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    padding-right: 10px;
}


.cross-sells .item-box a, .cross-sells .item-box a:hover, .cross-sells .item-box a:focus {
    display: inline-block;
    width: 100%;
    height: 100%;
    position: relative;
    text-decoration: none !important;
}

.cross-sells .product-title {
  font-size: 1rem;
  word-break: break-word;
  font-weight: 700;
  text-decoration: none !important;
  text-transform: none;
  font-family: var(--main-font) !important;
  margin-top: 5px;
}

.cross-sells .item-box .description {
    color: var(--text-2-color);
}

    .cross-sells .item-box .description .warning {
        display: none;
    }

.item-box .details .prices {
  min-height: 0;
}


.cross-sells .item-box .price.actual-price {
  font-size: 14px !important;
  font-weight: 400;
  line-height: 1.2;
}

.processing_title {
  margin-bottom: 50px;
  font-family: var(--special-font);
  text-transform: uppercase;
  font-size: 32px;
  line-height: 1.2;
}

.processing-content img {
    height: 150px;
    width: 150px;
}

.order-confirmation {
    min-height: calc(100vh - 146px);
}

.order-confirmation-content {
    max-width: 560px !important;
    margin: 0 auto;
    padding: 40px 20px;
}

.order-confirmation .card {
    box-shadow: var(--shadow);
    padding: 26px;
    text-align: left;
    margin-top: 30px;
    font-size: 14px;
    line-height: 20px;
}

.order-number {
  padding: 10px 0 15px 0;
  color: var(--primary-color);
}

.order-confirmation h4 {
    text-align: left;
    color: var(--text-1-color);
    font-family: var(--main-font);
    font-size: 20px;
    line-height: 28px;
    border-bottom: var(--dashed);
    padding-bottom: 14px;
    text-transform: uppercase;
    max-width: 100%;
}

.order-date svg, .address-col svg {
    margin-right: 5px;
    margin-bottom: -2px;
    width: 15px;
}

.address-col {
    border-bottom: var(--dashed);
    margin-bottom: 0;
}

.order-confirmation p {
  text-align: left;
  line-height: 20px;
  font-size: 1rem;
  margin-bottom: 16px;
  max-width: 100%;
}

.address-text {
  max-width: none;
}

.order-confirmation-content {
  font-size: 1rem;
}

.order-instructions-title {
    font-weight: bold;
}

.order-instructions-step {
    color: var(--primary-color);
    font-weight: bold;
}

.order-details-title {
  margin-top: 0;
  font-family: var(--special-font);
  font-size: 32px;
  text-align: center;
  line-height: 1.2;
  padding: 14px 0;
}

.order-details-account-page .order-details-title {
    border-top: none;
}

.order-confirmation h2 {
  font-size: 48px;
  line-height: 1.2;
}


.order-confirmation-details {
  font-family: var(--secondary-color);
  font-size: 16px;
  line-height: 1.2;
}

.product-quantity-text, .product-title, .product-price {
  color: var(--primary-color);
  font-weight: 700;
}

.product-title {
  text-transform: uppercase;
}

.product-quantity-text {
  width: 24px;
  text-align: left;
}

.product-list-details-item {
  padding-left: 0;
}

.order-confirmation-details .product-list-details {
    margin-top: 6px;
    margin-bottom: 14px;
    color: var(--text-2-color);
}

.cart-total td {
  padding: 10px 0 5px 10px;
}

.cart-total .order-total {
    text-transform: uppercase;
    font-family: var(--main-font);
    font-size: 21px;
    line-height: 1.2;
    font-weight: 700;
}

    .cart-total .order-total span {
        padding: 0;
        display: inline-block;
    }

input#discountcouponcode {
  border-color: var(--primary-color);
}

.opps-page h2 {
    margin-bottom: 35px;
}

.opps-page p {
    text-align: center;
}

.opps-page .save-btn {
    margin: 40px 0;
}


/* Footer */
footer {
  border-top: 4px solid var(--primary-color);
  background-color: var(--secondary-color);
  color: var(--primary-color);
  font-weight: normal;
  box-shadow: 0 100vh 0 100vh var(--secondary-color);
  width: 100%;
  font-size: 1rem;
}

.footer-copyright-section {
  font-weight: 600;
  font-size: 12px;

  a {
    white-space: nowrap;
  }
}

.footer-logo img {
  width: 137px;
  height: auto;
}

.footer_nav_bar {
  max-width: var(--max-width);
  width: fit-content;
  padding: 16px;
  display: grid;
  grid-template-columns: 1fr 1fr;

  @media (min-width: 992px) {
    display: flex;
    justify-content: space-between;
  }
}

.footer_section {
  padding: 0;
}

.footer_section a {
  padding: 0 6px;
}

.footer_nav_bar_item {
  display: inline-block !important;
}

.footer_nav_bar_item a, .footer_nav_bar_item a:hover, .footer_section a:hover, .footer_section a {
  color: var(--primary-color);
  text-decoration: none;
  font-weight: 600;
}

.footer-order-method {
  font-weight: 600;
  margin-left: 0;
  img {
    margin-right: 5px;
    width: 28px;
    height: auto;
  }
}

.footer_nav_bar_item.active a {
    font-weight: bold;
    border-bottom: thin solid var(--text-3-color);
    padding-bottom: 4px;
}

.nav-countries .footer_nav_bar_item {
    padding: 11px;
}

.footer_section a svg .icon-bg {
  stroke: var(--primary-color);
}

.footer_section a svg .icon-symbol {
  fill: var(--primary-color);
}


/* Tablet upwards */
@media (min-width: 992px) {
    .home-page .search_wrap {
        max-width: 440px;
        margin-left: -80px
    }

    .home-page .lets_started {
        padding: 30px 90px 30px 0;
    }

    .mgs-button, .mgs-button:hover, .mgs-button:focus {
        position: absolute;
        right: 15px;
        top: 25px;
        z-index: 10;
    }

    .pro-content h4:first-child {
        margin-bottom: 15px;
        margin-top: 15px;
    }

}

/* Desktop */

@media (min-width: 1200px) {

    .header-logo svg {
        max-width: 195px;
    }

    .master-wrapper-page:before {
        height: 40px;
        min-height: 40px;
        background-image: url(/Themes/TakaTakaUK/Content/images/checkerboard.png);
    }

    .home-page .lets_started {
        padding: 30px 150px 30px 0;
    }

    .lets_started {
        min-height: calc(100vh - 166px);
    }

    .order-confirmation {
        min-height: calc(100vh - 166px);
    }

    .cat-listing-slider button.owl-prev span, .cat-listing-slider button.owl-next span {
        display: none;
    }

    footer:before {
        height: 60px;
        min-height: 60px;
        background-image: url(/Themes/TakaTakaUK/Content/images/checkerboard.png);
    }
    
    .footer_section a:hover svg .icon-bg {
      fill: var(--tertiary-color);
    }
    
    .footer_section a:hover svg .icon-symbol {
      fill: var(--primary-color);
    }
    
}

/* Tablet / Mobile */

@media (max-width: 991px) {

    #navbarNav {
        align-items: center;
    }

    .master-wrapper-page.open {
        overflow: hidden;
        max-height: 100vh;
    }

    #bag-image {
        padding-right: 0;
        margin-left: 0;
    }

    .map_locations .left_locations {
        max-width: 100%;
    }

    .home-page #btnusemylocation {
      margin-bottom: 90px;
    }

    .crepe_options_part h4 {
      font-size: 24px !important;
      line-height: 1.2 !important;
    }
}

@media (max-width: 767px) {

    .home-page .lets_started {
        padding: 30px 0;
        min-height: unset;
    }

    .home-page .lets_started .search_wrap .search_title {
        font-size: 40px;
        line-height: 1.2;
        margin-bottom: 24px;
        text-align: center;
    }

    .home-page .search_wrap {
        width: 100%;
        min-width: unset;
    }

    #bag-image {
        content: url(/Themes/TakaTakaUK/Content/images/location-bag-centered.jpg);
    }

    .product-list-content .product-title, .product-list-content .product-title a {
        max-width: 264px;
    }

    .listing-description .warning {
        padding: 9px;
    }

    .nav-countries .footer_nav_bar_item {
        padding: 4px;
    }

    .review-order-mob-btn.disabled {
        color: var(--text-2-color) !important;
        background-color: var(--disabled-color) !important;
    }

    .review-order-mob-btn, .review-order-mob-btn:hover, .review-order-mob-btn:focus {
        background: var(--primary-color);
        text-align: center;
    }

    .lets_started.collect-your-order .search_wrap .search_title_update {
        line-height: 24px;
        margin-bottom: 8px;
    }

    .right-section-bg {
        background: none;
        box-shadow: none;
        padding-top: 0;
    }

    .map_locations .left_locations {
        max-height: initial;
    }

        .map_locations .left_locations .location_title:not(.location_subtitle) {
            text-align: center;
        }

    .lets_started .search_wrap .search_title {
        font-size: 40px;
        line-height: 1.1;
    }

    .cat-listing-slider {
        margin: 0 -15px;
    }

    #shopping-cart-form {
        max-height: none;
    }

    .sub-container {
        min-height: initial;
        padding: 1px 15px;
    }

    .sub-container .content {
        margin-top: 15px;
    }

    .sub-container .pro-content.full-width-pro-content hr.dotted {
        display: block;
    }

    .checkout-page .order-summary {
        display: none;
        padding: 0 0 10px 0;
    }

    .checkout-page .right-section-bg {
        margin-top: 0;
        padding: 25px 15px;
    }

    .processing_title {
        margin-bottom: 40px;
        font-size: 20px;
        line-height: 28px;
    }

    .master-wrapper-page.active .right-section-bg {
        top: 0;
    }

    .opps-page {
        padding: 30px;
    }

    .visible-xs.review-order-mobile.disabled {
        display: none !important;
    }
}

/* location not found modal */
.modal-with-icon .location_icon {
  width: 94px;
  height: 94px;
  background: var(--surface-color);
  color: var(--on-surface-variant-color);
  box-shadow: var(--shadow);
  margin: -65px auto 20px auto;
}

.modal-with-icon .location_icon i {
  font-size: 48px;
  color: #BB1D1D !important;
}

.store-selection-page .search_box {
  padding: 0;
}

.underline-text { 
  text-decoration: underline;
}

/* Ripple / bouncing burger animation */
.search-modal .search_box {
  padding: 0;
}
.circle-ripple {
  background: none;
  width: auto;
  height: auto;
  animation: none;
  border-radius: 0;
  position: relative;
  padding-top: 120px;
  margin: 0;
}
.circle-ripple::before {
  content: '';
  background: url(/Themes/TakaTakaUK/Content/images/logo.png) center center/137px 50px no-repeat transparent;
  width: 100%;
  height: 120px;
  animation: none;
  border-radius: 0;
  display: block;
  margin: 0;
  position: absolute;
  top: 0;
  animation: pulse 1s infinite;
}
.circle-ripple .loader_text {
  font-size: 32px;
  position: static;
}
#AjaxLoadingWindowModal .modal-content.search_box {
  min-height: 100px;
}
#AjaxLoadingWindowModal .modal-body {
  padding-top: 0;
  .close-icon {
    display: none;
  }
}

/* Express checkout */
.checkout-form-express .circle-ripple::before, #payment-loader .circle-ripple::before {
  background-image: url(/Themes/TakaTakaUK/Content/images/logo.png);
}

/* Theme End */

