/**
Theme Name: Cookehouse
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.04
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: cookehouse
Template: astra
*/


/* GENERAL */
.no-margin {
	margin-bottom: 0 !important;
}
body {
  position: relative;
  padding: 0;
  margin: 0;
  overflow-x: hidden;
}

body::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url('https://www.mcr-systems.co.uk/wp-content/uploads/2025/10/MCR-icon-brunswick-green.svg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  opacity: 0.02; 
  z-index: -1; 
  pointer-events: none;
}

/* DEMO FORM */
/* Base wrapper */
.ch-book-demo {
  max-width: 100%;
  margin: 0 auto;
	background-color: var(--ast-global-color-4);
	border-radius: 10px;
	padding: 2em;
}

/* YOUTUBE EMBEDS */
.video-wrapper {
  width: 100%;
  max-width: 100%;
  aspect-ratio: 16 / 9; /* keeps correct proportions */
}

.video-wrapper iframe {
  width: 100%;
  height: 100%;
  border: 0;
}

/* Rows */
.ch-row {
  display: grid;
  gap: 2rem;
  margin-bottom: 2rem;
}

.ch-row-2 {
  grid-template-columns: repeat(2, 1fr);
}

/* Fields */
.ch-field label {
  display: block;
  font-weight: 600;
  margin-bottom: 0.4rem;
}

.ch-field input,
.ch-field textarea {
  width: 100%;
  border: none;
  border-bottom: 1px solid #bbb;
  padding: 0.4rem 0;
  background: transparent;
}

.ch-field textarea {
  border: 1px solid #ddd;
  padding: 1rem;
  min-height: 140px;
  resize: vertical;
	background-color: var(--ast-global-color-4);
}

/* Checkbox groups */
.ch-checkbox-columns .wpcf7-form-control {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.5rem 1.5rem;
}

.ch-checkbox-columns label {
  font-weight: 400;
}

/* Group headings */
.ch-group-label {
  font-weight: 600;
  margin-bottom: 0.75rem;
}

/* Privacy + submit */
.ch-row-submit {
  align-items: center;
}

.ch-submit input[type="submit"] {
  width: 100%;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
  border-bottom-left-radius: 0px;
  padding: 1rem;
  background-color: var(--ast-global-color-8);
  color: var(--ast-global-color-3);
  border: none;
  font-weight: 500;
}

/* Responsive */
@media (max-width: 768px) {
  .ch-row-2 {
    grid-template-columns: 1fr;
  }

  .ch-checkbox-columns .wpcf7-form-control {
    grid-template-columns: 1fr;
  }
}

/* RECAPTCHA */
.grecaptcha-badge {
    visibility: hidden;
}

/* MENU */
.ast-mm-custom-content .uagb-heading-text  {
	display: inline-block;
}

.ast-mm-custom-content ul li{
	margin-bottom: -1em;
}

/* .ast-mm-custom-content .wp-block-uagb-image .wp-block-uagb-image__figure img {
    transition: filter 0.25s ease-in-out;
} */

/* .ast-mm-custom-content .wp-block-uagb-image .wp-block-uagb-image__figure:hover img {
    filter: grayscale(100%);
} */

/* .ast-mm-custom-content .menu-link:before, .menu-indicator:before {
font-family: "Font Awesome 6 Free";
content: "\f0da";
font-weight: 900;
margin-right: 0.4em;
display: inline-block;
color: var(--ast-global-color-1);
} */
.menu-indicator {
  position: relative;
}

.ast-mm-custom-content .menu-link:before, .menu-indicator::before {
  font-family: "Font Awesome 6 Free";
  content: "\f0da";
  font-weight: 900;
  color: var(--ast-global-color-1);
  margin-right: 0.4em;

  /* key part */
  display: inline;
}

.menu-indicator .uagb-heading-text {
  display: inline;
}
.ast-theme-transparent-header .ast-builder-menu .main-header-menu {
	color: var(--ast-global-color-0);
}
/* STICKY MENU ON HOME PAGE */
.ast-sticky-active li a .menu-text {
	color: var(--ast-global-color-0);
}
.ast-sticky-active .ast-builder-menu .main-header-menu .menu-item:hover > .menu-link, .ast-sticky-active .ast-icon svg:not([fill]) {
	color: var(--ast-global-color-0);
}

/* MOBILE MENU */
/* .mob-sub-menu {
	background-color: var(--ast-global-color-5);
	border-top: 1px solid var(--ast-global-color-4);
} */
.mob-sub-menu-2 {
	background-color: var(--ast-global-color-8);
	border-top: 1px solid var(--ast-global-color-4);
	border-radius: 10px 10px 10px 0px;
}
/* LIST TYPES */
.mcr-list {
    list-style: none; 
    padding: 0;
    margin: 0;
}

.mcr-list li {
    position: relative;
    padding-left: 1.2em; 
    margin: 0.4em 0;
}

.mcr-list li::before {
    font-family: "Font Awesome 6 Free";
    content: "\f0da"; 
    font-weight: 900;
    position: absolute;
    left: 0;
    top: 0.05em;
    display: inline-block;
    margin-right: 0.4em;
    color: var(--ast-global-color-1);
    font-size: 0.9em;
    line-height: 1;
}
.mcr-list ul li {
	    list-style: none; 
}
.mcr-list ul li::before,
.mcr-list ol li::before {
    color: var(--ast-global-color-7);
}

.mcr-list ul,
.mcr-list ol {
/*     margin-top: 0em; */
/*     padding-left: 1em; */
}



/* ARTICLES */
/*
.ast-single-post-featured-section.post-thumb img {
  object-fit: cover;
  filter: blur(5px) opacity(30%);
}
*/
.ast-separate-container .site-content .ast-single-post-featured-section + article {
  margin-top: -40%;
  z-index: 9;
  position: relative;
  border-radius: 0px;
  margin-left: 2em;
  margin-right: 2em;
}
@media only screen and (max-width: 999px) {
.ast-separate-container .site-content .ast-single-post-featured-section + article {
  margin-top: -25%;

}
}
@media only screen and (max-width: 600px) {
.ast-separate-container .site-content .ast-single-post-featured-section + article {
  margin-top: -20%;
  margin-left: 1em;
  margin-right: 1em;
}
}


/* FOOTER */
.footer-copy {
	color: var(--ast-global-color-4);
	font-size: 10px;
	font-weight: 500;
}
.uagb-block-7ccc257c ul li a{
	color: var(--ast-global-color-4);
	font-size: 12px;
	font-weight: 500;
}
.uagb-block-7ccc257c ul li a:hover{
	color: var(--ast-global-color-7);
}
.uagb-block-7ccc257c ul {
 list-style-type: none;
}
.uagb-block-7ccc257c ul li:before {
font-family: "Font Awesome 6 Free";
content: "\f0da";
font-weight: 900;
margin-right: 0.4em;
display: inline-block;
color: var(--ast-global-color-1);
}

.uagb-block-7ccc257c ul {
    list-style: none;
    padding-left: 0;
    margin-left: 0;
}

/* Base LI layout */
.uagb-block-7ccc257c ul li {
    position: relative;
    padding-left: 0.2em;
    margin: 0em 0;
}
.uagb-block-7ccc257c ul ul {
    padding-left: 1em;
}

/* TITLES */
p.mcr-title::after {
  content: "";
  display: inline-block;
  margin-left: 10px;
  width: 0;
  height: 0;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-top: 12px solid var(--ast-global-color-1);
  vertical-align: 0px;
}
h1.mcr-title::after {
  content: "";
  display: inline-block;
  margin-left: 20px;
  width: 0;
  height: 0;
  border-left: 25px solid transparent;
  border-right: 25px solid transparent;
  border-top: 22px solid var(--ast-global-color-1);
  vertical-align: 0px;
}
h1.mcr-title.wp-block-post-title,
.mcr-title .uagb-heading-text {
  display: inline; 
  position: relative;
}
h1.mcr-title.wp-block-post-title::after,
.mcr-title .uagb-heading-text::after {
  content: "";
  display: inline-block;
  margin-left: 20px;
  width: 0;
  height: 0;
  border-left: 25px solid transparent;
  border-right: 25px solid transparent;
  border-top: 20px solid var(--ast-global-color-1);
  vertical-align: 0px;
}
h2.mcr-title::after {
  content: "";
  display: inline-block;
  margin-left: 0px;
  width: 0;
  height: 0;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-top: 14px solid var(--ast-global-color-1);
  vertical-align: 0px;
}
.mcr-parent-title {
	font-size: 16px;
	font-weight: 500;
	color: var(--ast-global-color-0);
}
.image-opacity-20 {
	opacity: 0.2;
}



/* ---------------------------------------------------------
   COOKEHOUSE — MCR Arrow Shortcodes
   Includes:
   - Up/Down/Left/Right arrows
   - Brunswick/brand colour mapping
   - x-sml / sml / med / lrg / x-lrg sizing
   - Full flexbox-safe rendering
------------------------------------------------------------ */

.mcr-arrow {
    display: inline-block !important;
    width: 0 !important;
    height: 0 !important;
    margin-left: 8px;
    margin-right: 8px;
    vertical-align: middle;

    /* Prevent Spectra / flexbox collapsing the triangle */
    flex: 0 0 auto !important;
/*    align-self: center !important;*/

    /* Default colour + size */
    --mcr-arrow-colour: var(--mcr-brunswick);
    --arrow-w: 12px;
    --arrow-h: 14px;
}

/* ---------- SIZE MAPS ---------- */

.mcr-arrow-size-x-sml { --arrow-w: 8px;  --arrow-h: 8px; }
.mcr-arrow-size-sml   { --arrow-w: 10px;  --arrow-h: 10px; }
.mcr-arrow-size-med   { --arrow-w: 12px; --arrow-h: 12px; }
.mcr-arrow-size-lrg   { --arrow-w: 18px; --arrow-h: 18px; }
.mcr-arrow-size-x-lrg { --arrow-w: 24px; --arrow-h: 24px; }

/* ---------- DIRECTIONS ---------- */

.mcr-arrow--up {
    border-style: solid;
    border-width: 0 var(--arrow-w) var(--arrow-h) var(--arrow-w);
    border-color: transparent transparent var(--mcr-arrow-colour) transparent;
}

.mcr-arrow--down {
    border-style: solid;
    border-width: var(--arrow-h) var(--arrow-w) 0 var(--arrow-w);
    border-color: var(--mcr-arrow-colour) transparent transparent transparent;
}

.mcr-arrow--left {
    border-style: solid;
    border-width: var(--arrow-w) var(--arrow-h) var(--arrow-w) 0;
    border-color: transparent var(--mcr-arrow-colour) transparent transparent;
}

.mcr-arrow--right {
    border-style: solid;
    border-width: var(--arrow-w) 0 var(--arrow-w) var(--arrow-h);
    border-color: transparent transparent transparent var(--mcr-arrow-colour);
}

/* ---------- BRAND COLOURS (from MCR Guidelines) ---------- */

:root {
    --mcr-brunswick:   #1C4E4F;
    --mcr-cambridge:   #79A682;
    --mcr-celadon:     #B6D2AD;
    --mcr-seasalt:     #F6FAF9;
    --mcr-carbon:      #101418;
    --mcr-mimosa:      #F2B949;
    --mcr-gunmetal:    #142828;
    --mcr-mintcream:   #D7E7E1;
}

.mcr-arrow-colour-brunswick  { --mcr-arrow-colour: var(--mcr-brunswick); }
.mcr-arrow-colour-cambridge  { --mcr-arrow-colour: var(--mcr-cambridge); }
.mcr-arrow-colour-celadon    { --mcr-arrow-colour: var(--mcr-celadon); }
.mcr-arrow-colour-seasalt    { --mcr-arrow-colour: var(--mcr-seasalt); }
.mcr-arrow-colour-carbon     { --mcr-arrow-colour: var(--mcr-carbon); }
.mcr-arrow-colour-mimosa     { --mcr-arrow-colour: var(--mcr-mimosa); }
.mcr-arrow-colour-gunmetal   { --mcr-arrow-colour: var(--mcr-gunmetal); }
.mcr-arrow-colour-mintcream  { --mcr-arrow-colour: var(--mcr-mintcream); }

/* ---------------------------------------------------------
   Arrow alignment helpers
------------------------------------------------------------ */

.mcr-arrow-align-left {
    margin-left: 0;
    margin-right: auto;
    display: block !important;
}

.mcr-arrow-align-right {
    margin-left: auto;
    margin-right: 0;
    display: block !important;
}

.mcr-arrow-align-center {
    margin-left: auto;
    margin-right: auto;
    display: block !important;
}




.tns-carousel {
  display: flex;
  align-items: center;
  justify-content: center;
}
.tns-item {
  display: flex !important;
  align-items: center;
  justify-content: center;
}
.tns-outer {
  overflow: hidden;
}
/* CAROUSEL */ 

#center-logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  pointer-events: none; /* keeps interaction on carousel */
}

#center-logo img {
  width: 140px;
  height: 140px;
  object-fit: contain;
  filter: drop-shadow(0 0 10px rgba(0,255,200,0.4));
  animation: pulse 4s ease-in-out infinite;
}

@keyframes pulse {
  0%, 100% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.05); opacity: 0.95; }
}


#drag-container, #spin-container {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  transform-style: preserve-3d;
  transform: rotateX(-10deg);
}
#spin-container img {
  position: absolute;
  left: 0;
  top: 0;
  width: 120px;
  height: 120px;
  object-fit: contain;
  transform-style: preserve-3d;
  transition: all 0.3s ease;
  filter: brightness(1.2);
  opacity: 1;
  will-change: transform, opacity;
}
#spin-container img:hover { /* box-shadow: 0 0 25px #00ffd580;*/ transform: scale(1.15);
}
#drag-container p {
  font-family: "Poppins", sans-serif;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translate(-50%, -50%) rotateX(90deg);
  color: #dff;
  letter-spacing: 2px;
  font-size: 1.2rem;
}

@keyframes spin {
  from {
    transform: rotateY(0deg);
  }
  to {
    transform: rotateY(360deg);
  }
}
@keyframes spinRevert {
  from {
    transform: rotateY(360deg);
  }
  to {
    transform: rotateY(0deg);
  }
}
@media (max-width: 768px) {
  #spin-container img {
    width: 80px;
    height: 80px;
  }
}



  .compare-table-section {
    --bg: #f5f5f7;
    --card: #ffffff;
    --text: #1d1d1f;
    --muted: #6e6e73;
    --line: #d2d2d7;
    --line-soft: #e8e8ed;
    --accent: #f2b949;
    --accent-soft: #eef5ff;
    --success: var(--ast-global-color-3);
    --success-soft: var(--ast-global-color-8);
    --danger: var(--ast-global-color-0);
    --danger-soft: var(--ast-global-color-4);
    --section: #fbfbfd;
    --shadow: 0 20px 60px rgba(0, 0, 0, 0.08);

    margin: 40px 0;
    font-family: inherit;
    color: var(--text);
  }

  .compare-table-shell {
    background: linear-gradient(180deg, #fbfbfd 0%, #f5f5f7 100%);
    border: 0px solid var(--line-soft);
    border-radius: 28px;
    box-shadow: var(--shadow);
    overflow: hidden;
  }

  .compare-table-header {
    padding: 40px 40px 24px;
    text-align: center;
    background: linear-gradient(180deg, #ffffff 0%, #fafafc 100%);
    border-bottom: 0px solid var(--line-soft);
  }

  .compare-table-kicker {
    display: inline-block;
    margin: 0 0 12px;
    padding: 7px 14px;
    border-radius: 999px;
    background: #f2f2f5;
    color: var(--muted);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }

  .compare-table-title {
    margin: 0;
    font-size: 25px;
    line-height: 1.05;
    font-weight: 600;
/*     letter-spacing: -0.03em; */
  }

  .compare-table-subtitle {
    max-width: 760px;
    margin: 14px auto 0;
    color: var(--muted);
    font-size: 18px;
    line-height: 1.5;
    font-weight: 400;
  }

  .compare-table-scroll {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .compare-table-scroll::-webkit-scrollbar {
    height: 10px;
  }

  .compare-table-scroll::-webkit-scrollbar-thumb {
    background: #d9d9df;
    border-radius: 999px;
  }

  .compare-table {
    width: 100%;
    min-width: 1040px;
    border-collapse: separate;
    border-spacing: 0;
    background: transparent;
  }

  .compare-table th,
  .compare-table td {
    border-bottom: 1px solid var(--line-soft);
    vertical-align: middle;
  }

  .compare-table thead th {
    padding: 0;
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: blur(10px);
    position: sticky;
    top: 0;
    z-index: 3;
  }

  .compare-table thead th:first-child {
    width: 36%;
    min-width: 320px;
    text-align: left;
    border-right: 1px solid var(--line-soft);
  }

  .compare-table thead th:nth-child(2),
  .compare-table thead th:nth-child(3),
  .compare-table thead th:nth-child(4) {
    width: 21.33%;
    text-align: center;
    border-right: 1px solid var(--line-soft);
  }

  .compare-table thead th:last-child,
  .compare-table tbody td:last-child {
    border-right: 0;
  }

  .feature-col-head {
    padding: 30px 24px;
    font-size: 20px;
    font-weight: 600;
    color: var(--ast-global-color-0);
    letter-spacing: -0.01em;
  }

.plan-th {
  padding: 16px !important;
  background: #fff !important;
  vertical-align: top;
}

.compare-table thead th.plan-th {
  position: sticky;
  top: 0;
  z-index: 3;
}

.plan-media-card {
  position: relative;
  min-height: 250px;
  border-radius: 24px;
  overflow: hidden;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.16);
  isolation: isolate;
}

.plan-media-card::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 24px;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.14);
  pointer-events: none;
}

.plan-media-overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(0,0,0,0.42) 0%, rgba(0,0,0,0.36) 38%, rgba(0,0,0,0.58) 100%);
  z-index: 1;
}

.plan-media-inner {
  position: relative;
  z-index: 2;
  min-height: 250px;
  padding: 28px 22px 18px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.plan-media-brand {
  min-height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  text-align: center;
}

.plan-media-logo {
  width: auto;
  height: 50px;
  object-fit: contain;
  flex: 0 0 auto;
}

.plan-media-title {
  color: #fff;
  font-size: 34px;
  line-height: 1;
  font-weight: 600;
  letter-spacing: -0.03em;
}

.plan-price-box {
  align-self: center;
  display: inline-flex;
  align-items: baseline;
  gap: 8px;
  background: #f2b949;
  color: #184c56;
  border-radius: 14px;
  padding: 16px 22px 15px;
  box-shadow: 0 8px 20px rgba(0,0,0,0.16);
  white-space: nowrap;
}

.plan-price-box-main {
  font-size: 28px;
  line-height: 1;
  font-weight: 500;
  letter-spacing: -0.03em;
}

.plan-price-box-small {
  font-size: 14px;
  line-height: 1;
  font-weight: 600;
}
.plan-price-box-white {
  font-size: 12px;
  color: var(--ast-global-color-4);
}

.plan-starter {
  background-image: url(https://www.mcr-systems.co.uk/wp-content/uploads/2026/01/MCR-Systems-burleigh-court-recce-00594-modded.webp);
}

.plan-standard {
  background-image: url(https://www.mcr-systems.co.uk/wp-content/uploads/2025/12/pexels-elkady-7444792.webp);
}

.plan-superior {
  background-image: url(https://www.mcr-systems.co.uk/wp-content/uploads/2025/12/pexels-imin-technology-276315592-12935057.webp);
}


  .compare-table tbody td {
    padding: 16px 20px;
    font-size: 15px;
    line-height: 1.45;
    background: rgba(255,255,255,0.72);
    border-right: 1px solid var(--line-soft);
  }

  .compare-table tbody tr:hover td {
    background: rgba(255,255,255,0.96);
  }

  .compare-table tbody td:first-child {
    font-weight: 500;
    color: var(--text);
  }

  .section-row td {
    padding: 16px 20px;
    background: var(--section) !important;
    font-size: 20px !important;
    line-height: 1.2;
    font-weight: 600;
    color: var(--ast-global-color-2) !important;
  }

  .section-row td:not(:first-child) {
    color: transparent !important;
  }

  .cell-center {
    text-align: center;
    font-weight: 500;
  }

  .featured-col {
    background: linear-gradient(180deg, rgba(238,245,255,0.65) 0%, rgba(247,250,255,0.9) 100%) !important;
  }

  .icon-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 999px;
    font-size: 17px;
    line-height: 1;
    font-weight: 700;
  }

  .icon-yes {
    background: var(--success-soft);
    color: var(--success);
  }

  .icon-no {
    background: var(--danger-soft);
    color: var(--danger);
  }

  .cell-text-strong {
    color: var(--text);
    font-weight: 600;
  }

  .compare-table-footer {
    padding: 18px 24px 24px;
    text-align: center;
    font-size: 13px;
    line-height: 1.5;
    color: var(--muted);
    background: #fff;
  }

  .compare-mobile-note {
    display: none;
    padding: 16px 18px 0;
    text-align: center;
    color: var(--muted);
    font-size: 13px;
    font-weight: 500;
  }

  @media (max-width: 1024px) {
    .compare-table-title {
      font-size: 36px;
    }

    .compare-table {
      min-width: 980px;
    }
  }

  @media (max-width: 767px) {
    .compare-table-shell {
      border-radius: 22px;
    }

    .compare-table-header {
      padding: 28px 18px 18px;
    }

    .compare-table-title {
      font-size: 30px;
    }

    .compare-table-subtitle {
      font-size: 16px;
    }

    .compare-mobile-note {
      display: block;
    }

    .compare-table {
      min-width: 880px;
    }

    .feature-col-head {
      padding: 22px 16px;
    }

    .plan-card {
      padding: 22px 14px;
    }

    .plan-name {
      font-size: 22px;
    }

    .plan-price {
      font-size: 30px;
    }

    .compare-table tbody td {
      padding: 14px 14px;
      font-size: 14px;
    }
  }