/*
Theme Name: MakerCade Customs
Theme URI: https://www.makercadecustoms.com
Author: MakerCade Customs
Description: Custom WordPress/WooCommerce block theme for MakerCade Customs.
Version: 0.13.9
Requires at least: 6.5
Requires PHP: 8.1
Text Domain: makercade
*/

:root {
    --mc-bg:#080b10;
    --mc-surface:#101722;
    --mc-surface-2:#151f2d;
    --mc-text:#f4f4ef;
    --mc-muted:#9aa6b5;
    --mc-cyan:#33e6ff;
    --mc-blue:#3598ff;
    --mc-purple:#9b6cff;
    --mc-pink:#f14ba9;
    --mc-border:rgba(255,255,255,.10);
}

* { box-sizing:border-box; }

html { scroll-behavior:smooth; }

body {
    margin:0;
    background:
      radial-gradient(circle at 16% 0%,rgba(53,152,255,.10),transparent 34rem),
      radial-gradient(circle at 88% 14%,rgba(155,108,255,.08),transparent 30rem),
      var(--mc-bg);
    color:var(--mc-text);
}

a { text-underline-offset:3px; }
.mc-site-shell { overflow:clip; }

.mc-header {
    position:sticky;
    top:0;
    z-index:50;
    backdrop-filter:blur(16px);
    background:rgba(8,11,16,.91);
    border-bottom:1px solid var(--mc-border);
}
.mc-header-inner { min-height:72px; }
.mc-brand img {
    display:block;
    width:170px;
    max-height:48px;
    object-fit:contain;
}
.mc-nav a {
    text-decoration:none;
    color:var(--mc-text);
    font-weight:800;
    font-size:.77rem;
    letter-spacing:.065em;
    text-transform:uppercase;
}
.mc-nav a:hover { color:var(--mc-cyan); }

.mc-hero {
    position:relative;
    min-height:700px;
    display:flex;
    align-items:center;
    border-bottom:1px solid var(--mc-border);
}
.mc-hero-copy {
    position:relative;
    z-index:2;
    padding-right:2rem;
}
.mc-eyebrow {
    margin:0 0 .8rem;
    color:var(--mc-cyan);
    font-weight:900;
    letter-spacing:.17em;
    text-transform:uppercase;
    font-size:.78rem;
}
.mc-display {
    margin:.25rem 0 1.25rem;
    max-width:none !important;
    font-size:clamp(3rem,5.2vw,5.75rem);
    line-height:.94;
    letter-spacing:-.045em;
    word-break:normal !important;
    overflow-wrap:normal !important;
    hyphens:none !important;
}
.mc-display .mc-gradient {
    background:linear-gradient(90deg,var(--mc-pink),var(--mc-purple),var(--mc-cyan));
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
}
.mc-subhead {
    max-width:39rem;
    color:var(--mc-muted);
    font-size:clamp(1rem,1.45vw,1.25rem);
    line-height:1.55;
}
.mc-button-row { margin-top:1.8rem; }
.mc-button-row .wp-block-button__link {
    padding:1rem 1.4rem;
    border-radius:4px;
    font-weight:900;
    letter-spacing:.045em;
    text-transform:uppercase;
    transition:transform .18s ease, box-shadow .18s ease;
}
.mc-button-row .wp-block-button__link:hover {
    transform:translateY(-2px);
    box-shadow:0 12px 30px rgba(51,230,255,.16);
}
.mc-button-outline .wp-block-button__link {
    background:transparent !important;
    border:1px solid var(--mc-border);
    color:var(--mc-text) !important;
}

.mc-hero-visual {
    min-height:600px;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    position:relative;
}
.mc-hero-visual::before {
    content:"";
    position:absolute;
    width:76%;
    height:66%;
    bottom:6%;
    border-radius:50%;
    background:radial-gradient(circle,rgba(51,230,255,.17),rgba(155,108,255,.08) 40%,transparent 70%);
    filter:blur(10px);
}
.mc-hero-cabinet {
    position:relative;
    z-index:2;
    width:min(92%,520px);
    max-height:620px;
    object-fit:contain;
    filter:drop-shadow(0 28px 35px rgba(0,0,0,.55));
}

.mc-trust {
    border-bottom:1px solid var(--mc-border);
    background:rgba(255,255,255,.018);
}
.mc-trust-item { padding:1.2rem 1rem; text-align:center; }
.mc-trust-item strong { display:block; font-size:.95rem; color:var(--mc-text); }
.mc-trust-item span { display:block; margin-top:.2rem; color:var(--mc-muted); font-size:.8rem; }

.mc-section {
    padding-top:clamp(4rem,7vw,6.5rem);
    padding-bottom:clamp(4rem,7vw,6.5rem);
}
.mc-section-title {
    font-size:clamp(2.2rem,4vw,3.7rem);
    line-height:1;
    margin:.2rem 0 .9rem;
}
.mc-section-copy {
    color:var(--mc-muted);
    max-width:44rem;
    line-height:1.6;
}
.mc-card-grid { margin-top:2.4rem; }

.mc-product-card {
    min-height:410px;
    border:1px solid var(--mc-border);
    background:var(--mc-surface);
    overflow:hidden;
    display:flex;
    flex-direction:column;
}
.mc-product-image {
    height:220px;
    background:#0d131d;
    overflow:hidden;
}
.mc-product-image img {
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:transform .25s ease;
}
.mc-product-card:hover .mc-product-image img { transform:scale(1.035); }
.mc-product-card.mc-contain .mc-product-image img {
    object-fit:contain;
    background:linear-gradient(145deg,#0e1520,#182237);
    padding:14px;
}
.mc-card-copy { padding:1.35rem 1.35rem 1.5rem; }
.mc-card-copy h3 { margin:.1rem 0 .55rem; }
.mc-card-copy p { color:var(--mc-muted); line-height:1.5; }
.mc-card-copy a {
    color:var(--mc-cyan);
    text-decoration:none;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.035em;
}

.mc-process {
    border-top:1px solid var(--mc-border);
    border-bottom:1px solid var(--mc-border);
    background:rgba(255,255,255,.018);
}
.mc-step { padding:1.2rem 1.2rem 1.7rem; border-left:1px solid var(--mc-border); }
.mc-step:first-child { border-left:0; }
.mc-step-number {
    color:var(--mc-cyan);
    font-size:2.45rem;
    font-weight:950;
    line-height:1;
}
.mc-step p { color:var(--mc-muted); line-height:1.45; }

.mc-games-grid { margin-top:2.3rem; }
.mc-game-card {
    min-height:390px;
    padding:2rem;
    position:relative;
    overflow:hidden;
    border:1px solid var(--mc-border);
    display:flex;
    align-items:flex-end;
    isolation:isolate;
}
.mc-game-card::before {
    content:"";
    position:absolute;
    inset:0;
    z-index:-2;
}
.mc-game-card::after {
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    background:linear-gradient(180deg,transparent 10%,rgba(8,11,16,.30) 45%,rgba(8,11,16,.95) 100%);
}
.mc-game-msi::before {
    background:
      radial-gradient(circle at 16% 22%,rgba(51,230,255,.55) 0 2px,transparent 3px),
      radial-gradient(circle at 76% 18%,rgba(244,244,239,.75) 0 1px,transparent 2px),
      radial-gradient(circle at 62% 32%,rgba(241,75,169,.5) 0 2px,transparent 3px),
      linear-gradient(145deg,#061124,#15103b 55%,#09101c);
    background-size:54px 54px,74px 74px,93px 93px,auto;
}
.mc-game-ssa::before {
    background:
      radial-gradient(circle at 72% 28%,rgba(255,255,255,.25) 0 12px,transparent 13px),
      radial-gradient(circle at 24% 35%,rgba(255,255,255,.2) 0 9px,transparent 10px),
      linear-gradient(145deg,#0d6270,#4b3c8d 52%,#d34e91);
}
.mc-game-kicker {
    color:var(--mc-cyan);
    font-size:.74rem;
    font-weight:900;
    letter-spacing:.13em;
    text-transform:uppercase;
}
.mc-game-card h3 { font-size:clamp(1.7rem,3vw,2.7rem); margin:.35rem 0 .65rem; }
.mc-game-card p { color:#d5dbe5; max-width:31rem; line-height:1.5; }

.mc-review {
    padding:1.6rem;
    border-left:2px solid var(--mc-cyan);
    background:rgba(255,255,255,.02);
}
.mc-review p { color:var(--mc-muted); line-height:1.55; }

.mc-cta { border-top:1px solid var(--mc-border); }
.mc-footer {
    border-top:1px solid var(--mc-border);
    background:#06080c;
}
.mc-footer-logo {
    width:165px;
    max-height:110px;
    object-fit:contain;
}
.mc-footer a { color:var(--mc-muted); text-decoration:none; }
.mc-footer a:hover { color:var(--mc-cyan); }
.mc-footer-contact {
    display:flex;
    flex-direction:column;
    gap:.3rem;
    margin-top:1rem;
    color:var(--mc-muted);
    font-size:.9rem;
    line-height:1.45;
}
.mc-footer-contact a { color:var(--mc-cyan); overflow-wrap:anywhere; }


@media (max-width: 1050px) {
    .mc-display { font-size:clamp(3rem,6vw,5rem); }
    .mc-nav a { font-size:.7rem; }
}
@media (max-width: 900px) {
    .mc-header { position:static; }
    .mc-hero { min-height:auto; padding-top:3.5rem; padding-bottom:2rem; }
    .mc-hero-copy { padding-right:0; }
    .mc-display { font-size:clamp(3rem,11vw,5.5rem); }
    .mc-hero-visual { min-height:470px; margin-top:1rem; }
    .mc-hero-cabinet { max-height:470px; }
    .mc-step { border-left:0; border-top:1px solid var(--mc-border); }
    .mc-step:first-child { border-top:0; }
}
@media (max-width: 600px) {
    .mc-display { font-size:clamp(2.8rem,15vw,4.4rem); }
    .mc-brand img { width:140px; }
    .mc-product-image { height:190px; }
    .mc-game-card { min-height:330px; }
}


/* ===== MakerCade v0.4 refinements ===== */
.mc-brand-wordmark {
    display:flex;
    align-items:center;
    gap:.7rem;
    color:var(--mc-text);
    text-decoration:none;
    white-space:nowrap;
}
.mc-brand-mark {
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border:1px solid rgba(51,230,255,.45);
    background:linear-gradient(145deg,rgba(241,75,169,.18),rgba(51,230,255,.12));
    color:var(--mc-cyan);
    font-weight:950;
    font-size:.82rem;
    letter-spacing:-.05em;
    transform:skew(-4deg);
}
.mc-brand-name {
    font-size:1.2rem;
    font-weight:900;
    letter-spacing:-.025em;
}
.mc-brand-name span {
    color:var(--mc-cyan);
}
.mc-hero-cabinet {
    width:min(100%,585px);
    max-height:670px;
}
.mc-product-card {
    transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.mc-product-card:hover {
    transform:translateY(-5px);
    border-color:rgba(51,230,255,.30);
    box-shadow:0 18px 42px rgba(0,0,0,.25),0 0 30px rgba(51,230,255,.055);
}
.mc-product-card.mc-contain .mc-product-image img {
    transform:scale(1.5);
}
.mc-product-card.mc-contain:hover .mc-product-image img {
    transform:scale(1.56);
}
.mc-machine-section {
    padding-bottom:clamp(3rem,5vw,4.5rem) !important;
}
.mc-game-card {
    min-height:430px;
    background-size:cover;
    background-position:center;
    transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.mc-game-card:hover {
    transform:translateY(-5px);
    border-color:rgba(51,230,255,.35);
    box-shadow:0 20px 48px rgba(0,0,0,.32);
}
.mc-game-card::before {
    background-size:cover !important;
    background-position:center !important;
    transform:scale(1.01);
    transition:transform .35s ease;
}
.mc-game-card:hover::before {
    transform:scale(1.045);
}
.mc-game-msi::before {
    background-image:url("assets/images/maker-space-invaders-showcase.png");
}
.mc-game-ssa::before {
    background-image:url("assets/images/super-smile-arcade-showcase.png");
}
.mc-game-card::after {
    background:
      linear-gradient(180deg,rgba(5,8,13,.03) 0%,rgba(5,8,13,.18) 36%,rgba(5,8,13,.92) 76%,rgba(5,8,13,.98) 100%);
}
.mc-game-card .wp-block-group {
    position:relative;
    z-index:2;
}
.mc-game-link {
    display:inline-block;
    margin-top:.45rem;
    color:var(--mc-cyan);
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.045em;
    text-decoration:none;
    font-size:.82rem;
}
@media (max-width:900px) {
    .mc-brand-name { font-size:1.05rem; }
    .mc-hero-cabinet { max-height:520px; }
}


/* =========================================================
   MAKERCADE v0.5 — WOOCOMMERCE
   ========================================================= */

.mc-shop-hero {
    padding: clamp(3.5rem, 7vw, 6.5rem) 20px 2.75rem;
    border-bottom: 1px solid var(--mc-border);
    background:
      radial-gradient(circle at 20% 0%, rgba(51,230,255,.09), transparent 30rem),
      radial-gradient(circle at 85% 20%, rgba(155,108,255,.07), transparent 26rem);
}

.mc-shop-title {
    font-size: clamp(2.8rem, 6vw, 5.4rem);
    line-height: .95;
    margin: .25rem 0 1rem;
    letter-spacing: -.045em;
}

.mc-shop-subtitle {
    color: var(--mc-muted);
    max-width: 48rem;
    line-height: 1.6;
    font-size: 1.05rem;
}

.mc-shop-toolbar {
    padding: 1.25rem 0 1.65rem;
    border-bottom: 1px solid var(--mc-border);
    margin-bottom: 2rem;
}

.mc-shop-toolbar .wc-block-components-product-results-count,
.mc-shop-toolbar .wc-block-product-results-count,
.mc-shop-toolbar p {
    color: var(--mc-muted);
}

.mc-shop-toolbar select {
    background: var(--mc-surface);
    color: var(--mc-text);
    border: 1px solid var(--mc-border);
    border-radius: 4px;
    padding: .72rem .9rem;
}

.mc-shop-grid .wc-block-product,
.mc-shop-grid li.product {
    border: 1px solid var(--mc-border);
    background: var(--mc-surface);
    padding: 0 0 1.25rem !important;
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
    overflow: hidden;
}

.mc-shop-grid .wc-block-product:hover,
.mc-shop-grid li.product:hover {
    transform: translateY(-5px);
    border-color: rgba(51,230,255,.30);
    box-shadow: 0 18px 42px rgba(0,0,0,.28);
}

.mc-shop-grid .wc-block-components-product-image,
.mc-shop-grid .wc-block-grid__product-image {
    background: #0d131d;
    margin: 0 !important;
}

.mc-shop-grid img {
    transition: transform .25s ease;
}

.mc-shop-grid .wc-block-product:hover img,
.mc-shop-grid li.product:hover img {
    transform: scale(1.025);
}

.mc-shop-grid .wp-block-post-title,
.mc-shop-grid .wc-block-components-product-title {
    padding-left: 1rem;
    padding-right: 1rem;
    margin-top: 1rem !important;
    font-size: 1.15rem !important;
}

.mc-shop-grid .wp-block-woocommerce-product-price,
.mc-shop-grid .wc-block-components-product-price,
.mc-shop-grid .wp-block-woocommerce-product-button {
    padding-left: 1rem;
    padding-right: 1rem;
}

.mc-shop-grid .wc-block-components-product-price {
    color: var(--mc-cyan);
    font-weight: 800;
}

.mc-shop-grid .wp-block-button__link,
.mc-shop-grid button,
.mc-shop-grid .add_to_cart_button {
    border-radius: 4px !important;
    font-weight: 850 !important;
}

/* Single product */
.mc-product-page {
    padding-top: 2.25rem;
    padding-bottom: 5rem;
}

.mc-product-breadcrumbs {
    margin-bottom: 1.5rem;
    color: var(--mc-muted);
}

.mc-product-main {
    gap: clamp(2rem, 5vw, 5rem);
    align-items: flex-start;
}

.mc-product-gallery-column {
    position: sticky;
    top: 100px;
}

.mc-product-buybox {
    border: 1px solid var(--mc-border);
    background:
      linear-gradient(180deg, rgba(255,255,255,.026), rgba(255,255,255,.008)),
      var(--mc-surface);
    padding: clamp(1.4rem, 3vw, 2.25rem);
}

.mc-product-kicker {
    color: var(--mc-cyan);
    font-size: .75rem;
    letter-spacing: .15em;
    text-transform: uppercase;
    font-weight: 900;
    margin-bottom: .75rem;
}

.mc-product-title {
    font-size: clamp(2.2rem, 4.6vw, 4.5rem) !important;
    line-height: .98 !important;
    letter-spacing: -.045em !important;
    margin-top: 0 !important;
    margin-bottom: .9rem !important;
}

.mc-product-buybox .wp-block-woocommerce-product-rating {
    margin-bottom: .7rem;
}

.mc-product-price,
.mc-product-buybox .wc-block-components-product-price,
.mc-product-buybox .price {
    color: var(--mc-cyan) !important;
    font-size: clamp(1.6rem, 3vw, 2.35rem) !important;
    font-weight: 900;
    margin: .5rem 0 1rem !important;
}

.mc-product-buybox .wp-block-woocommerce-product-summary,
.mc-product-buybox .woocommerce-product-details__short-description {
    color: var(--mc-muted);
    line-height: 1.65;
}

.mc-config-label {
    margin: 1.7rem 0 .8rem;
    padding-top: 1.4rem;
    border-top: 1px solid var(--mc-border);
    font-size: .78rem;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
    color: var(--mc-text);
}

.mc-product-buybox form.cart,
.mc-product-buybox .yith-wapo-block,
.mc-product-buybox .yith-wapo-container,
.mc-product-buybox .yith-wapo-addon {
    width: 100%;
}

.mc-product-buybox label {
    color: var(--mc-text);
    font-weight: 700;
}

.mc-product-buybox input[type="text"],
.mc-product-buybox input[type="number"],
.mc-product-buybox input[type="email"],
.mc-product-buybox textarea,
.mc-product-buybox select {
    max-width: 100%;
    background: #0b1018;
    color: var(--mc-text);
    border: 1px solid var(--mc-border);
    border-radius: 4px;
    padding: .7rem .8rem;
}

.mc-product-buybox button.single_add_to_cart_button,
.mc-product-buybox .single_add_to_cart_button,
.mc-product-buybox .wp-element-button {
    background: var(--mc-cyan) !important;
    color: var(--mc-bg) !important;
    border: 0 !important;
    border-radius: 4px !important;
    padding: 1rem 1.35rem !important;
    font-weight: 900 !important;
    text-transform: uppercase;
    letter-spacing: .035em;
}

.mc-product-meta {
    color: var(--mc-muted);
    font-size: .84rem;
    margin-top: 1.2rem;
}

.mc-product-assurance {
    margin-top: 1.5rem;
    border-top: 1px solid var(--mc-border);
    padding-top: 1rem;
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: .75rem;
}

.mc-assurance-item {
    padding: .8rem;
    border: 1px solid var(--mc-border);
    background: rgba(255,255,255,.018);
}

.mc-assurance-item strong {
    display: block;
    font-size: .82rem;
}

.mc-assurance-item span {
    color: var(--mc-muted);
    font-size: .75rem;
}

.mc-product-details-wrap {
    margin-top: clamp(3.5rem, 7vw, 6rem);
    border-top: 1px solid var(--mc-border);
    padding-top: 2.5rem;
}

.mc-product-details-wrap .wc-block-components-tab-panel,
.mc-product-details-wrap .woocommerce-tabs {
    color: var(--mc-text);
}

.mc-product-details-wrap table,
.mc-product-details-wrap th,
.mc-product-details-wrap td {
    border-color: var(--mc-border) !important;
}

.mc-related-wrap {
    margin-top: clamp(3.5rem, 7vw, 6rem);
    border-top: 1px solid var(--mc-border);
    padding-top: 2.5rem;
}

/* Product gallery dark treatment */
.mc-product-gallery-column .woocommerce-product-gallery,
.mc-product-gallery-column .wp-block-woocommerce-product-image-gallery,
.mc-product-gallery-column .wc-block-product-gallery {
    background: #0c121b;
    border: 1px solid var(--mc-border);
    padding: 1rem;
}

/* Paginations */
.mc-shop-grid .wp-block-query-pagination a,
.mc-shop-grid .wp-block-query-pagination .page-numbers {
    color: var(--mc-text);
    text-decoration: none;
}

@media (max-width: 900px) {
    .mc-product-gallery-column {
        position: static;
    }
    .mc-product-main {
        gap: 1.6rem;
    }
}

@media (max-width: 600px) {
    .mc-product-assurance {
        grid-template-columns: 1fr;
    }
    .mc-product-buybox {
        padding: 1.2rem;
    }
}


/* =========================================================
   MAKERCADE v0.6 — PRODUCT CONFIGURATOR POLISH
   ========================================================= */

/* Shop spacing */
.mc-shop-hero {
    padding-bottom: 2rem;
}
.mc-section:has(.mc-shop-toolbar) {
    padding-top: 2.6rem;
}
.mc-shop-toolbar {
    margin-bottom: 1.6rem;
}
.mc-shop-grid .wp-block-woocommerce-product-image {
    max-height: 360px;
    overflow: hidden;
}
.mc-shop-grid .wp-block-woocommerce-product-image img {
    max-height: 340px;
    object-fit: contain;
}

/* Product title and gallery */
.mc-product-title {
    font-size: clamp(2rem, 3.75vw, 3.55rem) !important;
    line-height: .98 !important;
    max-width: 12ch;
}
.mc-product-gallery-column .woocommerce-product-gallery,
.mc-product-gallery-column .wp-block-woocommerce-product-image-gallery,
.mc-product-gallery-column .wc-block-product-gallery {
    background: #0d141e;
    padding: 1rem;
    border-radius: 2px;
}
.mc-product-gallery-column .woocommerce-product-gallery__image,
.mc-product-gallery-column .wc-block-product-gallery-large-image {
    background: #eef2f5;
}
.mc-product-gallery-column img {
    object-fit: contain;
}

/* Buy box */
.mc-product-buybox {
    background:
      linear-gradient(180deg, rgba(255,255,255,.018), rgba(255,255,255,.005)),
      #121b27;
}
.mc-product-buybox > *:first-child {
    margin-top: 0;
}

/* Woo/YITH normal form cleanup */
.mc-product-buybox form.cart {
    margin-top: 1rem;
}

.mc-product-buybox .variations,
.mc-product-buybox .variations tbody,
.mc-product-buybox .variations tr,
.mc-product-buybox .variations th,
.mc-product-buybox .variations td {
    display: block;
    width: 100%;
}

.mc-product-buybox .variations tr {
    display: grid;
    grid-template-columns: minmax(130px, .8fr) minmax(180px, 1.2fr);
    gap: 1rem;
    align-items: center;
    padding: .85rem 1rem;
    margin: .55rem 0;
    border: 1px solid rgba(51,230,255,.16);
    background: #0c141e;
    border-radius: 5px;
}
.mc-product-buybox .variations th,
.mc-product-buybox .variations td {
    padding: 0 !important;
}
.mc-product-buybox .variations label {
    font-size: .95rem;
    font-weight: 800;
}
.mc-product-buybox .variations select {
    width: 100%;
}

/* YITH Product Add-ons */
.mc-product-buybox .yith-wapo-block,
.mc-product-buybox .yith-wapo-container,
.mc-product-buybox .yith-wapo-addon,
.mc-product-buybox .options-container,
.mc-product-buybox .yith-wapo-option {
    color: var(--mc-text) !important;
}

.mc-product-buybox .yith-wapo-addon,
.mc-product-buybox .yith-wapo-block .yith-wapo-addon,
.mc-product-buybox .yith-wapo-container .yith-wapo-addon {
    margin: .7rem 0 !important;
    padding: 1rem !important;
    border: 1px solid rgba(51,230,255,.18) !important;
    background: #0c141e !important;
    border-radius: 5px !important;
    box-shadow: none !important;
}

.mc-product-buybox .yith-wapo-addon-title,
.mc-product-buybox .addon-header,
.mc-product-buybox .yith-wapo-addon .title,
.mc-product-buybox .yith-wapo-addon h3,
.mc-product-buybox .yith-wapo-addon h4 {
    color: var(--mc-cyan) !important;
    font-size: .93rem !important;
    font-weight: 900 !important;
    margin: 0 0 .8rem !important;
}

.mc-product-buybox .yith-wapo-addon label,
.mc-product-buybox .yith-wapo-option label,
.mc-product-buybox .yith-wapo-addon span,
.mc-product-buybox .yith-wapo-option span,
.mc-product-buybox .yith-wapo-addon p,
.mc-product-buybox .yith-wapo-option p {
    color: #dce3ec !important;
}

.mc-product-buybox .yith-wapo-addon .option-price,
.mc-product-buybox .yith-wapo-option .option-price,
.mc-product-buybox .yith-wapo-addon .price,
.mc-product-buybox .yith-wapo-option .price {
    color: var(--mc-cyan) !important;
    font-weight: 800 !important;
}

.mc-product-buybox .yith-wapo-addon input[type="checkbox"],
.mc-product-buybox .yith-wapo-addon input[type="radio"],
.mc-product-buybox .yith-wapo-option input[type="checkbox"],
.mc-product-buybox .yith-wapo-option input[type="radio"] {
    accent-color: var(--mc-cyan);
    width: 18px;
    height: 18px;
}

.mc-product-buybox .yith-wapo-addon select,
.mc-product-buybox .yith-wapo-option select,
.mc-product-buybox .yith-wapo-addon input[type="text"],
.mc-product-buybox .yith-wapo-option input[type="text"],
.mc-product-buybox .yith-wapo-addon textarea,
.mc-product-buybox .yith-wapo-option textarea {
    width: 100% !important;
    background: #09111a !important;
    color: var(--mc-text) !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    border-radius: 4px !important;
}

.mc-product-buybox .yith-wapo-addon textarea,
.mc-product-buybox .yith-wapo-option textarea {
    min-height: 92px;
}

/* Catch plugin wrappers that still force white */
.mc-product-buybox .yith-wapo-addon *,
.mc-product-buybox .yith-wapo-option * {
    box-shadow: none;
}

.mc-product-buybox .yith-wapo-addon [style*="background"],
.mc-product-buybox .yith-wapo-option [style*="background"],
.mc-product-buybox .options-container [style*="background"] {
    background-color: transparent !important;
}

/* Generic white plugin panels inside buybox */
.mc-product-buybox div[style*="background-color: #fff"],
.mc-product-buybox div[style*="background:#fff"],
.mc-product-buybox div[style*="background-color:#fff"],
.mc-product-buybox div[style*="background: #fff"] {
    background: #0c141e !important;
    color: var(--mc-text) !important;
}

/* YITH totals / summary */
.mc-product-buybox .yith-wapo-total-options,
.mc-product-buybox .yith-wapo-total-price,
.mc-product-buybox .yith-wapo-product-price,
.mc-product-buybox .yith-wapo-total-options-price,
.mc-product-buybox .price-container,
.mc-product-buybox .totals,
.mc-product-buybox .yith-wapo-total-options + div {
    background: #0b121b !important;
    color: var(--mc-text) !important;
    border: 1px solid rgba(51,230,255,.18) !important;
    border-radius: 5px !important;
    padding: 1rem !important;
}

.mc-product-buybox .yith-wapo-total-options strong,
.mc-product-buybox .yith-wapo-total-price strong,
.mc-product-buybox .yith-wapo-product-price strong,
.mc-product-buybox .price-container strong,
.mc-product-buybox .totals strong {
    color: var(--mc-text) !important;
}

.mc-product-buybox .yith-wapo-total-price,
.mc-product-buybox .yith-wapo-total-price .amount,
.mc-product-buybox .yith-wapo-total-options-price .amount,
.mc-product-buybox .price-container .amount,
.mc-product-buybox .totals .amount {
    color: var(--mc-cyan) !important;
    font-weight: 900 !important;
}

/* Qty + cart CTA */
.mc-product-buybox .woocommerce-variation-add-to-cart,
.mc-product-buybox .cart {
    display: flex;
    flex-wrap: wrap;
    gap: .8rem;
    align-items: center;
}
.mc-product-buybox .quantity {
    display: inline-flex;
    align-items: center;
}
.mc-product-buybox .quantity input.qty {
    min-width: 72px;
    height: 48px;
    text-align: center;
    background: #09111a;
    color: var(--mc-text);
    border: 1px solid rgba(255,255,255,.15);
}
.mc-product-buybox .single_add_to_cart_button {
    min-height: 48px;
    min-width: 220px;
    flex: 1 1 240px;
}

/* Native Woo notices */
.woocommerce-error,
.woocommerce-info,
.woocommerce-message,
.wc-block-components-notice-banner {
    background: #0c141e !important;
    color: var(--mc-text) !important;
    border-color: rgba(51,230,255,.24) !important;
}

/* Links inside product area */
.mc-product-buybox a {
    color: var(--mc-cyan);
}

/* Product detail tabs */
.mc-product-details-wrap .wc-tabs,
.mc-product-details-wrap .tabs {
    display: flex;
    gap: .5rem;
    flex-wrap: wrap;
    margin: 0 0 1.2rem;
    padding: 0;
}
.mc-product-details-wrap .wc-tabs li,
.mc-product-details-wrap .tabs li {
    list-style: none;
}
.mc-product-details-wrap .wc-tabs a,
.mc-product-details-wrap .tabs a {
    display: block;
    padding: .75rem 1rem;
    border: 1px solid var(--mc-border);
    text-decoration: none;
    color: var(--mc-text);
    background: #0c141e;
}
.mc-product-details-wrap .wc-tabs .active a,
.mc-product-details-wrap .tabs .active a {
    border-color: rgba(51,230,255,.38);
    color: var(--mc-cyan);
}

/* Responsive */
@media (max-width: 900px) {
    .mc-product-title {
        max-width: none;
    }
    .mc-product-buybox .variations tr {
        grid-template-columns: 1fr;
        gap: .55rem;
    }
}


/* =========================================================
   MAKERCADE v0.6.1 — YITH TOTALS SUMMARY
   ========================================================= */

.mc-product-buybox .yith-wapo-total-options,
.mc-product-buybox .yith-wapo-total-price,
.mc-product-buybox .yith-wapo-product-price,
.mc-product-buybox .yith-wapo-total-options-price,
.mc-product-buybox .yith-wapo-total-options-container,
.mc-product-buybox .yith-wapo-totals,
.mc-product-buybox .price-container,
.mc-product-buybox .totals,
.mc-product-buybox [class*="total-options"],
.mc-product-buybox [class*="total-price"] {
    background: #0b121b !important;
    color: var(--mc-text) !important;
    border: 1px solid rgba(51,230,255,.20) !important;
    border-radius: 5px !important;
    padding: 1rem 1rem !important;
    box-shadow: none !important;
}

.mc-product-buybox .yith-wapo-total-options *,
.mc-product-buybox .yith-wapo-total-price *,
.mc-product-buybox .yith-wapo-product-price *,
.mc-product-buybox .yith-wapo-total-options-price *,
.mc-product-buybox .yith-wapo-total-options-container *,
.mc-product-buybox .yith-wapo-totals *,
.mc-product-buybox .price-container *,
.mc-product-buybox .totals *,
.mc-product-buybox [class*="total-options"] *,
.mc-product-buybox [class*="total-price"] * {
    color: var(--mc-text) !important;
    background: transparent !important;
}

.mc-product-buybox .yith-wapo-total-options p,
.mc-product-buybox .yith-wapo-total-price p,
.mc-product-buybox .yith-wapo-product-price p,
.mc-product-buybox .yith-wapo-total-options-container p,
.mc-product-buybox .yith-wapo-totals p,
.mc-product-buybox .price-container p,
.mc-product-buybox .totals p {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    margin: .45rem 0 !important;
    padding: .1rem 0;
}

.mc-product-buybox .yith-wapo-total-price,
.mc-product-buybox .yith-wapo-total-price .amount,
.mc-product-buybox .yith-wapo-total-options-price .amount,
.mc-product-buybox .yith-wapo-totals .amount,
.mc-product-buybox .price-container .amount,
.mc-product-buybox .totals .amount,
.mc-product-buybox [class*="order-total"] .amount {
    color: var(--mc-cyan) !important;
    font-weight: 900 !important;
}

.mc-product-buybox .yith-wapo-total-price {
    margin-top: .8rem !important;
    padding-top: .9rem !important;
    border-top: 1px solid rgba(255,255,255,.10) !important;
}

.mc-product-buybox .yith-wapo-totals::before,
.mc-product-buybox .yith-wapo-total-options-container::before,
.mc-product-buybox .price-container::before {
    content: "Build Summary";
    display: block;
    margin-bottom: .7rem;
    color: var(--mc-cyan);
    font-size: .76rem;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
}

/* Extra catch for plugin table-based summary blocks */
.mc-product-buybox table[class*="total"],
.mc-product-buybox table[class*="price"] {
    width: 100%;
    background: #0b121b !important;
    color: var(--mc-text) !important;
    border: 1px solid rgba(51,230,255,.20) !important;
    border-collapse: separate;
    border-spacing: 0;
}
.mc-product-buybox table[class*="total"] th,
.mc-product-buybox table[class*="total"] td,
.mc-product-buybox table[class*="price"] th,
.mc-product-buybox table[class*="price"] td {
    background: transparent !important;
    color: var(--mc-text) !important;
    border-color: rgba(255,255,255,.08) !important;
    padding: .7rem .8rem !important;
}


/* =========================================================
   MAKERCADE v0.6.2 — EXACT YITH BUILD SUMMARY TARGET
   ========================================================= */

.mc-product-buybox .mc-yith-summary {
    width: 100% !important;
    margin: 1rem 0 !important;
    padding: 1rem 1.1rem !important;
    background: #0b121b !important;
    color: var(--mc-text) !important;
    border: 1px solid rgba(51,230,255,.22) !important;
    border-radius: 5px !important;
    box-shadow: none !important;
}

.mc-product-buybox .mc-yith-summary::before {
    content: "Build Summary";
    display: block;
    padding-bottom: .7rem;
    margin-bottom: .65rem;
    border-bottom: 1px solid rgba(255,255,255,.10);
    color: var(--mc-cyan);
    font-size: .76rem;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.mc-product-buybox .mc-yith-summary,
.mc-product-buybox .mc-yith-summary * {
    color: var(--mc-text) !important;
    background-color: transparent !important;
    border-color: rgba(255,255,255,.08) !important;
}

.mc-product-buybox .mc-yith-summary p,
.mc-product-buybox .mc-yith-summary > div,
.mc-product-buybox .mc-yith-summary tr {
    line-height: 1.45;
}

.mc-product-buybox .mc-yith-summary p {
    margin: .45rem 0 !important;
}

.mc-product-buybox .mc-yith-summary table {
    width: 100% !important;
    border-collapse: collapse !important;
    background: transparent !important;
}

.mc-product-buybox .mc-yith-summary th,
.mc-product-buybox .mc-yith-summary td {
    padding: .48rem .15rem !important;
    background: transparent !important;
    color: var(--mc-text) !important;
    border: 0 !important;
}

.mc-product-buybox .mc-yith-summary th:first-child,
.mc-product-buybox .mc-yith-summary td:first-child {
    font-weight: 800;
}

.mc-product-buybox .mc-yith-summary .amount,
.mc-product-buybox .mc-yith-summary [class*="total"],
.mc-product-buybox .mc-yith-summary strong:last-child {
    font-weight: 900 !important;
}

.mc-product-buybox .mc-yith-summary tr:last-child,
.mc-product-buybox .mc-yith-summary p:last-child,
.mc-product-buybox .mc-yith-summary > div:last-child {
    border-top: 1px solid rgba(255,255,255,.10) !important;
    padding-top: .7rem !important;
    margin-top: .7rem !important;
}

.mc-product-buybox .mc-yith-summary tr:last-child td:last-child,
.mc-product-buybox .mc-yith-summary tr:last-child th:last-child,
.mc-product-buybox .mc-yith-summary p:last-child .amount,
.mc-product-buybox .mc-yith-summary > div:last-child .amount {
    color: var(--mc-cyan) !important;
    font-size: 1.25rem !important;
    font-weight: 950 !important;
}


/* =========================================================
   MAKERCADE v0.6.3 — BUILD SUMMARY WIDTH/LAYOUT FIX
   ========================================================= */

.mc-product-buybox .mc-yith-summary {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
}

/* Kill any nested "Build Summary" pseudo-heading added by earlier generic rules. */
.mc-product-buybox .mc-yith-summary .yith-wapo-totals::before,
.mc-product-buybox .mc-yith-summary .yith-wapo-total-options-container::before,
.mc-product-buybox .mc-yith-summary .price-container::before,
.mc-product-buybox .mc-yith-summary [class*="total-options"]::before,
.mc-product-buybox .mc-yith-summary [class*="total-price"]::before {
    content: none !important;
    display: none !important;
}

/* Force every internal wrapper to consume the available buy-box width. */
.mc-product-buybox .mc-yith-summary > *,
.mc-product-buybox .mc-yith-summary table,
.mc-product-buybox .mc-yith-summary tbody {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
}

/* Restore proper two-column rows. */
.mc-product-buybox .mc-yith-summary table {
    table-layout: auto !important;
}

.mc-product-buybox .mc-yith-summary tr {
    display: table-row !important;
    width: 100% !important;
}

.mc-product-buybox .mc-yith-summary th,
.mc-product-buybox .mc-yith-summary td {
    display: table-cell !important;
    width: auto !important;
    vertical-align: middle !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    padding: .62rem .2rem !important;
}

.mc-product-buybox .mc-yith-summary th:first-child,
.mc-product-buybox .mc-yith-summary td:first-child {
    width: 65% !important;
    text-align: left !important;
}

.mc-product-buybox .mc-yith-summary th:last-child,
.mc-product-buybox .mc-yith-summary td:last-child {
    width: 35% !important;
    text-align: right !important;
    white-space: nowrap !important;
}

/* If YITH uses DIV/P rows instead of a table, make them two-column too. */
.mc-product-buybox .mc-yith-summary > p,
.mc-product-buybox .mc-yith-summary > div:not(.yith-wapo-totals):not(.yith-wapo-total-options-container) {
    width: 100% !important;
}

/* Don't allow price digits to wrap one character per line. */
.mc-product-buybox .mc-yith-summary .amount,
.mc-product-buybox .mc-yith-summary .woocommerce-Price-amount,
.mc-product-buybox .mc-yith-summary bdi {
    display: inline !important;
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
}


/* =========================================================
   MAKERCADE v0.6.4 — EXACT YITH TOTALS DOM
   Inspected markup:
   #yith-wapo-total-price-table
     table.all
       tr.wapo-product-price
       tr.wapo-total-options
       tr.wapo-total-order
   ========================================================= */

/* Reset any earlier generic summary behavior. */
.mc-product-buybox #yith-wapo-total-price-table,
.mc-product-buybox #yith-wapo-total-price-table table,
.mc-product-buybox #yith-wapo-total-price-table tbody,
.mc-product-buybox #yith-wapo-total-price-table tr,
.mc-product-buybox #yith-wapo-total-price-table th,
.mc-product-buybox #yith-wapo-total-price-table td {
    box-sizing: border-box !important;
    max-width: none !important;
    min-width: 0 !important;
}

/* Outer summary card */
.mc-product-buybox #yith-wapo-total-price-table {
    display: block !important;
    width: 100% !important;
    margin: 1rem 0 !important;
    padding: 1rem 1.1rem !important;
    background: #0b121b !important;
    border: 1px solid rgba(51,230,255,.22) !important;
    border-radius: 5px !important;
    color: var(--mc-text) !important;
    box-shadow: none !important;
}

/* One heading only */
.mc-product-buybox #yith-wapo-total-price-table::before {
    content: "Build Summary" !important;
    display: block !important;
    margin: 0 0 .7rem !important;
    padding: 0 0 .7rem !important;
    border-bottom: 1px solid rgba(255,255,255,.10) !important;
    color: var(--mc-cyan) !important;
    font-size: .76rem !important;
    font-weight: 900 !important;
    letter-spacing: .13em !important;
    text-transform: uppercase !important;
}

/* Suppress pseudo headings introduced by older generic selectors. */
.mc-product-buybox #yith-wapo-total-price-table table::before,
.mc-product-buybox #yith-wapo-total-price-table tbody::before,
.mc-product-buybox #yith-wapo-total-price-table tr::before,
.mc-product-buybox #yith-wapo-total-price-table th::before,
.mc-product-buybox #yith-wapo-total-price-table td::before {
    content: none !important;
    display: none !important;
}

/* Proper full-width table */
.mc-product-buybox #yith-wapo-total-price-table table.all {
    display: table !important;
    width: 100% !important;
    table-layout: fixed !important;
    margin: 0 !important;
    padding: 0 !important;
    border-collapse: collapse !important;
    background: transparent !important;
    border: 0 !important;
}

.mc-product-buybox #yith-wapo-total-price-table tbody {
    display: table-row-group !important;
    width: 100% !important;
}

.mc-product-buybox #yith-wapo-total-price-table tr {
    display: table-row !important;
    width: 100% !important;
    background: transparent !important;
    border: 0 !important;
}

/* Two sane columns */
.mc-product-buybox #yith-wapo-total-price-table th,
.mc-product-buybox #yith-wapo-total-price-table td {
    display: table-cell !important;
    padding: .72rem .15rem !important;
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
    color: var(--mc-text) !important;
    vertical-align: middle !important;
    line-height: 1.25 !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}

.mc-product-buybox #yith-wapo-total-price-table th {
    width: 62% !important;
    text-align: left !important;
    font-weight: 800 !important;
    white-space: normal !important;
}

.mc-product-buybox #yith-wapo-total-price-table td {
    width: 38% !important;
    text-align: right !important;
    white-space: nowrap !important;
    font-weight: 800 !important;
}

/* Prices never wrap character-by-character */
.mc-product-buybox #yith-wapo-total-price-table .amount,
.mc-product-buybox #yith-wapo-total-price-table .woocommerce-Price-amount,
.mc-product-buybox #yith-wapo-total-price-table bdi {
    display: inline !important;
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
}

/* Final total gets emphasis */
.mc-product-buybox #yith-wapo-total-price-table tr.wapo-total-order th,
.mc-product-buybox #yith-wapo-total-price-table tr.wapo-total-order td {
    border-bottom: 0 !important;
    padding-top: .9rem !important;
}

.mc-product-buybox #yith-wapo-total-price-table tr.wapo-total-order td,
.mc-product-buybox #yith-wapo-total-price-table tr.wapo-total-order td *,
.mc-product-buybox #yith-wapo-total-price-table tr.wapo-total-order .amount {
    color: var(--mc-cyan) !important;
    font-size: 1.22rem !important;
    font-weight: 950 !important;
}

/* Option total can be cyan too, but slightly quieter. */
.mc-product-buybox #yith-wapo-total-price-table tr.wapo-total-options td,
.mc-product-buybox #yith-wapo-total-price-table tr.wapo-total-options td * {
    color: #bfeff5 !important;
}

/* Neutralize mc-yith-summary classes left by older cached JS if they appear. */
.mc-product-buybox #yith-wapo-total-price-table.mc-yith-summary,
.mc-product-buybox #yith-wapo-total-price-table table.mc-yith-summary {
    width: 100% !important;
}
.mc-product-buybox #yith-wapo-total-price-table table.mc-yith-summary::before {
    content: none !important;
    display: none !important;
}


/* =========================================================
   MAKERCADE v0.7 — CART / CHECKOUT / ORDER FLOW
   ========================================================= */

.mc-commerce-page {
    padding-top: clamp(2.8rem, 6vw, 5rem);
    padding-bottom: clamp(4rem, 8vw, 7rem);
}

.mc-commerce-head {
    margin-bottom: 2.2rem;
}

.mc-commerce-title {
    font-size: clamp(2.6rem, 5vw, 4.8rem);
    line-height: .96;
    margin: .2rem 0 .8rem;
    letter-spacing: -.045em;
}

.mc-commerce-copy {
    color: var(--mc-muted);
    max-width: 46rem;
    line-height: 1.6;
}

/* Shared Woo block surfaces */
.mc-commerce-page .wc-block-cart,
.mc-commerce-page .wc-block-checkout,
.mc-commerce-page .woocommerce-cart-form,
.mc-commerce-page .cart_totals,
.mc-commerce-page .woocommerce-checkout-review-order,
.mc-commerce-page .woocommerce-checkout-payment,
.mc-commerce-page .woocommerce-order,
.mc-commerce-page .woocommerce-order-details,
.mc-commerce-page .woocommerce-customer-details {
    color: var(--mc-text);
}

/* CART */
.mc-commerce-page .wc-block-cart__main,
.mc-commerce-page .wc-block-cart__sidebar,
.mc-commerce-page .wc-block-components-sidebar-layout__main,
.mc-commerce-page .wc-block-components-sidebar,
.mc-commerce-page .cart_totals,
.mc-commerce-page .woocommerce-cart-form {
    background: transparent;
}

.mc-commerce-page .wc-block-cart-items,
.mc-commerce-page .shop_table {
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border: 1px solid var(--mc-border) !important;
    background: #0c141e !important;
}

.mc-commerce-page .wc-block-cart-items thead,
.mc-commerce-page .shop_table thead {
    background: #101a27 !important;
}

.mc-commerce-page .wc-block-cart-items th,
.mc-commerce-page .wc-block-cart-items td,
.mc-commerce-page .shop_table th,
.mc-commerce-page .shop_table td {
    border-color: rgba(255,255,255,.08) !important;
    color: var(--mc-text) !important;
    background: transparent !important;
}

.mc-commerce-page .wc-block-cart-item__image img,
.mc-commerce-page .product-thumbnail img {
    background: #eef2f5;
    border-radius: 3px;
    padding: .25rem;
}

.mc-commerce-page .wc-block-cart-item__product a,
.mc-commerce-page .product-name a {
    color: var(--mc-text) !important;
    font-weight: 800;
    text-decoration: none;
}

.mc-commerce-page .wc-block-cart-item__product a:hover,
.mc-commerce-page .product-name a:hover {
    color: var(--mc-cyan) !important;
}

.mc-commerce-page .wc-block-components-product-metadata,
.mc-commerce-page .wc-block-components-product-details,
.mc-commerce-page .product-name dl,
.mc-commerce-page .variation {
    color: var(--mc-muted) !important;
    font-size: .86rem;
    line-height: 1.45;
}

.mc-commerce-page .wc-block-components-product-details__name,
.mc-commerce-page .wc-block-components-product-details__value,
.mc-commerce-page .variation dt,
.mc-commerce-page .variation dd {
    color: #cfd8e4 !important;
}

.mc-commerce-page .wc-block-cart-item__prices,
.mc-commerce-page .wc-block-cart-item__total-price-and-sale-badge-wrapper,
.mc-commerce-page .product-subtotal,
.mc-commerce-page .amount {
    color: var(--mc-cyan);
    font-weight: 800;
}

/* Cart sidebar / totals */
.mc-commerce-page .wc-block-cart__sidebar,
.mc-commerce-page .wc-block-components-sidebar,
.mc-commerce-page .cart_totals {
    padding: 1.35rem !important;
    border: 1px solid var(--mc-border) !important;
    background:
      linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.006)),
      #111a26 !important;
}

.mc-commerce-page .wc-block-components-totals-wrapper,
.mc-commerce-page .wc-block-components-totals-item,
.mc-commerce-page .cart_totals table,
.mc-commerce-page .cart_totals tr,
.mc-commerce-page .cart_totals th,
.mc-commerce-page .cart_totals td {
    border-color: rgba(255,255,255,.08) !important;
    color: var(--mc-text) !important;
    background: transparent !important;
}

.mc-commerce-page .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.mc-commerce-page .order-total .amount {
    color: var(--mc-cyan) !important;
    font-size: 1.25rem;
    font-weight: 950;
}

.mc-commerce-page .wc-block-cart__submit-button,
.mc-commerce-page .checkout-button,
.mc-commerce-page .wc-block-components-checkout-place-order-button {
    min-height: 52px;
    border-radius: 4px !important;
    background: var(--mc-cyan) !important;
    color: var(--mc-bg) !important;
    font-weight: 950 !important;
    text-transform: uppercase;
    letter-spacing: .035em;
    border: 0 !important;
}

.mc-commerce-page .wc-block-cart__submit-button:hover,
.mc-commerce-page .checkout-button:hover,
.mc-commerce-page .wc-block-components-checkout-place-order-button:hover {
    filter: brightness(1.05);
    transform: translateY(-1px);
}

/* Coupons */
.mc-commerce-page .wc-block-components-totals-coupon__input,
.mc-commerce-page .coupon input,
.mc-commerce-page .wc-block-components-text-input input {
    background: #09111a !important;
    color: var(--mc-text) !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    border-radius: 4px !important;
}

.mc-commerce-page .wc-block-components-totals-coupon__button,
.mc-commerce-page .coupon button {
    background: #162332 !important;
    color: var(--mc-text) !important;
    border: 1px solid rgba(51,230,255,.20) !important;
    border-radius: 4px !important;
    font-weight: 800 !important;
}

/* Quantity */
.mc-commerce-page .wc-block-components-quantity-selector,
.mc-commerce-page .quantity {
    background: #09111a !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    color: var(--mc-text) !important;
}

.mc-commerce-page .wc-block-components-quantity-selector input,
.mc-commerce-page .wc-block-components-quantity-selector button,
.mc-commerce-page .quantity input {
    color: var(--mc-text) !important;
    background: transparent !important;
}

/* CHECKOUT */
.mc-commerce-page .wc-block-checkout__main,
.mc-commerce-page .woocommerce-checkout .col2-set,
.mc-commerce-page .woocommerce-billing-fields,
.mc-commerce-page .woocommerce-shipping-fields {
    color: var(--mc-text);
}

.mc-commerce-page .wc-block-components-checkout-step,
.mc-commerce-page .woocommerce-billing-fields,
.mc-commerce-page .woocommerce-shipping-fields,
.mc-commerce-page #order_review,
.mc-commerce-page #payment {
    margin-bottom: 1rem;
    padding: 1.25rem !important;
    border: 1px solid var(--mc-border) !important;
    background: #0c141e !important;
    border-radius: 4px;
}

.mc-commerce-page .wc-block-components-checkout-step__heading h2,
.mc-commerce-page .woocommerce-billing-fields h3,
.mc-commerce-page .woocommerce-shipping-fields h3,
.mc-commerce-page #order_review_heading {
    color: var(--mc-text) !important;
    font-weight: 900 !important;
}

.mc-commerce-page .wc-block-components-form .wc-block-components-text-input input,
.mc-commerce-page .wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control input,
.mc-commerce-page .woocommerce-checkout input.input-text,
.mc-commerce-page .woocommerce-checkout textarea,
.mc-commerce-page .woocommerce-checkout select {
    background: #09111a !important;
    color: var(--mc-text) !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    border-radius: 4px !important;
}

.mc-commerce-page .wc-block-components-form label,
.mc-commerce-page .woocommerce-checkout label {
    color: #d9e0e8 !important;
}

.mc-commerce-page .wc-block-components-combobox .wc-block-components-combobox-control label,
.mc-commerce-page .wc-block-components-text-input label {
    color: var(--mc-muted) !important;
}

/* Order summary */
.mc-commerce-page .wc-block-checkout__sidebar,
.mc-commerce-page .wc-block-components-sidebar {
    align-self: flex-start;
}

.mc-commerce-page .wc-block-components-order-summary,
.mc-commerce-page .wc-block-components-order-summary-item,
.mc-commerce-page .woocommerce-checkout-review-order-table {
    color: var(--mc-text) !important;
    background: transparent !important;
    border-color: rgba(255,255,255,.08) !important;
}

.mc-commerce-page .wc-block-components-order-summary-item__description,
.mc-commerce-page .wc-block-components-order-summary-item__individual-price,
.mc-commerce-page .wc-block-components-order-summary-item__quantity {
    color: var(--mc-muted) !important;
}

.mc-commerce-page .wc-block-components-order-summary-item__total-price,
.mc-commerce-page .woocommerce-checkout-review-order-table .amount {
    color: var(--mc-cyan) !important;
    font-weight: 850;
}

/* Payment */
.mc-commerce-page .wc-block-checkout__payment-method,
.mc-commerce-page .wc-block-components-radio-control-accordion-option,
.mc-commerce-page .payment_methods,
.mc-commerce-page #payment {
    background: #0b121b !important;
    color: var(--mc-text) !important;
}

.mc-commerce-page .wc-block-components-radio-control-accordion-option,
.mc-commerce-page .payment_methods li {
    border-color: rgba(255,255,255,.08) !important;
}

.mc-commerce-page .wc-block-components-radio-control__label,
.mc-commerce-page .payment_methods label {
    color: var(--mc-text) !important;
    font-weight: 750;
}

.mc-commerce-page .payment_box,
.mc-commerce-page .wc-block-components-radio-control-accordion-content {
    background: #101a27 !important;
    color: var(--mc-muted) !important;
}

.mc-commerce-page input[type="radio"],
.mc-commerce-page input[type="checkbox"] {
    accent-color: var(--mc-cyan);
}

/* Terms / privacy / ancillary */
.mc-commerce-page .wc-block-checkout__terms,
.mc-commerce-page .woocommerce-privacy-policy-text,
.mc-commerce-page .woocommerce-terms-and-conditions-wrapper,
.mc-commerce-page .wc-block-components-checkbox__label {
    color: var(--mc-muted) !important;
    line-height: 1.5;
}

.mc-commerce-page a {
    color: var(--mc-cyan);
}

/* Empty cart */
.mc-commerce-page .wp-block-woocommerce-empty-cart-block,
.mc-commerce-page .cart-empty {
    padding: 3rem 1.5rem;
    border: 1px solid var(--mc-border);
    background: #0c141e;
    text-align: center;
}

/* Order received / thank you */
.mc-commerce-page .woocommerce-order-overview {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: .8rem;
    padding: 0 !important;
    margin: 1.5rem 0 !important;
}

.mc-commerce-page .woocommerce-order-overview li {
    list-style: none;
    margin: 0 !important;
    padding: 1rem !important;
    border: 1px solid var(--mc-border) !important;
    background: #0c141e;
    color: var(--mc-muted);
}

.mc-commerce-page .woocommerce-order-overview strong {
    display: block;
    margin-top: .35rem;
    color: var(--mc-text);
}

.mc-commerce-page .woocommerce-order-details,
.mc-commerce-page .woocommerce-customer-details {
    padding: 1.25rem;
    border: 1px solid var(--mc-border);
    background: #0c141e;
    margin-top: 1rem;
}

.mc-commerce-page .woocommerce-order-details table {
    width: 100%;
    border-color: rgba(255,255,255,.08) !important;
}

.mc-commerce-page .woocommerce-order-details th,
.mc-commerce-page .woocommerce-order-details td {
    color: var(--mc-text) !important;
    border-color: rgba(255,255,255,.08) !important;
}

/* Notices */
.mc-commerce-page .woocommerce-message,
.mc-commerce-page .woocommerce-info,
.mc-commerce-page .woocommerce-error,
.mc-commerce-page .wc-block-components-notice-banner {
    border: 1px solid rgba(51,230,255,.25) !important;
    background: #0c141e !important;
    color: var(--mc-text) !important;
}

/* Responsive */
@media (max-width: 900px) {
    .mc-commerce-page .woocommerce-order-overview {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}

@media (max-width: 600px) {
    .mc-commerce-page {
        padding-left: 14px;
        padding-right: 14px;
    }

    .mc-commerce-page .woocommerce-order-overview {
        grid-template-columns: 1fr;
    }

    .mc-commerce-page .wc-block-cart__sidebar,
    .mc-commerce-page .wc-block-components-sidebar,
    .mc-commerce-page .cart_totals {
        padding: 1rem !important;
    }
}


/* =========================================================
   MAKERCADE v0.7.1 — CHECKOUT DELIVERY METHOD FIX
   ========================================================= */

.mc-commerce-page .wc-block-checkout__shipping-method-option,
.mc-commerce-page .wc-block-checkout__shipping-method-option button,
.mc-commerce-page .wc-block-components-radio-control__option,
.mc-commerce-page .wc-block-components-radio-control-accordion-option,
.mc-commerce-page .wc-block-components-radio-control-accordion-option > div,
.mc-commerce-page .wc-block-components-shipping-rates-control__package,
.mc-commerce-page .wc-block-components-shipping-rates-control__package-items {
    background: #0c141e !important;
    color: var(--mc-text) !important;
    border-color: rgba(255,255,255,.10) !important;
    box-shadow: none !important;
}

/* Woo's Ship / Local Pickup segmented control */
.mc-commerce-page .wc-block-checkout__shipping-option,
.mc-commerce-page .wc-block-checkout__shipping-option button,
.mc-commerce-page [class*="shipping-option"] {
    background: #0c141e !important;
    color: var(--mc-text) !important;
    border-color: rgba(255,255,255,.12) !important;
    box-shadow: none !important;
}

/* Common button states inside Delivery */
.mc-commerce-page .wc-block-checkout__shipping-method-option button,
.mc-commerce-page .wc-block-checkout__shipping-option button,
.mc-commerce-page [class*="shipping-option"] button {
    min-height: 48px;
    border-radius: 4px !important;
    background: #111b28 !important;
    color: var(--mc-text) !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    font-weight: 800 !important;
}

/* Selected delivery method */
.mc-commerce-page .wc-block-checkout__shipping-method-option.is-selected,
.mc-commerce-page .wc-block-checkout__shipping-method-option[aria-checked="true"],
.mc-commerce-page .wc-block-components-radio-control__option-checked,
.mc-commerce-page .wc-block-components-radio-control__option:has(input:checked),
.mc-commerce-page [class*="shipping-option"]:has(input:checked),
.mc-commerce-page [class*="shipping-option"] button[aria-pressed="true"] {
    background: rgba(51,230,255,.08) !important;
    border-color: rgba(51,230,255,.42) !important;
    color: var(--mc-text) !important;
}

.mc-commerce-page .wc-block-checkout__shipping-method-option.is-selected *,
.mc-commerce-page .wc-block-components-radio-control__option:has(input:checked) *,
.mc-commerce-page [class*="shipping-option"]:has(input:checked) * {
    color: var(--mc-text) !important;
}

/* Disabled/unavailable shipping choice: dark, muted, still readable */
.mc-commerce-page .wc-block-checkout__shipping-method-option:disabled,
.mc-commerce-page .wc-block-checkout__shipping-method-option[aria-disabled="true"],
.mc-commerce-page .wc-block-checkout__shipping-option button:disabled,
.mc-commerce-page [class*="shipping-option"] button:disabled,
.mc-commerce-page [class*="shipping-option"][aria-disabled="true"] {
    background: #0a1119 !important;
    color: #6f7c8b !important;
    border-color: rgba(255,255,255,.07) !important;
    opacity: 1 !important;
}

.mc-commerce-page .wc-block-checkout__shipping-method-option:disabled *,
.mc-commerce-page .wc-block-checkout__shipping-method-option[aria-disabled="true"] *,
.mc-commerce-page [class*="shipping-option"] button:disabled *,
.mc-commerce-page [class*="shipping-option"][aria-disabled="true"] * {
    color: #6f7c8b !important;
    fill: #6f7c8b !important;
}

/* Shipping/pickup icons */
.mc-commerce-page .wc-block-checkout__shipping-method-option svg,
.mc-commerce-page [class*="shipping-option"] svg {
    color: var(--mc-cyan) !important;
    fill: currentColor !important;
}

/* Address dropdowns should stay dark as well */
.mc-commerce-page .wc-block-components-combobox-control,
.mc-commerce-page .wc-block-components-combobox-control input,
.mc-commerce-page .wc-block-components-country-input,
.mc-commerce-page .wc-block-components-address-form select {
    background: #09111a !important;
    color: var(--mc-text) !important;
    border-color: rgba(255,255,255,.14) !important;
}


/* =========================================================
   MAKERCADE v0.8 — COLLECTION / CATEGORY ARCHIVES
   ========================================================= */

.mc-collection-hero {
    padding: clamp(3.5rem, 7vw, 6.25rem) 20px 3rem;
    border-bottom: 1px solid var(--mc-border);
    background:
        radial-gradient(circle at 12% 0%, rgba(51,230,255,.11), transparent 29rem),
        radial-gradient(circle at 88% 14%, rgba(155,108,255,.09), transparent 28rem),
        linear-gradient(180deg, rgba(255,255,255,.012), transparent);
}

.mc-collection-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
    gap: clamp(2rem, 5vw, 5rem);
    align-items: center;
}

.mc-collection-title {
    margin: .3rem 0 1rem;
    font-size: clamp(3rem, 6vw, 5.8rem);
    line-height: .94;
    letter-spacing: -.05em;
    max-width: 10ch;
}

.mc-collection-title .mc-gradient {
    background: linear-gradient(90deg, var(--mc-pink), var(--mc-purple), var(--mc-cyan));
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.mc-collection-copy {
    max-width: 46rem;
    color: var(--mc-muted);
    line-height: 1.65;
    font-size: 1.06rem;
}

.mc-collection-actions {
    margin-top: 1.6rem;
    display: flex;
    gap: .75rem;
    flex-wrap: wrap;
}

.mc-collection-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: .8rem 1rem;
    border-radius: 4px;
    font-size: .8rem;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
    text-decoration: none;
}

.mc-collection-actions .primary {
    background: var(--mc-cyan);
    color: var(--mc-bg);
}

.mc-collection-actions .secondary {
    background: transparent;
    border: 1px solid var(--mc-border);
    color: var(--mc-text);
}

.mc-collection-visual {
    min-height: 390px;
    border: 1px solid var(--mc-border);
    background: linear-gradient(145deg,#101925,#182239);
    position: relative;
    overflow: hidden;
}

.mc-collection-visual::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
      linear-gradient(rgba(255,255,255,.022) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255,255,255,.022) 1px, transparent 1px);
    background-size: 24px 24px;
}

.mc-collection-visual img {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    min-height: 390px;
    object-fit: contain;
    padding: 1.25rem;
    filter: drop-shadow(0 24px 28px rgba(0,0,0,.45));
}

.mc-collection-strip {
    border-bottom: 1px solid var(--mc-border);
    background: rgba(255,255,255,.018);
}

.mc-collection-strip .wp-block-columns {
    margin-bottom: 0;
}

.mc-collection-strip-item {
    padding: 1rem;
    text-align: center;
}

.mc-collection-strip-item strong {
    display: block;
    color: var(--mc-text);
    font-size: .9rem;
}

.mc-collection-strip-item span {
    display: block;
    margin-top: .18rem;
    color: var(--mc-muted);
    font-size: .78rem;
}

.mc-collection-body {
    padding-top: clamp(3rem, 6vw, 5rem);
    padding-bottom: clamp(4rem, 8vw, 6rem);
}

.mc-collection-toolbar {
    display: flex;
    gap: 1rem;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 1.4rem;
    padding-bottom: 1.2rem;
    border-bottom: 1px solid var(--mc-border);
}

.mc-collection-toolbar .wc-block-components-product-results-count,
.mc-collection-toolbar .wc-block-product-results-count {
    color: var(--mc-muted);
}

.mc-collection-toolbar select {
    background: #0c141e !important;
    color: var(--mc-text) !important;
    border: 1px solid var(--mc-border) !important;
    border-radius: 4px;
    padding: .7rem .9rem;
}

.mc-collection-grid .wc-block-product,
.mc-collection-grid li.product {
    min-height: 100%;
    border: 1px solid var(--mc-border);
    background: var(--mc-surface);
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
    overflow: hidden;
}

.mc-collection-grid .wc-block-product:hover,
.mc-collection-grid li.product:hover {
    transform: translateY(-5px);
    border-color: rgba(51,230,255,.30);
    box-shadow: 0 18px 42px rgba(0,0,0,.28);
}

.mc-collection-grid .wp-block-woocommerce-product-image {
    background: #0d141e;
    min-height: 280px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.mc-collection-grid .wp-block-woocommerce-product-image img {
    width: 100%;
    max-height: 320px;
    object-fit: contain !important;
    padding: 1rem;
}

.mc-collection-grid .wp-block-post-title {
    margin: 1rem 1rem .45rem !important;
    font-size: 1.18rem !important;
    line-height: 1.15;
}

.mc-collection-grid .wp-block-post-title a {
    color: var(--mc-text);
    text-decoration: none;
}

.mc-collection-grid .wp-block-post-title a:hover {
    color: var(--mc-cyan);
}

.mc-collection-grid .wp-block-woocommerce-product-price {
    margin: 0 1rem .7rem !important;
    color: var(--mc-cyan);
    font-weight: 850;
}

.mc-collection-grid .wp-block-woocommerce-product-button {
    margin: 0 1rem 1.15rem !important;
}

.mc-collection-grid .wp-block-woocommerce-product-button .wp-element-button {
    width: 100%;
    border-radius: 4px !important;
    background: #162331 !important;
    color: var(--mc-text) !important;
    border: 1px solid rgba(51,230,255,.20) !important;
    font-weight: 850 !important;
    text-transform: uppercase;
    letter-spacing: .035em;
}

.mc-collection-grid .wp-block-woocommerce-product-button .wp-element-button:hover {
    background: var(--mc-cyan) !important;
    color: var(--mc-bg) !important;
}

.mc-collection-callout {
    margin-top: clamp(3rem, 6vw, 5rem);
    padding: clamp(1.5rem, 4vw, 2.5rem);
    border: 1px solid var(--mc-border);
    background:
      linear-gradient(145deg, rgba(51,230,255,.06), rgba(155,108,255,.05)),
      #0d141e;
}

.mc-collection-callout h2 {
    margin-top: 0;
    font-size: clamp(1.8rem, 3vw, 2.8rem);
}

.mc-collection-callout p {
    color: var(--mc-muted);
    max-width: 48rem;
    line-height: 1.6;
}

.mc-collection-callout .wp-block-button__link {
    border-radius: 4px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .035em;
}

@media (max-width: 900px) {
    .mc-collection-hero-grid {
        grid-template-columns: 1fr;
    }

    .mc-collection-title {
        max-width: none;
    }

    .mc-collection-visual {
        min-height: 320px;
    }

    .mc-collection-visual img {
        min-height: 320px;
    }
}

@media (max-width: 600px) {
    .mc-collection-hero {
        padding-left: 16px;
        padding-right: 16px;
    }

    .mc-collection-body {
        padding-left: 14px;
        padding-right: 14px;
    }

    .mc-collection-actions a {
        width: 100%;
    }

    .mc-collection-strip .wp-block-columns {
        gap: 0;
    }

    .mc-collection-strip-item {
        border-top: 1px solid rgba(255,255,255,.06);
    }

    .mc-collection-grid .wp-block-woocommerce-product-image {
        min-height: 220px;
    }

    .mc-collection-grid .wp-block-woocommerce-product-image img {
        max-height: 250px;
    }
}


/* =========================================================
   MAKERCADE v0.8.1 — CATEGORY-AWARE HEROES
   ========================================================= */

.mc-collection-hero--diy {
    background:
        radial-gradient(circle at 12% 0%, rgba(51,230,255,.10), transparent 30rem),
        radial-gradient(circle at 90% 10%, rgba(241,75,169,.08), transparent 26rem),
        linear-gradient(180deg, rgba(255,255,255,.012), transparent);
}

.mc-collection-hero--diy .mc-collection-visual {
    background:
        linear-gradient(rgba(255,255,255,.022) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.022) 1px, transparent 1px),
        linear-gradient(145deg,#0e1722,#182137);
    background-size: 24px 24px,24px 24px,auto;
}

.mc-collection-hero--diy .mc-collection-visual img {
    padding: 2rem;
    transform: scale(1.04);
}

.mc-collection-hero--full .mc-collection-title {
    max-width: 11ch;
}

.mc-collection-tagline {
    margin: 0 0 .8rem;
    color: var(--mc-text);
    font-size: clamp(1.25rem,2.2vw,1.75rem);
    font-weight: 800;
    line-height: 1.15;
}

.mc-collection-hero--diy .mc-collection-tagline {
    color: var(--mc-cyan);
}

@media (max-width: 600px) {
    .mc-collection-hero--diy .mc-collection-visual img {
        padding: 1rem;
        transform: none;
    }
}


/* =========================================================
   MAKERCADE v0.8.2 — DIY HERO PRODUCT IMAGE
   ========================================================= */

.mc-collection-hero--diy .mc-collection-visual {
    background:
      linear-gradient(rgba(255,255,255,.022) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255,255,255,.022) 1px, transparent 1px),
      linear-gradient(145deg,#101925,#182239);
    background-size: 24px 24px, 24px 24px, auto;
}

.mc-collection-hero--diy .mc-collection-visual img {
    width: 100%;
    height: 100%;
    min-height: 390px;
    object-fit: contain !important;
    padding: 1.1rem !important;
    filter: drop-shadow(0 24px 28px rgba(0,0,0,.45)) !important;
}


/* =========================================================
   MAKERCADE v0.8.3 — DIY HERO PROPORTION FIX
   ========================================================= */

.mc-collection-hero--diy {
    padding-top: clamp(3rem, 5vw, 4.75rem);
    padding-bottom: clamp(3rem, 5vw, 4.75rem);
}

.mc-collection-hero--diy .mc-collection-hero-grid {
    width: min(1180px, calc(100% - 40px));
    margin-left: auto;
    margin-right: auto;
    grid-template-columns: minmax(0, 1.2fr) minmax(340px, .8fr);
    gap: clamp(2rem, 4vw, 4rem);
}

.mc-collection-hero--diy .mc-collection-visual {
    min-height: 0;
    height: clamp(430px, 48vw, 620px);
}

.mc-collection-hero--diy .mc-collection-visual img {
    min-height: 0 !important;
    height: 100% !important;
    width: 100% !important;
    object-fit: contain !important;
    padding: 1.25rem !important;
}

.mc-collection-hero--diy .mc-collection-title {
    max-width: 8ch;
}

@media (max-width: 1050px) {
    .mc-collection-hero--diy .mc-collection-hero-grid {
        grid-template-columns: minmax(0, 1.05fr) minmax(300px, .95fr);
    }

    .mc-collection-hero--diy .mc-collection-visual {
        height: clamp(400px, 52vw, 540px);
    }
}

@media (max-width: 900px) {
    .mc-collection-hero--diy .mc-collection-hero-grid {
        width: min(760px, calc(100% - 32px));
        grid-template-columns: 1fr;
    }

    .mc-collection-hero--diy .mc-collection-title {
        max-width: none;
    }

    .mc-collection-hero--diy .mc-collection-visual {
        height: 460px;
    }
}

@media (max-width: 600px) {
    .mc-collection-hero--diy .mc-collection-hero-grid {
        width: calc(100% - 28px);
    }

    .mc-collection-hero--diy .mc-collection-visual {
        height: 390px;
    }
}


/* =========================================================
   MAKERCADE v0.9 — BRAND / SERVICES / CONTACT PAGES
   ========================================================= */

.mc-content-hero {
    padding: clamp(3.5rem, 7vw, 6rem) 20px clamp(3rem, 6vw, 5rem);
    border-bottom: 1px solid var(--mc-border);
    background:
      radial-gradient(circle at 12% 0%, rgba(51,230,255,.10), transparent 30rem),
      radial-gradient(circle at 88% 10%, rgba(155,108,255,.08), transparent 28rem);
}

.mc-content-hero-grid {
    display: grid;
    grid-template-columns: minmax(0,1.05fr) minmax(320px,.95fr);
    gap: clamp(2rem,5vw,5rem);
    align-items: center;
}

.mc-content-title {
    margin: .3rem 0 1rem;
    font-size: clamp(3rem,6vw,5.5rem);
    line-height: .95;
    letter-spacing: -.05em;
}

.mc-content-lede {
    max-width: 44rem;
    color: var(--mc-muted);
    font-size: 1.08rem;
    line-height: 1.7;
}

.mc-content-visual {
    min-height: 390px;
    border: 1px solid var(--mc-border);
    background:
      linear-gradient(rgba(255,255,255,.022) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255,255,255,.022) 1px, transparent 1px),
      linear-gradient(145deg,#101925,#182239);
    background-size: 24px 24px,24px 24px,auto;
    position: relative;
    overflow: hidden;
}

.mc-content-visual::before {
    content:"";
    position:absolute;
    inset:14%;
    border:1px solid rgba(51,230,255,.25);
    box-shadow:0 0 40px rgba(51,230,255,.08);
}

.mc-content-visual--maker::after {
    content:"DESIGN • CNC • BUILD • CODE";
    position:absolute;
    left:1rem;
    bottom:1rem;
    color:var(--mc-cyan);
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.13em;
}

.mc-content-visual--services::after {
    content:"CNC • LASER • FABRICATION • CUSTOM";
    position:absolute;
    left:1rem;
    bottom:1rem;
    color:var(--mc-cyan);
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.13em;
}

.mc-content-body {
    padding: clamp(3.5rem,7vw,6rem) 20px;
}

.mc-content-body > .wp-block-group.alignwide {
    max-width:1180px;
}

.mc-content-body .entry-content,
.mc-content-body .wp-block-post-content {
    color:var(--mc-text);
}

.mc-content-body .wp-block-post-content > * {
    max-width: 880px;
}

.mc-content-body .wp-block-post-content > .alignwide,
.mc-content-body .wp-block-post-content > .alignfull {
    max-width: 1180px;
}

.mc-content-body h2,
.mc-content-body h3,
.mc-content-body h4 {
    color:var(--mc-text);
}

.mc-content-body p,
.mc-content-body li {
    color:var(--mc-muted);
    line-height:1.7;
}

.mc-service-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:1rem;
    margin-top:2rem;
}

.mc-service-card {
    min-height:220px;
    padding:1.4rem;
    border:1px solid var(--mc-border);
    background:#0d141e;
}

.mc-service-card strong {
    display:block;
    margin-bottom:.5rem;
    color:var(--mc-text);
    font-size:1.15rem;
}

.mc-service-card span {
    color:var(--mc-muted);
    line-height:1.55;
}

.mc-story-strip {
    margin-top:2rem;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    border:1px solid var(--mc-border);
    background:#0d141e;
}

.mc-story-step {
    padding:1.2rem;
    border-left:1px solid var(--mc-border);
}

.mc-story-step:first-child {
    border-left:0;
}

.mc-story-step b {
    display:block;
    color:var(--mc-cyan);
    font-size:.78rem;
    letter-spacing:.1em;
    margin-bottom:.45rem;
}

.mc-story-step strong {
    display:block;
    margin-bottom:.35rem;
}

.mc-story-step span {
    color:var(--mc-muted);
    font-size:.85rem;
}

/* WPForms dark treatment */
.mc-content-body .wpforms-container,
.mc-content-body .wpforms-form {
    max-width:880px;
}

.mc-content-body .wpforms-container input[type="text"],
.mc-content-body .wpforms-container input[type="email"],
.mc-content-body .wpforms-container input[type="tel"],
.mc-content-body .wpforms-container input[type="number"],
.mc-content-body .wpforms-container input[type="url"],
.mc-content-body .wpforms-container select,
.mc-content-body .wpforms-container textarea {
    background:#09111a !important;
    color:var(--mc-text) !important;
    border:1px solid rgba(255,255,255,.14) !important;
    border-radius:4px !important;
}

.mc-content-body .wpforms-container label,
.mc-content-body .wpforms-container .wpforms-field-label {
    color:var(--mc-text) !important;
    font-weight:800 !important;
}

.mc-content-body .wpforms-container .wpforms-field-description,
.mc-content-body .wpforms-container .wpforms-field-sublabel {
    color:var(--mc-muted) !important;
}

.mc-content-body .wpforms-container button[type="submit"] {
    min-height:48px;
    padding:.85rem 1.25rem !important;
    background:var(--mc-cyan) !important;
    color:var(--mc-bg) !important;
    border:0 !important;
    border-radius:4px !important;
    font-weight:900 !important;
    text-transform:uppercase;
    letter-spacing:.035em;
}

.mc-contact-panel {
    padding:1.4rem;
    border:1px solid var(--mc-border);
    background:#0d141e;
}

.mc-contact-panel strong {
    display:block;
    color:var(--mc-text);
    margin-bottom:.4rem;
}

.mc-contact-panel span,
.mc-contact-panel p {
    color:var(--mc-muted);
}

@media (max-width:900px) {
    .mc-content-hero-grid {
        grid-template-columns:1fr;
    }
    .mc-service-grid {
        grid-template-columns:1fr;
    }
    .mc-story-strip {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .mc-story-step:nth-child(odd) {
        border-left:0;
    }
    .mc-story-step:nth-child(n+3) {
        border-top:1px solid var(--mc-border);
    }
}

@media (max-width:600px) {
    .mc-content-hero,
    .mc-content-body {
        padding-left:14px;
        padding-right:14px;
    }
    .mc-story-strip {
        grid-template-columns:1fr;
    }
    .mc-story-step {
        border-left:0 !important;
        border-top:1px solid var(--mc-border);
    }
    .mc-story-step:first-child {
        border-top:0;
    }
}


/* =========================================================
   MAKERCADE v0.9.1 — SERVICES / ABOUT / CONTACT FIXES
   ========================================================= */

/* Real hero imagery */
.mc-content-visual img {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    min-height: 390px;
    object-fit: cover;
    display: block;
}

.mc-content-visual--services::before,
.mc-content-visual--maker::before {
    pointer-events: none;
    z-index: 2;
}

.mc-content-visual--services::after,
.mc-content-visual--maker::after {
    z-index: 3;
}

.mc-content-visual--services img {
    filter: saturate(.92) contrast(1.04);
}

/* Existing tab components on Services page */
.mc-content-body .wp-block-tabs,
.mc-content-body [class*="tabs"],
.mc-content-body [class*="tabbed"],
.mc-content-body .gutentor-tabs,
.mc-content-body .gutentor-module-tabs {
    color: var(--mc-text) !important;
}

.mc-content-body [role="tablist"],
.mc-content-body .gutentor-tabs-list,
.mc-content-body .gutentor-tabs-nav,
.mc-content-body .wp-block-tabs__tablist {
    border-bottom: 1px solid var(--mc-border) !important;
    background: transparent !important;
}

.mc-content-body [role="tab"],
.mc-content-body .gutentor-tabs-list a,
.mc-content-body .gutentor-tabs-nav a,
.mc-content-body .wp-block-tabs__tab {
    background: #0c141e !important;
    color: var(--mc-text) !important;
    border: 1px solid var(--mc-border) !important;
    border-bottom: 0 !important;
    border-radius: 4px 4px 0 0 !important;
}

.mc-content-body [role="tab"][aria-selected="true"],
.mc-content-body .gutentor-tabs-list .active a,
.mc-content-body .gutentor-tabs-nav .active a,
.mc-content-body .wp-block-tabs__tab[aria-selected="true"] {
    background: rgba(51,230,255,.08) !important;
    color: var(--mc-cyan) !important;
    border-color: rgba(51,230,255,.35) !important;
}

.mc-content-body [role="tabpanel"],
.mc-content-body .gutentor-tabs-content,
.mc-content-body .gutentor-tabs-item,
.mc-content-body .wp-block-tabs__tab-content {
    background: transparent !important;
    color: var(--mc-muted) !important;
}

/* Strong generic cleanup for old white page sections */
.mc-content-body .has-white-background-color,
.mc-content-body [style*="background-color:#fff"],
.mc-content-body [style*="background-color: #fff"],
.mc-content-body [style*="background:#fff"],
.mc-content-body [style*="background: #fff"],
.mc-content-body .wp-block-group.has-background {
    background-color: #0c141e !important;
    color: var(--mc-text) !important;
}

/* Contact page: remove legacy white card look */
.mc-contact-page .wp-block-post-content > .wp-block-group,
.mc-contact-page .wp-block-post-content > .wp-block-columns,
.mc-contact-page .wp-block-post-content > .wp-block-cover,
.mc-contact-page .wp-block-post-content > div {
    background-color: transparent !important;
}

.mc-contact-page .wp-block-post-content img {
    max-width: 100%;
    height: auto;
    border: 1px solid var(--mc-border);
}

.mc-contact-page h1,
.mc-contact-page h2,
.mc-contact-page h3,
.mc-contact-page h4,
.mc-contact-page strong {
    color: var(--mc-text) !important;
}

.mc-contact-page p,
.mc-contact-page li {
    color: var(--mc-muted) !important;
}

/* WPForms — cover both old and newer markup */
.mc-contact-page .wpforms-container,
.mc-contact-page .wpforms-container-full,
.mc-contact-page .wpforms-form,
.mc-contact-page form.wpforms-form {
    background: transparent !important;
    color: var(--mc-text) !important;
}

.mc-contact-page .wpforms-field,
.mc-contact-page .wpforms-field-container,
.mc-contact-page .wpforms-field-row,
.mc-contact-page .wpforms-field-row-block {
    background: transparent !important;
}

.mc-contact-page .wpforms-container input,
.mc-contact-page .wpforms-container-full input,
.mc-contact-page .wpforms-container textarea,
.mc-contact-page .wpforms-container-full textarea,
.mc-contact-page .wpforms-container select,
.mc-contact-page .wpforms-container-full select,
.mc-contact-page form.wpforms-form input,
.mc-contact-page form.wpforms-form textarea,
.mc-contact-page form.wpforms-form select {
    background: #09111a !important;
    color: var(--mc-text) !important;
    border: 1px solid rgba(255,255,255,.15) !important;
    border-radius: 4px !important;
    box-shadow: none !important;
}

.mc-contact-page .wpforms-container label,
.mc-contact-page .wpforms-container-full label,
.mc-contact-page .wpforms-field-label,
.mc-contact-page .wpforms-field-sublabel {
    color: var(--mc-text) !important;
}

.mc-contact-page .wpforms-container button,
.mc-contact-page .wpforms-container-full button,
.mc-contact-page button.wpforms-submit {
    background: var(--mc-cyan) !important;
    color: var(--mc-bg) !important;
    border: 0 !important;
    border-radius: 4px !important;
    font-weight: 900 !important;
    text-transform: uppercase;
    padding: .85rem 1.25rem !important;
}

/* Also cover generic form controls in case contact form is not WPForms */
.mc-contact-page input[type="text"],
.mc-contact-page input[type="email"],
.mc-contact-page input[type="tel"],
.mc-contact-page input[type="url"],
.mc-contact-page textarea,
.mc-contact-page select {
    background: #09111a !important;
    color: var(--mc-text) !important;
    border: 1px solid rgba(255,255,255,.15) !important;
}

.mc-contact-page input::placeholder,
.mc-contact-page textarea::placeholder {
    color: #748190 !important;
}

/* About page: ensure static hero content cannot disappear visually */
.mc-about-page .mc-content-hero-grid,
.mc-about-page .mc-content-hero-grid > * {
    opacity: 1 !important;
    visibility: visible !important;
}

.mc-about-page .mc-content-title,
.mc-about-page .mc-content-lede,
.mc-about-page .mc-eyebrow {
    display: block !important;
}

/* Contact content container */
.mc-contact-page .wp-block-post-content {
    padding: 1.25rem;
    border: 1px solid var(--mc-border);
    background: #0c141e;
}

@media (max-width: 900px) {
    .mc-content-visual img {
        min-height: 320px;
    }
}


/* =========================================================
   MAKERCADE v0.9.2 — CONTACT LEGACY BACKGROUND RESET
   ========================================================= */

/*
 * The existing Contact page contains legacy block/plugin wrappers that
 * paint white backgrounds without predictable class names. On this one
 * page, reset nested content wrappers to transparent and then explicitly
 * restore dark controls below.
 */
.mc-contact-page .wp-block-post-content,
.mc-contact-page .wp-block-post-content > *,
.mc-contact-page .wp-block-post-content > * > *,
.mc-contact-page .wp-block-post-content div,
.mc-contact-page .wp-block-post-content section,
.mc-contact-page .wp-block-post-content article,
.mc-contact-page .wp-block-post-content figure,
.mc-contact-page .wp-block-post-content .wp-block-group,
.mc-contact-page .wp-block-post-content .wp-block-columns,
.mc-contact-page .wp-block-post-content .wp-block-column,
.mc-contact-page .wp-block-post-content [class*="gutentor"],
.mc-contact-page .wp-block-post-content [class*="container"],
.mc-contact-page .wp-block-post-content [class*="wrapper"],
.mc-contact-page .wp-block-post-content [class*="content"] {
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}

/* Give the old contact intro a deliberate dark card instead of a white sheet. */
.mc-contact-page .wp-block-post-content > *:first-child {
    padding: clamp(1.25rem, 3vw, 2rem) !important;
    border: 1px solid var(--mc-border) !important;
    background:
      linear-gradient(145deg, rgba(51,230,255,.035), rgba(155,108,255,.025)),
      #0c141e !important;
}

/* Keep the image crisp and visually separate. */
.mc-contact-page .wp-block-post-content img {
    background: transparent !important;
    border: 1px solid rgba(255,255,255,.10) !important;
}

/* Reassert readable text after removing old white cards. */
.mc-contact-page .wp-block-post-content h1,
.mc-contact-page .wp-block-post-content h2,
.mc-contact-page .wp-block-post-content h3,
.mc-contact-page .wp-block-post-content h4,
.mc-contact-page .wp-block-post-content h5,
.mc-contact-page .wp-block-post-content strong,
.mc-contact-page .wp-block-post-content b,
.mc-contact-page .wp-block-post-content label {
    color: var(--mc-text) !important;
}

.mc-contact-page .wp-block-post-content p,
.mc-contact-page .wp-block-post-content li,
.mc-contact-page .wp-block-post-content span:not(.wpforms-required-label) {
    color: var(--mc-muted) !important;
}

/* Restore intentional dark field backgrounds after the blanket reset. */
.mc-contact-page .wp-block-post-content input[type="text"],
.mc-contact-page .wp-block-post-content input[type="email"],
.mc-contact-page .wp-block-post-content input[type="tel"],
.mc-contact-page .wp-block-post-content input[type="url"],
.mc-contact-page .wp-block-post-content input[type="number"],
.mc-contact-page .wp-block-post-content select,
.mc-contact-page .wp-block-post-content textarea {
    background: #09111a !important;
    color: var(--mc-text) !important;
    border: 1px solid rgba(255,255,255,.15) !important;
    box-shadow: none !important;
}

/* Submit/button treatment */
.mc-contact-page .wp-block-post-content button,
.mc-contact-page .wp-block-post-content input[type="submit"] {
    background: var(--mc-cyan) !important;
    color: var(--mc-bg) !important;
    border: 0 !important;
    font-weight: 900 !important;
}

/* Slightly tighten the old page content so it feels intentional. */
.mc-contact-page .wp-block-post-content {
    max-width: 1050px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}


/* =========================================================
   MAKERCADE v0.9.3 — ABOUT-US / MEET THE MAKER
   ========================================================= */

.mc-about-page .wp-block-post-content {
    max-width: 1180px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.mc-about-page .wp-block-post-content,
.mc-about-page .wp-block-post-content > *,
.mc-about-page .wp-block-post-content > * > *,
.mc-about-page .wp-block-post-content div,
.mc-about-page .wp-block-post-content section,
.mc-about-page .wp-block-post-content article,
.mc-about-page .wp-block-post-content figure,
.mc-about-page .wp-block-post-content .wp-block-group,
.mc-about-page .wp-block-post-content .wp-block-columns,
.mc-about-page .wp-block-post-content .wp-block-column,
.mc-about-page .wp-block-post-content [class*="gutentor"],
.mc-about-page .wp-block-post-content [class*="container"],
.mc-about-page .wp-block-post-content [class*="wrapper"] {
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}

/* Turn the legacy About content into a deliberate dark panel. */
.mc-about-page .wp-block-post-content > *:first-child {
    padding: clamp(1.4rem, 3vw, 2.2rem) !important;
    border: 1px solid var(--mc-border) !important;
    background:
      linear-gradient(145deg, rgba(51,230,255,.035), rgba(155,108,255,.025)),
      #0c141e !important;
}

/* Preserve the original illustration's aspect ratio — no stretching. */
.mc-about-page .wp-block-post-content img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    object-fit: contain !important;
    aspect-ratio: auto !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    background: transparent !important;
}

/* Old content was authored for a white page. Re-map it to the dark theme. */
.mc-about-page .wp-block-post-content h1,
.mc-about-page .wp-block-post-content h2,
.mc-about-page .wp-block-post-content h3,
.mc-about-page .wp-block-post-content h4,
.mc-about-page .wp-block-post-content h5,
.mc-about-page .wp-block-post-content strong,
.mc-about-page .wp-block-post-content b {
    color: var(--mc-text) !important;
}

.mc-about-page .wp-block-post-content p,
.mc-about-page .wp-block-post-content li,
.mc-about-page .wp-block-post-content span {
    color: var(--mc-muted) !important;
    line-height: 1.72;
}

/* Make legacy two-column About layouts responsive and balanced. */
.mc-about-page .wp-block-post-content .wp-block-columns {
    gap: clamp(1.5rem, 4vw, 3.5rem) !important;
    align-items: flex-start !important;
}

.mc-about-page .wp-block-post-content .wp-block-column {
    min-width: 0 !important;
}

@media (max-width: 780px) {
    .mc-about-page .wp-block-post-content .wp-block-columns {
        flex-direction: column !important;
    }

    .mc-about-page .wp-block-post-content .wp-block-column {
        flex-basis: 100% !important;
    }
}


/* =========================================================
   MAKERCADE v0.9.5 — ABOUT HERO IMAGE REUSE
   ========================================================= */

/* The original Meet-the-Maker artwork now lives in the hero.
   Remove its duplicate appearance from the legacy About content. */
.mc-about-page .wp-block-post-content figure:has(img),
.mc-about-page .wp-block-post-content .wp-block-image {
    display: none !important;
}

/* If the old section is a two-column image/text layout, let text reclaim width. */
.mc-about-page .wp-block-post-content .wp-block-columns:has(.wp-block-image) {
    display: block !important;
}

.mc-about-page .wp-block-post-content .wp-block-columns:has(.wp-block-image) .wp-block-column {
    width: 100% !important;
    max-width: 880px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}


/* =========================================================
   MAKERCADE v0.9.6 — ABOUT STORY TWO-COLUMN COPY
   ========================================================= */

/*
 * The Meet-the-Maker image was promoted into the hero in v0.9.5.
 * Reflow the remaining legacy About copy into two readable columns
 * on desktop while keeping headings full-width.
 */
.mc-about-page .wp-block-post-content {
    max-width: 1180px !important;
}

.mc-about-page .wp-block-post-content > *:first-child {
    max-width: 1180px !important;
}

/* Full-width headings above the copy. */
.mc-about-page .wp-block-post-content h1,
.mc-about-page .wp-block-post-content h2,
.mc-about-page .wp-block-post-content h3 {
    column-span: all;
    max-width: 880px;
    margin-left: auto;
    margin-right: auto;
}

/* Apply columns to paragraph/list-heavy legacy sections. */
.mc-about-page .wp-block-post-content > .wp-block-group,
.mc-about-page .wp-block-post-content > .wp-block-columns,
.mc-about-page .wp-block-post-content > section,
.mc-about-page .wp-block-post-content > div:not(.mc-story-strip) {
    max-width: 1180px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* If the old image/text section remains a columns block after image removal,
   convert its text area to newspaper-style columns. */
.mc-about-page .wp-block-post-content .wp-block-columns:has(.wp-block-column) {
    display: block !important;
}

.mc-about-page .wp-block-post-content .wp-block-columns:has(.wp-block-column) > .wp-block-column {
    width: 100% !important;
    max-width: none !important;
    column-count: 2;
    column-gap: clamp(2.5rem, 5vw, 5rem);
    column-rule: 1px solid rgba(255,255,255,.08);
}

/* Also cover common legacy wrappers where the copy is not inside Columns. */
.mc-about-page .wp-block-post-content .mc-about-two-column,
.mc-about-page .wp-block-post-content > *:first-child {
    column-count: 2;
    column-gap: clamp(2.5rem, 5vw, 5rem);
    column-rule: 1px solid rgba(255,255,255,.08);
}

/* Keep discrete blocks from splitting awkwardly between columns. */
.mc-about-page .wp-block-post-content p,
.mc-about-page .wp-block-post-content ul,
.mc-about-page .wp-block-post-content ol,
.mc-about-page .wp-block-post-content blockquote {
    break-inside: avoid-column;
}

/* Headings inside the first story panel should span both columns. */
.mc-about-page .wp-block-post-content > *:first-child h1,
.mc-about-page .wp-block-post-content > *:first-child h2,
.mc-about-page .wp-block-post-content > *:first-child h3,
.mc-about-page .wp-block-post-content > *:first-child h4 {
    column-span: all;
}

/* Do not columnize our design-system process strip. */
.mc-about-page .mc-story-strip,
.mc-about-page .mc-story-strip * {
    column-count: initial !important;
    column-span: none !important;
}

@media (max-width: 820px) {
    .mc-about-page .wp-block-post-content .wp-block-columns:has(.wp-block-column) > .wp-block-column,
    .mc-about-page .wp-block-post-content .mc-about-two-column,
    .mc-about-page .wp-block-post-content > *:first-child {
        column-count: 1 !important;
        column-rule: 0 !important;
    }
}


/* =========================================================
   MAKERCADE v0.9.7 — EXACT ABOUT STORY COLUMN TARGET
   ========================================================= */

.mc-about-page .mc-about-story-section {
    width: 100% !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: clamp(1.5rem, 3vw, 2.25rem) !important;
    border: 1px solid var(--mc-border) !important;
    background:
      linear-gradient(145deg, rgba(51,230,255,.028), rgba(155,108,255,.018)),
      #0c141e !important;
}

/* Keep the heading full width. */
.mc-about-page .mc-about-story-section > h1,
.mc-about-page .mc-about-story-section > h2,
.mc-about-page .mc-about-story-section > h3,
.mc-about-page .mc-about-story-section > h4,
.mc-about-page .mc-about-story-section .mc-about-story-heading {
    display: block !important;
    width: 100% !important;
    margin-top: 0 !important;
    margin-bottom: 1.4rem !important;
}

/* This is the actual text wrapper inserted/tagged at runtime. */
.mc-about-page .mc-about-story-columns {
    width: 100% !important;
    column-count: 2 !important;
    column-gap: clamp(3rem, 6vw, 6rem) !important;
    column-rule: 1px solid rgba(255,255,255,.08) !important;
}

.mc-about-page .mc-about-story-columns p,
.mc-about-page .mc-about-story-columns ul,
.mc-about-page .mc-about-story-columns ol,
.mc-about-page .mc-about-story-columns blockquote {
    break-inside: avoid-column !important;
    margin-top: 0 !important;
    margin-bottom: 1.25rem !important;
}

.mc-about-page .mc-about-story-columns p {
    color: var(--mc-muted) !important;
    line-height: 1.75 !important;
}

@media (max-width: 820px) {
    .mc-about-page .mc-about-story-columns {
        column-count: 1 !important;
        column-rule: 0 !important;
    }
}


/* =========================================================
   MAKERCADE v0.9.8 — REAL TWO-COLUMN ABOUT STORY
   ========================================================= */

.mc-about-page .mc-about-story-section {
    width: 100% !important;
    max-width: 1180px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.mc-about-page .mc-about-story-heading {
    width: 100% !important;
    max-width: none !important;
    margin: 0 0 1.5rem !important;
}

.mc-about-page .mc-about-story-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: clamp(2.5rem, 5vw, 5rem) !important;
    width: 100% !important;
    max-width: none !important;
    align-items: start !important;
}

.mc-about-page .mc-about-story-col {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

.mc-about-page .mc-about-story-col + .mc-about-story-col {
    border-left: 1px solid rgba(255,255,255,.08);
    padding-left: clamp(2.5rem, 5vw, 5rem) !important;
}

.mc-about-page .mc-about-story-col p,
.mc-about-page .mc-about-story-col ul,
.mc-about-page .mc-about-story-col ol,
.mc-about-page .mc-about-story-col blockquote {
    width: 100% !important;
    max-width: none !important;
    margin-top: 0 !important;
    margin-bottom: 1.3rem !important;
    color: var(--mc-muted) !important;
    line-height: 1.75 !important;
}

/* Neutralize any old width/flex/column styles inherited from legacy page markup. */
.mc-about-page .mc-about-story-section .mc-about-story-grid *,
.mc-about-page .mc-about-story-section .mc-about-story-col * {
    column-count: initial !important;
    column-width: auto !important;
}

@media (max-width: 820px) {
    .mc-about-page .mc-about-story-grid {
        grid-template-columns: 1fr !important;
        gap: 0 !important;
    }

    .mc-about-page .mc-about-story-col + .mc-about-story-col {
        border-left: 0 !important;
        border-top: 1px solid rgba(255,255,255,.08);
        padding-left: 0 !important;
        padding-top: 1.3rem !important;
        margin-top: .4rem !important;
    }
}


/* =========================================================
   MAKERCADE v0.9.9 — RESTORE ORIGINAL ABOUT STORY LAYOUT
   ========================================================= */

/* Disable all experimental story-grid/column treatments from v0.9.5–0.9.8. */
.mc-about-page .mc-about-story-section,
.mc-about-page .mc-about-story-grid,
.mc-about-page .mc-about-story-columns,
.mc-about-page .mc-about-story-col {
    display: revert !important;
    width: revert !important;
    max-width: revert !important;
    min-width: revert !important;
    margin: revert !important;
    padding: revert !important;
    border: revert !important;
    background: revert !important;
    grid-template-columns: revert !important;
    gap: revert !important;
    column-count: revert !important;
    column-gap: revert !important;
    column-rule: revert !important;
}

/* Restore the legacy About image in its original story section. */
.mc-about-page .wp-block-post-content figure:has(img),
.mc-about-page .wp-block-post-content .wp-block-image {
    display: block !important;
}

/* Restore the original two-column text/image section. */
.mc-about-page .wp-block-post-content .wp-block-columns {
    display: flex !important;
    gap: clamp(1.5rem, 4vw, 3.5rem) !important;
    align-items: flex-start !important;
}

.mc-about-page .wp-block-post-content .wp-block-column {
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    column-count: initial !important;
    column-gap: normal !important;
    column-rule: 0 !important;
}

/* Keep the original artwork proportional. */
.mc-about-page .wp-block-post-content img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    object-fit: contain !important;
    aspect-ratio: auto !important;
}

@media (max-width: 780px) {
    .mc-about-page .wp-block-post-content .wp-block-columns {
        flex-direction: column !important;
    }
}


/* =========================================================
   MAKERCADE v0.10.0 — MEET THE MAKER HERO
   ========================================================= */

.mc-about-page .mc-content-visual--maker {
    overflow: hidden !important;
    padding: 0 !important;
    background: #0b1420 !important;
    border: 1px solid var(--mc-border) !important;
}

.mc-about-page .mc-content-visual--maker img.mc-about-hero-image {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 360px !important;
    max-height: 520px !important;
    object-fit: cover !important;
    object-position: center !important;
}

/* The original About artwork stays in the story content beside the text. */
.mc-about-page .wp-block-post-content .wp-block-columns img {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
}

@media (max-width: 780px) {
    .mc-about-page .mc-content-visual--maker img.mc-about-hero-image {
        min-height: 260px !important;
        max-height: 360px !important;
    }
}


/* =========================================================
   MAKERCADE v0.10.1 — MOBILE HOMEPAGE HERO
   ========================================================= */

@media (max-width: 600px) {

    /* Give the homepage hero real breathing room on phones. */
    .mc-home-hero,
    .mc-hero,
    .home .mc-hero,
    .home .mc-home-hero {
        padding-left: 22px !important;
        padding-right: 22px !important;
        padding-top: 2.4rem !important;
        padding-bottom: 2.2rem !important;
    }

    /* Collapse desktop split layout cleanly. */
    .mc-home-hero-grid,
    .mc-hero-grid,
    .home .mc-home-hero-grid,
    .home .mc-hero-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 1.8rem !important;
        width: 100% !important;
    }

    /* Eyebrow */
    .mc-home-hero .mc-eyebrow,
    .mc-hero .mc-eyebrow,
    .home .mc-eyebrow {
        margin-bottom: .75rem !important;
        font-size: .72rem !important;
        letter-spacing: .14em !important;
        line-height: 1.3 !important;
    }

    /* Main hero typography */
    .mc-home-hero h1,
    .mc-hero h1,
    .home .mc-home-hero h1,
    .home .mc-hero h1,
    .home .mc-hero-title,
    .home .mc-home-hero-title {
        margin-top: 0 !important;
        margin-bottom: 1.15rem !important;
        font-size: clamp(3.25rem, 13.6vw, 3.75rem) !important;
        line-height: .98 !important;
        letter-spacing: -.055em !important;
        max-width: 100% !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
    }

    /* If the gradient line uses its own span/block, keep it in bounds. */
    .home .mc-gradient,
    .home .mc-hero-gradient,
    .home .mc-home-hero .mc-gradient {
        max-width: 100% !important;
        line-height: .98 !important;
    }

    /* Hero supporting copy */
    .mc-home-hero .mc-hero-copy,
    .mc-home-hero .mc-home-hero-copy,
    .mc-hero .mc-hero-copy,
    .home .mc-hero-copy,
    .home .mc-home-hero-copy,
    .home .mc-home-hero p:not(.mc-eyebrow),
    .home .mc-hero p:not(.mc-eyebrow) {
        max-width: 100% !important;
        margin-bottom: 1.5rem !important;
        font-size: 1.08rem !important;
        line-height: 1.55 !important;
    }

    /* Stack CTAs — much cleaner on ~390px phones. */
    .mc-home-hero .wp-block-buttons,
    .mc-hero .wp-block-buttons,
    .home .mc-home-hero .wp-block-buttons,
    .home .mc-hero .wp-block-buttons,
    .home .mc-hero-actions,
    .home .mc-home-hero-actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: .75rem !important;
        width: 100% !important;
        margin-top: .4rem !important;
    }

    .mc-home-hero .wp-block-button,
    .mc-hero .wp-block-button,
    .home .mc-hero-actions > *,
    .home .mc-home-hero-actions > * {
        width: 100% !important;
    }

    .mc-home-hero .wp-block-button__link,
    .mc-hero .wp-block-button__link,
    .home .mc-hero-actions a,
    .home .mc-home-hero-actions a {
        width: 100% !important;
        min-height: 54px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: .9rem 1rem !important;
        font-size: .9rem !important;
        line-height: 1.2 !important;
        white-space: normal !important;
        text-align: center !important;
    }

    /* Hero image/cabinet starts with breathing room instead of colliding with CTA. */
    .mc-home-hero .mc-hero-visual,
    .mc-home-hero .mc-home-hero-visual,
    .mc-hero .mc-hero-visual,
    .home .mc-hero-visual,
    .home .mc-home-hero-visual {
        margin-top: .4rem !important;
        min-height: 0 !important;
    }

    .mc-home-hero .mc-hero-visual img,
    .mc-home-hero .mc-home-hero-visual img,
    .mc-hero .mc-hero-visual img,
    .home .mc-hero-visual img,
    .home .mc-home-hero-visual img {
        width: 100% !important;
        height: auto !important;
        max-height: 460px !important;
        object-fit: contain !important;
    }

    /* Header already looked good; just make sure it doesn't crowd the page. */
    .site-header,
    .mc-site-header,
    header.wp-block-template-part {
        min-height: 76px;
    }
}


/* =========================================================
   MAKERCADE v0.10.9 — SAFARI CORE MOBILE NAV FIX
   ========================================================= */

@media (max-width: 900px) {

    /*
     * IMPORTANT:
     * backdrop-filter on a parent creates a containing/stacking context for
     * position:fixed descendants in Safari/iOS. WordPress places its responsive
     * navigation overlay inside the header, so the overlay becomes trapped in
     * the sticky header instead of covering the viewport.
     *
     * Disable those containing-context properties on mobile only.
     */
    .mc-header {
        -webkit-backdrop-filter: none !important;
        backdrop-filter: none !important;
        filter: none !important;
        transform: none !important;
        perspective: none !important;
        contain: none !important;
        isolation: auto !important;
        overflow: visible !important;
        background: rgba(8,11,16,.98) !important;
    }

    .mc-header-inner,
    .mc-nav,
    .mc-nav.wp-block-navigation {
        transform: none !important;
        filter: none !important;
        -webkit-filter: none !important;
        perspective: none !important;
        contain: none !important;
        isolation: auto !important;
        overflow: visible !important;
    }

    .mc-site-shell {
        overflow: visible !important;
    }

    /* Use WordPress Core's native mobile-menu behavior. */
    .wp-block-navigation__responsive-container.is-menu-open {
        position: fixed !important;
        inset: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        height: 100dvh !important;
        min-height: 100vh !important;
        margin: 0 !important;
        padding: 0 !important;
        z-index: 2147483000 !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        background:
            radial-gradient(circle at 90% 0%, rgba(155,108,255,.15), transparent 22rem),
            radial-gradient(circle at 0 18%, rgba(51,230,255,.10), transparent 20rem),
            #080d14 !important;
        color: #f4f6f8 !important;
    }

    .wp-block-navigation__responsive-dialog {
        position: relative !important;
        width: 100% !important;
        min-height: 100% !important;
        margin: 0 !important;
        box-sizing: border-box !important;
        background: #080d14 !important;
        color: #f4f6f8 !important;
        z-index: 1 !important;
    }

    .wp-block-navigation__responsive-container-content {
        position: relative !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        width: 100% !important;
        min-height: 100% !important;
        box-sizing: border-box !important;
        padding:
            max(86px, calc(env(safe-area-inset-top) + 64px))
            max(24px, env(safe-area-inset-right))
            max(30px, env(safe-area-inset-bottom))
            max(24px, env(safe-area-inset-left)) !important;
        background: #080d14 !important;
        color: #f4f6f8 !important;
        opacity: 1 !important;
        pointer-events: auto !important;
    }

    .wp-block-navigation__responsive-container-content .wp-block-navigation__container {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        width: 100% !important;
        gap: 0 !important;
        background: transparent !important;
    }

    .wp-block-navigation__responsive-container-content .wp-block-navigation-item {
        display: block !important;
        position: relative !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        z-index: 2 !important;
        pointer-events: auto !important;
        background: transparent !important;
    }

    .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content {
        display: flex !important;
        align-items: center !important;
        width: 100% !important;
        min-height: 60px !important;
        box-sizing: border-box !important;
        padding: .9rem 0 !important;
        border-bottom: 1px solid rgba(255,255,255,.10) !important;
        color: #f4f6f8 !important;
        background: transparent !important;
        text-decoration: none !important;
        font-size: 1rem !important;
        font-weight: 900 !important;
        line-height: 1.2 !important;
        letter-spacing: .045em !important;
        text-transform: uppercase !important;
        pointer-events: auto !important;
        touch-action: manipulation !important;
        white-space: normal !important;
    }

    .wp-block-navigation__responsive-container-content
    .wp-block-navigation-item:first-child
    .wp-block-navigation-item__content {
        border-top: 1px solid rgba(255,255,255,.10) !important;
    }

    /* Native WordPress X button. */
    .wp-block-navigation__responsive-container-close {
        position: fixed !important;
        top: max(18px, env(safe-area-inset-top)) !important;
        right: max(20px, env(safe-area-inset-right)) !important;
        z-index: 2147483001 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 48px !important;
        height: 48px !important;
        margin: 0 !important;
        padding: 8px !important;
        border: 1px solid rgba(255,255,255,.14) !important;
        border-radius: 4px !important;
        background: #101925 !important;
        color: #f4f6f8 !important;
        pointer-events: auto !important;
        touch-action: manipulation !important;
    }

    .wp-block-navigation__responsive-container-close svg {
        width: 28px !important;
        height: 28px !important;
        fill: currentColor !important;
    }

    .wp-block-navigation__responsive-container-open {
        color: var(--mc-text) !important;
        min-width: 44px !important;
        min-height: 44px !important;
        padding: 7px !important;
        touch-action: manipulation !important;
    }

    .wp-block-navigation__responsive-container-open svg {
        width: 30px !important;
        height: 30px !important;
        fill: currentColor !important;
    }
}


/* =========================================================
   MAKERCADE v0.11.1 — TRANSPARENT COLLECTION IMAGERY
   ========================================================= */

/* Full Size Arcade Cabinets: no white image boxes. */
.tax-product_cat.term-arcade-cabinets .mc-collection-grid .wp-block-woocommerce-product-image,
.tax-product_cat.term-arcade-cabinets .mc-collection-grid .wc-block-product-image,
.tax-product_cat.term-arcade-cabinets .mc-collection-grid figure,
.tax-product_cat.term-arcade-cabinets .mc-collection-grid a,
.tax-product_cat.term-arcade-cabinets .mc-collection-grid img {
    background-color: transparent !important;
    background-image: none !important;
}

/*
 * Some older product photos were uploaded with a white canvas baked into
 * the image itself. Darken blending makes white behave like the surrounding
 * dark card while preserving the cabinet silhouette.
 */
.tax-product_cat.term-arcade-cabinets .mc-collection-grid img {
    mix-blend-mode: darken;
    object-fit: contain !important;
}

/* Keep already-transparent PNGs clean and natural. */
.tax-product_cat.term-arcade-cabinets .mc-collection-grid img[src*=".png"],
.tax-product_cat.term-arcade-cabinets .mc-collection-grid img[src*=".webp"] {
    mix-blend-mode: normal;
}

/* Card media area should be the same dark surface as the rest of the card. */
.tax-product_cat.term-arcade-cabinets .mc-collection-grid .wp-block-woocommerce-product-image,
.tax-product_cat.term-arcade-cabinets .mc-collection-grid .wc-block-product-image {
    background: #0d141e !important;
}

/* Hero: remove any white panel/canvas treatment. */
.tax-product_cat.term-arcade-cabinets .mc-collection-hero--full .mc-collection-visual,
.tax-product_cat.term-arcade-cabinets .mc-collection-hero--full .mc-collection-visual picture,
.tax-product_cat.term-arcade-cabinets .mc-collection-hero--full .mc-collection-visual figure {
    background:
      linear-gradient(rgba(255,255,255,.022) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255,255,255,.022) 1px, transparent 1px),
      linear-gradient(145deg,#101925,#182239) !important;
    background-size: 24px 24px, 24px 24px, auto !important;
}

/* If hero source has a baked white background, blend it into the panel. */
.tax-product_cat.term-arcade-cabinets .mc-collection-hero--full .mc-collection-visual img {
    background: transparent !important;
    mix-blend-mode: darken;
    object-fit: contain !important;
}

/* Transparent hero assets should render normally. */
.tax-product_cat.term-arcade-cabinets .mc-collection-hero--full .mc-collection-visual img[src*=".png"],
.tax-product_cat.term-arcade-cabinets .mc-collection-hero--full .mc-collection-visual img[src*=".webp"] {
    mix-blend-mode: normal;
}


/* =========================================================
   MAKERCADE v0.11.2 — PRODUCT TABS + RELATED PRODUCTS
   ========================================================= */

/* WooCommerce product tabs — eliminate all inherited white surfaces. */
.mc-product-details-wrap .woocommerce-tabs,
.mc-product-details-wrap .woocommerce-tabs *,
.mc-product-details-wrap .wc-tabs,
.mc-product-details-wrap .wc-tabs *,
.mc-product-details-wrap .woocommerce-Tabs-panel,
.mc-product-details-wrap .woocommerce-Tabs-panel * {
    box-shadow: none !important;
}

.mc-product-details-wrap .woocommerce-tabs ul.tabs,
.mc-product-details-wrap .woocommerce-tabs .wc-tabs,
.mc-product-details-wrap ul.tabs.wc-tabs {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: .55rem !important;
    margin: 0 0 1.5rem !important;
    padding: 0 !important;
    border-bottom: 1px solid var(--mc-border) !important;
    background: transparent !important;
}

.mc-product-details-wrap .woocommerce-tabs ul.tabs::before,
.mc-product-details-wrap .woocommerce-tabs ul.tabs::after,
.mc-product-details-wrap ul.tabs.wc-tabs::before,
.mc-product-details-wrap ul.tabs.wc-tabs::after {
    display: none !important;
    border: 0 !important;
    box-shadow: none !important;
}

.mc-product-details-wrap .woocommerce-tabs ul.tabs li,
.mc-product-details-wrap ul.tabs.wc-tabs li {
    position: relative !important;
    z-index: 1 !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid var(--mc-border) !important;
    border-radius: 3px 3px 0 0 !important;
    background: #0c141e !important;
    box-shadow: none !important;
}

.mc-product-details-wrap .woocommerce-tabs ul.tabs li::before,
.mc-product-details-wrap .woocommerce-tabs ul.tabs li::after,
.mc-product-details-wrap ul.tabs.wc-tabs li::before,
.mc-product-details-wrap ul.tabs.wc-tabs li::after {
    display: none !important;
    content: none !important;
    border: 0 !important;
    box-shadow: none !important;
}

.mc-product-details-wrap .woocommerce-tabs ul.tabs li a,
.mc-product-details-wrap ul.tabs.wc-tabs li a {
    display: block !important;
    padding: .8rem 1.05rem !important;
    background: #0c141e !important;
    color: var(--mc-muted) !important;
    border: 0 !important;
    text-decoration: none !important;
    font-weight: 800 !important;
}

.mc-product-details-wrap .woocommerce-tabs ul.tabs li.active,
.mc-product-details-wrap ul.tabs.wc-tabs li.active {
    background: #101c29 !important;
    border-color: rgba(51,230,255,.45) !important;
}

.mc-product-details-wrap .woocommerce-tabs ul.tabs li.active a,
.mc-product-details-wrap ul.tabs.wc-tabs li.active a {
    background: #101c29 !important;
    color: var(--mc-cyan) !important;
}

.mc-product-details-wrap .woocommerce-Tabs-panel,
.mc-product-details-wrap .woocommerce-tabs .panel {
    margin: 0 !important;
    padding: 1.3rem 0 0 !important;
    background: transparent !important;
    color: var(--mc-text) !important;
    border: 0 !important;
}

.mc-product-details-wrap .woocommerce-Tabs-panel h2,
.mc-product-details-wrap .woocommerce-tabs .panel h2 {
    color: var(--mc-text) !important;
}

.mc-product-details-wrap .woocommerce-Tabs-panel p,
.mc-product-details-wrap .woocommerce-tabs .panel p,
.mc-product-details-wrap .woocommerce-Tabs-panel li {
    color: var(--mc-text) !important;
}

/* MakerCade related products renderer */
.mc-related-products {
    margin-top: 1.5rem;
}

.mc-related-products ul.products {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 1.2rem !important;
    margin: 0 !important;
    padding: 0 !important;
}

.mc-related-products ul.products::before,
.mc-related-products ul.products::after {
    display: none !important;
}

.mc-related-products ul.products li.product {
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 0 1rem !important;
    border: 1px solid var(--mc-border) !important;
    background: #0d141e !important;
    list-style: none !important;
    overflow: hidden;
}

.mc-related-products ul.products li.product a {
    text-decoration: none !important;
}

.mc-related-products ul.products li.product img {
    display: block !important;
    width: 100% !important;
    height: 280px !important;
    margin: 0 !important;
    padding: 1rem !important;
    object-fit: contain !important;
    background: #101925 !important;
    box-sizing: border-box !important;
}

.mc-related-products ul.products li.product .woocommerce-loop-product__title {
    margin: 0 !important;
    padding: 1rem 1rem .35rem !important;
    color: var(--mc-text) !important;
    font-size: 1rem !important;
    line-height: 1.25 !important;
}

.mc-related-products ul.products li.product .price {
    display: block !important;
    padding: 0 1rem .8rem !important;
    color: var(--mc-cyan) !important;
    font-weight: 900 !important;
}

.mc-related-products ul.products li.product .button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: calc(100% - 2rem) !important;
    min-height: 44px !important;
    margin: 0 1rem !important;
    padding: .75rem 1rem !important;
    border: 1px solid rgba(51,230,255,.28) !important;
    border-radius: 3px !important;
    background: #12202d !important;
    color: var(--mc-text) !important;
    font-weight: 900 !important;
    text-align: center !important;
    text-transform: uppercase !important;
}

.mc-related-products ul.products li.product .button:hover {
    border-color: var(--mc-cyan) !important;
    color: var(--mc-cyan) !important;
}

.mc-related-empty {
    margin-top: 1rem;
    color: var(--mc-muted);
}

@media (max-width: 900px) {
    .mc-related-products ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 600px) {
    .mc-related-products ul.products {
        grid-template-columns: 1fr !important;
    }

    .mc-related-products ul.products li.product img {
        height: 260px !important;
    }
}


/* =========================================================
   MAKERCADE v0.11.3 — CONDITIONAL CONFIGURE HEADING
   ========================================================= */

.mc-configure-heading.is-hidden {
    display: none !important;
}


/* =========================================================
   MAKERCADE v0.11.4 — REMOVE INNER HERO OUTLINE
   ========================================================= */

/* Real-image hero panels should not have the old decorative cyan inset box. */
.mc-content-visual--services::before,
.mc-content-visual--maker::before {
    display: none !important;
    content: none !important;
}

/* Keep the outer frame subtle and intentional. */
.mc-content-visual--services,
.mc-content-visual--maker {
    border: 1px solid var(--mc-border) !important;
    box-shadow: none !important;
}


/* =========================================================
   MAKERCADE v0.11.5 — ABOUT HERO ARTWORK
   ========================================================= */

.mc-about-page .mc-content-visual--maker {
    padding: 0 !important;
    overflow: hidden !important;
    background: #080d14 !important;
    border: 1px solid var(--mc-border) !important;
}

.mc-about-page .mc-content-visual--maker::before,
.mc-about-page .mc-content-visual--maker::after {
    display: none !important;
    content: none !important;
}

.mc-about-page .mc-content-visual--maker img.mc-about-hero-image {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center !important;
    background: transparent !important;
}

/* Hide any old text label that may still be attached beneath this hero visual. */
.mc-about-page .mc-content-visual--maker + .mc-visual-label,
.mc-about-page .mc-content-visual--maker .mc-visual-label {
    display: none !important;
}



/* =========================================================
   MAKERCADE v0.11.6 — CLEAN ABOUT HERO ART
   ========================================================= */

.mc-about-page .mc-content-visual--maker {
    padding: 0 !important;
    overflow: hidden !important;
    background: #080d14 !important;
    border: 1px solid var(--mc-border) !important;
}

.mc-about-page .mc-content-visual--maker::before,
.mc-about-page .mc-content-visual--maker::after {
    display: none !important;
    content: none !important;
}

.mc-about-page .mc-content-visual--maker img.mc-about-hero-image {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center !important;
    background: transparent !important;
}


/* =========================================================
   MAKERCADE v0.11.8 — SHOP DROPDOWN
   ========================================================= */

@media (min-width: 901px) {
    .mc-nav .wp-block-navigation-item.has-child {
        position: relative !important;
    }

    .mc-nav .wp-block-navigation-item.has-child > .wp-block-navigation__submenu-container {
        min-width: 220px !important;
        padding: .45rem !important;
        border: 1px solid var(--mc-border) !important;
        border-radius: 4px !important;
        background: #0b121b !important;
        box-shadow: 0 18px 45px rgba(0,0,0,.34) !important;
    }

    .mc-nav .wp-block-navigation__submenu-container .wp-block-navigation-item {
        width: 100% !important;
    }

    .mc-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
        display: block !important;
        width: 100% !important;
        padding: .72rem .8rem !important;
        border-radius: 3px !important;
        color: var(--mc-text) !important;
        background: transparent !important;
        font-size: .76rem !important;
        font-weight: 800 !important;
        letter-spacing: .035em !important;
        text-transform: uppercase !important;
        white-space: nowrap !important;
    }

    .mc-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover,
    .mc-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:focus {
        background: #111c28 !important;
        color: var(--mc-cyan) !important;
    }
}

/* Mobile: SHOP submenu should simply appear expanded with normal stacked links. */
@media (max-width: 900px) {
    .wp-block-navigation__responsive-container.is-menu-open
    .wp-block-navigation-item.has-child > .wp-block-navigation__submenu-container {
        display: block !important;
        position: static !important;
        width: 100% !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 0 0 1rem !important;
        border: 0 !important;
        background: transparent !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

    .wp-block-navigation__responsive-container.is-menu-open
    .wp-block-navigation-item.has-child > .wp-block-navigation-submenu__toggle {
        display: none !important;
    }

    .wp-block-navigation__responsive-container.is-menu-open
    .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
        min-height: 50px !important;
        font-size: .9rem !important;
        color: var(--mc-muted) !important;
        border-bottom: 1px solid rgba(255,255,255,.07) !important;
    }
}


/* =========================================================
   MAKERCADE v0.11.9 — MOBILE CART NAV
   ========================================================= */
@media (max-width: 900px) {
    .wp-block-navigation__responsive-container.is-menu-open
    .wp-block-navigation__responsive-container-content {
        overflow-y: auto !important;
        max-height: 100dvh !important;
        padding-bottom: 3rem !important;
    }

    .wp-block-navigation__responsive-container.is-menu-open
    .mc-mobile-cart-link {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .wp-block-navigation__responsive-container.is-menu-open
    .mc-mobile-cart-link > a {
        display: flex !important;
        width: 100% !important;
        min-height: 54px !important;
        align-items: center !important;
    }
}


/* =========================================================
   MAKERCADE v0.12.0 — MOBILE EMPTY CART PRODUCT BUTTONS
   ========================================================= */

@media (max-width: 700px) {

    /* Empty-cart / New in store product CTA buttons */
    .wc-block-cart__empty-cart__title ~ .wp-block-woocommerce-product-collection
    .wp-block-button__link,
    .wc-block-cart__empty-cart__title ~ .wp-block-woocommerce-product-collection
    .wc-block-components-product-button__button,
    .wc-block-cart__empty-cart__title ~ .wp-block-woocommerce-product-collection
    a.button,
    .wp-block-woocommerce-empty-cart-block
    .wp-block-button__link,
    .wp-block-woocommerce-empty-cart-block
    .wc-block-components-product-button__button,
    .wp-block-woocommerce-empty-cart-block
    a.button,
    .wc-block-grid__product
    .wp-block-button__link,
    .wc-block-grid__product
    .wc-block-grid__product-add-to-cart a,
    .woocommerce-cart .products .button {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-width: 150px !important;
        min-height: 50px !important;
        padding: .85rem 1.2rem !important;
        border: 1px solid rgba(51,230,255,.34) !important;
        border-radius: 4px !important;
        background: var(--mc-cyan) !important;
        color: #071018 !important;
        -webkit-text-fill-color: #071018 !important;
        font-size: .86rem !important;
        font-weight: 900 !important;
        line-height: 1.15 !important;
        letter-spacing: .045em !important;
        text-align: center !important;
        text-decoration: none !important;
        text-transform: uppercase !important;
        opacity: 1 !important;
        visibility: visible !important;
        text-indent: 0 !important;
        overflow: visible !important;
    }

    /* Woo blocks sometimes put the text in nested spans. */
    .wp-block-woocommerce-empty-cart-block
    .wc-block-components-product-button__button *,
    .wp-block-woocommerce-empty-cart-block
    .wp-block-button__link *,
    .wc-block-grid__product-add-to-cart a * {
        color: #071018 !important;
        -webkit-text-fill-color: #071018 !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

    .wp-block-woocommerce-empty-cart-block
    .wc-block-components-product-button__button:hover,
    .wp-block-woocommerce-empty-cart-block
    .wp-block-button__link:hover,
    .wc-block-grid__product-add-to-cart a:hover {
        background: #63e9fb !important;
        color: #071018 !important;
    }

    /* Prevent theme pseudo-elements from covering button labels. */
    .wp-block-woocommerce-empty-cart-block
    .wc-block-components-product-button__button::before,
    .wp-block-woocommerce-empty-cart-block
    .wc-block-components-product-button__button::after,
    .wc-block-grid__product-add-to-cart a::before,
    .wc-block-grid__product-add-to-cart a::after {
        display: none !important;
        content: none !important;
    }
}


/* =========================================================
   MAKERCADE v0.12.2 — OUR GAMES FULL-CARD LINKS
   ========================================================= */

.mc-game-card {
    position: relative !important;
    cursor: pointer;
}

.mc-game-card .mc-game-link::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 20 !important;
}

.mc-game-card .mc-game-link {
    position: relative;
    z-index: 21;
}

/* Keep the entire card visibly interactive without changing its layout. */
.mc-game-card:hover {
    border-color: rgba(51, 230, 255, .52) !important;
}

.mc-game-card:focus-within {
    outline: 2px solid var(--mc-cyan);
    outline-offset: 3px;
}


/* =========================================================
   MAKERCADE v0.12.3 — DEFINITIVE OUR GAMES CARD LINKS
   ========================================================= */

.mc-game-card {
    cursor: pointer !important;
}

.mc-game-card:hover {
    transform: translateY(-3px);
    border-color: rgba(51,230,255,.55) !important;
}

.mc-game-card:focus {
    outline: 2px solid var(--mc-cyan) !important;
    outline-offset: 3px !important;
}

/* Remove the stretched-link pseudo overlay from v0.12.2. */
.mc-game-card .mc-game-link::after {
    display: none !important;
    content: none !important;
}


/* =========================================================
   MAKERCADE v0.12.5 — MINI / TABLETOP / SHOP IDENTITIES
   ========================================================= */

.mc-collection-hero--mini {
    background:
        radial-gradient(circle at 14% 0%, rgba(51,230,255,.11), transparent 29rem),
        radial-gradient(circle at 88% 18%, rgba(155,108,255,.10), transparent 28rem),
        linear-gradient(180deg, rgba(255,255,255,.012), transparent);
}

.mc-collection-hero--tabletop {
    background:
        radial-gradient(circle at 12% 0%, rgba(255,184,88,.08), transparent 28rem),
        radial-gradient(circle at 88% 12%, rgba(51,230,255,.09), transparent 28rem),
        linear-gradient(180deg, rgba(255,255,255,.012), transparent);
}

.mc-collection-hero--shop {
    background:
        radial-gradient(circle at 12% 0%, rgba(155,108,255,.10), transparent 30rem),
        radial-gradient(circle at 88% 10%, rgba(51,230,255,.09), transparent 30rem),
        linear-gradient(180deg, rgba(255,255,255,.012), transparent);
}

.mc-collection-hero--mini .mc-collection-visual::after {
    content: "SMALL FORMAT • BIG ARCADE ENERGY";
}

.mc-collection-hero--tabletop .mc-collection-visual::after {
    content: "COMPACT • DESKTOP • READY TO PLAY";
}

.mc-collection-hero--shop .mc-collection-visual::after {
    content: "CABINETS • KITS • MINI • TABLETOP";
}

/*
 * Category-specific heroes dynamically borrow the first real product image
 * from their own collection. This class is applied at runtime.
 */
.mc-collection-visual img.mc-category-product-hero {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 390px !important;
    object-fit: contain !important;
    padding: 1.15rem !important;
    background: transparent !important;
    filter: drop-shadow(0 22px 26px rgba(0,0,0,.42));
}

@media (max-width: 900px) {
    .mc-collection-visual img.mc-category-product-hero {
        min-height: 320px !important;
    }
}


/* =========================================================
   MAKERCADE v0.12.7 — COLLECTION WIDTH + FAQ DARK THEME
   ========================================================= */

/* ---------------------------------------------------------
   FULL SIZE ARCADE CABINETS — RESTORE CENTERED SITE WIDTH
   --------------------------------------------------------- */

.tax-product_cat.term-arcade-cabinets .mc-collection-hero {
    width: 100% !important;
    overflow: hidden !important;
}

.tax-product_cat.term-arcade-cabinets .mc-collection-hero > .wp-block-group,
.tax-product_cat.term-arcade-cabinets .mc-collection-hero .mc-collection-hero-grid,
.tax-product_cat.term-arcade-cabinets .mc-collection-strip > .wp-block-columns,
.tax-product_cat.term-arcade-cabinets .mc-collection-body > .alignwide,
.tax-product_cat.term-arcade-cabinets .mc-collection-body .mc-collection-toolbar,
.tax-product_cat.term-arcade-cabinets .mc-collection-body .mc-collection-grid,
.tax-product_cat.term-arcade-cabinets .mc-collection-body .mc-collection-callout {
    width: min(100% - 40px, 1360px) !important;
    max-width: 1360px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

.tax-product_cat.term-arcade-cabinets .mc-collection-hero-grid {
    display: grid !important;
    grid-template-columns: minmax(0, .95fr) minmax(420px, 1.05fr) !important;
    gap: clamp(2.5rem, 5vw, 5rem) !important;
    align-items: center !important;
    min-height: 650px !important;
    padding-top: clamp(3rem, 6vw, 6rem) !important;
    padding-bottom: clamp(3rem, 6vw, 6rem) !important;
}

.tax-product_cat.term-arcade-cabinets .mc-collection-hero-grid > * {
    min-width: 0 !important;
}

.tax-product_cat.term-arcade-cabinets .mc-collection-visual {
    width: 100% !important;
    max-width: 620px !important;
    justify-self: end !important;
    box-sizing: border-box !important;
}

.tax-product_cat.term-arcade-cabinets .mc-collection-visual img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-height: 640px !important;
    object-fit: contain !important;
}

.tax-product_cat.term-arcade-cabinets .mc-collection-title {
    max-width: 720px !important;
}

@media (max-width: 900px) {
    .tax-product_cat.term-arcade-cabinets .mc-collection-hero > .wp-block-group,
    .tax-product_cat.term-arcade-cabinets .mc-collection-hero .mc-collection-hero-grid,
    .tax-product_cat.term-arcade-cabinets .mc-collection-strip > .wp-block-columns,
    .tax-product_cat.term-arcade-cabinets .mc-collection-body > .alignwide,
    .tax-product_cat.term-arcade-cabinets .mc-collection-body .mc-collection-toolbar,
    .tax-product_cat.term-arcade-cabinets .mc-collection-body .mc-collection-grid,
    .tax-product_cat.term-arcade-cabinets .mc-collection-body .mc-collection-callout {
        width: min(100% - 32px, 1360px) !important;
    }

    .tax-product_cat.term-arcade-cabinets .mc-collection-hero-grid {
        grid-template-columns: 1fr !important;
        min-height: 0 !important;
        gap: 2rem !important;
    }

    .tax-product_cat.term-arcade-cabinets .mc-collection-visual {
        max-width: 620px !important;
        justify-self: center !important;
    }
}


/* ---------------------------------------------------------
   FAQ — REMOVE WHITE PLUGIN/BLOCK SURFACES
   --------------------------------------------------------- */

body.page-template-default .entry-content:has(.schema-faq),
body.page-template-default .wp-block-post-content:has(.schema-faq),
body.page-template-default main:has(.schema-faq) {
    background: transparent !important;
}

/* Generic FAQ wrappers used by common accordion/schema blocks. */
.schema-faq,
.schema-faq-section,
.wp-block-yoast-faq-block,
.wp-block-details,
.wp-block-details[open],
.faq,
.faq-container,
.accordion,
.accordion-item {
    background: transparent !important;
    color: var(--mc-text) !important;
}

/* Outer white FAQ card/container. */
body.page-id-0 .wp-block-post-content,
body.page-template-default .wp-block-post-content {
    color: var(--mc-text);
}

/*
 * Target the FAQ content block without relying on one plugin.
 * The :has() selectors are supported by current Safari/Chrome.
 */
body:has(.schema-faq) .wp-block-post-content > .wp-block-group,
body:has(.wp-block-yoast-faq-block) .wp-block-post-content > .wp-block-group,
body:has(.faq) .wp-block-post-content > .wp-block-group,
body:has(.accordion) .wp-block-post-content > .wp-block-group {
    background: transparent !important;
}

/* FAQ question rows */
.schema-faq-question,
.wp-block-yoast-faq-block .schema-faq-question,
.faq-question,
.accordion-header,
.accordion-button,
details > summary {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 58px !important;
    margin: 0 !important;
    padding: 1rem 1.1rem !important;
    border: 1px solid var(--mc-border) !important;
    background: #0d151f !important;
    color: var(--mc-text) !important;
    box-shadow: none !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
}

/* FAQ answers */
.schema-faq-answer,
.wp-block-yoast-faq-block .schema-faq-answer,
.faq-answer,
.accordion-body,
.accordion-content,
details > :not(summary) {
    margin: 0 !important;
    padding: 1rem 1.1rem 1.25rem !important;
    border: 1px solid var(--mc-border) !important;
    border-top: 0 !important;
    background: #0a1119 !important;
    color: var(--mc-muted) !important;
    box-shadow: none !important;
    line-height: 1.65 !important;
}

/* Spacing between FAQ rows */
.schema-faq-section,
.wp-block-yoast-faq-block .schema-faq-section,
.faq-item,
.accordion-item,
details {
    margin-bottom: .65rem !important;
    border: 0 !important;
    background: transparent !important;
}

/* Accordion +/- and chevrons */
.schema-faq-question::after,
.faq-question::after,
.accordion-button::after,
details > summary::after {
    color: var(--mc-cyan) !important;
    filter: none !important;
}

/* More aggressive cleanup for plugin-generated inline white backgrounds. */
body:has(.schema-faq) [style*="background"],
body:has(.accordion) [style*="background"] {
    background-color: #0d151f !important;
}

/*
 * The screenshot shows a large white wrapper around the whole accordion.
 * These catch common WordPress content wrappers on the FAQ page.
 */
body.page:has(h1:first-of-type) .wp-block-post-content > div:has(.schema-faq),
body.page .wp-block-post-content > div:has(.accordion),
body.page .entry-content > div:has(.schema-faq),
body.page .entry-content > div:has(.accordion) {
    padding: clamp(1rem, 2.5vw, 2rem) !important;
    border: 1px solid var(--mc-border) !important;
    background: #0b121b !important;
    color: var(--mc-text) !important;
}

/* Explicit FAQ-page fallback based on body slug/class variations. */
body.page-faq .wp-block-post-content,
body.page-faq .entry-content,
body.page-faq .faq,
body.page-faq .accordion,
body.page-faq .schema-faq {
    background: transparent !important;
    color: var(--mc-text) !important;
}



.mc-faq-page .mc-faq-surface {
    padding: clamp(1rem, 2.5vw, 2rem) !important;
    border: 1px solid var(--mc-border) !important;
    background: #0b121b !important;
    color: var(--mc-text) !important;
}

.mc-faq-page .mc-faq-component,
.mc-faq-page .mc-faq-component > *,
.mc-faq-page .mc-faq-component [class*="accordion"],
.mc-faq-page .mc-faq-component [class*="faq"] {
    box-shadow: none !important;
}

.mc-faq-page .mc-faq-component button,
.mc-faq-page .mc-faq-component summary,
.mc-faq-page .mc-faq-component [role="button"] {
    background: #0d151f !important;
    color: var(--mc-text) !important;
    border-color: var(--mc-border) !important;
}

.mc-faq-page .mc-faq-component button + *,
.mc-faq-page .mc-faq-component details > :not(summary) {
    background: #0a1119 !important;
    color: var(--mc-muted) !important;
}



/* =========================================================
   MAKERCADE v0.12.8 — FAQ HARD OVERRIDE + 4P HERO
   ========================================================= */

/* Stable classes added by the FAQ runtime normalizer. */
.mc-faq-page .mc-faq-force-surface {
    background: #0b121b !important;
    background-image: none !important;
    color: #f4f6f8 !important;
    border-color: #253342 !important;
    box-shadow: none !important;
}

.mc-faq-page .mc-faq-force-question {
    background: #0d151f !important;
    background-image: none !important;
    color: #f4f6f8 !important;
    border: 1px solid #253342 !important;
    box-shadow: none !important;
}

.mc-faq-page .mc-faq-force-question,
.mc-faq-page .mc-faq-force-question * {
    color: #f4f6f8 !important;
    -webkit-text-fill-color: #f4f6f8 !important;
}

.mc-faq-page .mc-faq-force-answer {
    background: #091018 !important;
    background-image: none !important;
    color: #aeb9c8 !important;
    border-color: #253342 !important;
    box-shadow: none !important;
}

.mc-faq-page .mc-faq-force-answer,
.mc-faq-page .mc-faq-force-answer * {
    color: #aeb9c8 !important;
    -webkit-text-fill-color: #aeb9c8 !important;
}

.mc-faq-page .mc-faq-force-question svg,
.mc-faq-page .mc-faq-force-question [class*="icon"],
.mc-faq-page .mc-faq-force-question [class*="plus"] {
    color: #33e6ff !important;
    fill: #33e6ff !important;
    stroke: #33e6ff !important;
}

/* The selected 4-player cabinet hero should sit naturally in the panel. */
.tax-product_cat.term-arcade-cabinets
.mc-collection-visual img.mc-arcade-4p-hero {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-height: 640px !important;
    object-fit: contain !important;
    object-position: center !important;
    background: transparent !important;
}


/* =========================================================
   MAKERCADE v0.12.9 — WHY CHOOSE MAKERCADE
   ========================================================= */

.mc-why {
    position: relative;
    padding: clamp(4rem, 7vw, 7rem) 0;
    border-top: 1px solid var(--mc-border);
    border-bottom: 1px solid var(--mc-border);
    background:
        radial-gradient(circle at 12% 10%, rgba(51,230,255,.08), transparent 26rem),
        radial-gradient(circle at 88% 16%, rgba(155,108,255,.08), transparent 28rem),
        #090f16;
}

.mc-why-inner {
    width: min(100% - 40px, 1360px);
    margin: 0 auto;
}

.mc-why-head {
    max-width: 760px;
    margin-bottom: 2.2rem;
}

.mc-why-head .mc-eyebrow {
    margin-bottom: .75rem;
}

.mc-why-head h2 {
    margin: 0 0 .9rem;
    font-size: clamp(2.4rem, 4.6vw, 4.6rem);
    line-height: .98;
    letter-spacing: -.045em;
}

.mc-why-head p {
    margin: 0;
    max-width: 700px;
    color: var(--mc-muted);
    font-size: 1.05rem;
    line-height: 1.65;
}

.mc-why-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.mc-why-card {
    position: relative;
    min-height: 240px;
    padding: 1.4rem 1.35rem 1.45rem;
    border: 1px solid var(--mc-border);
    background: linear-gradient(180deg, #0f1721, #0b121a);
    overflow: hidden;
}

.mc-why-card::after {
    content: "";
    position: absolute;
    inset: auto 0 0 0;
    height: 2px;
    background: linear-gradient(90deg, var(--mc-cyan), transparent 75%);
    opacity: .55;
}

.mc-why-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    margin-bottom: 1.05rem;
    border: 1px solid rgba(51,230,255,.28);
    border-radius: 4px;
    color: var(--mc-cyan);
    background: #0a131d;
    font-size: 1.15rem;
    font-weight: 900;
}

.mc-why-card h3 {
    margin: 0 0 .6rem;
    color: var(--mc-text);
    font-size: 1.05rem;
    line-height: 1.25;
}

.mc-why-card p {
    margin: 0;
    color: var(--mc-muted);
    line-height: 1.6;
}

@media (max-width: 900px) {
    .mc-why-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 600px) {
    .mc-why {
        padding: 3.6rem 0;
    }

    .mc-why-inner {
        width: min(100% - 32px, 1360px);
    }

    .mc-why-grid {
        grid-template-columns: 1fr;
    }

    .mc-why-card {
        min-height: 0;
    }
}


/* =========================================================
   MAKERCADE v0.13.0 — 404 / LOST IN THE ARCADE
   ========================================================= */

.mc-404 {
    position: relative;
    min-height: calc(100vh - 180px);
    display: flex;
    align-items: center;
    overflow: hidden;
    padding: clamp(4rem, 8vw, 8rem) 0;
    border-bottom: 1px solid var(--mc-border);
    background:
        linear-gradient(rgba(51,230,255,.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(51,230,255,.025) 1px, transparent 1px),
        radial-gradient(circle at 18% 18%, rgba(51,230,255,.12), transparent 28rem),
        radial-gradient(circle at 82% 30%, rgba(155,108,255,.11), transparent 30rem),
        #080d14;
    background-size:
        32px 32px,
        32px 32px,
        auto,
        auto,
        auto;
}

.mc-404::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: repeating-linear-gradient(
        180deg,
        rgba(255,255,255,.018) 0,
        rgba(255,255,255,.018) 1px,
        transparent 1px,
        transparent 4px
    );
    opacity: .45;
}

.mc-404-inner {
    position: relative;
    z-index: 1;
    width: min(100% - 40px, 1180px);
    margin: 0 auto;
    text-align: center;
}

.mc-404-code {
    margin: 0;
    color: var(--mc-cyan);
    font-size: clamp(7rem, 22vw, 17rem);
    font-weight: 950;
    line-height: .78;
    letter-spacing: -.08em;
    text-shadow:
        0 0 20px rgba(51,230,255,.20),
        5px 0 0 rgba(155,108,255,.18);
}

.mc-404-kicker {
    margin: 2rem 0 .65rem;
    color: var(--mc-cyan);
    font-size: .78rem;
    font-weight: 900;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.mc-404 h1 {
    margin: 0 auto .9rem;
    max-width: 820px;
    color: var(--mc-text);
    font-size: clamp(2.3rem, 5vw, 5rem);
    line-height: .98;
    letter-spacing: -.045em;
}

.mc-404-copy {
    max-width: 680px;
    margin: 0 auto;
    color: var(--mc-muted);
    font-size: 1.05rem;
    line-height: 1.7;
}

.mc-404-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .8rem;
    margin-top: 2rem;
}

.mc-404-actions a {
    display: inline-flex;
    min-height: 50px;
    align-items: center;
    justify-content: center;
    padding: .8rem 1.25rem;
    border-radius: 3px;
    font-weight: 900;
    letter-spacing: .035em;
    text-decoration: none;
    text-transform: uppercase;
}

.mc-404-actions .primary {
    border: 1px solid var(--mc-cyan);
    background: var(--mc-cyan);
    color: #071018;
}

.mc-404-actions .secondary {
    border: 1px solid var(--mc-border);
    background: #0e1721;
    color: var(--mc-text);
}

.mc-404-actions .secondary:hover {
    border-color: var(--mc-cyan);
    color: var(--mc-cyan);
}

.mc-404-terminal {
    width: min(100%, 700px);
    margin: 3rem auto 0;
    border: 1px solid rgba(51,230,255,.25);
    background: rgba(5,11,17,.78);
    text-align: left;
    box-shadow: 0 20px 55px rgba(0,0,0,.32);
}

.mc-404-terminal-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 38px;
    padding: 0 .85rem;
    border-bottom: 1px solid rgba(51,230,255,.18);
    color: var(--mc-cyan);
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.mc-404-terminal-body {
    padding: 1.1rem 1.2rem 1.25rem;
    color: #9fb0bf;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    font-size: .82rem;
    line-height: 1.8;
}

.mc-404-terminal-body strong {
    color: var(--mc-text);
    font-weight: 700;
}

.mc-404-terminal-body .ok {
    color: var(--mc-cyan);
}

@media (max-width: 600px) {
    .mc-404 {
        min-height: 0;
        padding: 4rem 0 5rem;
    }

    .mc-404-inner {
        width: min(100% - 32px, 1180px);
    }

    .mc-404-code {
        font-size: clamp(6rem, 35vw, 10rem);
    }

    .mc-404-actions {
        flex-direction: column;
    }

    .mc-404-actions a {
        width: 100%;
        box-sizing: border-box;
    }
}

/* Homepage hero logo */
.mc-hero-logo {
    width:min(92%,560px);
    max-height:600px;
    object-fit:contain;
}

@media (max-width: 781px) {
    .mc-hero-logo {
        width:min(86vw,460px);
        max-height:460px;
        margin-inline:auto;
    }
}


/* =========================================================
   MAKERCADE v0.13.6 — EMPTY CART PRODUCT BUTTON LABEL FIX
   WooCommerce "New in store" button labels were only forced
   visible inside the old mobile-only rule. Apply the same
   label treatment at every viewport width.
   ========================================================= */

.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wp-block-button__link,
.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-components-product-button__button,
.woocommerce-cart .wp-block-woocommerce-empty-cart-block
a.button,
.woocommerce-cart .wc-block-grid__product
.wp-block-button__link,
.woocommerce-cart .wc-block-grid__product
.wc-block-grid__product-add-to-cart a,
.woocommerce-cart .products .button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 44px !important;
    padding: .75rem 1.15rem !important;
    border: 1px solid rgba(51,230,255,.34) !important;
    border-radius: 4px !important;
    background: var(--mc-cyan) !important;
    color: #071018 !important;
    -webkit-text-fill-color: #071018 !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
    text-align: center !important;
    text-decoration: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    text-indent: 0 !important;
}

.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wp-block-button__link *,
.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-components-product-button__button *,
.woocommerce-cart .wp-block-woocommerce-empty-cart-block
a.button *,
.woocommerce-cart .wc-block-grid__product
.wc-block-grid__product-add-to-cart a *,
.woocommerce-cart .products .button * {
    color: #071018 !important;
    -webkit-text-fill-color: #071018 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wp-block-button__link:hover,
.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-components-product-button__button:hover,
.woocommerce-cart .wp-block-woocommerce-empty-cart-block
a.button:hover,
.woocommerce-cart .wc-block-grid__product
.wc-block-grid__product-add-to-cart a:hover,
.woocommerce-cart .products .button:hover {
    background: #63e9fb !important;
    color: #071018 !important;
    -webkit-text-fill-color: #071018 !important;
}

/* Keep generated overlays/pseudo-elements from obscuring labels. */
.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wp-block-button__link::before,
.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wp-block-button__link::after,
.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-components-product-button__button::before,
.woocommerce-cart .wp-block-woocommerce-empty-cart-block
.wc-block-components-product-button__button::after,
.woocommerce-cart .wc-block-grid__product
.wc-block-grid__product-add-to-cart a::before,
.woocommerce-cart .wc-block-grid__product
.wc-block-grid__product-add-to-cart a::after {
    display: none !important;
    content: none !important;
}


/* =========================================================
   MAKERCADE v0.13.7 — SITE REVIEWS INTEGRATION
   ========================================================= */

.mc-reviews-home,
.mc-services-reviews,
.mc-add-review-page main {
    --mc-review-border: rgba(51, 230, 255, .20);
    --mc-review-surface: #0d151f;
    --mc-review-surface-2: #091018;
}

.mc-reviews-home .mc-review-summary,
.mc-services-reviews .mc-review-summary {
    margin: 2rem 0 1.25rem;
    padding: 1.15rem 1.25rem;
    border: 1px solid var(--mc-review-border);
    background: linear-gradient(180deg, #0f1822, #0b121a);
}

.mc-reviews-home .mc-review-list,
.mc-services-reviews .mc-review-list {
    margin-top: 1rem;
}

/* Site Reviews uses the glsr namespace. Keep the plugin semantics and make
   its native output visually belong to the MakerCade theme. */
.mc-reviews-home .glsr,
.mc-services-reviews .glsr,
.mc-add-review-page .glsr {
    color: var(--mc-text) !important;
}

.mc-reviews-home .glsr-reviews,
.mc-services-reviews .glsr-reviews {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem !important;
}

.mc-reviews-home .glsr-review,
.mc-services-reviews .glsr-review {
    margin: 0 !important;
    padding: 1.35rem !important;
    border: 1px solid var(--mc-review-border) !important;
    border-radius: 4px !important;
    background: linear-gradient(180deg, var(--mc-review-surface), var(--mc-review-surface-2)) !important;
    box-shadow: none !important;
}

.mc-reviews-home .glsr-review-title,
.mc-services-reviews .glsr-review-title,
.mc-reviews-home .glsr-review-title h3,
.mc-services-reviews .glsr-review-title h3 {
    color: var(--mc-text) !important;
    font-weight: 900 !important;
}

.mc-reviews-home .glsr-review-content,
.mc-services-reviews .glsr-review-content,
.mc-reviews-home .glsr-review-content p,
.mc-services-reviews .glsr-review-content p {
    color: var(--mc-muted) !important;
    line-height: 1.65 !important;
}

.mc-reviews-home .glsr-review-author,
.mc-services-reviews .glsr-review-author,
.mc-reviews-home .glsr-review-date,
.mc-services-reviews .glsr-review-date {
    color: #8fa0af !important;
}

.mc-reviews-home .glsr-star,
.mc-services-reviews .glsr-star,
.mc-add-review-page .glsr-star {
    color: #ffd45a !important;
}

.mc-review-actions {
    margin-top: 1.5rem !important;
}

.mc-services-reviews {
    margin-top: clamp(3rem, 6vw, 6rem);
    padding-top: clamp(2.5rem, 5vw, 4.5rem);
    border-top: 1px solid var(--mc-border);
}

.mc-review-form-wrap,
.mc-add-review-page .glsr-form {
    margin-top: 2rem;
    padding: clamp(1.25rem, 3vw, 2rem) !important;
    border: 1px solid var(--mc-review-border) !important;
    background: linear-gradient(180deg, #0e1721, #091018) !important;
}

.mc-review-form-wrap h3 {
    margin: 0 0 .5rem;
    color: var(--mc-text);
    font-size: clamp(1.4rem, 2vw, 2rem);
}

.mc-review-form-wrap > p {
    margin: 0 0 1.4rem;
    color: var(--mc-muted);
}

.mc-services-reviews .glsr-form label,
.mc-add-review-page .glsr-form label {
    color: var(--mc-text) !important;
    font-weight: 800 !important;
}

.mc-services-reviews .glsr-form input:not([type="checkbox"]):not([type="radio"]),
.mc-services-reviews .glsr-form textarea,
.mc-services-reviews .glsr-form select,
.mc-add-review-page .glsr-form input:not([type="checkbox"]):not([type="radio"]),
.mc-add-review-page .glsr-form textarea,
.mc-add-review-page .glsr-form select {
    width: 100% !important;
    box-sizing: border-box !important;
    border: 1px solid #2a3a49 !important;
    border-radius: 3px !important;
    background: #070d13 !important;
    color: var(--mc-text) !important;
    -webkit-text-fill-color: var(--mc-text) !important;
}

.mc-services-reviews .glsr-form input:focus,
.mc-services-reviews .glsr-form textarea:focus,
.mc-services-reviews .glsr-form select:focus,
.mc-add-review-page .glsr-form input:focus,
.mc-add-review-page .glsr-form textarea:focus,
.mc-add-review-page .glsr-form select:focus {
    border-color: var(--mc-cyan) !important;
    outline: 1px solid var(--mc-cyan) !important;
    box-shadow: none !important;
}

.mc-services-reviews .glsr-button,
.mc-services-reviews .glsr-form button,
.mc-add-review-page .glsr-button,
.mc-add-review-page .glsr-form button,
.mc-reviews-home .glsr-button {
    min-height: 46px !important;
    padding: .75rem 1.15rem !important;
    border: 1px solid var(--mc-cyan) !important;
    border-radius: 3px !important;
    background: var(--mc-cyan) !important;
    color: #071018 !important;
    -webkit-text-fill-color: #071018 !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .03em !important;
    cursor: pointer !important;
}

.mc-services-reviews .glsr-pagination,
.mc-services-reviews .glsr-pagination-loadmore {
    margin-top: 1.25rem !important;
    text-align: center !important;
}

@media (max-width: 900px) {
    .mc-reviews-home .glsr-reviews,
    .mc-services-reviews .glsr-reviews {
        grid-template-columns: 1fr !important;
    }
}


/* =========================================================
   MAKERCADE v0.13.8 — REVIEWS PAGE + REVIEW NAVIGATION
   ========================================================= */

.mc-reviews-page-shell {
    position: relative;
    padding: clamp(3.5rem, 7vw, 6.5rem) 0;
    background:
        radial-gradient(circle at 15% 10%, rgba(51,230,255,.07), transparent 28rem),
        radial-gradient(circle at 85% 15%, rgba(155,108,255,.07), transparent 28rem),
        #090f16;
}

.mc-reviews-page-inner {
    width: min(100% - 40px, 1180px);
    margin: 0 auto;
}

.mc-reviews-page-head {
    max-width: 760px;
    margin-bottom: 2rem;
}

.mc-reviews-page-head h1 {
    margin: .35rem 0 .85rem;
    font-size: clamp(2.5rem, 5vw, 4.8rem);
    line-height: .98;
    letter-spacing: -.045em;
}

.mc-reviews-page-head p {
    color: var(--mc-muted);
    line-height: 1.7;
}

.mc-reviews-page-shell .glsr-summary,
.mc-reviews-page-shell .glsr-reviews {
    margin-top: 1.25rem;
}

.mc-reviews-page-shell .glsr-review {
    padding: 1.35rem !important;
    border: 1px solid var(--mc-border) !important;
    background: linear-gradient(180deg, #0f1721, #0b121a) !important;
    box-shadow: none !important;
}

.mc-reviews-page-shell .glsr-review-title,
.mc-reviews-page-shell .glsr-review-title h3 {
    color: var(--mc-text) !important;
}

.mc-reviews-page-shell .glsr-review-content,
.mc-reviews-page-shell .glsr-review-content p,
.mc-reviews-page-shell .glsr-review-author,
.mc-reviews-page-shell .glsr-review-date {
    color: var(--mc-muted) !important;
}

.mc-reviews-page-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .8rem;
    margin: 2rem 0 0;
}

.mc-reviews-page-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: .75rem 1.15rem;
    border-radius: 3px;
    text-decoration: none;
    font-weight: 900;
    text-transform: uppercase;
}

.mc-reviews-page-actions .primary {
    background: var(--mc-cyan);
    color: #071018;
    border: 1px solid var(--mc-cyan);
}

.mc-reviews-page-actions .secondary {
    background: #0e1721;
    color: var(--mc-text);
    border: 1px solid var(--mc-border);
}

@media (max-width: 600px) {
    .mc-reviews-page-inner {
        width: min(100% - 32px, 1180px);
    }
    .mc-reviews-page-actions {
        flex-direction: column;
    }
    .mc-reviews-page-actions a {
        width: 100%;
        box-sizing: border-box;
    }
}
