/* ======================================
   MODULUS CORE / HOME / CATEGORY PAGES
====================================== */

:root {
    --mod-bg: #02060d;
    --mod-bg-2: #05070b;
    --mod-panel: rgba(10,14,22,.9);
    --mod-panel-soft: rgba(10,14,22,.72);
    --mod-blue: #0084ff;
    --mod-blue-2: #005cff;
    --mod-green: #28ff55;
    --mod-white: #ffffff;
    --mod-muted: rgba(255,255,255,.72);
    --mod-muted-2: rgba(255,255,255,.58);
    --mod-border: rgba(0,132,255,.22);
    --mod-border-strong: rgba(0,132,255,.42);
    --mod-radius: 16px;
    --mod-radius-lg: 22px;
    --mod-shadow: 0 22px 70px rgba(0,0,0,.42);
}

body.home,
body.search,
body.page,
body.search #page,
body.search #content,
body.search .site-content,
body.search .content-area,
body.search .site-main,
body.search .inside-article,
body.search .entry-content,
body.page #page,
body.page #content,
body.page .site-content,
body.page .content-area,
body.page .site-main,
body.page .inside-article,
body.page .entry-content {
    background: var(--mod-bg) !important;
    color: var(--mod-white);
}

body.page .inside-article {
    padding: 0 !important;
}

body.page .container.grid-container {
    max-width: 100% !important;
}

body.search .container.grid-container {
    width: 1180px !important;
    max-width: 92% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.search .inside-article {
    padding: 80px 0 !important;
}

body.search .page-title {
    color: #ffffff !important;
    font-size: clamp(42px, 6vw, 74px) !important;
    line-height: .95 !important;
    text-transform: uppercase !important;
}

body.search article.post,
body.search article.page,
body.search article.product,
body.search .search-results article {
    margin-bottom: 18px !important;
    padding: 24px !important;
    border: 1px solid rgba(0,132,255,.22) !important;
    border-radius: 14px !important;
    background: rgba(10,14,22,.92) !important;
}

body.search .entry-title,
body.search .entry-title a {
    color: #ffffff !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
}

body.search .entry-summary,
body.search .entry-meta,
body.search .entry-meta a {
    color: rgba(255,255,255,.68) !important;
}

body.search .site-main {
    margin: 0 !important;
}

body.search .inside-article,
body.search .entry-content {
    padding: 0 !important;
}

/* ======================================
   MODULUS AFFILIATE AREA
====================================== */

body.page-id-157 .container.grid-container {
    width: 1180px !important;
    max-width: 92% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.page-id-157 .inside-article {
    padding: 64px 0 90px !important;
}

body.page-id-157 .entry-title {
    max-width: 820px;
    margin: 0 auto 18px !important;
    color: #ffffff !important;
    font-size: clamp(38px, 5.4vw, 72px) !important;
    line-height: .96 !important;
    text-align: center;
    text-transform: uppercase;
}

body.page-id-157 .entry-content {
    max-width: 980px;
    margin: 0 auto !important;
    color: rgba(255,255,255,.78);
}

body.page-id-157 .entry-content > h2,
body.page-id-157 .entry-content > h3,
body.page-id-157 .entry-content > h4 {
    max-width: 720px;
    margin: 34px auto 14px !important;
    color: #ffffff !important;
    font-size: clamp(22px, 3vw, 34px);
    line-height: 1.08;
    text-align: center;
    text-transform: uppercase;
}

body.page-id-157 .entry-content > p {
    max-width: 720px;
    margin-left: auto;
    margin-right: auto;
    color: rgba(255,255,255,.72);
    text-align: center;
}

body.page-id-157 .affwp-form {
    max-width: 640px;
    margin: 0 auto 34px !important;
    padding: 30px !important;
    border: 1px solid rgba(0,132,255,.24);
    border-radius: 18px;
    background:
        radial-gradient(circle at 82% 0%, rgba(0,132,255,.16), transparent 34%),
        linear-gradient(180deg, rgba(10,14,22,.96), rgba(5,7,11,.96));
    box-shadow: 0 22px 70px rgba(0,0,0,.38);
}

body.page-id-157 .affwp-form fieldset {
    margin: 0;
    padding: 0;
    border: 0;
}

body.page-id-157 .affwp-form legend {
    display: none;
}

body.page-id-157 .affwp-form p {
    margin: 0 0 18px;
}

body.page-id-157 .affwp-form label {
    display: block;
    margin-bottom: 7px;
    color: rgba(255,255,255,.82);
    font-size: 13px;
    font-weight: 850;
    letter-spacing: .02em;
}

body.page-id-157 .affwp-form input[type="text"],
body.page-id-157 .affwp-form input[type="email"],
body.page-id-157 .affwp-form input[type="password"],
body.page-id-157 .affwp-form input[type="url"],
body.page-id-157 .affwp-form textarea,
body.page-id-157 .affwp-form select {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 50px;
    padding: 12px 14px !important;
    border: 1px solid rgba(0,132,255,.26) !important;
    border-radius: 10px !important;
    background: rgba(255,255,255,.06) !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

body.page-id-157 .affwp-form textarea {
    min-height: 138px;
    resize: vertical;
}

body.page-id-157 .affwp-form input[type="text"]:focus,
body.page-id-157 .affwp-form input[type="email"]:focus,
body.page-id-157 .affwp-form input[type="password"]:focus,
body.page-id-157 .affwp-form input[type="url"]:focus,
body.page-id-157 .affwp-form textarea:focus,
body.page-id-157 .affwp-form select:focus {
    border-color: rgba(40,255,85,.65) !important;
    outline: none;
}

body.page-id-157 .affwp-form input[type="checkbox"] {
    accent-color: #28ff55;
}

body.page-id-157 .affwp-form input[type="submit"],
body.page-id-157 .affwp-form button[type="submit"] {
    width: 100%;
    min-height: 52px;
    margin-top: 4px;
    border: 0 !important;
    border-radius: 10px !important;
    background: linear-gradient(135deg, #0084ff, #005cff) !important;
    color: #ffffff !important;
    font-size: 13px;
    font-weight: 950;
    letter-spacing: .06em;
    text-transform: uppercase;
}

body.page-id-157 .affwp-form input[type="submit"]:hover,
body.page-id-157 .affwp-form button[type="submit"]:hover {
    filter: brightness(1.08);
}

body.page-id-157 .affwp-form a {
    color: #28ff55;
}

body.page-id-157 .affwp-errors,
body.page-id-157 .affwp-notice,
body.page-id-157 .affwp-template-notice {
    max-width: 640px;
    margin: 0 auto 18px !important;
    border-radius: 12px;
}

@media (max-width: 720px) {
    body.page-id-157 .inside-article {
        padding: 42px 0 64px !important;
    }

    body.page-id-157 .entry-title {
        margin-bottom: 14px !important;
    }

    body.page-id-157 .affwp-form {
        padding: 22px !important;
        border-radius: 14px;
    }
}

.mod-search-page {
    min-height: 100vh;
    background: #02060d;
    color: #ffffff;
}

.mod-search-wrap {
    width: 1280px;
    max-width: 92%;
    margin: 0 auto;
}

.mod-search-hero {
    padding: 86px 0 58px;
    border-bottom: 1px solid rgba(0,132,255,.18);
    background:
        radial-gradient(circle at 78% 24%, rgba(0,132,255,.18), transparent 34%),
        linear-gradient(135deg, rgba(2,6,13,.98), rgba(5,7,11,.94));
}

.mod-search-hero h1 {
    max-width: 980px;
    margin: 0;
    color: #ffffff;
    font-size: clamp(46px, 7vw, 94px);
    line-height: .92;
    text-transform: uppercase;
}

.mod-search-hero p:not(.mod-kicker) {
    max-width: 720px;
    margin: 22px 0 0;
    color: rgba(255,255,255,.72);
    font-size: 18px;
    line-height: 1.65;
}

.mod-search-hero-form {
    max-width: 680px;
    margin-top: 30px;
}

.mod-search-page-form input[type="search"] {
    min-height: 54px !important;
}

.mod-search-page-form button {
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
}

.mod-search-results {
    padding: 58px 0 90px;
}

.mod-search-group + .mod-search-group,
.mod-search-empty {
    margin-top: 52px;
}

.mod-search-group-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 22px;
}

.mod-search-group-head h2,
.mod-search-empty h2 {
    margin: 0;
    color: #ffffff;
    font-size: clamp(34px, 4vw, 58px);
    line-height: .95;
    text-transform: uppercase;
}

.mod-search-group-head > span {
    flex: 0 0 auto;
    padding: 8px 12px;
    border: 1px solid rgba(0,132,255,.28);
    border-radius: 999px;
    color: rgba(255,255,255,.76);
    font-size: 12px;
    font-weight: 950;
    letter-spacing: .8px;
    text-transform: uppercase;
}

.mod-search-product-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}

.mod-search-product-card,
.mod-search-card,
.mod-search-empty {
    border: 1px solid rgba(0,132,255,.24);
    border-radius: 16px;
    background: rgba(10,14,22,.92);
    box-shadow: 0 18px 50px rgba(0,0,0,.34);
}

.mod-search-product-card {
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: transform .22s ease, border-color .22s ease;
}

.mod-search-product-card:hover,
.mod-search-card:hover {
    transform: translateY(-4px);
    border-color: rgba(0,132,255,.68);
}

.mod-search-product-image {
    display: flex;
    min-height: 240px;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background:
        radial-gradient(circle at 74% 22%, rgba(0,132,255,.18), transparent 34%),
        rgba(255,255,255,.025);
    color: rgba(255,255,255,.72) !important;
    text-decoration: none !important;
}

.mod-search-product-image img {
    width: 100%;
    height: 260px;
    display: block;
    object-fit: cover;
}

.mod-search-product-content {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 20px;
}

.mod-search-product-content h3,
.mod-search-card h3 {
    margin: 0 0 10px;
    color: #ffffff;
    font-size: 24px;
    line-height: 1;
    text-transform: uppercase;
}

.mod-search-product-content h3 a,
.mod-search-card h3 a {
    color: #ffffff !important;
    text-decoration: none !important;
}

.mod-search-price {
    margin-bottom: 12px;
    color: #a8a61d;
    font-weight: 950;
}

.mod-search-price * {
    color: inherit !important;
}

.mod-search-product-content p,
.mod-search-card p {
    color: rgba(255,255,255,.68);
    line-height: 1.58;
}

.mod-search-button,
.mod-search-link {
    margin-top: auto;
    color: #42b7ff !important;
    font-size: 13px;
    font-weight: 950;
    letter-spacing: .8px;
    text-transform: uppercase;
    text-decoration: none !important;
}

.mod-search-button {
    display: inline-flex;
    width: 100%;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(0,132,255,.45);
    border-radius: 9px;
    background: rgba(0,132,255,.08);
    color: #ffffff !important;
}

.mod-search-button:hover {
    background: #0084ff;
}

.mod-search-card-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.mod-search-card {
    display: flex;
    min-height: 230px;
    flex-direction: column;
    padding: 24px;
    transition: transform .22s ease, border-color .22s ease;
}

.mod-search-card > span {
    display: block;
    margin-bottom: 14px;
    color: #0084ff;
    font-size: 12px;
    font-weight: 950;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.mod-search-empty {
    padding: 34px;
}

.mod-search-suggestions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 24px;
}

.mod-search-suggestions a {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    padding: 8px 14px;
    border: 1px solid rgba(0,132,255,.32);
    border-radius: 999px;
    background: rgba(0,132,255,.08);
    color: #ffffff !important;
    font-weight: 900;
    text-decoration: none !important;
    text-transform: uppercase;
}

.site-info {
    display: none !important;
}

.mod-home,
.mod-category-page,
.mod-about-page {
    min-height: 100vh;
    background: var(--mod-bg);
    color: var(--mod-white);
}

.mod-home-wrap,
.modulus-container {
    width: 1400px;
    max-width: 90%;
    margin: 0 auto;
}

.mod-kicker,
.modulus-eyebrow,
.modulus-card-eyebrow {
    margin: 0 0 14px;
    color: var(--mod-blue);
    font-size: 14px;
    font-weight: 900;
    letter-spacing: 3px;
    text-transform: uppercase;
}

.mod-home h1,
.mod-category-page h1,
.mod-about-page h1 {
    color: var(--mod-white);
    font-size: clamp(54px, 7vw, 96px);
    line-height: .9;
    letter-spacing: -.055em;
    text-transform: uppercase;
    margin: 18px 0;
}

.mod-home .mod-home-hero h1 {
    font-size: clamp(42px, 5.2vw, 72px);
    line-height: .96;
    letter-spacing: 0;
}

.mod-section-head {
    margin-bottom: 34px;
}

.mod-section-head h2,
.mod-about-split h2,
.mod-statement-box h2 {
    color: var(--mod-white);
    font-size: clamp(36px, 5vw, 72px);
    line-height: .95;
    letter-spacing: -.04em;
    text-transform: uppercase;
    margin: 0;
}

.mod-section-head p,
.mod-hero-text,
.mod-about-copy p,
.mod-statement-box p {
    color: var(--mod-muted);
}

.mod-hero-text {
    max-width: 650px;
    font-size: 21px;
    line-height: 1.7;
}

.mod-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    margin-top: 38px;
}

.mod-btn,
.modulus-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 54px;
    padding: 0 34px;
    border-radius: 10px;
    border: 1px solid var(--mod-blue);
    background: transparent;
    color: var(--mod-white) !important;
    text-decoration: none !important;
    font-weight: 900;
    letter-spacing: .7px;
    text-transform: uppercase;
    transition: transform .22s ease, background .22s ease, border-color .22s ease;
}

.mod-btn:hover,
.modulus-button:hover {
    transform: translateY(-2px);
    border-color: #37a3ff;
}

.mod-btn-primary,
.modulus-button {
    background: linear-gradient(135deg, var(--mod-blue-2), var(--mod-blue));
}

.mod-btn-primary:hover,
.modulus-button:hover {
    background: linear-gradient(135deg, #0078ff, #37a3ff);
}

.mod-btn-secondary {
    background: rgba(0,132,255,.06);
}

.mod-hero-proof,
.mod-hero-mini {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.mod-hero-proof {
    margin-top: 28px;
}

.mod-hero-proof span,
.mod-hero-mini span {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 8px 14px;
    border: 1px solid rgba(0,132,255,.35);
    border-radius: 999px;
    background: rgba(2,6,13,.62);
    color: var(--mod-white);
    font-size: 13px;
    font-weight: 900;
    letter-spacing: .8px;
    text-transform: uppercase;
}

.mod-hero-mini {
    margin-top: 18px;
}

.mod-hero-mini span {
    min-height: 32px;
    border-color: rgba(255,255,255,.14);
    color: rgba(255,255,255,.72);
    font-size: 12px;
}

/* HOME HERO */

.mod-home-hero {
    position: relative;
    min-height: 880px;
    display: flex;
    align-items: center;
    background:
        radial-gradient(circle at 78% 30%, rgba(0,132,255,.22), transparent 30%),
        linear-gradient(rgba(2,6,13,.70), rgba(2,6,13,.90)),
        url('https://modulusautocare.co.uk/wp-content/uploads/2026/06/disruptor-1.png');
    background-size: cover;
    background-position: 120% center;
    background-repeat: no-repeat;
}

.mod-hero-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 60px;
}

/* SHARED SECTIONS */

.mod-systems,
.mod-core-range,
.mod-best-sellers,
.mod-shop-problem,
.mod-routine-builder,
.mod-final-choice,
.mod-latest-posts,
.mod-featured-category-product,
.mod-about-pillars,
.mod-about-support {
    padding: 90px 0;
    background: var(--mod-bg-2);
}

.mod-why,
.mod-process,
.mod-start-here,
.mod-category-intro,
.mod-about-intro,
.mod-about-statement {
    padding: 90px 0;
    background: var(--mod-bg);
}

.mod-system-grid,
.mod-why-grid,
.mod-start-grid {
    display: grid;
    gap: 22px;
}

.mod-system-grid,
.mod-why-grid {
    grid-template-columns: repeat(4, 1fr);
}

.mod-start-grid {
    grid-template-columns: repeat(3, 1fr);
}

.mod-system-card {
    position: relative;
    min-height: 320px;
    overflow: hidden;
    border-radius: var(--mod-radius);
    border: 1px solid var(--mod-border);
    background: linear-gradient(180deg, rgba(10,14,22,.85), rgba(5,7,11,.95));
    text-decoration: none;
    display: block;
    transition: transform .25s ease, border-color .25s ease;
}

.mod-system-card:hover,
.mod-why-card:hover,
.mod-start-card:hover,
.mod-process-step:hover {
    transform: translateY(-6px);
    border-color: var(--mod-blue);
}

.mod-system-card img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .5s ease;
}

.mod-system-card:hover img {
    transform: scale(1.05);
}

.mod-system-content {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 24px;
    background: linear-gradient(180deg, rgba(5,7,11,0) 0%, rgba(5,7,11,.65) 55%, rgba(5,7,11,.96) 100%);
}

.mod-system-content span,
.mod-start-card span,
.mod-process-step span,
.mod-view-link {
    color: var(--mod-blue);
    font-weight: 900;
    text-transform: uppercase;
}

.mod-system-content h3,
.mod-why-card h3,
.mod-start-card h3,
.mod-process-step h3 {
    color: var(--mod-white);
    margin: 12px 0;
    line-height: 1;
}

.mod-system-content p,
.mod-why-card p,
.mod-start-card p,
.mod-process-step p {
    color: var(--mod-muted);
    margin: 0;
    line-height: 1.65;
}

.mod-why-card,
.mod-start-card,
.mod-process-step,
.mod-statement-box,
.mod-featured-product-grid {
    background: var(--mod-panel);
    border: 1px solid var(--mod-border);
    border-radius: var(--mod-radius);
    box-shadow: var(--mod-shadow);
}

.mod-why-card,
.mod-start-card,
.mod-process-step {
    padding: 30px;
    transition: transform .25s ease, border-color .25s ease;
}

.mod-start-card {
    text-decoration: none;
}

.mod-section-split {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 30px;
}

.mod-view-link {
    text-decoration: none;
    letter-spacing: 1px;
}

/* WOOCOMMERCE PRODUCT GRIDS */

.mod-product-grid ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
    margin: 0 !important;
    padding: 0 !important;
}

.mod-product-grid ul.products::before,
.mod-product-grid ul.products::after {
    display: none !important;
}

.mod-product-grid ul.products li.product {
    width: auto !important;
    float: none !important;
    margin: 0 !important;
    background: var(--mod-panel);
    border: 1px solid var(--mod-border);
    border-radius: var(--mod-radius);
    padding: 22px !important;
    transition: transform .25s ease, border-color .25s ease;
}

.mod-product-grid ul.products li.product:hover {
    transform: translateY(-6px);
    border-color: var(--mod-blue);
}

.mod-product-grid ul.products li.product img {
    border-radius: 12px;
}

.mod-product-grid .woocommerce-loop-product__title {
    color: var(--mod-white);
    text-transform: uppercase;
}

.mod-product-grid .price {
    color: var(--mod-white) !important;
}

.mod-product-grid a.button {
    background: transparent !important;
    border: 1px solid var(--mod-blue) !important;
    color: var(--mod-white) !important;
    border-radius: 8px !important;
    font-weight: 800 !important;
}

/* PROCESS */

.mod-process-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
}

.mod-process-step span {
    display: block;
    font-size: 32px;
    margin-bottom: 20px;
}

/* FOOTER CTA */

.mod-footer-cta {
    padding: 90px 0;
    background: linear-gradient(90deg, rgba(0,132,255,.18), rgba(2,6,13,.95)), var(--mod-bg-2);
    border-top: 1px solid var(--mod-border);
}

.mod-footer-cta .mod-home-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
}

.mod-footer-cta h2 {
    color: var(--mod-white);
    font-size: clamp(36px, 5vw, 56px);
    line-height: 1;
    text-transform: uppercase;
    margin: 10px 0;
}

.mod-footer-cta p {
    color: var(--mod-muted);
}

/* CATEGORY PAGES */

.mod-category-page {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
}

.mod-category-hero {
    min-height: 740px;
    display: flex;
    align-items: center;
    padding: 140px 0 100px;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

.mod-exterior-hero {
    background-image: linear-gradient(rgba(2,6,13,.72), rgba(2,6,13,.90)), url('https://modulusautocare.co.uk/wp-content/uploads/2026/06/exterior-cleanhome.png') !important;
}

.mod-wheels-hero {
    background-image: linear-gradient(rgba(2,6,13,.72), rgba(2,6,13,.90)), url('https://modulusautocare.co.uk/wp-content/uploads/2026/06/wheel-cleanhome.png') !important;
}

.mod-interior-hero {
    background-image: linear-gradient(rgba(2,6,13,.72), rgba(2,6,13,.90)), url('https://modulusautocare.co.uk/wp-content/uploads/2026/06/interior-cleanhome.png') !important;
}

.mod-protection-hero {
    background-image: linear-gradient(rgba(2,6,13,.72), rgba(2,6,13,.90)), url('https://modulusautocare.co.uk/wp-content/uploads/2026/06/protection-homepage.png') !important;
}

.mod-accessories-hero {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 78% 26%, rgba(120,48,239,.24), transparent 30%),
        linear-gradient(rgba(2,6,13,.72), rgba(2,6,13,.92)) !important;
}

.mod-accessories-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url('assets/accessories-hero.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: .2;
    pointer-events: none;
}

.mod-accessories-hero .mod-home-wrap {
    position: relative;
    z-index: 1;
}

.mod-accessories-featured-image {
    min-height: 420px;
    display: grid;
    place-items: center;
    background:
        radial-gradient(circle at 50% 20%, rgba(120,48,239,.18), transparent 34%),
        linear-gradient(145deg, rgba(10,14,22,.96), rgba(5,7,11,.96));
}

.mod-accessories-bottle-visual {
    width: min(260px, 70%);
    aspect-ratio: 2 / 3.15;
    display: grid;
    align-content: center;
    justify-items: center;
    gap: 10px;
    position: relative;
    border: 2px solid rgba(120,48,239,.55);
    border-radius: 28px 28px 18px 18px;
    background:
        linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.025)),
        rgba(2,6,13,.82);
    box-shadow: 0 24px 70px rgba(0,0,0,.42);
}

.mod-accessories-bottle-visual::before {
    content: "";
    position: absolute;
    top: -54px;
    left: 50%;
    width: 72px;
    height: 56px;
    border: 2px solid rgba(120,48,239,.55);
    border-bottom: 0;
    border-radius: 16px 16px 0 0;
    transform: translateX(-50%);
    background: rgba(5,7,11,.96);
}

.mod-accessories-bottle-visual span {
    color: #7830ef;
    font-size: clamp(46px, 7vw, 76px);
    font-weight: 950;
    line-height: 1;
}

.mod-accessories-bottle-visual strong {
    color: #ffffff;
    font-size: 22px;
    text-transform: uppercase;
}

.mod-accessories-bottle-visual em {
    color: rgba(255,255,255,.62);
    font-style: normal;
    font-weight: 800;
}

.mod-featured-product-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 44px;
    align-items: center;
    border-radius: var(--mod-radius-lg);
    padding: 40px;
}

.mod-featured-product-image {
    background: rgba(255,255,255,.025);
    border: 1px solid rgba(0,132,255,.18);
    border-radius: 18px;
    padding: 24px;
}

.mod-featured-product-image img {
    width: 100%;
    border-radius: 14px;
    display: block;
}

.mod-product-code-large {
    display: block;
    color: var(--mod-green);
    font-size: 24px;
    font-weight: 900;
    letter-spacing: 2px;
    margin-bottom: 10px;
}

.mod-featured-product-content h2 {
    color: var(--mod-white);
    text-transform: uppercase;
    font-size: clamp(44px, 5vw, 76px);
    line-height: .95;
    margin: 0;
}

.mod-featured-product-content h3 {
    color: var(--mod-blue);
    text-transform: uppercase;
    letter-spacing: 2px;
    margin: 12px 0 24px;
}

.mod-featured-product-content p {
    color: var(--mod-muted);
    font-size: 18px;
    line-height: 1.7;
}

.mod-feature-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin: 28px 0;
}

.mod-feature-list span,
.mod-product-benefits span,
.mod-product-trust span {
    border: 1px solid rgba(0,132,255,.32);
    border-radius: 999px;
    padding: 10px 14px;
    color: var(--mod-white);
    font-size: 13px;
    text-transform: uppercase;
}

/* ABOUT */

.mod-about-hero {
    min-height: 760px;
    display: flex;
    align-items: center;
    background: linear-gradient(rgba(2,6,13,.72), rgba(2,6,13,.92)), url('https://modulusautocare.co.uk/wp-content/uploads/2026/06/disruptor-1.png');
    background-size: cover;
    background-position: 85% center;
    background-repeat: no-repeat;
}

.mod-about-split {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 70px;
    align-items: start;
}

.mod-about-copy p,
.mod-statement-box p {
    font-size: 18px;
    line-height: 1.8;
    margin-bottom: 22px;
}

.mod-statement-box {
    border-radius: 24px;
    padding: 60px;
}

/* ======================================
   HOMEPAGE CONVERSION LAYOUT
====================================== */

.mod-conversion-strip {
    position: relative;
    z-index: 2;
    margin-top: -54px;
}

.mod-conversion-strip .mod-home-wrap {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    overflow: hidden;
    border: 1px solid rgba(0,132,255,.28);
    border-radius: 14px;
    background: rgba(0,132,255,.28);
    box-shadow: 0 24px 70px rgba(0,0,0,.48);
}

.mod-conversion-strip div div {
    min-height: 132px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 24px;
    background: rgba(7,12,20,.96);
}

.mod-conversion-strip strong {
    display: block;
    color: #ffffff;
    font-size: 18px;
    line-height: 1.15;
    text-transform: uppercase;
}

.mod-conversion-strip span {
    display: block;
    margin-top: 9px;
    color: rgba(255,255,255,.68);
    line-height: 1.55;
}

.mod-product-grid-featured ul.products li.product {
    position: relative;
}

.mod-product-grid-featured ul.products li.product:first-child::before,
.mod-product-grid-featured ul.products li.product:nth-child(2)::before {
    content: "Popular";
    position: absolute;
    top: 14px;
    left: 14px;
    z-index: 2;
    padding: 7px 10px;
    border-radius: 999px;
    background: #0084ff;
    color: #ffffff;
    font-size: 11px;
    font-weight: 950;
    letter-spacing: .8px;
    text-transform: uppercase;
}

.mod-problem-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}

.mod-problem-card,
.mod-choice-card {
    display: flex;
    min-height: 190px;
    flex-direction: column;
    justify-content: space-between;
    padding: 24px;
    border: 1px solid rgba(0,132,255,.24);
    border-radius: 14px;
    background:
        linear-gradient(145deg, rgba(0,132,255,.11), rgba(255,255,255,.025)),
        rgba(10,14,22,.92);
    color: #ffffff !important;
    text-decoration: none !important;
    box-shadow: 0 18px 50px rgba(0,0,0,.32);
    transition: transform .22s ease, border-color .22s ease, background .22s ease;
}

.mod-problem-card:hover,
.mod-choice-card:hover {
    transform: translateY(-5px);
    border-color: rgba(0,132,255,.72);
    background:
        linear-gradient(145deg, rgba(0,132,255,.2), rgba(255,255,255,.04)),
        rgba(10,14,22,.96);
}

.mod-problem-card span,
.mod-choice-card span {
    color: #0084ff;
    font-size: 13px;
    font-weight: 950;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.mod-problem-card strong,
.mod-choice-card strong {
    display: block;
    color: #ffffff;
    font-size: clamp(22px, 2vw, 30px);
    line-height: 1.05;
    text-transform: uppercase;
}

.mod-problem-card-tool {
    background:
        linear-gradient(145deg, rgba(40,255,85,.13), rgba(0,132,255,.08)),
        rgba(10,14,22,.94);
}

.mod-why-sell {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.4fr);
    gap: 30px;
    align-items: stretch;
}

.mod-why-sell > .mod-section-head {
    align-self: center;
    margin: 0;
}

.mod-why-sell > .mod-section-head p:last-child {
    max-width: 560px;
    margin-top: 20px;
    font-size: 18px;
    line-height: 1.75;
}

.mod-why-sell .mod-why-grid {
    grid-template-columns: repeat(2, 1fr);
}

.mod-why-cta {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 18px;
    align-items: center;
    padding: 22px;
    border: 1px solid rgba(0,132,255,.3);
    border-radius: 14px;
    background: linear-gradient(90deg, rgba(0,132,255,.16), rgba(10,14,22,.9));
}

.mod-why-cta strong {
    color: #ffffff;
    font-size: 22px;
    text-transform: uppercase;
}

.mod-why-cta span {
    color: rgba(255,255,255,.7);
    line-height: 1.55;
}

.mod-routine-panel {
    display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
    gap: 40px;
    align-items: center;
    padding: 42px;
    border: 1px solid rgba(0,132,255,.28);
    border-radius: 18px;
    background:
        radial-gradient(circle at 88% 18%, rgba(0,132,255,.22), transparent 32%),
        linear-gradient(135deg, rgba(10,14,22,.96), rgba(2,6,13,.96));
    box-shadow: 0 24px 70px rgba(0,0,0,.44);
}

.mod-routine-panel h2 {
    color: #ffffff;
    font-size: clamp(36px, 5vw, 68px);
    line-height: .95;
    margin: 0 0 18px;
    text-transform: uppercase;
}

.mod-routine-panel p:not(.mod-kicker) {
    max-width: 620px;
    color: rgba(255,255,255,.7);
    font-size: 18px;
    line-height: 1.7;
}

.mod-routine-list {
    display: grid;
    gap: 10px;
}

.mod-routine-list a {
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 58px;
    padding: 13px 16px;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 10px;
    background: rgba(255,255,255,.035);
    color: #ffffff !important;
    text-decoration: none !important;
    font-weight: 900;
    text-transform: uppercase;
    transition: border-color .22s ease, background .22s ease, transform .22s ease;
}

.mod-routine-list a:hover {
    transform: translateX(4px);
    border-color: rgba(0,132,255,.55);
    background: rgba(0,132,255,.1);
}

.mod-routine-list span {
    color: #0084ff;
    font-weight: 950;
}

.mod-choice-grid {
    display: grid;
    grid-template-columns: 1.2fr 1fr 1fr;
    gap: 18px;
}

.mod-choice-card {
    min-height: 210px;
}

.mod-choice-card em {
    color: rgba(255,255,255,.64);
    font-style: normal;
    line-height: 1.45;
}

.mod-choice-primary {
    background:
        linear-gradient(145deg, rgba(0,132,255,.26), rgba(0,92,255,.08)),
        rgba(10,14,22,.96);
}

.mod-post-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}

.mod-post-card {
    overflow: hidden;
    border: 1px solid rgba(0,132,255,.24);
    border-radius: 16px;
    background: rgba(10,14,22,.92);
    box-shadow: 0 20px 60px rgba(0,0,0,.34);
    transition: transform .22s ease, border-color .22s ease;
}

.mod-post-card:hover {
    transform: translateY(-5px);
    border-color: rgba(0,132,255,.7);
}

.mod-post-card-image {
    display: flex;
    min-height: 220px;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-bottom: 1px solid rgba(0,132,255,.16);
    background:
        radial-gradient(circle at 72% 28%, rgba(0,132,255,.24), transparent 34%),
        linear-gradient(145deg, rgba(0,132,255,.12), rgba(255,255,255,.025));
    color: #ffffff !important;
    text-decoration: none !important;
}

.mod-post-card-image img {
    width: 100%;
    height: 240px;
    display: block;
    object-fit: cover;
    transition: transform .35s ease;
}

.mod-post-card:hover .mod-post-card-image img {
    transform: scale(1.045);
}

.mod-post-card-image span {
    color: rgba(255,255,255,.76);
    font-weight: 950;
    letter-spacing: 1.4px;
    text-transform: uppercase;
}

.mod-post-card-content {
    padding: 24px;
}

.mod-post-date {
    display: block;
    margin-bottom: 12px;
    color: #0084ff;
    font-size: 12px;
    font-weight: 950;
    letter-spacing: 1.3px;
    text-transform: uppercase;
}

.mod-post-card h3 {
    margin: 0 0 12px;
    color: #ffffff;
    font-size: clamp(24px, 2vw, 34px);
    line-height: 1.02;
    text-transform: uppercase;
}

.mod-post-card h3 a,
.mod-post-link {
    color: #ffffff !important;
    text-decoration: none !important;
}

.mod-post-card p {
    margin: 0 0 20px;
    color: rgba(255,255,255,.68);
    line-height: 1.65;
}

.mod-post-link {
    color: #42b7ff !important;
    font-size: 13px;
    font-weight: 950;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.mod-post-card-empty {
    grid-column: 1 / -1;
}

.mod-post-card-empty .mod-post-card-content {
    min-height: 190px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* RESPONSIVE */

@media (max-width: 1100px) {
    .mod-system-grid,
    .mod-why-grid,
    .mod-process-grid,
    .mod-problem-grid,
    .mod-post-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .mod-why-sell,
    .mod-routine-panel {
        grid-template-columns: 1fr;
    }

    .mod-choice-grid {
        grid-template-columns: 1fr;
    }

    .mod-search-product-grid,
    .mod-search-card-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 900px) {
    .mod-home-hero {
        min-height: 760px;
        background-position: center;
    }

    .mod-hero-grid,
    .mod-featured-product-grid,
    .mod-about-split {
        grid-template-columns: 1fr;
    }

    .mod-product-grid ul.products,
    .mod-start-grid {
        grid-template-columns: 1fr 1fr;
    }

    .mod-conversion-strip {
        margin-top: 0;
        background: var(--mod-bg-2);
        padding: 24px 0 0;
    }

    .mod-conversion-strip .mod-home-wrap {
        grid-template-columns: 1fr;
    }

    .mod-footer-cta .mod-home-wrap,
    .mod-section-split,
    .mod-search-group-head {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 650px) {
    .mod-home {
        display: flex;
        flex-direction: column;
    }

    .mod-home-hero {
        order: 1;
    }

    .mod-best-sellers {
        order: 2;
    }

    .mod-systems {
        order: 3;
    }

    .mod-conversion-strip {
        order: 4;
    }

    .mod-method-hub {
        order: 5;
    }

    .mod-why {
        order: 6;
    }

    .mod-home-reviews {
        order: 7;
    }

    .mod-latest-posts {
        order: 8;
    }

    .mod-final-choice {
        order: 9;
    }

    .mod-footer-cta {
        order: 10;
    }

    .mod-home-wrap,
    .modulus-container {
        max-width: 92%;
    }

    .mod-home h1,
    .mod-category-page h1,
    .mod-about-page h1 {
        font-size: clamp(44px, 14vw, 64px);
    }

    .mod-systems,
    .mod-core-range,
    .mod-best-sellers,
    .mod-shop-problem,
    .mod-routine-builder,
    .mod-final-choice,
    .mod-latest-posts,
    .mod-featured-category-product,
    .mod-why,
    .mod-process,
    .mod-start-here,
    .mod-category-intro,
    .mod-footer-cta {
        padding: 64px 0;
    }

    .mod-best-sellers,
    .mod-systems {
        padding: 42px 0;
    }

    .mod-best-sellers {
        background: #02060d;
    }

    .mod-system-grid,
    .mod-why-grid,
    .mod-process-grid,
    .mod-start-grid,
    .mod-problem-grid,
    .mod-post-grid,
    .mod-product-grid ul.products,
    .mod-feature-list {
        grid-template-columns: 1fr;
    }

    .mod-featured-product-grid,
    .mod-statement-box,
    .mod-routine-panel {
        padding: 26px;
    }

    .mod-home-hero {
        min-height: auto;
        align-items: flex-end;
        padding: 74px 0 34px;
        background-position: 62% center;
    }

    .mod-hero-text {
        max-width: 330px;
        font-size: 16px;
        line-height: 1.45;
    }

    .mod-hero-actions {
        display: grid;
        grid-template-columns: 1fr;
        gap: 12px;
        margin-top: 20px;
    }

    .mod-hero-actions .mod-btn {
        width: 100%;
    }

    .mod-hero-proof span,
    .mod-hero-mini span {
        font-size: 11px;
        letter-spacing: .6px;
    }

    .mod-hero-proof {
        margin-top: 18px;
    }

    .mod-hero-mini {
        display: none;
    }

    .mod-conversion-strip {
        padding: 0;
    }

    .mod-conversion-strip div div {
        min-height: auto;
        padding: 15px;
    }

    .mod-conversion-strip span {
        display: none;
    }

    .mod-section-head {
        margin-bottom: 20px;
    }

    .mod-section-head h2 {
        font-size: clamp(30px, 11vw, 44px);
    }
    }

    .mod-problem-card,
    .mod-choice-card {
        min-height: 148px;
        padding: 20px;
    }

    .mod-why-sell .mod-why-grid {
        grid-template-columns: 1fr;
    }

    .mod-why-cta {
        grid-template-columns: 1fr;
    }

    .mod-routine-list a {
        align-items: flex-start;
        min-height: 54px;
        line-height: 1.2;
    }

    .mod-post-card-image,
    .mod-post-card-image img {
        min-height: 190px;
        height: 210px;
    }

    .mod-search-hero {
        padding: 58px 0 36px;
    }

    .mod-search-hero h1 {
        font-size: clamp(42px, 13vw, 62px);
    }

    .mod-search-product-grid,
    .mod-search-card-grid {
        grid-template-columns: 1fr;
    }

    .mod-search-product-image {
        min-height: 210px;
    }

    .mod-search-product-image img {
        height: 230px;
    }

    .mod-search-card {
        min-height: 190px;
    }
}

/* ================================
   GLOBAL MODULUS DARK HEADER
================================ */

body #masthead,
body .site-header,
body .inside-header,
body #site-navigation,
body .main-navigation,
body .inside-navigation,
body .main-navigation ul,
body .main-navigation ul ul,
body .navigation-search,
body .menu-toggle {
    background: #02060d !important;
    background-color: #02060d !important;
}

body #masthead,
body .site-header,
body .main-navigation {
    border-bottom: 1px solid rgba(0,132,255,.22) !important;
}

body .site-header a,
body .main-navigation a,
body .main-navigation .main-nav ul li a,
body .menu-toggle,
body .menu-toggle:before,
body .menu-bar-item > a,
body .navigation-branding a,
body .site-branding a,
body .site-title a {
    color: #ffffff !important;
}

body .main-navigation .main-nav ul li:hover > a,
body .main-navigation .main-nav ul li.current-menu-item > a,
body .main-navigation .main-nav ul li.current_page_item > a {
    color: #0084ff !important;
    background: transparent !important;
}

body .main-navigation ul ul {
    border: 1px solid rgba(0,132,255,.22) !important;
}

body .main-navigation ul ul li a {
    background: #02060d !important;
    color: #ffffff !important;
}

body .main-navigation ul ul li:hover > a {
    background: rgba(0,132,255,.12) !important;
    color: #ffffff !important;
}

/* ================================
   MODULUS DESKTOP MEGA MENU
================================ */

body .modulus-mega-menu {
    position: fixed !important;
    top: var(--wp-admin--admin-bar--height, 0) !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 9990 !important;
    padding-top: 104px !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translateY(-10px) !important;
    transition: opacity .18s ease, transform .18s ease !important;
}

body .modulus-mega-menu.is-open {
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
}

body .modulus-mega-menu::before {
    content: "" !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: -1 !important;
    background: rgba(0,0,0,.45) !important;
    opacity: 0 !important;
    transition: opacity .18s ease !important;
}

body .modulus-mega-menu.is-open::before {
    opacity: 1 !important;
}

body .modulus-mega-menu-inner {
    width: min(1380px, 92vw) !important;
    margin: 0 auto !important;
}

body .modulus-mega-panel {
    display: grid !important;
    grid-template-columns: minmax(230px, .85fr) minmax(190px, .8fr) minmax(240px, 1fr) minmax(190px, .85fr) minmax(190px, .8fr) !important;
    gap: 18px !important;
    padding: 22px !important;
    border: 1px solid rgba(0,132,255,.28) !important;
    border-radius: 18px !important;
    background:
        radial-gradient(circle at 12% 8%, rgba(0,132,255,.18), transparent 30%),
        linear-gradient(145deg, rgba(5,9,16,.98), rgba(2,6,13,.98)) !important;
    box-shadow: 0 30px 90px rgba(0,0,0,.62), 0 0 28px rgba(0,132,255,.12) !important;
    backdrop-filter: blur(18px) !important;
}

body .modulus-mega-intro,
body .modulus-mega-column {
    min-width: 0 !important;
}

body .modulus-mega-intro {
    padding: 18px !important;
    border: 1px solid rgba(0,132,255,.2) !important;
    border-radius: 14px !important;
    background: linear-gradient(145deg, rgba(0,132,255,.13), rgba(255,255,255,.025)) !important;
}

body .modulus-mega-intro h2 {
    margin: 0 !important;
    color: #ffffff !important;
    font-size: clamp(28px, 2.5vw, 42px) !important;
    line-height: .95 !important;
    text-transform: uppercase !important;
}

body .modulus-mega-intro p:not(.mod-kicker) {
    margin: 16px 0 0 !important;
    color: rgba(255,255,255,.7) !important;
    line-height: 1.55 !important;
}

body .modulus-mega-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-top: 22px !important;
}

body .modulus-mega-actions a,
body .modulus-mega-link-card,
body .modulus-mega-product {
    color: #ffffff !important;
    text-decoration: none !important;
}

body .modulus-mega-actions a {
    display: inline-flex !important;
    min-height: 38px !important;
    align-items: center !important;
    padding: 8px 12px !important;
    border: 1px solid rgba(0,132,255,.36) !important;
    border-radius: 999px !important;
    background: rgba(0,132,255,.1) !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    letter-spacing: .7px !important;
    text-transform: uppercase !important;
}

body .modulus-mega-column h3 {
    margin: 0 0 10px !important;
    color: #0084ff !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    letter-spacing: 1.8px !important;
    text-transform: uppercase !important;
}

body .modulus-mega-link-card {
    display: grid !important;
    gap: 4px !important;
    min-height: 54px !important;
    padding: 11px 12px !important;
    border: 1px solid rgba(255,255,255,.075) !important;
    border-radius: 10px !important;
    background: rgba(255,255,255,.032) !important;
    transition: border-color .18s ease, background .18s ease, transform .18s ease !important;
}

body .modulus-mega-link-card + .modulus-mega-link-card,
body .modulus-mega-product + .modulus-mega-product {
    margin-top: 8px !important;
}

body .modulus-mega-link-card:hover,
body .modulus-mega-product:hover,
body .modulus-mega-actions a:hover {
    border-color: rgba(0,132,255,.52) !important;
    background: rgba(0,132,255,.1) !important;
    transform: translateY(-1px) !important;
}

body .modulus-mega-link-card span,
body .modulus-mega-product strong {
    overflow: hidden !important;
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 950 !important;
    line-height: 1.2 !important;
    text-overflow: ellipsis !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

body .modulus-mega-link-card small,
body .modulus-mega-product small {
    overflow: hidden !important;
    color: rgba(255,255,255,.58) !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

body .modulus-mega-product {
    display: grid !important;
    grid-template-columns: 54px minmax(0, 1fr) !important;
    gap: 11px !important;
    align-items: center !important;
    min-height: 70px !important;
    padding: 9px !important;
    border: 1px solid rgba(255,255,255,.075) !important;
    border-radius: 11px !important;
    background: rgba(255,255,255,.032) !important;
    transition: border-color .18s ease, background .18s ease, transform .18s ease !important;
}

body .modulus-mega-product-image {
    width: 54px !important;
    height: 54px !important;
    overflow: hidden !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    border-radius: 9px !important;
    background: rgba(255,255,255,.04) !important;
}

body .modulus-mega-product-image img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
}

body .modulus-mega-product small {
    color: #a8a61d !important;
    font-weight: 900 !important;
}

@media(max-width: 1160px) {
    body .modulus-mega-panel {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media(max-width: 768px) {
    body .modulus-mega-menu {
        display: none !important;
    }
}

/* ================================
   MODULUS SITE SEARCH
================================ */

body .modulus-site-search {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    gap: 0 !important;
    width: 100% !important;
    isolation: isolate !important;
}

body .modulus-site-search label {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
}

body .modulus-site-search input[type="search"] {
    width: 100% !important;
    min-height: 42px !important;
    padding: 0 48px 0 16px !important;
    border: 1px solid rgba(0,132,255,.34) !important;
    border-radius: 999px !important;
    background:
        linear-gradient(145deg, rgba(0,132,255,.08), rgba(255,255,255,.025)),
        rgba(3,8,15,.92) !important;
    color: #ffffff !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.02), 0 12px 30px rgba(0,0,0,.18) !important;
    outline: none !important;
    transition: border-color .18s ease, background .18s ease, box-shadow .18s ease, width .18s ease !important;
}

body .modulus-site-search input[type="search"]::placeholder {
    color: rgba(255,255,255,.48) !important;
}

body .modulus-site-search input[type="search"]:focus {
    border-color: rgba(0,132,255,.85) !important;
    background:
        linear-gradient(145deg, rgba(0,132,255,.13), rgba(255,255,255,.035)),
        rgba(3,8,15,.98) !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.03), 0 0 0 3px rgba(0,132,255,.12), 0 16px 36px rgba(0,0,0,.28) !important;
}

body .modulus-site-search button {
    position: absolute !important;
    top: 50% !important;
    right: 4px !important;
    z-index: 2 !important;
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    border: 1px solid rgba(0,132,255,.42) !important;
    border-radius: 999px !important;
    background: rgba(0,132,255,.16) !important;
    color: #ffffff !important;
    cursor: pointer !important;
    transform: translateY(-50%) !important;
}

body .modulus-site-search button:hover,
body .modulus-site-search button:focus-visible {
    background: #0084ff !important;
    border-color: #72caff !important;
    outline: none !important;
}

body .modulus-site-search svg {
    width: 17px !important;
    height: 17px !important;
    display: block !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2.2 !important;
    stroke-linecap: round !important;
}

body .modulus-nav-search-item {
    position: relative !important;
    z-index: 60 !important;
    width: clamp(260px, 22vw, 380px) !important;
    height: 42px !important;
    margin-left: 16px !important;
    overflow: visible !important;
}

body .modulus-nav-search {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    width: 100% !important;
    max-width: none !important;
    height: 42px !important;
    transform: none !important;
    transition: none !important;
}

body .modulus-nav-search input[type="search"] {
    min-height: 42px !important;
    padding-left: 18px !important;
    font-size: 13px !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: none !important;
    transition: border-color .18s ease, background .18s ease, box-shadow .18s ease !important;
}

body .modulus-nav-search button {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    right: 4px !important;
    border-radius: 999px !important;
    background:
        radial-gradient(circle at 50% 20%, rgba(255,255,255,.12), transparent 44%),
        linear-gradient(145deg, rgba(0,132,255,.22), rgba(0,0,0,.16)) !important;
    box-shadow: 0 0 18px rgba(0,132,255,.18) !important;
}

body .modulus-nav-search:hover button,
body .modulus-nav-search:focus-within button,
body .modulus-nav-search.has-suggestions button,
body .modulus-nav-search.is-searching button {
    border-color: rgba(0,132,255,.78) !important;
    background: #0084ff !important;
}

body .main-navigation .menu-bar-items,
body .main-navigation .inside-navigation {
    overflow: visible !important;
}

@media(min-width: 769px) {
    body .main-navigation .inside-navigation {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 18px !important;
    }

    body .main-navigation .main-nav {
        flex: 0 1 auto !important;
    }

    body .main-navigation .main-nav ul {
        display: flex !important;
        align-items: center !important;
        flex-wrap: nowrap !important;
        gap: 4px !important;
    }

    body .main-navigation .main-nav ul li a {
        padding-left: 12px !important;
        padding-right: 12px !important;
        white-space: nowrap !important;
    }

    body .main-navigation .menu-bar-items {
        display: flex !important;
        align-items: center !important;
        flex: 0 0 auto !important;
        gap: 8px !important;
    }
}

body .modulus-mobile-menu-search {
    padding: 16px 20px 0 !important;
}

body .modulus-drawer-search input[type="search"] {
    min-height: 48px !important;
}

body .modulus-drawer-search button {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
}

body .modulus-search-suggestions {
    position: absolute !important;
    top: calc(100% + 10px) !important;
    right: 0 !important;
    z-index: 99998 !important;
    width: min(420px, 92vw) !important;
    max-height: min(620px, 72vh) !important;
    overflow: auto !important;
    padding: 10px !important;
    border: 1px solid rgba(0,132,255,.34) !important;
    border-radius: 14px !important;
    background: rgba(3,7,13,.98) !important;
    box-shadow: 0 24px 70px rgba(0,0,0,.58), 0 0 28px rgba(0,132,255,.14) !important;
    backdrop-filter: blur(16px) !important;
}

body .modulus-drawer-search .modulus-search-suggestions,
body .modulus-search-page-form .modulus-search-suggestions {
    left: 0 !important;
    right: auto !important;
    width: 100% !important;
}

body .modulus-search-suggestion-group + .modulus-search-suggestion-group {
    margin-top: 10px !important;
    padding-top: 10px !important;
    border-top: 1px solid rgba(255,255,255,.08) !important;
}

body .modulus-search-suggestion-group h3 {
    margin: 0 0 8px !important;
    color: #0084ff !important;
    font-size: 11px !important;
    font-weight: 950 !important;
    letter-spacing: 1.4px !important;
    text-transform: uppercase !important;
}

body .modulus-search-result {
    display: grid !important;
    grid-template-columns: 48px minmax(0, 1fr) !important;
    gap: 10px !important;
    align-items: center !important;
    min-height: 62px !important;
    padding: 8px !important;
    border: 1px solid transparent !important;
    border-radius: 10px !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

body .modulus-search-result:hover,
body .modulus-search-result:focus-visible {
    border-color: rgba(0,132,255,.34) !important;
    background: rgba(0,132,255,.09) !important;
    outline: none !important;
}

body .modulus-search-result-image {
    width: 48px !important;
    height: 48px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    border: 1px solid rgba(255,255,255,.09) !important;
    border-radius: 9px !important;
    background: rgba(255,255,255,.04) !important;
    color: #0084ff !important;
    font-size: 17px !important;
    font-weight: 950 !important;
}

body .modulus-search-result-image img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
}

body .modulus-search-result-copy {
    min-width: 0 !important;
    display: grid !important;
    gap: 4px !important;
}

body .modulus-search-result-copy strong {
    overflow: hidden !important;
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 1.15 !important;
    text-overflow: ellipsis !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

body .modulus-search-result-copy small,
body .modulus-search-loading,
body .modulus-search-empty-live {
    color: rgba(255,255,255,.62) !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
}

body .modulus-search-result-price {
    color: #a8a61d !important;
    font-weight: 950 !important;
}

body .modulus-search-loading,
body .modulus-search-empty-live {
    padding: 16px !important;
}

body .modulus-site-search.is-searching input[type="search"] {
    border-color: rgba(0,132,255,.8) !important;
}

body .modulus-search-view-all {
    display: flex !important;
    min-height: 42px !important;
    align-items: center !important;
    justify-content: center !important;
    margin-top: 10px !important;
    border: 1px solid rgba(0,132,255,.42) !important;
    border-radius: 10px !important;
    background: rgba(0,132,255,.12) !important;
    color: #ffffff !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    letter-spacing: .7px !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
}

body .modulus-search-view-all:hover {
    background: #0084ff !important;
}

/* ================================
   HARD GLOBAL MODULUS FRAMEWORK FIX
================================ */

html,
body,
body #page,
body #content,
body .site-content,
body .content-area,
body .site-main,
body .inside-article,
body .entry-content {
    background: #02060d !important;
}

/* Global dark header */
body #masthead,
body .site-header,
body .inside-header,
body #site-navigation,
body .main-navigation,
body .inside-navigation,
body .main-navigation ul,
body .main-navigation ul ul,
body .navigation-search,
body .menu-toggle {
    background: #02060d !important;
    background-color: #02060d !important;
}

body #masthead,
body .site-header,
body .main-navigation {
    border-bottom: 1px solid rgba(0,132,255,.22) !important;
}

body .site-header a,
body .main-navigation a,
body .main-navigation .main-nav ul li a,
body .menu-toggle,
body .menu-toggle:before,
body .menu-bar-item > a,
body .navigation-branding a,
body .site-branding a,
body .site-title a {
    color: #ffffff !important;
}

body .main-navigation .main-nav ul li:hover > a,
body .main-navigation .main-nav ul li.current-menu-item > a,
body .main-navigation .main-nav ul li.current_page_item > a {
    color: #0084ff !important;
    background: transparent !important;
}

/* ================================
   HARD SHOP PAGE FIX
================================ */

body.modulus-shop-page,
body.modulus-shop-page #page,
body.modulus-shop-page #content,
body.modulus-shop-page .site-content,
body.modulus-shop-page .content-area,
body.modulus-shop-page .site-main,
body.modulus-shop-page .inside-article,
body.modulus-shop-page .entry-content,
body.modulus-shop-page .woocommerce,
body.modulus-shop-page .woocommerce-page {
    background: #02060d !important;
    color: #ffffff !important;
}

body.modulus-shop-page .inside-article {
    padding: 80px 0 !important;
}

body.modulus-shop-page .container.grid-container {
    width: 1400px !important;
    max-width: 90% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.modulus-shop-page .woocommerce-products-header,
body.modulus-shop-page .woocommerce-notices-wrapper {
    background: transparent !important;
}

body.modulus-shop-page .woocommerce-products-header__title,
body.modulus-shop-page .page-title {
    color: #ffffff !important;
    font-size: clamp(48px, 7vw, 86px);
    line-height: .95;
    text-transform: uppercase;
    letter-spacing: -0.04em;
    margin-bottom: 30px;
}

body.modulus-shop-page .woocommerce-result-count,
body.modulus-shop-page .woocommerce-breadcrumb {
    color: rgba(255,255,255,.68) !important;
}

body.modulus-shop-page .woocommerce-ordering select {
    background: rgba(10,14,22,.92) !important;
    border: 1px solid rgba(0,132,255,.22) !important;
    color: #ffffff !important;
    border-radius: 8px;
    padding: 10px 12px;
}

body.modulus-shop-page ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    margin: 40px 0 0 !important;
    padding: 0 !important;
}

body.modulus-shop-page ul.products::before,
body.modulus-shop-page ul.products::after {
    display: none !important;
}

body.modulus-shop-page ul.products li.product {
    width: auto !important;
    float: none !important;
    margin: 0 !important;
    background: rgba(10,14,22,.92) !important;
    border: 1px solid rgba(0,132,255,.22) !important;
    border-radius: 16px;
    padding: 22px !important;
    transition: .25s ease;
}

body.modulus-shop-page ul.products li.product:hover {
    transform: translateY(-6px);
    border-color: #0084ff !important;
}

body.modulus-shop-page ul.products li.product img {
    border-radius: 12px;
}

body.modulus-shop-page .woocommerce-loop-product__title,
body.modulus-shop-page ul.products li.product .price {
    color: #ffffff !important;
}

body.modulus-shop-page ul.products li.product a.button {
    background: transparent !important;
    border: 1px solid #0084ff !important;
    color: #ffffff !important;
    border-radius: 8px !important;
    text-transform: uppercase;
    font-weight: 800;
    letter-spacing: .8px;
}

body.modulus-shop-page ul.products li.product a.button:hover {
    background: #0084ff !important;
}

/* ================================
   MODULUS REBUILT SHOP ARCHIVE
================================ */

body.modulus-shop-page .site-main,
body.modulus-shop-page .inside-article,
body.modulus-shop-page .entry-content {
    padding: 0 !important;
}

.mod-shop-archive {
    min-height: 100vh;
    background: #02060d;
    color: #ffffff;
}

.mod-shop-wrap {
    width: 1440px;
    max-width: 92%;
    margin: 0 auto;
}

.mod-shop-hero {
    padding: 92px 0 58px;
    border-bottom: 1px solid rgba(0,132,255,.18);
    background:
        radial-gradient(circle at 82% 24%, rgba(0,132,255,.2), transparent 34%),
        linear-gradient(145deg, rgba(2,6,13,.96), rgba(5,7,11,.98));
}

.mod-shop-hero-content {
    max-width: 1050px;
}

.mod-shop-hero h1 {
    max-width: 1120px;
    margin: 0;
    color: #ffffff;
    font-size: clamp(48px, 7vw, 96px);
    line-height: .92;
    text-transform: uppercase;
}

.mod-shop-hero p:not(.mod-kicker) {
    max-width: 820px;
    margin: 22px 0 0;
    color: rgba(255,255,255,.72);
    font-size: 19px;
    line-height: 1.7;
}

.mod-shop-seo-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 28px;
}

.mod-shop-seo-tags span {
    display: inline-flex;
    min-height: 38px;
    align-items: center;
    padding: 8px 14px;
    border: 1px solid rgba(0,132,255,.32);
    border-radius: 999px;
    background: rgba(0,132,255,.075);
    color: rgba(255,255,255,.86);
    font-size: 12px;
    font-weight: 950;
    letter-spacing: .8px;
    text-transform: uppercase;
}

.mod-shop-body {
    padding: 48px 0 90px;
}

.mod-shop-layout {
    display: grid;
    grid-template-columns: 330px minmax(0, 1fr);
    gap: 30px;
    align-items: start;
}

.mod-shop-sidebar {
    position: sticky;
    top: 24px;
    display: grid;
    gap: 16px;
}

.mod-shop-side-card,
.mod-shop-toolbar,
.mod-shop-seo-copy {
    border: 1px solid rgba(0,132,255,.24);
    border-radius: 16px;
    background: rgba(10,14,22,.92);
    box-shadow: 0 18px 50px rgba(0,0,0,.32);
}

.mod-shop-side-card {
    padding: 18px;
}

.mod-shop-side-card h2 {
    margin: -4px 0 14px;
    color: #ffffff;
    font-size: 24px;
    line-height: 1;
    text-transform: uppercase;
}

.mod-shop-filter-list,
.mod-shop-pill-list,
.mod-shop-tool-list,
.mod-shop-side-products,
.mod-shop-guide-list {
    display: grid;
    gap: 9px;
}

.mod-shop-filter-list a,
.mod-shop-tool-list a,
.mod-shop-guide-list a {
    display: grid;
    gap: 3px;
    min-height: 52px;
    padding: 11px 12px;
    border: 1px solid rgba(255,255,255,.075);
    border-radius: 10px;
    background: rgba(255,255,255,.032);
    color: #ffffff !important;
    text-decoration: none !important;
    transition: border-color .18s ease, background .18s ease, transform .18s ease;
}

.mod-shop-filter-list a:hover,
.mod-shop-filter-list a.is-active,
.mod-shop-tool-list a:hover,
.mod-shop-guide-list a:hover {
    transform: translateY(-1px);
    border-color: rgba(0,132,255,.52);
    background: rgba(0,132,255,.1);
}

.mod-shop-tool-list a:hover {
    border-color: rgba(120,48,239,.72);
    background: rgba(120,48,239,.12);
}

.mod-shop-filter-list span,
.mod-shop-guide-list span,
.mod-shop-side-products strong {
    overflow: hidden;
    color: #ffffff;
    font-size: 13px;
    font-weight: 950;
    line-height: 1.2;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.mod-shop-filter-list small,
.mod-shop-guide-list small,
.mod-shop-side-products small {
    color: rgba(255,255,255,.58);
    font-size: 12px;
    line-height: 1.25;
}

.mod-shop-pill-list {
    grid-template-columns: 1fr 1fr;
}

.mod-shop-pill-list a {
    display: inline-flex;
    min-height: 40px;
    align-items: center;
    justify-content: center;
    padding: 8px 10px;
    border: 1px solid rgba(0,132,255,.3);
    border-radius: 999px;
    background: rgba(0,132,255,.075);
    color: #ffffff !important;
    font-size: 12px;
    font-weight: 950;
    letter-spacing: .6px;
    text-decoration: none !important;
    text-transform: uppercase;
}

.mod-shop-tool-list a {
    min-height: 44px;
    display: flex;
    align-items: center;
    font-weight: 950;
    letter-spacing: .5px;
    text-transform: uppercase;
}

.mod-shop-side-products a {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 11px;
    align-items: center;
    min-height: 70px;
    padding: 9px;
    border: 1px solid rgba(255,255,255,.075);
    border-radius: 11px;
    background: rgba(255,255,255,.032);
    color: #ffffff !important;
    text-decoration: none !important;
}

.mod-shop-side-product-image {
    width: 54px;
    height: 54px;
    overflow: hidden;
    border-radius: 9px;
    background: rgba(255,255,255,.04);
}

.mod-shop-side-product-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.mod-shop-side-products small {
    color: #a8a61d !important;
    font-weight: 950;
}

.mod-shop-main {
    min-width: 0;
}

.mod-shop-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 22px;
    padding: 18px;
}

.mod-shop-toolbar .woocommerce-result-count {
    margin: 0 !important;
    color: rgba(255,255,255,.72) !important;
}

.mod-shop-toolbar form.woocommerce-ordering {
    margin: 0 !important;
}

.mod-shop-toolbar select {
    min-height: 44px;
    border: 1px solid rgba(0,132,255,.3) !important;
    border-radius: 10px !important;
    background: rgba(3,8,15,.94) !important;
    color: #ffffff !important;
}

body.modulus-shop-page .mod-shop-main ul.products {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.modulus-shop-page .mod-shop-main ul.products::before,
body.modulus-shop-page .mod-shop-main ul.products::after {
    display: none !important;
}

body.modulus-shop-page .mod-shop-main ul.products li.product {
    width: auto !important;
    float: none !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 18px !important;
    border: 1px solid rgba(0,132,255,.24) !important;
    border-radius: 16px !important;
    background: rgba(10,14,22,.92) !important;
    box-shadow: 0 18px 50px rgba(0,0,0,.28) !important;
}

body.modulus-shop-page .mod-shop-main ul.products li.product img {
    width: 100% !important;
    border-radius: 12px !important;
}

body.modulus-shop-page .mod-shop-main .woocommerce-loop-product__title {
    color: #ffffff !important;
    font-size: 20px !important;
    line-height: 1.05 !important;
    text-transform: uppercase !important;
}

body.modulus-shop-page .mod-shop-main ul.products li.product .price {
    color: #a8a61d !important;
    font-weight: 950 !important;
}

body.modulus-shop-page .mod-shop-main ul.products li.product a.button {
    width: 100%;
    min-height: 44px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    margin-top: auto !important;
    border: 1px solid rgba(0,132,255,.45) !important;
    border-radius: 10px !important;
    background: rgba(0,132,255,.1) !important;
    color: #ffffff !important;
    font-weight: 950 !important;
    letter-spacing: .7px;
    text-transform: uppercase;
}

.mod-shop-main nav.woocommerce-pagination {
    margin-top: 30px;
}

.mod-shop-seo-copy {
    margin-top: 34px;
    padding: 28px;
}

.mod-shop-seo-copy h2 {
    margin: 0 0 16px;
    color: #ffffff;
    font-size: clamp(30px, 4vw, 54px);
    line-height: .98;
    text-transform: uppercase;
}

.mod-shop-seo-copy p {
    max-width: 900px;
    color: rgba(255,255,255,.7);
    line-height: 1.75;
}

@media(max-width: 1180px) {
    .mod-shop-layout {
        grid-template-columns: 1fr;
    }

    .mod-shop-sidebar {
        position: static;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media(max-width: 900px) {
    body.modulus-shop-page .mod-shop-main ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .mod-shop-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media(max-width: 650px) {
    .mod-shop-hero {
        padding: 62px 0 42px;
    }

    .mod-shop-hero h1 {
        font-size: clamp(42px, 13vw, 64px);
    }

    .mod-shop-sidebar,
    body.modulus-shop-page .mod-shop-main ul.products {
        grid-template-columns: 1fr !important;
    }

    .mod-shop-side-card,
    .mod-shop-toolbar,
    .mod-shop-seo-copy {
        border-radius: 12px;
    }
}

/* ================================
   HARD ABOUT PAGE ALIGNMENT FIX
================================ */

body.modulus-about-page-frame,
body.modulus-about-page-frame #page,
body.modulus-about-page-frame #content,
body.modulus-about-page-frame .site-content,
body.modulus-about-page-frame .inside-article,
body.modulus-about-page-frame .entry-content {
    background: #02060d !important;
}

body.modulus-about-page-frame .inside-article {
    padding: 0 !important;
}

body.modulus-about-page-frame .container.grid-container,
body.modulus-about-page-frame .site.grid-container {
    width: 100% !important;
    max-width: 100% !important;
}

body.modulus-about-page-frame .content-area,
body.modulus-about-page-frame .site-main,
body.modulus-about-page-frame .entry-content {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

body.modulus-about-page-frame .mod-about-page {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
}

body.modulus-about-page-frame .mod-home-wrap {
    width: 1400px !important;
    max-width: 90% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Responsive shop */
@media(max-width: 1100px) {
    body.modulus-shop-page ul.products {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media(max-width: 650px) {
    body.modulus-shop-page ul.products {
        grid-template-columns: 1fr;
    }

    body.modulus-shop-page .inside-article {
        padding: 50px 0 !important;
    }
}

/* ================================
   MODULUS BASKET / CART PAGE
================================ */

body.modulus-basket-page,
body.modulus-basket-page #page,
body.modulus-basket-page #content,
body.modulus-basket-page .site-content,
body.modulus-basket-page .content-area,
body.modulus-basket-page .site-main,
body.modulus-basket-page .inside-article,
body.modulus-basket-page .entry-content {
    background: #02060d !important;
    color: #ffffff !important;
}

body.modulus-basket-page .inside-article {
    padding: 90px 0 !important;
}

body.modulus-basket-page .container.grid-container {
    width: 1400px !important;
    max-width: 90% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.modulus-basket-page .entry-title {
    color: #ffffff !important;
    font-size: clamp(48px, 7vw, 86px);
    line-height: .95;
    text-transform: uppercase;
    letter-spacing: -0.04em;
    margin: 0 0 42px;
}

body.modulus-basket-page .woocommerce {
    color: #ffffff;
}

/* Notices */

body.modulus-basket-page .woocommerce-notices-wrapper,
body.modulus-basket-page .woocommerce-message,
body.modulus-basket-page .woocommerce-info,
body.modulus-basket-page .woocommerce-error {
    background: rgba(10,14,22,.92) !important;
    border: 1px solid rgba(0,132,255,.25) !important;
    color: rgba(255,255,255,.82) !important;
    border-radius: 14px;
}

body.modulus-basket-page .woocommerce-message::before,
body.modulus-basket-page .woocommerce-info::before {
    color: #0084ff !important;
}

/* Basket table */

body.modulus-basket-page table.shop_table {
    background: rgba(10,14,22,.92) !important;
    border: 1px solid rgba(0,132,255,.22) !important;
    border-radius: 18px;
    overflow: hidden;
    border-collapse: separate !important;
    border-spacing: 0;
    box-shadow: 0 20px 60px rgba(0,0,0,.35);
}

body.modulus-basket-page table.shop_table th {
    background: rgba(0,132,255,.08) !important;
    color: #ffffff !important;
    border-bottom: 1px solid rgba(0,132,255,.22) !important;
    text-transform: uppercase;
    font-size: 13px;
    letter-spacing: 1px;
    padding: 18px 16px !important;
}

body.modulus-basket-page table.shop_table td {
    border-top: 1px solid rgba(255,255,255,.08) !important;
    color: rgba(255,255,255,.78) !important;
    padding: 20px 16px !important;
}

body.modulus-basket-page table.shop_table tr:first-child td {
    border-top: none !important;
}

body.modulus-basket-page table.shop_table a {
    color: #ffffff !important;
    text-decoration: none;
}

body.modulus-basket-page table.shop_table a:hover {
    color: #0084ff !important;
}

body.modulus-basket-page .product-name a {
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .4px;
}

body.modulus-basket-page .product-thumbnail img {
    width: 86px !important;
    border-radius: 12px;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(0,132,255,.18);
}

body.modulus-basket-page .product-price,
body.modulus-basket-page .product-subtotal {
    color: #ffffff !important;
    font-weight: 800;
}

/* Remove item */

body.modulus-basket-page a.remove {
    color: rgba(255,255,255,.7) !important;
    background: rgba(255,255,255,.06) !important;
    border: 1px solid rgba(255,255,255,.12);
    width: 28px;
    height: 28px;
    line-height: 25px;
    border-radius: 999px;
}

body.modulus-basket-page a.remove:hover {
    color: #ffffff !important;
    background: #0084ff !important;
    border-color: #0084ff;
}

/* Quantity */

body.modulus-basket-page .quantity input.qty {
    background: #05070b !important;
    border: 1px solid rgba(0,132,255,.25) !important;
    color: #ffffff !important;
    border-radius: 8px;
    min-height: 44px;
}

/* Coupon + actions */

body.modulus-basket-page .actions {
    background: rgba(255,255,255,.025) !important;
}

body.modulus-basket-page .coupon {
    display: flex;
    gap: 12px;
    align-items: center;
}

body.modulus-basket-page .coupon input.input-text {
    min-width: 220px;
    min-height: 48px;
    background: #05070b !important;
    border: 1px solid rgba(0,132,255,.25) !important;
    color: #ffffff !important;
    border-radius: 8px;
    padding: 0 14px;
}

body.modulus-basket-page .coupon input.input-text::placeholder {
    color: rgba(255,255,255,.45);
}

/* Buttons */

body.modulus-basket-page .button,
body.modulus-basket-page button.button,
body.modulus-basket-page input.button,
body.modulus-basket-page a.button,
body.modulus-basket-page .checkout-button {
    background: transparent !important;
    border: 1px solid #0084ff !important;
    color: #ffffff !important;
    border-radius: 8px !important;
    min-height: 48px;
    padding: 14px 24px !important;
    text-transform: uppercase;
    font-weight: 800 !important;
    letter-spacing: .8px;
    text-decoration: none !important;
}

body.modulus-basket-page .button:hover,
body.modulus-basket-page button.button:hover,
body.modulus-basket-page input.button:hover,
body.modulus-basket-page a.button:hover,
body.modulus-basket-page .checkout-button:hover {
    background: #0084ff !important;
    color: #ffffff !important;
}

body.modulus-basket-page .checkout-button {
    width: 100%;
    text-align: center;
    background: linear-gradient(135deg, #005cff, #008cff) !important;
    border-color: #0084ff !important;
    font-size: 15px !important;
}

/* Basket totals */

body.modulus-basket-page .cart-collaterals {
    margin-top: 34px;
}

body.modulus-basket-page .cart_totals {
    width: 440px !important;
    max-width: 100%;
    background: rgba(10,14,22,.92);
    border: 1px solid rgba(0,132,255,.22);
    border-radius: 18px;
    padding: 28px;
    box-shadow: 0 20px 60px rgba(0,0,0,.35);
}

body.modulus-basket-page .cart_totals h2 {
    color: #ffffff !important;
    margin: 0 0 22px;
    text-transform: uppercase;
    letter-spacing: .8px;
    font-size: 26px;
}

body.modulus-basket-page .cart_totals table {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none;
}

body.modulus-basket-page .cart_totals table th,
body.modulus-basket-page .cart_totals table td {
    background: transparent !important;
    border-top: 1px solid rgba(255,255,255,.08) !important;
    color: rgba(255,255,255,.78) !important;
    padding: 16px 0 !important;
}

body.modulus-basket-page .cart_totals .order-total th,
body.modulus-basket-page .cart_totals .order-total td,
body.modulus-basket-page .cart_totals .order-total strong {
    color: #ffffff !important;
    font-size: 20px;
}

body.modulus-basket-page .wc-proceed-to-checkout {
    padding: 20px 0 0 !important;
}

/* Shipping calculator */

body.modulus-basket-page .shipping-calculator-button {
    color: #0084ff !important;
    font-weight: 800;
}

body.modulus-basket-page .shipping-calculator-form input,
body.modulus-basket-page .shipping-calculator-form select,
body.modulus-basket-page .select2-container--default .select2-selection--single {
    background: #05070b !important;
    border: 1px solid rgba(0,132,255,.25) !important;
    color: #ffffff !important;
    border-radius: 8px !important;
    min-height: 44px;
}

body.modulus-basket-page .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #ffffff !important;
    line-height: 44px !important;
}

/* Empty basket */

body.modulus-basket-page .cart-empty,
body.modulus-basket-page .return-to-shop {
    background: rgba(10,14,22,.92);
    border: 1px solid rgba(0,132,255,.22);
    border-radius: 18px;
    padding: 28px;
    color: rgba(255,255,255,.78) !important;
}

body.modulus-basket-page .return-to-shop {
    margin-top: 18px;
}

/* Responsive */

@media(max-width: 900px) {
    body.modulus-basket-page .inside-article {
        padding: 60px 0 !important;
    }

    body.modulus-basket-page .entry-title {
        margin-bottom: 28px;
    }

    body.modulus-basket-page .coupon {
        display: grid;
        width: 100%;
    }

    body.modulus-basket-page .coupon input.input-text,
    body.modulus-basket-page .coupon button {
        width: 100% !important;
    }

    body.modulus-basket-page .cart_totals {
        width: 100% !important;
    }
}

@media(max-width: 700px) {
    body.modulus-basket-page table.shop_table {
        border-radius: 16px;
    }

    body.modulus-basket-page table.shop_table_responsive tr {
        background: transparent !important;
        border-bottom: 1px solid rgba(255,255,255,.08);
        padding: 14px 0;
    }

    body.modulus-basket-page table.shop_table_responsive tr td {
        background: transparent !important;
        border-top: 0 !important;
    }

    body.modulus-basket-page table.shop_table_responsive tr td::before {
        color: #0084ff !important;
        text-transform: uppercase;
        font-size: 12px;
        letter-spacing: .8px;
    }

    body.modulus-basket-page .product-thumbnail {
        display: block !important;
        text-align: left !important;
    }

    body.modulus-basket-page .product-thumbnail::before {
        display: none !important;
    }
}

/* ================================
   MODULUS BASKET - WOO BLOCK CART
================================ */

/* Page frame */
body.modulus-basket-page,
body.modulus-basket-page #page,
body.modulus-basket-page #content,
body.modulus-basket-page .site-content,
body.modulus-basket-page .content-area,
body.modulus-basket-page .site-main,
body.modulus-basket-page .inside-article,
body.modulus-basket-page .entry-content {
    background: #02060d !important;
    color: #ffffff !important;
}

body.modulus-basket-page .inside-article {
    padding: 80px 0 110px !important;
}

/* Centre the basket page properly */
body.modulus-basket-page .container.grid-container,
body.modulus-basket-page .site.grid-container {
    width: 100% !important;
    max-width: 100% !important;
}

body.modulus-basket-page .content-area,
body.modulus-basket-page .site-main,
body.modulus-basket-page .entry-content {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

body.modulus-basket-page .entry-header,
body.modulus-basket-page .woocommerce,
body.modulus-basket-page .wp-block-woocommerce-cart,
body.modulus-basket-page .wc-block-cart {
    width: 1400px !important;
    max-width: 90% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Page title */
body.modulus-basket-page .entry-title {
    color: #ffffff !important;
    font-size: clamp(52px, 7vw, 92px);
    line-height: .9;
    text-transform: uppercase;
    letter-spacing: -0.045em;
    margin: 0 0 48px !important;
}

/* Main block layout */
body.modulus-basket-page .wc-block-cart {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 420px !important;
    gap: 34px !important;
    align-items: start;
}

/* Left cart area */
body.modulus-basket-page .wc-block-cart__main {
    background: rgba(10,14,22,.92) !important;
    border: 1px solid rgba(0,132,255,.22) !important;
    border-radius: 18px !important;
    padding: 0 !important;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(0,0,0,.35);
}

/* Product table headings */
body.modulus-basket-page .wc-block-cart-items__header,
body.modulus-basket-page .wc-block-cart-items__header th {
    background: rgba(0,132,255,.08) !important;
    color: #ffffff !important;
    border-bottom: 1px solid rgba(0,132,255,.22) !important;
    text-transform: uppercase;
    font-size: 13px;
    letter-spacing: 1px;
}

/* Product rows */
body.modulus-basket-page .wc-block-cart-items,
body.modulus-basket-page .wc-block-cart-items__row,
body.modulus-basket-page .wc-block-cart-item__wrap,
body.modulus-basket-page .wc-block-components-sidebar-layout,
body.modulus-basket-page .wc-block-components-main {
    background: transparent !important;
    color: #ffffff !important;
}

body.modulus-basket-page .wc-block-cart-items__row {
    border-bottom: 1px solid rgba(255,255,255,.09) !important;
}

body.modulus-basket-page .wc-block-cart-items__row:last-child {
    border-bottom: none !important;
}

body.modulus-basket-page .wc-block-cart-items__row td {
    padding: 26px 18px !important;
    border: 0 !important;
}

/* Product images */
body.modulus-basket-page .wc-block-cart-item__image img {
    width: 90px !important;
    max-width: 90px !important;
    border-radius: 12px !important;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(0,132,255,.18);
}

/* Product text */
body.modulus-basket-page .wc-block-cart-item__product,
body.modulus-basket-page .wc-block-cart-item__prices,
body.modulus-basket-page .wc-block-cart-item__total,
body.modulus-basket-page .wc-block-components-product-metadata,
body.modulus-basket-page .wc-block-components-product-metadata__description {
    color: rgba(255,255,255,.72) !important;
}

body.modulus-basket-page .wc-block-cart-item__product a,
body.modulus-basket-page .wc-block-components-product-name {
    color: #ffffff !important;
    font-weight: 900 !important;
    text-transform: uppercase;
    letter-spacing: .4px;
    text-decoration: none !important;
}

body.modulus-basket-page .wc-block-cart-item__product a:hover,
body.modulus-basket-page .wc-block-components-product-name:hover {
    color: #0084ff !important;
}

body.modulus-basket-page .wc-block-components-product-price,
body.modulus-basket-page .wc-block-components-product-price__value,
body.modulus-basket-page .wc-block-components-formatted-money-amount {
    color: #ffffff !important;
    font-weight: 800 !important;
}

/* Quantity selector */
body.modulus-basket-page .wc-block-components-quantity-selector {
    background: #05070b !important;
    border: 1px solid rgba(0,132,255,.25) !important;
    border-radius: 8px !important;
    color: #ffffff !important;
}

body.modulus-basket-page .wc-block-components-quantity-selector input,
body.modulus-basket-page .wc-block-components-quantity-selector button {
    background: transparent !important;
    color: #ffffff !important;
    border-color: rgba(255,255,255,.12) !important;
}

body.modulus-basket-page .wc-block-components-quantity-selector button:hover {
    background: rgba(0,132,255,.16) !important;
}

/* Remove link */
body.modulus-basket-page .wc-block-cart-item__remove-link {
    color: rgba(255,255,255,.65) !important;
    text-decoration: none !important;
    font-weight: 800;
}

body.modulus-basket-page .wc-block-cart-item__remove-link:hover {
    color: #0084ff !important;
}

/* Right sidebar totals */
body.modulus-basket-page .wc-block-cart__sidebar {
    background: rgba(10,14,22,.92) !important;
    border: 1px solid rgba(0,132,255,.22) !important;
    border-radius: 18px !important;
    padding: 28px !important;
    box-shadow: 0 20px 60px rgba(0,0,0,.35);
}

body.modulus-basket-page .wc-block-cart__totals-title,
body.modulus-basket-page .wc-block-components-totals-wrapper,
body.modulus-basket-page .wc-block-components-totals-item,
body.modulus-basket-page .wc-block-components-totals-coupon,
body.modulus-basket-page .wc-block-components-totals-footer-item {
    color: #ffffff !important;
    background: transparent !important;
    border-color: rgba(255,255,255,.1) !important;
}

body.modulus-basket-page .wc-block-cart__totals-title {
    text-transform: uppercase;
    letter-spacing: .8px;
    font-size: 22px !important;
    margin-bottom: 18px !important;
}

body.modulus-basket-page .wc-block-components-totals-item__label,
body.modulus-basket-page .wc-block-components-totals-item__value,
body.modulus-basket-page .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body.modulus-basket-page .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    color: #ffffff !important;
}

body.modulus-basket-page .wc-block-components-totals-footer-item {
    font-size: 22px !important;
    font-weight: 900 !important;
    border-top: 1px solid rgba(0,132,255,.22) !important;
    padding-top: 20px !important;
}

/* Coupon accordion */
body.modulus-basket-page .wc-block-components-panel,
body.modulus-basket-page .wc-block-components-panel__button,
body.modulus-basket-page .wc-block-components-totals-coupon__button {
    background: transparent !important;
    color: #ffffff !important;
    border-color: rgba(255,255,255,.1) !important;
}

body.modulus-basket-page .wc-block-components-panel__button {
    font-weight: 800;
}

body.modulus-basket-page .wc-block-components-text-input input {
    background: #05070b !important;
    border: 1px solid rgba(0,132,255,.25) !important;
    color: #ffffff !important;
    border-radius: 8px !important;
}

body.modulus-basket-page .wc-block-components-text-input label {
    color: rgba(255,255,255,.65) !important;
}

/* Checkout button */
body.modulus-basket-page .wc-block-cart__submit-button,
body.modulus-basket-page .wc-block-components-button {
    background: linear-gradient(135deg, #005cff, #008cff) !important;
    border: 1px solid #0084ff !important;
    color: #ffffff !important;
    border-radius: 8px !important;
    min-height: 54px;
    text-transform: uppercase;
    font-weight: 900 !important;
    letter-spacing: .8px;
    text-decoration: none !important;
}

body.modulus-basket-page .wc-block-cart__submit-button:hover,
body.modulus-basket-page .wc-block-components-button:hover {
    background: #0084ff !important;
    color: #ffffff !important;
}

/* Hide awkward block borders */
body.modulus-basket-page .is-large.wc-block-cart .wc-block-cart-items,
body.modulus-basket-page .is-large.wc-block-cart .wc-block-cart-items td,
body.modulus-basket-page .is-large.wc-block-cart .wc-block-cart-items th {
    border-color: rgba(255,255,255,.09) !important;
}

/* Mobile */
@media(max-width: 1000px) {
    body.modulus-basket-page .wc-block-cart {
        grid-template-columns: 1fr !important;
    }

    body.modulus-basket-page .wc-block-cart__sidebar {
        position: static !important;
    }
}

@media(max-width: 700px) {
    body.modulus-basket-page .inside-article {
        padding: 54px 0 80px !important;
    }

    body.modulus-basket-page .entry-title {
        margin-bottom: 30px !important;
    }

    body.modulus-basket-page .wc-block-cart__main,
    body.modulus-basket-page .wc-block-cart__sidebar {
        border-radius: 16px !important;
    }

    body.modulus-basket-page .wc-block-cart-items__row td {
        padding: 18px 14px !important;
    }

    body.modulus-basket-page .wc-block-cart-item__image img {
        width: 72px !important;
        max-width: 72px !important;
    }
}
body.modulus-basket-page .entry-header,
body.modulus-basket-page .woocommerce,
body.modulus-basket-page .wp-block-woocommerce-cart,
body.modulus-basket-page .wc-block-cart {
    width: 1400px !important;
    max-width: 90% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.modulus-basket-page .entry-header,
body.modulus-basket-page .woocommerce,
body.modulus-basket-page .wp-block-woocommerce-cart,
body.modulus-basket-page .wc-block-cart {
    width: 1400px !important;
    max-width: 90% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.wc-block-cart-item__image img

/* ================================
   MODULUS BASKET COMPACT FINAL OVERRIDE
   Must be last basket CSS
================================ */

/* Reduce page breathing room */
body.modulus-basket-page .inside-article {
    padding: 42px 0 70px !important;
}

/* Make the whole basket page narrower */
body.modulus-basket-page .entry-header,
body.modulus-basket-page .woocommerce,
body.modulus-basket-page .wp-block-woocommerce-cart,
body.modulus-basket-page .wc-block-cart {
    width: 980px !important;
    max-width: 92% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Smaller title */
body.modulus-basket-page .entry-title {
    font-size: clamp(34px, 4vw, 54px) !important;
    line-height: 0.95 !important;
    margin-bottom: 22px !important;
}

/* Compact two-column layout */
body.modulus-basket-page .wc-block-cart {
    display: grid !important;
    grid-template-columns: minmax(0, 620px) 300px !important;
    gap: 20px !important;
    align-items: start !important;
}

/* Keep panels small and neat */
body.modulus-basket-page .wc-block-cart__main {
    width: 100% !important;
    max-width: 620px !important;
}

body.modulus-basket-page .wc-block-cart__sidebar,
body.modulus-basket-page .wc-block-components-sidebar {
    width: 100% !important;
    max-width: 300px !important;
}

/* Smaller cards */
body.modulus-basket-page .wc-block-cart__main,
body.modulus-basket-page .wc-block-cart__sidebar {
    border-radius: 14px !important;
    box-shadow: 0 16px 45px rgba(0,0,0,.35) !important;
}

/* Hide oversized table header feel */
body.modulus-basket-page .wc-block-cart-items__header {
    display: none !important;
}

/* Compact product rows */
body.modulus-basket-page .wc-block-cart-items__row td {
    padding: 14px 12px !important;
}

body.modulus-basket-page .wc-block-cart-items__row {
    min-height: 92px !important;
}

/* Product thumbnail as icon */
body.modulus-basket-page .wc-block-cart-item__image {
    width: 62px !important;
    min-width: 62px !important;
    max-width: 62px !important;
    padding: 12px 8px 12px 12px !important;
    vertical-align: top !important;
}

body.modulus-basket-page .wc-block-cart-item__image img {
    width: 46px !important;
    height: 46px !important;
    max-width: 46px !important;
    max-height: 46px !important;
    object-fit: contain !important;
    padding: 5px !important;
    border-radius: 9px !important;
    background:
        radial-gradient(circle at center, rgba(0,132,255,.13), transparent 55%),
        rgba(255,255,255,.04) !important;
    border: 1px solid rgba(0,132,255,.2) !important;
}

/* Product name/price smaller */
body.modulus-basket-page .wc-block-components-product-name,
body.modulus-basket-page .wc-block-cart-item__product a {
    font-size: 0.86rem !important;
    line-height: 1.2 !important;
}

body.modulus-basket-page .wc-block-components-product-price,
body.modulus-basket-page .wc-block-components-product-price__value,
body.modulus-basket-page .wc-block-components-formatted-money-amount {
    font-size: 0.84rem !important;
}

/* Metadata smaller */
body.modulus-basket-page .wc-block-components-product-metadata,
body.modulus-basket-page .wc-block-components-product-details,
body.modulus-basket-page .wc-block-components-product-metadata__description {
    font-size: 0.74rem !important;
    line-height: 1.35 !important;
}

/* Compact quantity */
body.modulus-basket-page .wc-block-components-quantity-selector {
    width: 88px !important;
    min-height: 32px !important;
    height: 32px !important;
    border-radius: 7px !important;
}

body.modulus-basket-page .wc-block-components-quantity-selector input {
    height: 30px !important;
    min-height: 30px !important;
    font-size: 0.8rem !important;
}

body.modulus-basket-page .wc-block-components-quantity-selector button {
    min-width: 26px !important;
    min-height: 30px !important;
    height: 30px !important;
    font-size: 0.8rem !important;
}

/* Smaller remove link */
body.modulus-basket-page .wc-block-cart-item__remove-link {
    font-size: 0.72rem !important;
    margin-top: 3px !important;
}

/* Reduce total column text scale */
body.modulus-basket-page .wc-block-cart__sidebar {
    padding: 18px !important;
}

body.modulus-basket-page .wc-block-cart__totals-title {
    font-size: 14px !important;
    margin-bottom: 10px !important;
    letter-spacing: .8px !important;
}

body.modulus-basket-page .wc-block-components-totals-item {
    font-size: 0.82rem !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

body.modulus-basket-page .wc-block-components-totals-footer-item {
    font-size: 16px !important;
    padding-top: 14px !important;
}

/* Coupon less dominant */
body.modulus-basket-page .wc-block-components-panel__button {
    font-size: 0.78rem !important;
    padding: 10px 0 !important;
}

/* Checkout button smaller but still strong */
body.modulus-basket-page .wc-block-cart__submit-button,
body.modulus-basket-page .wc-block-components-button {
    min-height: 42px !important;
    padding: 11px 16px !important;
    font-size: 0.76rem !important;
    border-radius: 7px !important;
}

/* Prevent Woo block internals forcing wide layout */
body.modulus-basket-page .wc-block-components-sidebar-layout,
body.modulus-basket-page .wc-block-components-main {
    width: auto !important;
    max-width: 100% !important;
}

body.modulus-basket-page .wc-block-components-sidebar-layout .wc-block-components-main {
    padding-right: 0 !important;
}

/* Mobile */
@media(max-width: 980px) {
    body.modulus-basket-page .entry-header,
    body.modulus-basket-page .woocommerce,
    body.modulus-basket-page .wp-block-woocommerce-cart,
    body.modulus-basket-page .wc-block-cart {
        width: 720px !important;
        max-width: 92% !important;
    }

    body.modulus-basket-page .wc-block-cart {
        grid-template-columns: 1fr !important;
    }

    body.modulus-basket-page .wc-block-cart__main,
    body.modulus-basket-page .wc-block-cart__sidebar,
    body.modulus-basket-page .wc-block-components-sidebar {
        max-width: 100% !important;
    }
}

@media(max-width: 620px) {
    body.modulus-basket-page .inside-article {
        padding: 32px 0 58px !important;
    }

    body.modulus-basket-page .entry-title {
        font-size: 38px !important;
    }

    body.modulus-basket-page .wc-block-cart-item__image {
        width: 54px !important;
        min-width: 54px !important;
        max-width: 54px !important;
    }

    body.modulus-basket-page .wc-block-cart-item__image img {
        width: 40px !important;
        height: 40px !important;
        max-width: 40px !important;
        max-height: 40px !important;
    }
}
/* =====================================================
   MODULUS BASKET - REAL WOO BLOCK OVERRIDE
   MUST BE LAST IN MODULUS-HOME.CSS
===================================================== */

/* Target cart page even if custom body class fails */
body.woocommerce-cart,
body.woocommerce-cart #page,
body.woocommerce-cart #content,
body.woocommerce-cart .site-content,
body.woocommerce-cart .inside-article,
body.woocommerce-cart .entry-content {
    background: #02060d !important;
    color: #ffffff !important;
}

/* Remove GeneratePress width behaviour */
body.woocommerce-cart .container.grid-container,
body.woocommerce-cart .site.grid-container,
body.woocommerce-cart .content-area,
body.woocommerce-cart .site-main,
body.woocommerce-cart .inside-article,
body.woocommerce-cart .entry-content {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    float: none !important;
}

/* Page padding */
body.woocommerce-cart .inside-article {
    padding-top: 42px !important;
    padding-bottom: 70px !important;
}

/* Centre title and cart block */
body.woocommerce-cart .entry-header,
body.woocommerce-cart .wp-block-woocommerce-cart {
    width: 980px !important;
    max-width: 92% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Smaller title */
body.woocommerce-cart .entry-title {
    color: #ffffff !important;
    font-size: clamp(34px, 4vw, 54px) !important;
    line-height: .95 !important;
    text-transform: uppercase;
    letter-spacing: -0.04em;
    margin: 0 0 24px !important;
}

/* THIS is the actual Woo Blocks layout */
body.woocommerce-cart .wc-block-components-sidebar-layout {
    display: grid !important;
    grid-template-columns: 620px 300px !important;
    gap: 20px !important;
    width: 980px !important;
    max-width: 92vw !important;
    margin-left: auto !important;
    margin-right: auto !important;
    align-items: start !important;
}

/* Override Woo's built-in large layout */
body.woocommerce-cart .is-large.wc-block-cart .wc-block-components-sidebar-layout,
body.woocommerce-cart .wc-block-cart .wc-block-components-sidebar-layout {
    display: grid !important;
    grid-template-columns: 620px 300px !important;
    gap: 20px !important;
}

/* Main basket column */
body.woocommerce-cart .wc-block-components-main,
body.woocommerce-cart .is-large.wc-block-cart .wc-block-components-main {
    width: 620px !important;
    max-width: 620px !important;
    padding-right: 0 !important;
    margin: 0 !important;
}

/* Totals column */
body.woocommerce-cart .wc-block-components-sidebar,
body.woocommerce-cart .is-large.wc-block-cart .wc-block-components-sidebar {
    width: 300px !important;
    max-width: 300px !important;
    padding-left: 0 !important;
    margin: 0 !important;
}

/* Panels */
body.woocommerce-cart .wc-block-components-main,
body.woocommerce-cart .wc-block-cart__sidebar,
body.woocommerce-cart .wc-block-components-sidebar {
    background: rgba(10,14,22,.92) !important;
    border: 1px solid rgba(0,132,255,.22) !important;
    border-radius: 16px !important;
    box-shadow: 0 16px 45px rgba(0,0,0,.35) !important;
}

/* Add padding to sidebar only */
body.woocommerce-cart .wc-block-components-sidebar {
    padding: 18px !important;
}

/* Hide big table header */
body.woocommerce-cart .wc-block-cart-items__header {
    display: none !important;
}

/* Product rows */
body.woocommerce-cart .wc-block-cart-items,
body.woocommerce-cart .wc-block-cart-items__row,
body.woocommerce-cart .wc-block-cart-items__row td {
    background: transparent !important;
    color: #ffffff !important;
}

body.woocommerce-cart .wc-block-cart-items__row {
    border-bottom: 1px solid rgba(255,255,255,.09) !important;
}

body.woocommerce-cart .wc-block-cart-items__row:last-child {
    border-bottom: none !important;
}

body.woocommerce-cart .wc-block-cart-items__row td {
    padding: 14px 12px !important;
    border: 0 !important;
}

/* Product image column as proper icon */
body.woocommerce-cart td.wc-block-cart-item__image,
body.woocommerce-cart .wc-block-cart-item__image {
    width: 62px !important;
    min-width: 62px !important;
    max-width: 62px !important;
    padding: 14px 8px 14px 14px !important;
    vertical-align: top !important;
}

body.woocommerce-cart .wc-block-cart-item__image img {
    width: 46px !important;
    height: 46px !important;
    max-width: 46px !important;
    max-height: 46px !important;
    object-fit: contain !important;
    padding: 5px !important;
    border-radius: 9px !important;
    background:
        radial-gradient(circle at center, rgba(0,132,255,.13), transparent 55%),
        rgba(255,255,255,.04) !important;
    border: 1px solid rgba(0,132,255,.2) !important;
}

/* Product info */
body.woocommerce-cart .wc-block-cart-item__wrap {
    display: grid !important;
    gap: 5px !important;
}

body.woocommerce-cart .wc-block-components-product-name,
body.woocommerce-cart .wc-block-cart-item__product a {
    color: #ffffff !important;
    font-size: .86rem !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
    text-transform: uppercase;
    letter-spacing: .4px;
    text-decoration: none !important;
}

body.woocommerce-cart .wc-block-components-product-name:hover {
    color: #0084ff !important;
}

body.woocommerce-cart .wc-block-components-product-price,
body.woocommerce-cart .wc-block-components-product-price__value,
body.woocommerce-cart .wc-block-components-formatted-money-amount {
    color: #ffffff !important;
    font-size: .84rem !important;
    font-weight: 800 !important;
}

/* Metadata */
body.woocommerce-cart .wc-block-components-product-metadata,
body.woocommerce-cart .wc-block-components-product-details,
body.woocommerce-cart .wc-block-components-product-metadata__description {
    color: rgba(255,255,255,.58) !important;
    font-size: .74rem !important;
    line-height: 1.35 !important;
}

/* Quantity */
body.woocommerce-cart .wc-block-components-quantity-selector {
    width: 88px !important;
    min-height: 32px !important;
    height: 32px !important;
    border-radius: 7px !important;
    background: #05070b !important;
    border: 1px solid rgba(0,132,255,.25) !important;
}

body.woocommerce-cart .wc-block-components-quantity-selector input {
    height: 30px !important;
    min-height: 30px !important;
    font-size: .8rem !important;
    color: #ffffff !important;
    background: transparent !important;
}

body.woocommerce-cart .wc-block-components-quantity-selector button {
    min-width: 26px !important;
    min-height: 30px !important;
    height: 30px !important;
    color: #ffffff !important;
    background: transparent !important;
}

/* Remove */
body.woocommerce-cart .wc-block-cart-item__remove-link {
    color: rgba(255,255,255,.65) !important;
    font-size: .72rem !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

/* Totals */
body.woocommerce-cart .wc-block-cart__totals-title {
    color: #ffffff !important;
    font-size: 14px !important;
    text-transform: uppercase;
    letter-spacing: .8px !important;
    margin-bottom: 10px !important;
}

body.woocommerce-cart .wc-block-components-totals-wrapper,
body.woocommerce-cart .wc-block-components-totals-item,
body.woocommerce-cart .wc-block-components-totals-footer-item {
    background: transparent !important;
    border-color: rgba(255,255,255,.1) !important;
    color: #ffffff !important;
}

body.woocommerce-cart .wc-block-components-totals-item {
    font-size: .82rem !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

body.woocommerce-cart .wc-block-components-totals-item__label,
body.woocommerce-cart .wc-block-components-totals-item__value {
    color: #ffffff !important;
}

body.woocommerce-cart .wc-block-components-totals-footer-item {
    font-size: 16px !important;
    font-weight: 900 !important;
    padding-top: 14px !important;
    border-top: 1px solid rgba(0,132,255,.22) !important;
}

/* Coupon */
body.woocommerce-cart .wc-block-components-panel,
body.woocommerce-cart .wc-block-components-panel__button {
    background: transparent !important;
    color: #ffffff !important;
    border-color: rgba(255,255,255,.1) !important;
}

body.woocommerce-cart .wc-block-components-panel__button {
    font-size: .78rem !important;
    padding: 10px 0 !important;
}

/* Checkout button */
body.woocommerce-cart .wc-block-cart__submit-button,
body.woocommerce-cart .wc-block-components-button {
    min-height: 42px !important;
    padding: 11px 16px !important;
    border-radius: 7px !important;
    background: linear-gradient(135deg, #005cff, #008cff) !important;
    border: 1px solid #0084ff !important;
    color: #ffffff !important;
    font-size: .76rem !important;
    font-weight: 900 !important;
    text-transform: uppercase;
    letter-spacing: .8px;
}

body.woocommerce-cart .wc-block-cart__submit-button:hover,
body.woocommerce-cart .wc-block-components-button:hover {
    background: #0084ff !important;
}

/* Responsive */
@media(max-width: 980px) {
    body.woocommerce-cart .wc-block-components-sidebar-layout,
    body.woocommerce-cart .is-large.wc-block-cart .wc-block-components-sidebar-layout,
    body.woocommerce-cart .wc-block-cart .wc-block-components-sidebar-layout {
        grid-template-columns: 1fr !important;
        width: 720px !important;
        max-width: 92vw !important;
    }

    body.woocommerce-cart .wc-block-components-main,
    body.woocommerce-cart .is-large.wc-block-cart .wc-block-components-main,
    body.woocommerce-cart .wc-block-components-sidebar,
    body.woocommerce-cart .is-large.wc-block-cart .wc-block-components-sidebar {
        width: 100% !important;
        max-width: 100% !important;
    }
}
/* =====================================================
   MODULUS CART UPSELLS - FIXED CONTAINED LAYOUT
   MUST BE LAST IN MODULUS-HOME.CSS
===================================================== */

body.woocommerce-cart .modulus-cart-upsells,
body.modulus-basket-page .modulus-cart-upsells {
    width: 980px !important;
    max-width: 92vw !important;
    margin: 34px auto 0 !important;
    padding: 0 !important;
    display: block !important;
    clear: both !important;
}

body.woocommerce-cart .modulus-cart-upsells-inner,
body.modulus-basket-page .modulus-cart-upsells-inner {
    width: 100% !important;
    background:
        radial-gradient(circle at top left, rgba(0,132,255,.10), transparent 36%),
        rgba(10,14,22,.92) !important;
    border: 1px solid rgba(0,132,255,.22) !important;
    border-radius: 16px !important;
    padding: 24px !important;
    box-shadow: 0 16px 45px rgba(0,0,0,.35) !important;
}

body.woocommerce-cart .modulus-cart-upsells-heading,
body.modulus-basket-page .modulus-cart-upsells-heading {
    margin: 0 0 20px !important;
}

body.woocommerce-cart .modulus-cart-upsells-heading .mod-kicker,
body.modulus-basket-page .modulus-cart-upsells-heading .mod-kicker {
    color: #0084ff !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    margin: 0 0 10px !important;
}

body.woocommerce-cart .modulus-cart-upsells-heading h2,
body.modulus-basket-page .modulus-cart-upsells-heading h2 {
    color: #ffffff !important;
    font-size: clamp(28px, 4vw, 42px) !important;
    line-height: .95 !important;
    text-transform: uppercase !important;
    letter-spacing: -0.035em !important;
    margin: 0 0 10px !important;
}

body.woocommerce-cart .modulus-cart-upsells-heading p,
body.modulus-basket-page .modulus-cart-upsells-heading p {
    color: rgba(255,255,255,.68) !important;
    margin: 0 !important;
    max-width: 620px !important;
    line-height: 1.6 !important;
}

/* Force product grid */
body.woocommerce-cart .modulus-cart-upsell-grid,
body.modulus-basket-page .modulus-cart-upsell-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 16px !important;
    width: 100% !important;
}

/* Product card */
body.woocommerce-cart .modulus-cart-upsell-card,
body.modulus-basket-page .modulus-cart-upsell-card {
    display: flex !important;
    flex-direction: column !important;
    background: rgba(255,255,255,.035) !important;
    border: 1px solid rgba(0,132,255,.18) !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    transition: .25s ease !important;
    min-width: 0 !important;
}

body.woocommerce-cart .modulus-cart-upsell-card:hover,
body.modulus-basket-page .modulus-cart-upsell-card:hover {
    transform: translateY(-4px) !important;
    border-color: #0084ff !important;
}

/* Product image area */
body.woocommerce-cart .modulus-cart-upsell-image,
body.modulus-basket-page .modulus-cart-upsell-image {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 145px !important;
    padding: 16px !important;
    background:
        radial-gradient(circle at center, rgba(0,132,255,.13), transparent 55%),
        rgba(255,255,255,.025) !important;
    text-decoration: none !important;
}

body.woocommerce-cart .modulus-cart-upsell-image img,
body.modulus-basket-page .modulus-cart-upsell-image img {
    width: auto !important;
    max-width: 115px !important;
    max-height: 115px !important;
    height: auto !important;
    object-fit: contain !important;
    display: block !important;
    border-radius: 10px !important;
}

/* Product content */
body.woocommerce-cart .modulus-cart-upsell-content,
body.modulus-basket-page .modulus-cart-upsell-content {
    padding: 14px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 9px !important;
    flex: 1 !important;
}

body.woocommerce-cart .modulus-cart-upsell-content h3,
body.modulus-basket-page .modulus-cart-upsell-content h3 {
    margin: 0 !important;
    font-size: .88rem !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
    letter-spacing: .3px !important;
}

body.woocommerce-cart .modulus-cart-upsell-content h3 a,
body.modulus-basket-page .modulus-cart-upsell-content h3 a {
    color: #ffffff !important;
    text-decoration: none !important;
}

body.woocommerce-cart .modulus-cart-upsell-content h3 a:hover,
body.modulus-basket-page .modulus-cart-upsell-content h3 a:hover {
    color: #0084ff !important;
}

body.woocommerce-cart .modulus-cart-upsell-price,
body.modulus-basket-page .modulus-cart-upsell-price {
    color: #ffffff !important;
    font-weight: 900 !important;
    font-size: .86rem !important;
}

body.woocommerce-cart .modulus-cart-upsell-price del,
body.modulus-basket-page .modulus-cart-upsell-price del {
    color: rgba(255,255,255,.45) !important;
}

body.woocommerce-cart .modulus-cart-upsell-price ins,
body.modulus-basket-page .modulus-cart-upsell-price ins {
    color: #ffffff !important;
    text-decoration: none !important;
}

/* Add button */
body.woocommerce-cart .modulus-cart-upsell-button,
body.modulus-basket-page .modulus-cart-upsell-button {
    margin-top: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 38px !important;
    padding: 9px 12px !important;
    border-radius: 7px !important;
    background: transparent !important;
    border: 1px solid #0084ff !important;
    color: #ffffff !important;
    text-transform: uppercase !important;
    font-size: .7rem !important;
    font-weight: 900 !important;
    letter-spacing: .8px !important;
    text-decoration: none !important;
}

body.woocommerce-cart .modulus-cart-upsell-button:hover,
body.modulus-basket-page .modulus-cart-upsell-button:hover {
    background: #0084ff !important;
    color: #ffffff !important;
}

/* Responsive */
@media(max-width: 980px) {
    body.woocommerce-cart .modulus-cart-upsells,
    body.modulus-basket-page .modulus-cart-upsells {
        width: 720px !important;
        max-width: 92vw !important;
    }

    body.woocommerce-cart .modulus-cart-upsell-grid,
    body.modulus-basket-page .modulus-cart-upsell-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media(max-width: 620px) {
    body.woocommerce-cart .modulus-cart-upsells-inner,
    body.modulus-basket-page .modulus-cart-upsells-inner {
        padding: 18px !important;
    }

    body.woocommerce-cart .modulus-cart-upsell-grid,
    body.modulus-basket-page .modulus-cart-upsell-grid {
        grid-template-columns: 1fr !important;
    }

    body.woocommerce-cart .modulus-cart-upsell-image,
    body.modulus-basket-page .modulus-cart-upsell-image {
        height: 130px !important;
    }
}

/* ================================
   MODULUS NAV AJAX CART DRAWER
================================ */

html.modulus-cart-drawer-lock,
html.modulus-cart-drawer-lock body {
    overflow: hidden !important;
}

body .main-navigation .menu-bar-items,
body .main-navigation .menu-bar-item {
    display: flex !important;
    align-items: center !important;
}

body .main-navigation .menu-bar-item.modulus-nav-cart-item {
    margin-left: 8px !important;
}

body .modulus-nav-cart-fragment {
    display: inline-flex !important;
}

body .main-navigation .menu-bar-item .modulus-nav-cart-toggle,
body .modulus-nav-cart-toggle {
    position: relative !important;
    width: 44px !important;
    height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    border: 1px solid rgba(0,132,255,.55) !important;
    border-radius: 8px !important;
    background: linear-gradient(145deg, rgba(0,132,255,.18), rgba(0,0,0,.15)) !important;
    color: #ffffff !important;
    cursor: pointer !important;
    box-shadow: 0 0 18px rgba(0,132,255,.18) !important;
}

body .modulus-nav-cart-toggle:hover,
body .modulus-nav-cart-toggle:focus-visible {
    background: #0084ff !important;
    border-color: #42b7ff !important;
    outline: none !important;
}

body .modulus-nav-cart-icon,
body .modulus-nav-cart-icon svg {
    width: 23px !important;
    height: 23px !important;
    display: block !important;
}

body .modulus-nav-cart-icon svg {
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

body .modulus-nav-cart-count {
    position: absolute !important;
    top: -7px !important;
    right: -7px !important;
    min-width: 21px !important;
    height: 21px !important;
    padding: 0 6px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    background: #0084ff !important;
    color: #ffffff !important;
    border: 1px solid #72caff !important;
    font-size: 11px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
}

body .modulus-cart-drawer-shell {
    position: fixed !important;
    inset: 0 !important;
    z-index: 99999 !important;
    pointer-events: none !important;
}

body .modulus-cart-drawer-shell.is-open {
    pointer-events: auto !important;
}

body .modulus-cart-drawer-overlay {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
    border: 0 !important;
    background: rgba(0, 0, 0, .68) !important;
    opacity: 0 !important;
    transition: opacity .2s ease !important;
    cursor: pointer !important;
}

body .modulus-cart-drawer-shell.is-open .modulus-cart-drawer-overlay {
    opacity: 1 !important;
}

body .modulus-cart-drawer {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    width: min(420px, 92vw) !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    background: #02060d !important;
    border-left: 1px solid rgba(0,132,255,.34) !important;
    box-shadow: -24px 0 60px rgba(0,0,0,.62) !important;
    transform: translateX(105%) !important;
    transition: transform .24s ease !important;
    outline: none !important;
}

body .modulus-cart-drawer-shell.is-open .modulus-cart-drawer {
    transform: translateX(0) !important;
}

body .modulus-cart-drawer-header {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 18px !important;
    padding: 24px 22px 18px !important;
    border-bottom: 1px solid rgba(255,255,255,.09) !important;
}

body .modulus-cart-drawer-kicker {
    margin: 0 0 6px !important;
    color: #0084ff !important;
    text-transform: uppercase !important;
    font-size: .72rem !important;
    font-weight: 900 !important;
    letter-spacing: 1.4px !important;
}

body .modulus-cart-drawer-header h2 {
    margin: 0 !important;
    color: #ffffff !important;
    font-size: 1.35rem !important;
    line-height: 1.1 !important;
    letter-spacing: 0 !important;
}

body .modulus-cart-drawer-close {
    width: 38px !important;
    height: 38px !important;
    flex: 0 0 38px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    border-radius: 8px !important;
    background: rgba(255,255,255,.04) !important;
    color: #ffffff !important;
    font-size: 24px !important;
    line-height: 1 !important;
    cursor: pointer !important;
}

body .modulus-cart-drawer-close:hover,
body .modulus-cart-drawer-close:focus-visible {
    border-color: #0084ff !important;
    background: rgba(0,132,255,.16) !important;
    outline: none !important;
}

body .modulus-cart-drawer-fragment {
    min-height: 0 !important;
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
}

body .modulus-cart-drawer-summary {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    padding: 15px 22px !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
    color: rgba(255,255,255,.7) !important;
    font-size: .9rem !important;
}

body .modulus-cart-drawer-summary strong,
body .modulus-cart-drawer-summary .woocommerce-Price-amount {
    color: #ffffff !important;
    font-weight: 900 !important;
}

body .modulus-cart-drawer-mini {
    min-height: 0 !important;
    flex: 1 !important;
    overflow-y: auto !important;
    padding: 4px 22px 18px !important;
}

body .modulus-cart-drawer-mini .woocommerce-mini-cart {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

body .modulus-cart-drawer-mini .woocommerce-mini-cart-item {
    position: relative !important;
    min-height: 86px !important;
    margin: 0 !important;
    padding: 16px 0 16px 78px !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
    color: rgba(255,255,255,.76) !important;
}

body .modulus-cart-drawer-mini .woocommerce-mini-cart-item a:not(.remove) {
    color: #ffffff !important;
    font-weight: 850 !important;
    text-decoration: none !important;
}

body .modulus-cart-drawer-mini .woocommerce-mini-cart-item img {
    position: absolute !important;
    left: 0 !important;
    top: 16px !important;
    width: 58px !important;
    height: 58px !important;
    object-fit: cover !important;
    border-radius: 8px !important;
    border: 1px solid rgba(0,132,255,.22) !important;
    background: rgba(255,255,255,.04) !important;
}

body .modulus-cart-drawer-mini .remove {
    position: absolute !important;
    top: 14px !important;
    right: 0 !important;
    color: rgba(255,255,255,.55) !important;
    text-decoration: none !important;
    font-size: 1.2rem !important;
    line-height: 1 !important;
}

body .modulus-cart-drawer-mini .quantity {
    display: block !important;
    margin-top: 7px !important;
    color: rgba(255,255,255,.66) !important;
    font-size: .86rem !important;
}

body .modulus-cart-drawer-mini .woocommerce-mini-cart__total,
body .modulus-cart-drawer-mini .woocommerce-mini-cart__buttons {
    display: none !important;
}

body .modulus-cart-drawer-mini .woocommerce-mini-cart__empty-message {
    margin: 34px 0 !important;
    padding: 26px !important;
    border: 1px solid rgba(0,132,255,.22) !important;
    border-radius: 8px !important;
    background: rgba(0,132,255,.08) !important;
    color: rgba(255,255,255,.78) !important;
    text-align: center !important;
}

body .modulus-cart-drawer-actions {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    padding: 18px 22px 22px !important;
    border-top: 1px solid rgba(255,255,255,.09) !important;
    background: rgba(0,0,0,.18) !important;
}

body .modulus-cart-drawer-actions.is-empty {
    grid-template-columns: 1fr !important;
}

body .modulus-cart-drawer-button {
    min-height: 46px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 12px 14px !important;
    border-radius: 8px !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    font-size: .76rem !important;
    font-weight: 950 !important;
    letter-spacing: .8px !important;
}

body .modulus-cart-drawer-button-primary {
    background: #0084ff !important;
    color: #ffffff !important;
    border: 1px solid #0084ff !important;
}

body .modulus-cart-drawer-button-secondary {
    background: transparent !important;
    color: #ffffff !important;
    border: 1px solid rgba(255,255,255,.2) !important;
}

body .modulus-cart-drawer-button:hover,
body .modulus-cart-drawer-button:focus-visible {
    transform: translateY(-1px) !important;
    border-color: #72caff !important;
    outline: none !important;
}

@media(max-width: 620px) {
    body .modulus-cart-drawer {
        width: 100vw !important;
    }

    body .modulus-cart-drawer-header {
        padding: 20px 16px 16px !important;
    }

    body .modulus-cart-drawer-summary,
    body .modulus-cart-drawer-mini,
    body .modulus-cart-drawer-actions {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    body .modulus-cart-drawer-actions {
        grid-template-columns: 1fr !important;
    }
}

/* =====================================================
   MODULUS CHECKOUT - CONTAINED FINAL OVERRIDE
   Matches the compact basket layout
===================================================== */

body.woocommerce-checkout,
body.modulus-checkout-page,
body.woocommerce-checkout #page,
body.modulus-checkout-page #page,
body.woocommerce-checkout #content,
body.modulus-checkout-page #content,
body.woocommerce-checkout .site-content,
body.modulus-checkout-page .site-content,
body.woocommerce-checkout .inside-article,
body.modulus-checkout-page .inside-article,
body.woocommerce-checkout .entry-content,
body.modulus-checkout-page .entry-content {
    background: #02060d !important;
    color: #ffffff !important;
}

body.woocommerce-checkout .container.grid-container,
body.modulus-checkout-page .container.grid-container,
body.woocommerce-checkout .site.grid-container,
body.modulus-checkout-page .site.grid-container,
body.woocommerce-checkout .content-area,
body.modulus-checkout-page .content-area,
body.woocommerce-checkout .site-main,
body.modulus-checkout-page .site-main,
body.woocommerce-checkout .inside-article,
body.modulus-checkout-page .inside-article,
body.woocommerce-checkout .entry-content,
body.modulus-checkout-page .entry-content {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    float: none !important;
}

body.woocommerce-checkout .inside-article,
body.modulus-checkout-page .inside-article {
    padding-top: 42px !important;
    padding-bottom: 70px !important;
}

body.woocommerce-checkout .entry-header,
body.modulus-checkout-page .entry-header,
body.woocommerce-checkout .woocommerce,
body.modulus-checkout-page .woocommerce,
body.woocommerce-checkout .wp-block-woocommerce-checkout,
body.modulus-checkout-page .wp-block-woocommerce-checkout,
body.woocommerce-checkout .wc-block-checkout,
body.modulus-checkout-page .wc-block-checkout,
body.woocommerce-checkout form.checkout,
body.modulus-checkout-page form.checkout {
    width: 980px !important;
    max-width: 92% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.woocommerce-checkout .entry-title,
body.modulus-checkout-page .entry-title {
    color: #ffffff !important;
    font-size: clamp(34px, 4vw, 54px) !important;
    line-height: .95 !important;
    text-transform: uppercase !important;
    letter-spacing: -0.04em !important;
    margin: 0 0 24px !important;
}

body.woocommerce-checkout .wc-block-components-sidebar-layout,
body.modulus-checkout-page .wc-block-components-sidebar-layout,
body.woocommerce-checkout .is-large.wc-block-checkout .wc-block-components-sidebar-layout,
body.modulus-checkout-page .is-large.wc-block-checkout .wc-block-components-sidebar-layout,
body.woocommerce-checkout .wc-block-checkout .wc-block-components-sidebar-layout,
body.modulus-checkout-page .wc-block-checkout .wc-block-components-sidebar-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 620px) 300px !important;
    gap: 20px !important;
    width: 980px !important;
    max-width: 92vw !important;
    margin-left: auto !important;
    margin-right: auto !important;
    align-items: start !important;
}

body.woocommerce-checkout .wc-block-components-main,
body.modulus-checkout-page .wc-block-components-main,
body.woocommerce-checkout .is-large.wc-block-checkout .wc-block-components-main,
body.modulus-checkout-page .is-large.wc-block-checkout .wc-block-components-main {
    width: 620px !important;
    max-width: 620px !important;
    padding-right: 0 !important;
    margin: 0 !important;
}

body.woocommerce-checkout .wc-block-components-sidebar,
body.modulus-checkout-page .wc-block-components-sidebar,
body.woocommerce-checkout .is-large.wc-block-checkout .wc-block-components-sidebar,
body.modulus-checkout-page .is-large.wc-block-checkout .wc-block-components-sidebar {
    width: 300px !important;
    max-width: 300px !important;
    padding-left: 0 !important;
    margin: 0 !important;
}

body.woocommerce-checkout .wc-block-components-main,
body.modulus-checkout-page .wc-block-components-main,
body.woocommerce-checkout .wc-block-components-sidebar,
body.modulus-checkout-page .wc-block-components-sidebar,
body.woocommerce-checkout .woocommerce-billing-fields,
body.modulus-checkout-page .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields,
body.modulus-checkout-page .woocommerce-shipping-fields,
body.woocommerce-checkout .woocommerce-additional-fields,
body.modulus-checkout-page .woocommerce-additional-fields,
body.woocommerce-checkout #order_review,
body.modulus-checkout-page #order_review,
body.woocommerce-checkout #customer_details,
body.modulus-checkout-page #customer_details {
    background: rgba(10,14,22,.92) !important;
    border: 1px solid rgba(0,132,255,.22) !important;
    border-radius: 16px !important;
    box-shadow: 0 16px 45px rgba(0,0,0,.35) !important;
    color: #ffffff !important;
}

body.woocommerce-checkout .wc-block-components-main,
body.modulus-checkout-page .wc-block-components-main,
body.woocommerce-checkout .woocommerce-billing-fields,
body.modulus-checkout-page .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields,
body.modulus-checkout-page .woocommerce-shipping-fields,
body.woocommerce-checkout .woocommerce-additional-fields,
body.modulus-checkout-page .woocommerce-additional-fields,
body.woocommerce-checkout #customer_details,
body.modulus-checkout-page #customer_details {
    padding: 20px !important;
}

body.woocommerce-checkout .wc-block-components-sidebar,
body.modulus-checkout-page .wc-block-components-sidebar,
body.woocommerce-checkout #order_review,
body.modulus-checkout-page #order_review {
    padding: 18px !important;
}

body.woocommerce-checkout form.checkout,
body.modulus-checkout-page form.checkout {
    display: grid !important;
    grid-template-columns: minmax(0, 620px) 300px !important;
    gap: 20px !important;
    align-items: start !important;
}

body.woocommerce-checkout form.checkout #customer_details,
body.modulus-checkout-page form.checkout #customer_details {
    width: 100% !important;
    max-width: 620px !important;
}

body.woocommerce-checkout form.checkout #order_review,
body.modulus-checkout-page form.checkout #order_review,
body.woocommerce-checkout form.checkout #order_review_heading,
body.modulus-checkout-page form.checkout #order_review_heading {
    width: 100% !important;
    max-width: 300px !important;
}

body.woocommerce-checkout form.checkout #order_review_heading,
body.modulus-checkout-page form.checkout #order_review_heading {
    grid-column: 2 !important;
    margin: 0 0 -10px !important;
    color: #ffffff !important;
    text-transform: uppercase !important;
    font-size: 14px !important;
    letter-spacing: .8px !important;
}

body.woocommerce-checkout h2,
body.woocommerce-checkout h3,
body.modulus-checkout-page h2,
body.modulus-checkout-page h3,
body.woocommerce-checkout .wc-block-components-title,
body.modulus-checkout-page .wc-block-components-title,
body.woocommerce-checkout .wc-block-components-checkout-step__title,
body.modulus-checkout-page .wc-block-components-checkout-step__title {
    color: #ffffff !important;
    text-transform: uppercase !important;
    letter-spacing: .6px !important;
}

body.woocommerce-checkout .wc-block-components-checkout-step,
body.modulus-checkout-page .wc-block-components-checkout-step,
body.woocommerce-checkout .wc-block-components-checkout-step__container,
body.modulus-checkout-page .wc-block-components-checkout-step__container,
body.woocommerce-checkout .wc-block-components-checkout-step__content,
body.modulus-checkout-page .wc-block-components-checkout-step__content {
    background: transparent !important;
    color: rgba(255,255,255,.76) !important;
    border-color: rgba(255,255,255,.1) !important;
}

body.woocommerce-checkout label,
body.modulus-checkout-page label,
body.woocommerce-checkout .wc-block-components-text-input label,
body.modulus-checkout-page .wc-block-components-text-input label,
body.woocommerce-checkout .wc-block-components-checkbox__label,
body.modulus-checkout-page .wc-block-components-checkbox__label,
body.woocommerce-checkout .wc-block-components-radio-control__label,
body.modulus-checkout-page .wc-block-components-radio-control__label {
    color: rgba(255,255,255,.72) !important;
}

body.woocommerce-checkout input[type="text"],
body.woocommerce-checkout input[type="email"],
body.woocommerce-checkout input[type="tel"],
body.woocommerce-checkout input[type="number"],
body.woocommerce-checkout input[type="password"],
body.woocommerce-checkout textarea,
body.woocommerce-checkout select,
body.modulus-checkout-page input[type="text"],
body.modulus-checkout-page input[type="email"],
body.modulus-checkout-page input[type="tel"],
body.modulus-checkout-page input[type="number"],
body.modulus-checkout-page input[type="password"],
body.modulus-checkout-page textarea,
body.modulus-checkout-page select,
body.woocommerce-checkout .wc-block-components-text-input input,
body.modulus-checkout-page .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
body.modulus-checkout-page .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
body.woocommerce-checkout .select2-container--default .select2-selection--single,
body.modulus-checkout-page .select2-container--default .select2-selection--single {
    min-height: 42px !important;
    background: #05070b !important;
    border: 1px solid rgba(0,132,255,.25) !important;
    border-radius: 8px !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

body.woocommerce-checkout textarea,
body.modulus-checkout-page textarea {
    min-height: 110px !important;
}

body.woocommerce-checkout input::placeholder,
body.modulus-checkout-page input::placeholder,
body.woocommerce-checkout textarea::placeholder,
body.modulus-checkout-page textarea::placeholder {
    color: rgba(255,255,255,.42) !important;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered,
body.modulus-checkout-page .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #ffffff !important;
    line-height: 42px !important;
}

body.woocommerce-checkout table.shop_table,
body.modulus-checkout-page table.shop_table,
body.woocommerce-checkout .wc-block-components-order-summary,
body.modulus-checkout-page .wc-block-components-order-summary,
body.woocommerce-checkout .wc-block-components-totals-wrapper,
body.modulus-checkout-page .wc-block-components-totals-wrapper,
body.woocommerce-checkout .wc-block-components-totals-item,
body.modulus-checkout-page .wc-block-components-totals-item,
body.woocommerce-checkout .wc-block-components-totals-footer-item,
body.modulus-checkout-page .wc-block-components-totals-footer-item {
    background: transparent !important;
    border-color: rgba(255,255,255,.1) !important;
    color: #ffffff !important;
}

body.woocommerce-checkout table.shop_table th,
body.woocommerce-checkout table.shop_table td,
body.modulus-checkout-page table.shop_table th,
body.modulus-checkout-page table.shop_table td,
body.woocommerce-checkout .wc-block-components-product-name,
body.modulus-checkout-page .wc-block-components-product-name,
body.woocommerce-checkout .wc-block-components-formatted-money-amount,
body.modulus-checkout-page .wc-block-components-formatted-money-amount,
body.woocommerce-checkout .wc-block-components-totals-item__label,
body.woocommerce-checkout .wc-block-components-totals-item__value,
body.modulus-checkout-page .wc-block-components-totals-item__label,
body.modulus-checkout-page .wc-block-components-totals-item__value {
    color: #ffffff !important;
    border-color: rgba(255,255,255,.1) !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__image img,
body.modulus-checkout-page .wc-block-components-order-summary-item__image img {
    border-radius: 9px !important;
    background: rgba(255,255,255,.04) !important;
    border: 1px solid rgba(0,132,255,.2) !important;
}

body.woocommerce-checkout #payment,
body.modulus-checkout-page #payment,
body.woocommerce-checkout .woocommerce-checkout-payment,
body.modulus-checkout-page .woocommerce-checkout-payment,
body.woocommerce-checkout .wc-block-components-radio-control,
body.modulus-checkout-page .wc-block-components-radio-control,
body.woocommerce-checkout .wc-block-components-radio-control-accordion-option,
body.modulus-checkout-page .wc-block-components-radio-control-accordion-option {
    background: rgba(255,255,255,.03) !important;
    border-color: rgba(255,255,255,.1) !important;
    color: #ffffff !important;
}

body.woocommerce-checkout #place_order,
body.modulus-checkout-page #place_order,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button,
body.modulus-checkout-page .wc-block-components-checkout-place-order-button,
body.woocommerce-checkout .wc-block-components-button,
body.modulus-checkout-page .wc-block-components-button {
    width: 100% !important;
    min-height: 42px !important;
    padding: 11px 16px !important;
    border-radius: 7px !important;
    background: linear-gradient(135deg, #005cff, #008cff) !important;
    border: 1px solid #0084ff !important;
    color: #ffffff !important;
    font-size: .76rem !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .8px !important;
    text-decoration: none !important;
}

body.woocommerce-checkout #place_order:hover,
body.modulus-checkout-page #place_order:hover,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover,
body.modulus-checkout-page .wc-block-components-checkout-place-order-button:hover,
body.woocommerce-checkout .wc-block-components-button:hover,
body.modulus-checkout-page .wc-block-components-button:hover {
    background: #0084ff !important;
    color: #ffffff !important;
}

body.woocommerce-checkout .woocommerce-error,
body.woocommerce-checkout .woocommerce-info,
body.woocommerce-checkout .woocommerce-message,
body.modulus-checkout-page .woocommerce-error,
body.modulus-checkout-page .woocommerce-info,
body.modulus-checkout-page .woocommerce-message,
body.woocommerce-checkout .wc-block-components-notice-banner,
body.modulus-checkout-page .wc-block-components-notice-banner {
    width: 980px !important;
    max-width: 92% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    background: rgba(0,132,255,.1) !important;
    border: 1px solid rgba(0,132,255,.28) !important;
    color: #ffffff !important;
    border-radius: 10px !important;
}

@media(max-width: 980px) {
    body.woocommerce-checkout .entry-header,
    body.modulus-checkout-page .entry-header,
    body.woocommerce-checkout .woocommerce,
    body.modulus-checkout-page .woocommerce,
    body.woocommerce-checkout .wp-block-woocommerce-checkout,
    body.modulus-checkout-page .wp-block-woocommerce-checkout,
    body.woocommerce-checkout .wc-block-checkout,
    body.modulus-checkout-page .wc-block-checkout,
    body.woocommerce-checkout form.checkout,
    body.modulus-checkout-page form.checkout,
    body.woocommerce-checkout .wc-block-components-sidebar-layout,
    body.modulus-checkout-page .wc-block-components-sidebar-layout,
    body.woocommerce-checkout .is-large.wc-block-checkout .wc-block-components-sidebar-layout,
    body.modulus-checkout-page .is-large.wc-block-checkout .wc-block-components-sidebar-layout {
        width: 720px !important;
        max-width: 92vw !important;
        grid-template-columns: 1fr !important;
    }

    body.woocommerce-checkout .wc-block-components-main,
    body.modulus-checkout-page .wc-block-components-main,
    body.woocommerce-checkout .wc-block-components-sidebar,
    body.modulus-checkout-page .wc-block-components-sidebar,
    body.woocommerce-checkout .is-large.wc-block-checkout .wc-block-components-main,
    body.modulus-checkout-page .is-large.wc-block-checkout .wc-block-components-main,
    body.woocommerce-checkout .is-large.wc-block-checkout .wc-block-components-sidebar,
    body.modulus-checkout-page .is-large.wc-block-checkout .wc-block-components-sidebar,
    body.woocommerce-checkout form.checkout #customer_details,
    body.modulus-checkout-page form.checkout #customer_details,
    body.woocommerce-checkout form.checkout #order_review,
    body.modulus-checkout-page form.checkout #order_review,
    body.woocommerce-checkout form.checkout #order_review_heading,
    body.modulus-checkout-page form.checkout #order_review_heading {
        width: 100% !important;
        max-width: 100% !important;
        grid-column: auto !important;
    }
}

@media(max-width: 620px) {
    body.woocommerce-checkout .inside-article,
    body.modulus-checkout-page .inside-article {
        padding-top: 32px !important;
        padding-bottom: 58px !important;
    }

    body.woocommerce-checkout .entry-title,
    body.modulus-checkout-page .entry-title {
        font-size: 38px !important;
    }

    body.woocommerce-checkout .wc-block-components-main,
    body.modulus-checkout-page .wc-block-components-main,
    body.woocommerce-checkout .woocommerce-billing-fields,
    body.modulus-checkout-page .woocommerce-billing-fields,
    body.woocommerce-checkout .woocommerce-shipping-fields,
    body.modulus-checkout-page .woocommerce-shipping-fields,
    body.woocommerce-checkout .woocommerce-additional-fields,
    body.modulus-checkout-page .woocommerce-additional-fields,
    body.woocommerce-checkout #customer_details,
    body.modulus-checkout-page #customer_details,
    body.woocommerce-checkout .wc-block-components-sidebar,
    body.modulus-checkout-page .wc-block-components-sidebar,
    body.woocommerce-checkout #order_review,
    body.modulus-checkout-page #order_review {
        padding: 16px !important;
        border-radius: 14px !important;
    }
}

/* =====================================================
   MODULUS MY ACCOUNT - CONTAINED FINAL OVERRIDE
===================================================== */

body.woocommerce-account,
body.modulus-account-page,
body.woocommerce-account #page,
body.modulus-account-page #page,
body.woocommerce-account #content,
body.modulus-account-page #content,
body.woocommerce-account .site-content,
body.modulus-account-page .site-content,
body.woocommerce-account .inside-article,
body.modulus-account-page .inside-article,
body.woocommerce-account .entry-content,
body.modulus-account-page .entry-content {
    background: #02060d !important;
    color: #ffffff !important;
}

body.woocommerce-account .container.grid-container,
body.modulus-account-page .container.grid-container,
body.woocommerce-account .site.grid-container,
body.modulus-account-page .site.grid-container,
body.woocommerce-account .content-area,
body.modulus-account-page .content-area,
body.woocommerce-account .site-main,
body.modulus-account-page .site-main,
body.woocommerce-account .inside-article,
body.modulus-account-page .inside-article,
body.woocommerce-account .entry-content,
body.modulus-account-page .entry-content {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    float: none !important;
}

body.woocommerce-account .inside-article,
body.modulus-account-page .inside-article {
    padding-top: 42px !important;
    padding-bottom: 70px !important;
}

body.woocommerce-account .entry-header,
body.modulus-account-page .entry-header,
body.woocommerce-account .woocommerce,
body.modulus-account-page .woocommerce,
body.woocommerce-account .woocommerce-MyAccount-content,
body.modulus-account-page .woocommerce-MyAccount-content,
body.woocommerce-account .u-columns,
body.modulus-account-page .u-columns {
    width: 980px !important;
    max-width: 92% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.woocommerce-account .entry-title,
body.modulus-account-page .entry-title {
    color: #ffffff !important;
    font-size: clamp(34px, 4vw, 54px) !important;
    line-height: .95 !important;
    text-transform: uppercase !important;
    letter-spacing: -0.04em !important;
    margin: 0 0 24px !important;
}

body.woocommerce-account .woocommerce {
    display: grid !important;
    grid-template-columns: 250px minmax(0, 1fr) !important;
    gap: 20px !important;
    align-items: start !important;
}

body.woocommerce-account .woocommerce > .u-columns,
body.modulus-account-page .woocommerce > .u-columns,
body.woocommerce-account .woocommerce > #customer_login,
body.modulus-account-page .woocommerce > #customer_login {
    grid-column: 1 / -1 !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation,
body.modulus-account-page .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-content,
body.modulus-account-page .woocommerce-MyAccount-content,
body.woocommerce-account .u-column1,
body.woocommerce-account .u-column2,
body.modulus-account-page .u-column1,
body.modulus-account-page .u-column2,
body.woocommerce-account form.login,
body.woocommerce-account form.register,
body.modulus-account-page form.login,
body.modulus-account-page form.register {
    background: rgba(10,14,22,.92) !important;
    border: 1px solid rgba(0,132,255,.22) !important;
    border-radius: 16px !important;
    box-shadow: 0 16px 45px rgba(0,0,0,.35) !important;
    color: #ffffff !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation,
body.modulus-account-page .woocommerce-MyAccount-navigation {
    width: 250px !important;
    padding: 12px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content,
body.modulus-account-page .woocommerce-MyAccount-content {
    width: 100% !important;
    max-width: 710px !important;
    padding: 22px !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul,
body.modulus-account-page .woocommerce-MyAccount-navigation ul {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    display: grid !important;
    gap: 8px !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li,
body.modulus-account-page .woocommerce-MyAccount-navigation li {
    margin: 0 !important;
    padding: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation a,
body.modulus-account-page .woocommerce-MyAccount-navigation a {
    min-height: 42px !important;
    display: flex !important;
    align-items: center !important;
    padding: 11px 12px !important;
    border-radius: 8px !important;
    background: rgba(255,255,255,.04) !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    color: rgba(255,255,255,.76) !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    font-size: .75rem !important;
    font-weight: 900 !important;
    letter-spacing: .7px !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
body.modulus-account-page .woocommerce-MyAccount-navigation li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover,
body.modulus-account-page .woocommerce-MyAccount-navigation a:hover {
    background: rgba(0,132,255,.16) !important;
    border-color: rgba(0,132,255,.5) !important;
    color: #ffffff !important;
}

body.woocommerce-account .woocommerce-MyAccount-content p,
body.modulus-account-page .woocommerce-MyAccount-content p,
body.woocommerce-account .woocommerce-MyAccount-content address,
body.modulus-account-page .woocommerce-MyAccount-content address {
    color: rgba(255,255,255,.76) !important;
    line-height: 1.65 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content a,
body.modulus-account-page .woocommerce-MyAccount-content a {
    color: #42b7ff !important;
}

body.woocommerce-account h2,
body.woocommerce-account h3,
body.modulus-account-page h2,
body.modulus-account-page h3 {
    color: #ffffff !important;
    text-transform: uppercase !important;
    letter-spacing: .6px !important;
}

body.woocommerce-account table.shop_table,
body.modulus-account-page table.shop_table,
body.woocommerce-account .woocommerce-orders-table,
body.modulus-account-page .woocommerce-orders-table {
    overflow: hidden !important;
    border: 1px solid rgba(0,132,255,.22) !important;
    border-radius: 12px !important;
    background: rgba(255,255,255,.03) !important;
    color: #ffffff !important;
}

body.woocommerce-account table.shop_table th,
body.woocommerce-account table.shop_table td,
body.modulus-account-page table.shop_table th,
body.modulus-account-page table.shop_table td {
    padding: 14px 12px !important;
    border-color: rgba(255,255,255,.09) !important;
    background: transparent !important;
    color: #ffffff !important;
}

body.woocommerce-account table.shop_table th,
body.modulus-account-page table.shop_table th {
    background: rgba(0,132,255,.08) !important;
    text-transform: uppercase !important;
    font-size: .74rem !important;
    letter-spacing: .8px !important;
}

body.woocommerce-account .woocommerce-Address,
body.modulus-account-page .woocommerce-Address {
    padding: 18px !important;
    border: 1px solid rgba(0,132,255,.22) !important;
    border-radius: 12px !important;
    background: rgba(255,255,255,.03) !important;
}

body.woocommerce-account .woocommerce-Address-title,
body.modulus-account-page .woocommerce-Address-title {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
}

body.woocommerce-account .u-columns,
body.modulus-account-page .u-columns,
body.woocommerce-account #customer_login,
body.modulus-account-page #customer_login {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 20px !important;
}

body.woocommerce-account .u-column1,
body.woocommerce-account .u-column2,
body.modulus-account-page .u-column1,
body.modulus-account-page .u-column2,
body.woocommerce-account form.login,
body.woocommerce-account form.register,
body.modulus-account-page form.login,
body.modulus-account-page form.register {
    width: 100% !important;
    max-width: 100% !important;
    padding: 22px !important;
    float: none !important;
}

body.woocommerce-account label,
body.modulus-account-page label {
    color: rgba(255,255,255,.72) !important;
}

body.woocommerce-account input[type="text"],
body.woocommerce-account input[type="email"],
body.woocommerce-account input[type="tel"],
body.woocommerce-account input[type="number"],
body.woocommerce-account input[type="password"],
body.woocommerce-account textarea,
body.woocommerce-account select,
body.modulus-account-page input[type="text"],
body.modulus-account-page input[type="email"],
body.modulus-account-page input[type="tel"],
body.modulus-account-page input[type="number"],
body.modulus-account-page input[type="password"],
body.modulus-account-page textarea,
body.modulus-account-page select {
    min-height: 42px !important;
    background: #05070b !important;
    border: 1px solid rgba(0,132,255,.25) !important;
    border-radius: 8px !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

body.woocommerce-account input::placeholder,
body.modulus-account-page input::placeholder,
body.woocommerce-account textarea::placeholder,
body.modulus-account-page textarea::placeholder {
    color: rgba(255,255,255,.42) !important;
}

body.woocommerce-account .button,
body.woocommerce-account button.button,
body.woocommerce-account input.button,
body.modulus-account-page .button,
body.modulus-account-page button.button,
body.modulus-account-page input.button {
    min-height: 42px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 11px 16px !important;
    border-radius: 7px !important;
    background: linear-gradient(135deg, #005cff, #008cff) !important;
    border: 1px solid #0084ff !important;
    color: #ffffff !important;
    font-size: .76rem !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .8px !important;
    text-decoration: none !important;
}

body.woocommerce-account .button:hover,
body.woocommerce-account button.button:hover,
body.woocommerce-account input.button:hover,
body.modulus-account-page .button:hover,
body.modulus-account-page button.button:hover,
body.modulus-account-page input.button:hover {
    background: #0084ff !important;
    color: #ffffff !important;
}

body.woocommerce-account .woocommerce-error,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-message,
body.modulus-account-page .woocommerce-error,
body.modulus-account-page .woocommerce-info,
body.modulus-account-page .woocommerce-message {
    width: 980px !important;
    max-width: 92% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    background: rgba(0,132,255,.1) !important;
    border: 1px solid rgba(0,132,255,.28) !important;
    color: #ffffff !important;
    border-radius: 10px !important;
}

@media(max-width: 980px) {
    body.woocommerce-account .entry-header,
    body.modulus-account-page .entry-header,
    body.woocommerce-account .woocommerce,
    body.modulus-account-page .woocommerce,
    body.woocommerce-account .woocommerce-MyAccount-content,
    body.modulus-account-page .woocommerce-MyAccount-content,
    body.woocommerce-account .u-columns,
    body.modulus-account-page .u-columns {
        width: 720px !important;
        max-width: 92vw !important;
    }

    body.woocommerce-account .woocommerce {
        grid-template-columns: 1fr !important;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation,
    body.modulus-account-page .woocommerce-MyAccount-navigation,
    body.woocommerce-account .woocommerce-MyAccount-content,
    body.modulus-account-page .woocommerce-MyAccount-content {
        width: 100% !important;
        max-width: 100% !important;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation ul,
    body.modulus-account-page .woocommerce-MyAccount-navigation ul {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media(max-width: 620px) {
    body.woocommerce-account .inside-article,
    body.modulus-account-page .inside-article {
        padding-top: 32px !important;
        padding-bottom: 58px !important;
    }

    body.woocommerce-account .entry-title,
    body.modulus-account-page .entry-title {
        font-size: 38px !important;
    }

    body.woocommerce-account .u-columns,
    body.modulus-account-page .u-columns,
    body.woocommerce-account #customer_login,
    body.modulus-account-page #customer_login,
    body.woocommerce-account .woocommerce-MyAccount-navigation ul,
    body.modulus-account-page .woocommerce-MyAccount-navigation ul {
        grid-template-columns: 1fr !important;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation,
    body.modulus-account-page .woocommerce-MyAccount-navigation,
    body.woocommerce-account .woocommerce-MyAccount-content,
    body.modulus-account-page .woocommerce-MyAccount-content,
    body.woocommerce-account .u-column1,
    body.woocommerce-account .u-column2,
    body.modulus-account-page .u-column1,
    body.modulus-account-page .u-column2 {
        padding: 16px !important;
        border-radius: 14px !important;
    }
}

/* =====================================================
   MODULUS MY ACCOUNT - LAYOUT FIX
   Keeps nav and endpoint content in one contained grid
===================================================== */

body.woocommerce-account .entry-header {
    width: 980px !important;
    max-width: 92vw !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.woocommerce-account .woocommerce {
    width: 980px !important;
    max-width: 92vw !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: grid !important;
    grid-template-columns: 250px minmax(0, 1fr) !important;
    gap: 20px !important;
    align-items: start !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-content {
    float: none !important;
    margin: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation {
    grid-column: 1 !important;
    width: 250px !important;
    max-width: 250px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content {
    grid-column: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content > p:first-child {
    margin-top: 0 !important;
}

body.woocommerce-account .woocommerce-Addresses,
body.woocommerce-account .woocommerce-address-fields,
body.woocommerce-account .woocommerce-address-fields__field-wrapper,
body.woocommerce-account form.edit-account {
    width: 100% !important;
    max-width: 100% !important;
}

body.woocommerce-account .woocommerce-Addresses {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
    margin-top: 18px !important;
}

body.woocommerce-account .woocommerce-Address,
body.woocommerce-account .woocommerce-Address.u-column1,
body.woocommerce-account .woocommerce-Address.u-column2 {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
}

body.woocommerce-account .woocommerce-Address-title {
    margin-bottom: 12px !important;
}

body.woocommerce-account .woocommerce-Address-title h2 {
    margin: 0 !important;
    max-width: 70% !important;
    font-size: clamp(1.25rem, 2.4vw, 1.8rem) !important;
    line-height: 1.08 !important;
    letter-spacing: 0 !important;
}

body.woocommerce-account .woocommerce-Address-title .edit {
    flex: 0 0 auto !important;
    max-width: 120px !important;
    padding: 8px 10px !important;
    border: 1px solid rgba(0,132,255,.45) !important;
    border-radius: 7px !important;
    background: rgba(0,132,255,.1) !important;
    color: #ffffff !important;
    text-align: center !important;
    text-decoration: none !important;
    font-size: .72rem !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
}

body.woocommerce-account .woocommerce-Address address {
    margin: 0 !important;
    color: rgba(255,255,255,.72) !important;
    font-size: .92rem !important;
}

body.woocommerce-account .woocommerce-MyAccount-content mark,
body.woocommerce-account .woocommerce-MyAccount-content .mark {
    background: rgba(0,132,255,.18) !important;
    color: #ffffff !important;
    border-radius: 5px !important;
    padding: 2px 6px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content fieldset {
    margin-top: 20px !important;
    padding: 18px !important;
    border: 1px solid rgba(0,132,255,.22) !important;
    border-radius: 12px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content legend {
    padding: 0 8px !important;
    color: #ffffff !important;
    text-transform: uppercase !important;
    font-size: .8rem !important;
    font-weight: 900 !important;
    letter-spacing: .8px !important;
}

@media(max-width: 980px) {
    body.woocommerce-account .woocommerce {
        width: 720px !important;
        max-width: 92vw !important;
        grid-template-columns: 1fr !important;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation,
    body.woocommerce-account .woocommerce-MyAccount-content {
        grid-column: 1 !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    body.woocommerce-account .woocommerce-Addresses {
        grid-template-columns: 1fr !important;
    }
}

@media(max-width: 620px) {
    body.woocommerce-account .woocommerce-Address-title {
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    body.woocommerce-account .woocommerce-Address-title h2,
    body.woocommerce-account .woocommerce-Address-title .edit {
        max-width: 100% !important;
    }
}

/* =====================================================
   MODULUS GLOBAL CORPORATE FOOTER
===================================================== */

body .site-footer,
body .site-info {
    background: #02060d !important;
    color: #ffffff !important;
}

body .site-info {
    display: none !important;
}

body .modulus-site-footer {
    position: relative !important;
    overflow: hidden !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 70px 0 0 !important;
    background:
        radial-gradient(circle at 18% 0%, rgba(0,132,255,.18), transparent 28rem),
        linear-gradient(180deg, #02060d 0%, #030913 100%) !important;
    border-top: 1px solid rgba(0,132,255,.22) !important;
    color: #ffffff !important;
}

body .modulus-site-footer::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    pointer-events: none !important;
    background-image:
        linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px) !important;
    background-size: 42px 42px !important;
    mask-image: linear-gradient(to bottom, black, transparent 75%) !important;
}

body .modulus-site-footer-inner,
body .modulus-site-footer-bottom {
    position: relative !important;
    z-index: 1 !important;
    width: 1180px !important;
    max-width: 92vw !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body .modulus-site-footer-inner {
    display: grid !important;
    grid-template-columns: minmax(0, 1.7fr) repeat(3, minmax(150px, .7fr)) !important;
    gap: 34px !important;
    align-items: start !important;
    padding-bottom: 44px !important;
}

body .modulus-site-footer-brand {
    max-width: 460px !important;
}

body .modulus-footer-kicker {
    margin: 0 0 12px !important;
    color: #0084ff !important;
    text-transform: uppercase !important;
    font-size: .76rem !important;
    font-weight: 950 !important;
    letter-spacing: 1.5px !important;
}

body .modulus-site-footer h2,
body .modulus-site-footer h3,
body .modulus-site-footer p {
    color: #ffffff !important;
}

body .modulus-site-footer h2 {
    margin: 0 0 16px !important;
    max-width: 12ch !important;
    font-size: clamp(1.45rem, 2.4vw, 2.15rem) !important;
    line-height: 1.06 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
}

body .modulus-site-footer-brand p:not(.modulus-footer-kicker) {
    margin: 0 !important;
    color: rgba(255,255,255,.7) !important;
    font-size: .98rem !important;
    line-height: 1.7 !important;
}

body .modulus-footer-socials {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 9px !important;
    margin-top: 22px !important;
}

body .modulus-footer-socials a {
    min-height: 36px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 8px 12px !important;
    border: 1px solid rgba(0,132,255,.28) !important;
    border-radius: 8px !important;
    background: rgba(0,132,255,.08) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: .78rem !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .7px !important;
}

body .modulus-footer-column {
    display: grid !important;
    gap: 9px !important;
}

body .modulus-footer-column h3 {
    margin: 0 0 8px !important;
    color: #ffffff !important;
    font-size: .82rem !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.1px !important;
}

body .modulus-footer-column a {
    color: rgba(255,255,255,.68) !important;
    text-decoration: none !important;
    font-size: .92rem !important;
    line-height: 1.35 !important;
}

body .modulus-footer-column a:hover,
body .modulus-footer-socials a:hover {
    color: #ffffff !important;
    border-color: rgba(0,132,255,.62) !important;
}

body .modulus-site-footer-bottom {
    min-height: 58px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    padding: 18px 0 !important;
    border-top: 1px solid rgba(255,255,255,.09) !important;
    color: rgba(255,255,255,.58) !important;
    font-size: .82rem !important;
}

body .modulus-site-footer-bottom a {
    color: #7830ef !important;
    font-weight: 900 !important;
    text-decoration: none !important;
}

body .modulus-site-footer-bottom a:hover {
    color: #9b6cff !important;
}

@media(max-width: 980px) {
    body .modulus-site-footer {
        padding-top: 52px !important;
    }

    body .modulus-site-footer-inner {
        grid-template-columns: 1fr 1fr !important;
        gap: 28px !important;
    }

    body .modulus-site-footer-brand {
        grid-column: 1 / -1 !important;
        max-width: 640px !important;
    }

    body .modulus-site-footer h2 {
        max-width: 14ch !important;
    }
}

@media(max-width: 620px) {
    body .modulus-site-footer-inner {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
        padding-bottom: 34px !important;
    }

    body .modulus-site-footer-bottom {
        align-items: flex-start !important;
        flex-direction: column !important;
    }
}

/* =====================================================
   MODULUS INFO / LEGAL / CONTACT PAGES
===================================================== */

body.page-template-page-contact,
body.page-template-page-privacy-policy,
body.page-template-page-terms-conditions,
body.page-template-page-refund_returns,
body.page-id-contact,
body #page,
body .mod-info-page {
    background: #02060d !important;
}

body .mod-info-page {
    color: #ffffff !important;
    min-height: 60vh !important;
}

body .mod-info-wrap {
    width: 1180px !important;
    max-width: 92vw !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body .mod-info-hero {
    position: relative !important;
    overflow: hidden !important;
    padding: 72px 0 38px !important;
    border-bottom: 1px solid rgba(0,132,255,.14) !important;
    background:
        radial-gradient(circle at 18% 0%, rgba(0,132,255,.2), transparent 30rem),
        linear-gradient(180deg, rgba(0,132,255,.04), transparent) !important;
}

body .mod-info-hero h1 {
    max-width: 820px !important;
    margin: 0 !important;
    color: #ffffff !important;
    font-size: clamp(2.6rem, 6vw, 5.4rem) !important;
    line-height: .92 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
}

body .mod-info-hero p:not(.mod-kicker) {
    max-width: 680px !important;
    margin: 20px 0 0 !important;
    color: rgba(255,255,255,.72) !important;
    font-size: 1.05rem !important;
    line-height: 1.65 !important;
}

body .mod-info-section {
    padding: 44px 0 82px !important;
}

body .mod-info-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 320px !important;
    gap: 24px !important;
    align-items: start !important;
}

body .mod-info-main {
    display: grid !important;
    gap: 18px !important;
    min-width: 0 !important;
}

body .mod-info-panel,
body .mod-info-side-card {
    background: rgba(10,14,22,.92) !important;
    border: 1px solid rgba(0,132,255,.22) !important;
    border-radius: 16px !important;
    box-shadow: 0 16px 45px rgba(0,0,0,.35) !important;
    color: #ffffff !important;
}

body .mod-info-panel {
    padding: 28px !important;
}

body .mod-info-panel h2,
body .mod-info-panel h3 {
    color: #ffffff !important;
    text-transform: uppercase !important;
    letter-spacing: 0 !important;
}

body .mod-info-panel h2 {
    margin: 0 0 16px !important;
    font-size: clamp(1.7rem, 3vw, 2.65rem) !important;
    line-height: 1 !important;
}

body .mod-info-panel h3 {
    margin: 28px 0 10px !important;
    font-size: 1.05rem !important;
    letter-spacing: .7px !important;
}

body .mod-info-panel p,
body .mod-info-panel li {
    color: rgba(255,255,255,.74) !important;
    font-size: .98rem !important;
    line-height: 1.72 !important;
}

body .mod-info-panel p {
    margin: 0 0 15px !important;
}

body .mod-info-panel p:last-child {
    margin-bottom: 0 !important;
}

body .mod-info-check-list {
    display: grid !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

body .mod-info-check-list li {
    position: relative !important;
    padding-left: 25px !important;
}

body .mod-info-check-list li::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: .67em !important;
    width: 9px !important;
    height: 9px !important;
    border-radius: 999px !important;
    background: #0084ff !important;
    box-shadow: 0 0 16px rgba(0,132,255,.55) !important;
}

body .mod-info-note {
    margin-top: 26px !important;
    padding: 16px !important;
    border: 1px solid rgba(0,132,255,.28) !important;
    border-radius: 10px !important;
    background: rgba(0,132,255,.08) !important;
}

body .mod-contact-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin-top: 22px !important;
}

body .mod-contact-card {
    min-height: 118px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    padding: 16px !important;
    border: 1px solid rgba(0,132,255,.22) !important;
    border-radius: 12px !important;
    background: rgba(255,255,255,.035) !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

body .mod-contact-card span {
    color: #0084ff !important;
    text-transform: uppercase !important;
    font-size: .72rem !important;
    font-weight: 950 !important;
    letter-spacing: 1px !important;
}

body .mod-contact-card strong {
    color: #ffffff !important;
    font-size: .95rem !important;
    line-height: 1.25 !important;
    overflow-wrap: anywhere !important;
}

body .mod-info-sidebar {
    position: sticky !important;
    top: 110px !important;
    display: grid !important;
    gap: 14px !important;
}

body .mod-info-side-card {
    padding: 18px !important;
}

body .mod-info-side-card .mod-kicker {
    margin-bottom: 12px !important;
}

body .mod-info-side-list,
body .mod-info-tool-list {
    display: grid !important;
    gap: 9px !important;
}

body .mod-info-side-list a,
body .mod-info-tool-list a {
    display: grid !important;
    gap: 4px !important;
    padding: 12px !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    border-radius: 9px !important;
    background: rgba(255,255,255,.035) !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

body .mod-info-tool-list a {
    display: flex !important;
    align-items: center !important;
    min-height: 42px !important;
    color: rgba(255,255,255,.78) !important;
    font-weight: 850 !important;
}

body .mod-info-side-list a:hover,
body .mod-info-tool-list a:hover,
body .mod-contact-card:hover {
    border-color: rgba(0,132,255,.55) !important;
    background: rgba(0,132,255,.1) !important;
}

body .mod-info-tool-list a:hover {
    border-color: rgba(120,48,239,.72) !important;
    background: rgba(120,48,239,.12) !important;
}

body .mod-info-side-list span {
    color: #ffffff !important;
    font-size: .88rem !important;
    font-weight: 900 !important;
    line-height: 1.25 !important;
}

body .mod-info-side-list small {
    color: rgba(255,255,255,.58) !important;
    font-size: .78rem !important;
    line-height: 1.3 !important;
}

body .mod-info-side-list p {
    margin: 0 !important;
    color: rgba(255,255,255,.68) !important;
}

@media(max-width: 980px) {
    body .mod-info-layout {
        grid-template-columns: 1fr !important;
    }

    body .mod-info-sidebar {
        position: static !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    body .mod-contact-grid {
        grid-template-columns: 1fr !important;
    }
}

@media(max-width: 760px) {
    body .mod-info-hero {
        padding: 48px 0 30px !important;
    }

    body .mod-info-section {
        padding: 28px 0 56px !important;
    }

    body .mod-info-panel {
        padding: 20px !important;
    }

    body .mod-info-sidebar {
        grid-template-columns: 1fr !important;
    }
}

/* =====================================================
   MODULUS INFO PAGES - CENTER ALIGNMENT FIX
===================================================== */

body .mod-info-page .mod-info-wrap {
    width: 980px !important;
    max-width: 92vw !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body .mod-info-page .mod-info-hero {
    text-align: center !important;
}

body .mod-info-page .mod-info-hero h1,
body .mod-info-page .mod-info-hero p:not(.mod-kicker) {
    margin-left: auto !important;
    margin-right: auto !important;
}

body .mod-info-page .mod-info-layout {
    grid-template-columns: minmax(0, 620px) 320px !important;
    justify-content: center !important;
}

body .mod-info-page .mod-info-main,
body .mod-info-page .mod-info-sidebar {
    width: 100% !important;
}

@media(max-width: 980px) {
    body .mod-info-page .mod-info-layout {
        grid-template-columns: 1fr !important;
    }
}

/* =====================================================
   MODULUS INFO PAGES - WIDER CENTERED FINAL FIX
===================================================== */

body .mod-info-page .mod-info-hero > .mod-info-wrap,
body .mod-info-page .mod-info-section > .mod-info-wrap {
    width: min(1180px, calc(100vw - 48px)) !important;
    max-width: 1180px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body .mod-info-page .mod-info-layout,
body .mod-info-page .mod-info-section > .mod-info-wrap.mod-info-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 760px) 340px !important;
    gap: 28px !important;
    justify-content: center !important;
    align-items: start !important;
}

body .mod-info-page .mod-info-main {
    max-width: 760px !important;
    justify-self: stretch !important;
}

body .mod-info-page .mod-info-sidebar {
    max-width: 340px !important;
    justify-self: stretch !important;
}

body .mod-info-page .mod-info-hero h1 {
    max-width: 900px !important;
}

body .mod-info-page .mod-info-hero p:not(.mod-kicker) {
    max-width: 760px !important;
}

@media(max-width: 1180px) {
    body .mod-info-page .mod-info-layout,
    body .mod-info-page .mod-info-section > .mod-info-wrap.mod-info-layout {
        grid-template-columns: minmax(0, 1fr) 320px !important;
    }
}

@media(max-width: 980px) {
    body .mod-info-page .mod-info-hero > .mod-info-wrap,
    body .mod-info-page .mod-info-section > .mod-info-wrap {
        width: min(760px, calc(100vw - 32px)) !important;
    }

    body .mod-info-page .mod-info-layout,
    body .mod-info-page .mod-info-section > .mod-info-wrap.mod-info-layout {
        grid-template-columns: 1fr !important;
    }

    body .mod-info-page .mod-info-main,
    body .mod-info-page .mod-info-sidebar {
        max-width: 100% !important;
    }
}

/* =====================================================
   MODULUS INFO PAGES - FULL WIDTH PAGE BREAKOUT
   Fixes templates sitting inside a left-side theme column
===================================================== */

body .mod-info-page {
    position: relative !important;
    left: 50% !important;
    right: 50% !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
}

body .mod-info-page .mod-info-hero,
body .mod-info-page .mod-info-section {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

body .mod-info-page .mod-info-hero > .mod-info-wrap,
body .mod-info-page .mod-info-section > .mod-info-wrap {
    width: 1380px !important;
    max-width: calc(100vw - 64px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body .mod-info-page .mod-info-layout,
body .mod-info-page .mod-info-section > .mod-info-wrap.mod-info-layout {
    grid-template-columns: minmax(0, 920px) 360px !important;
    gap: 34px !important;
    justify-content: center !important;
}

body .mod-info-page .mod-info-main {
    max-width: 920px !important;
}

body .mod-info-page .mod-info-sidebar {
    max-width: 360px !important;
}

body .mod-info-page .mod-info-hero h1 {
    max-width: 1180px !important;
    font-size: clamp(3rem, 5vw, 6rem) !important;
}

body .mod-info-page .mod-info-hero p:not(.mod-kicker) {
    max-width: 820px !important;
}

@media(max-width: 980px) {
    body .mod-info-page .mod-info-hero > .mod-info-wrap,
    body .mod-info-page .mod-info-section > .mod-info-wrap {
        width: 760px !important;
        max-width: calc(100vw - 32px) !important;
    }

    body .mod-info-page .mod-info-layout,
    body .mod-info-page .mod-info-section > .mod-info-wrap.mod-info-layout {
        grid-template-columns: 1fr !important;
    }

    body .mod-info-page .mod-info-main,
    body .mod-info-page .mod-info-sidebar {
        max-width: 100% !important;
    }
}

/* =====================================================
   MODULUS COOKIE NOTICE
===================================================== */

body .modulus-cookie-notice {
    position: fixed !important;
    left: 50% !important;
    bottom: 18px !important;
    z-index: 99998 !important;
    width: min(760px, calc(100vw - 28px)) !important;
    transform: translate(-50%, 18px) !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity .2s ease, transform .2s ease !important;
}

body .modulus-cookie-notice.is-visible {
    opacity: 1 !important;
    transform: translate(-50%, 0) !important;
    pointer-events: auto !important;
}

body .modulus-cookie-notice[hidden] {
    display: none !important;
}

body .modulus-cookie-notice-inner {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 18px !important;
    align-items: center !important;
    padding: 16px !important;
    border: 1px solid rgba(0,132,255,.34) !important;
    border-radius: 12px !important;
    background: rgba(5, 9, 16, .96) !important;
    color: #ffffff !important;
    box-shadow: 0 18px 50px rgba(0,0,0,.45), 0 0 28px rgba(0,132,255,.14) !important;
    backdrop-filter: blur(14px) !important;
}

body .modulus-cookie-kicker {
    margin: 0 0 5px !important;
    color: #0084ff !important;
    text-transform: uppercase !important;
    font-size: .72rem !important;
    font-weight: 950 !important;
    letter-spacing: 1.2px !important;
}

body .modulus-cookie-notice p:not(.modulus-cookie-kicker) {
    margin: 0 !important;
    color: rgba(255,255,255,.74) !important;
    font-size: .9rem !important;
    line-height: 1.45 !important;
}

body .modulus-cookie-actions {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

body .modulus-cookie-link,
body .modulus-cookie-button {
    min-height: 38px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 9px 13px !important;
    border-radius: 8px !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    font-size: .72rem !important;
    font-weight: 950 !important;
    letter-spacing: .75px !important;
    white-space: nowrap !important;
}

body .modulus-cookie-link {
    border: 1px solid rgba(255,255,255,.14) !important;
    background: rgba(255,255,255,.04) !important;
    color: #ffffff !important;
}

body .modulus-cookie-button {
    border: 1px solid #0084ff !important;
    background: linear-gradient(135deg, #005cff, #008cff) !important;
    color: #ffffff !important;
    cursor: pointer !important;
}

body .modulus-cookie-link:hover,
body .modulus-cookie-button:hover,
body .modulus-cookie-link:focus-visible,
body .modulus-cookie-button:focus-visible {
    border-color: #72caff !important;
    outline: none !important;
}

@media(max-width: 680px) {
    body .modulus-cookie-notice-inner {
        grid-template-columns: 1fr !important;
    }

    body .modulus-cookie-actions {
        justify-content: stretch !important;
    }

    body .modulus-cookie-link,
    body .modulus-cookie-button {
        flex: 1 !important;
    }
}

/* =====================================================
   MODULUS MOBILE + SEO UX HARDENING
===================================================== */

html {
    scroll-behavior: smooth !important;
    -webkit-text-size-adjust: 100% !important;
}

body {
    overflow-x: hidden !important;
}

body img,
body video,
body iframe {
    max-width: 100% !important;
}

body a,
body button,
body input,
body select,
body textarea {
    touch-action: manipulation !important;
}

body a:focus-visible,
body button:focus-visible,
body input:focus-visible,
body select:focus-visible,
body textarea:focus-visible {
    outline: 2px solid #42b7ff !important;
    outline-offset: 3px !important;
}

body .mod-btn,
body .button,
body button.button,
body input.button,
body .wc-block-components-button,
body .single_add_to_cart_button {
    min-height: 44px !important;
}

body input,
body select,
body textarea {
    font-size: 16px !important;
}

@media(max-width: 760px) {
    body .inside-header,
    body .inside-navigation {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    body .main-navigation .main-nav ul li a,
    body .menu-toggle,
    body .menu-bar-item > a {
        min-height: 44px !important;
        display: flex !important;
        align-items: center !important;
    }

    body .mod-home-wrap,
    body .modulus-container,
    body .mod-info-wrap,
    body .mod-info-page .mod-info-hero > .mod-info-wrap,
    body .mod-info-page .mod-info-section > .mod-info-wrap {
        width: calc(100vw - 28px) !important;
        max-width: calc(100vw - 28px) !important;
    }

    body .mod-home-hero,
    body .mod-category-hero,
    body .mod-about-hero,
    body .mod-info-hero,
    body .modulus-guides-hero,
    body .modulus-tools-hero,
    body .mod-guide-hero {
        padding-top: 42px !important;
        padding-bottom: 34px !important;
    }

    body .mod-home-hero h1,
    body .mod-category-hero h1,
    body .mod-about-hero h1,
    body .mod-info-page .mod-info-hero h1,
    body .modulus-guides-hero h1,
    body .modulus-tools-hero h1,
    body .mod-guide-hero h1 {
        font-size: clamp(2.15rem, 12vw, 3.4rem) !important;
        line-height: .98 !important;
        letter-spacing: 0 !important;
        max-width: 100% !important;
        overflow-wrap: anywhere !important;
    }

    body .mod-hero-text,
    body .mod-info-hero p:not(.mod-kicker),
    body .modulus-guides-hero p,
    body .modulus-tools-hero p,
    body .mod-guide-hero p {
        font-size: 1rem !important;
        line-height: 1.6 !important;
        max-width: 100% !important;
    }

    body .mod-hero-actions,
    body .mod-footer-cta .mod-home-wrap {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    body .mod-btn,
    body .mod-hero-actions .mod-btn {
        width: 100% !important;
        justify-content: center !important;
    }

    body .mod-product-grid ul.products,
    body ul.products,
    body .products {
        grid-template-columns: 1fr 1fr !important;
        gap: 12px !important;
    }

    body ul.products li.product,
    body .mod-product-grid ul.products li.product {
        min-width: 0 !important;
        padding: 12px !important;
    }

    body ul.products li.product .woocommerce-loop-product__title {
        font-size: .88rem !important;
        line-height: 1.25 !important;
    }

    body .mod-info-panel,
    body .mod-info-side-card,
    body .mod-card {
        border-radius: 12px !important;
    }

    body .mod-info-panel h2,
    body .mod-card h3 {
        overflow-wrap: anywhere !important;
    }
}

@media(max-width: 430px) {
    body .mod-product-grid ul.products,
    body ul.products,
    body .products {
        grid-template-columns: 1fr !important;
    }
}

/* Mobile homepage sales-first ordering */
@media(max-width: 650px) {
    body .mod-category-page {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    body.home .mod-home {
        display: flex !important;
        flex-direction: column !important;
    }

    body.home .mod-home-hero {
        order: 1 !important;
        min-height: auto !important;
        padding-top: 42px !important;
        padding-bottom: 30px !important;
    }

    body.home .mod-best-sellers {
        order: 2 !important;
        padding-top: 36px !important;
        padding-bottom: 38px !important;
    }

    body.home .mod-systems {
        order: 3 !important;
        padding-top: 38px !important;
        padding-bottom: 42px !important;
    }

    body.home .mod-conversion-strip {
        order: 4 !important;
        padding: 0 !important;
    }

    body.home .mod-method-hub {
        order: 5 !important;
        padding-top: 42px !important;
        padding-bottom: 42px !important;
    }

    body.home .mod-why {
        order: 6 !important;
    }

    body.home .mod-home-reviews {
        order: 7 !important;
    }

    body.home .mod-latest-posts {
        order: 8 !important;
    }

    body.home .mod-final-choice {
        order: 9 !important;
    }

    body.home .mod-footer-cta {
        order: 10 !important;
    }

    body.home .mod-hero-text {
        max-width: 330px !important;
        font-size: 1rem !important;
        line-height: 1.45 !important;
    }

    body.home .mod-hero-proof {
        margin-top: 16px !important;
    }

    body.home .mod-hero-mini {
        display: none !important;
    }

    body.home .mod-conversion-strip span,
    body.home .mod-method-card em {
        display: none !important;
    }

    body.home .mod-method-card {
        min-height: 76px !important;
    }

    body.home .mod-best-sellers .mod-product-grid ul.products,
    body.home .mod-best-sellers ul.products,
    body.home .mod-best-sellers .products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }

    body.home .mod-best-sellers ul.products li.product {
        padding: 10px !important;
    }
}

@media(max-width: 340px) {
    body.home .mod-best-sellers .mod-product-grid ul.products,
    body.home .mod-best-sellers ul.products,
    body.home .mod-best-sellers .products {
        grid-template-columns: 1fr !important;
    }
}

/* =====================================================
   MODULUS MOBILE NAV DUPLICATE FIX
===================================================== */

@media(max-width: 768px) {
    body .modulus-nav-search-item {
        display: none !important;
    }

    body .main-navigation .inside-navigation {
        display: flex !important;
        justify-content: flex-end !important;
        gap: 12px !important;
        align-items: center !important;
    }

    body .main-navigation .menu-toggle {
        display: none !important;
    }

    body .main-navigation .menu-bar-items {
        display: flex !important;
        justify-self: end !important;
        gap: 10px !important;
    }

    body .main-navigation .menu-bar-items .modulus-nav-cart-item:not(:first-child),
    body .main-navigation .menu-bar-items .modulus-nav-cart-fragment:not(:first-child),
    body .main-navigation .inside-navigation > .modulus-nav-cart-item {
        display: none !important;
    }

    body .main-navigation .menu-bar-item.modulus-nav-cart-item {
        margin-left: 0 !important;
    }

    body .main-navigation .mobile-menu-control-wrapper .modulus-nav-cart-item,
    body .main-navigation .mobile-menu-control-wrapper .modulus-nav-cart-fragment {
        display: none !important;
    }

    body .main-navigation .menu-bar-item.modulus-mobile-menu-item {
        display: inline-flex !important;
        margin-left: 0 !important;
    }
}

/* =====================================================
   MODULUS AJAX MOBILE MENU DRAWER
===================================================== */

html.modulus-mobile-menu-lock,
html.modulus-mobile-menu-lock body {
    overflow: hidden !important;
}

body .modulus-mobile-menu-item {
    display: none !important;
}

body .modulus-mobile-menu-toggle {
    width: 44px !important;
    height: 44px !important;
    display: inline-grid !important;
    place-items: center !important;
    gap: 4px !important;
    padding: 10px !important;
    border: 1px solid rgba(0,132,255,.55) !important;
    border-radius: 8px !important;
    background: linear-gradient(145deg, rgba(0,132,255,.18), rgba(0,0,0,.15)) !important;
    color: #ffffff !important;
    cursor: pointer !important;
    box-shadow: 0 0 18px rgba(0,132,255,.18) !important;
}

body .modulus-mobile-menu-toggle span {
    width: 20px !important;
    height: 2px !important;
    display: block !important;
    border-radius: 999px !important;
    background: #ffffff !important;
}

body .modulus-mobile-menu-toggle:hover,
body .modulus-mobile-menu-toggle:focus-visible {
    border-color: #72caff !important;
    background: #0084ff !important;
    outline: none !important;
}

body .modulus-mobile-menu-shell {
    position: fixed !important;
    inset: 0 !important;
    z-index: 99999 !important;
    pointer-events: none !important;
}

body .modulus-mobile-menu-shell.is-open {
    pointer-events: auto !important;
}

body .modulus-mobile-menu-overlay {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
    border: 0 !important;
    background: rgba(0,0,0,.68) !important;
    opacity: 0 !important;
    transition: opacity .2s ease !important;
    cursor: pointer !important;
}

body .modulus-mobile-menu-shell.is-open .modulus-mobile-menu-overlay {
    opacity: 1 !important;
}

body .modulus-mobile-menu-drawer {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    width: min(440px, 92vw) !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    background: #02060d !important;
    border-left: 1px solid rgba(0,132,255,.34) !important;
    box-shadow: -24px 0 60px rgba(0,0,0,.62) !important;
    transform: translateX(105%) !important;
    transition: transform .24s ease !important;
    outline: none !important;
}

body .modulus-mobile-menu-shell.is-open .modulus-mobile-menu-drawer {
    transform: translateX(0) !important;
}

body .modulus-mobile-menu-header {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 18px !important;
    padding: 24px 20px 18px !important;
    border-bottom: 1px solid rgba(255,255,255,.09) !important;
}

body .modulus-mobile-menu-kicker {
    margin: 0 0 6px !important;
    color: #0084ff !important;
    text-transform: uppercase !important;
    font-size: .72rem !important;
    font-weight: 950 !important;
    letter-spacing: 1.4px !important;
}

body .modulus-mobile-menu-header h2 {
    margin: 0 !important;
    color: #ffffff !important;
    font-size: 1.7rem !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
}

body .modulus-mobile-menu-close {
    width: 38px !important;
    height: 38px !important;
    flex: 0 0 38px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    border-radius: 8px !important;
    background: rgba(255,255,255,.04) !important;
    color: #ffffff !important;
    font-size: 24px !important;
    line-height: 1 !important;
    cursor: pointer !important;
}

body .modulus-mobile-menu-links {
    min-height: 0 !important;
    overflow-y: auto !important;
    display: grid !important;
    gap: 9px !important;
    padding: 18px 20px !important;
}

body .modulus-mobile-menu-link {
    display: grid !important;
    gap: 4px !important;
    min-height: 58px !important;
    padding: 12px !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    border-radius: 9px !important;
    background: rgba(255,255,255,.035) !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

body .modulus-mobile-menu-link span {
    color: #ffffff !important;
    font-size: .92rem !important;
    font-weight: 950 !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
    letter-spacing: .7px !important;
}

body .modulus-mobile-menu-link small {
    color: rgba(255,255,255,.58) !important;
    font-size: .8rem !important;
    line-height: 1.25 !important;
}

body .modulus-mobile-menu-actions {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 9px !important;
    padding: 16px 20px 20px !important;
    border-top: 1px solid rgba(255,255,255,.09) !important;
}

body .modulus-mobile-menu-actions a {
    min-height: 42px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 10px !important;
    border: 1px solid rgba(0,132,255,.32) !important;
    border-radius: 8px !important;
    background: rgba(0,132,255,.08) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    font-size: .72rem !important;
    font-weight: 950 !important;
    letter-spacing: .7px !important;
}

body .modulus-mobile-menu-link:hover,
body .modulus-mobile-menu-actions a:hover {
    border-color: rgba(0,132,255,.6) !important;
    background: rgba(0,132,255,.12) !important;
}

/* =====================================================
   MODULUS MOBILE HEADER CONTROL ALIGNMENT
===================================================== */

@media(max-width: 768px) {
    body .main-navigation,
    body .main-navigation .inside-navigation {
        width: 100% !important;
    }

    body .main-navigation .inside-navigation {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 10px !important;
        min-height: 58px !important;
    }

    body .main-navigation .menu-bar-items {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 10px !important;
        width: auto !important;
        max-width: none !important;
        margin-left: auto !important;
    }

    body .main-navigation .menu-bar-item,
    body .main-navigation .modulus-mobile-menu-item,
    body .main-navigation .modulus-nav-cart-item,
    body .main-navigation .modulus-nav-cart-fragment {
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: none !important;
    }

    body .modulus-mobile-menu-toggle,
    body .modulus-nav-cart-toggle {
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
        flex: 0 0 44px !important;
    }
}

/* =====================================================
   MODULUS MOBILE HEADER COMPACT ACTIONS
===================================================== */

@media(max-width: 768px) {
    body .site-header .inside-header,
    body #masthead .inside-header {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        align-items: center !important;
        gap: 12px !important;
        min-height: 0 !important;
        padding-top: 16px !important;
        padding-bottom: 16px !important;
    }

    body .site-header .site-logo,
    body #masthead .site-logo,
    body .site-header .site-branding,
    body #masthead .site-branding,
    body .site-header .navigation-branding,
    body #masthead .navigation-branding {
        min-width: 0 !important;
        max-width: 100% !important;
        flex: initial !important;
        justify-self: start !important;
    }

    body .site-header .site-logo img,
    body #masthead .site-logo img,
    body .site-header .custom-logo,
    body #masthead .custom-logo,
    body .navigation-branding img {
        width: min(54vw, 260px) !important;
        max-width: 260px !important;
        min-width: 160px !important;
        height: auto !important;
        object-fit: contain !important;
    }

    body .modulus-mobile-header-actions {
        display: flex !important;
        flex: 0 0 auto !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 10px !important;
        margin-left: auto !important;
        white-space: nowrap !important;
        grid-column: 2 !important;
        justify-self: end !important;
    }

    body .modulus-mobile-header-actions .menu-bar-item,
    body .modulus-mobile-header-actions .modulus-mobile-menu-item,
    body .modulus-mobile-header-actions .modulus-nav-cart-item {
        display: inline-flex !important;
        flex: 0 0 auto !important;
        width: auto !important;
        margin: 0 !important;
    }

    body .main-navigation .inside-navigation {
        min-height: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    body .main-navigation .inside-navigation:empty,
    body .main-navigation .menu-bar-items:empty {
        display: none !important;
    }
}

@media(max-width: 390px) {
    body .site-header .site-logo img,
    body #masthead .site-logo img,
    body .site-header .custom-logo,
    body #masthead .custom-logo,
    body .navigation-branding img {
        width: min(48vw, 220px) !important;
        min-width: 135px !important;
    }

    body .modulus-mobile-header-actions {
        gap: 8px !important;
    }
}

/* =====================================================
   MODULUS MOBILE HEADER POSITION FIX
===================================================== */

@media(max-width: 768px) {
    body .site-header .inside-header,
    body #masthead .inside-header {
        position: relative !important;
        display: block !important;
        min-height: 94px !important;
        padding: 22px 118px 22px 18px !important;
    }

    body .site-header .site-logo,
    body #masthead .site-logo,
    body .site-header .site-branding,
    body #masthead .site-branding,
    body .site-header .navigation-branding,
    body #masthead .navigation-branding {
        display: block !important;
        width: auto !important;
        max-width: 100% !important;
    }

    body .site-header .site-logo img,
    body #masthead .site-logo img,
    body .site-header .custom-logo,
    body #masthead .custom-logo,
    body .navigation-branding img {
        width: min(52vw, 250px) !important;
        min-width: 170px !important;
        max-width: 250px !important;
    }

    body .modulus-mobile-header-actions {
        position: absolute !important;
        top: 50% !important;
        right: 18px !important;
        transform: translateY(-50%) !important;
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 8px !important;
        margin: 0 !important;
        width: auto !important;
        max-width: none !important;
    }

    body .modulus-mobile-header-actions .modulus-mobile-menu-toggle,
    body .modulus-mobile-header-actions .modulus-nav-cart-toggle {
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
        flex-basis: 44px !important;
    }

    body #site-navigation,
    body .main-navigation {
        min-height: 0 !important;
    }

    body .main-navigation .inside-navigation {
        display: none !important;
    }
}

@media(max-width: 390px) {
    body .site-header .inside-header,
    body #masthead .inside-header {
        padding-right: 112px !important;
    }

    body .site-header .site-logo img,
    body #masthead .site-logo img,
    body .site-header .custom-logo,
    body #masthead .custom-logo,
    body .navigation-branding img {
        width: min(48vw, 220px) !important;
        min-width: 145px !important;
    }
}

/* =====================================================
   MODULUS MOBILE FLOATING BASKET
===================================================== */

body .modulus-floating-cart-mobile {
    display: none !important;
}

@media(max-width: 768px) {
    body .modulus-mobile-header-actions .modulus-nav-cart-item,
    body .site-header .modulus-nav-cart-item,
    body #masthead .modulus-nav-cart-item,
    body .main-navigation .modulus-nav-cart-item {
        display: none !important;
    }

    body .modulus-floating-cart-mobile {
        position: fixed !important;
        left: 14px !important;
        bottom: 14px !important;
        z-index: 99991 !important;
        display: block !important;
    }

    body.single-product .modulus-floating-cart-mobile {
        bottom: 104px !important;
    }

    body .modulus-floating-cart-mobile .modulus-floating-cart-fragment {
        display: inline-flex !important;
    }

    body .modulus-floating-cart-mobile .modulus-floating-cart-toggle {
        width: 54px !important;
        height: 54px !important;
        min-width: 54px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        border: 1px solid rgba(0,132,255,.62) !important;
        border-radius: 14px !important;
        background: rgba(5, 9, 16, .96) !important;
        color: #ffffff !important;
        box-shadow: 0 18px 45px rgba(0,0,0,.5), 0 0 28px rgba(0,132,255,.22) !important;
        backdrop-filter: blur(14px) !important;
    }

    body .modulus-floating-cart-mobile .modulus-floating-cart-toggle:hover,
    body .modulus-floating-cart-mobile .modulus-floating-cart-toggle:focus-visible {
        background: #0084ff !important;
        border-color: #72caff !important;
        outline: none !important;
    }

    body .modulus-floating-cart-mobile .modulus-nav-cart-count {
        top: -8px !important;
        right: -8px !important;
    }
}

/* =====================================================
   MODULUS CUSREV REVIEW INTEGRATION
===================================================== */

body .modulus-review-section {
    padding: 54px 0 !important;
    background: #02060d !important;
    color: #ffffff !important;
}

body .modulus-review-section-inner {
    width: 1180px !important;
    max-width: 92vw !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body .modulus-cusrev-wrap,
body .mod-product-review-rating,
body .modulus-cart-drawer-rating,
body .modulus-checkout-review-rating,
body .modulus-footer-rating {
    color: #ffffff !important;
}

body .modulus-cusrev-wrap {
    padding: 22px !important;
    border: 1px solid rgba(0,132,255,.22) !important;
    border-radius: 16px !important;
    background: rgba(10,14,22,.92) !important;
    box-shadow: 0 16px 45px rgba(0,0,0,.35) !important;
}

body .modulus-cusrev-wrap *,
body .mod-product-review-rating *,
body .modulus-cart-drawer-rating *,
body .modulus-checkout-review-rating *,
body .modulus-footer-rating * {
    max-width: 100% !important;
}

body .modulus-cusrev-wrap a,
body .mod-product-review-rating a,
body .modulus-cart-drawer-rating a,
body .modulus-checkout-review-rating a,
body .modulus-footer-rating a {
    color: #42b7ff !important;
}

body .modulus-cusrev-wrap .cr-review-card,
body .modulus-cusrev-wrap .cr-review-card-inner,
body .modulus-cusrev-wrap .cr-reviews-grid-inner,
body .modulus-cusrev-wrap .cr-review {
    border-color: rgba(0,132,255,.22) !important;
    background: rgba(255,255,255,.035) !important;
    color: #ffffff !important;
    border-radius: 12px !important;
}

body .modulus-cusrev-wrap .crstar-rating,
body .mod-product-review-rating .crstar-rating,
body .modulus-cart-drawer-rating .crstar-rating,
body .modulus-checkout-review-rating .crstar-rating,
body .modulus-footer-rating .crstar-rating {
    color: #0084ff !important;
}

body .mod-product-review-rating {
    margin: -6px 0 16px !important;
    padding: 10px 12px !important;
    border: 1px solid rgba(0,132,255,.22) !important;
    border-radius: 9px !important;
    background: rgba(0,132,255,.08) !important;
}

body .modulus-cart-drawer-rating {
    padding: 12px 22px !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
    background: rgba(0,132,255,.06) !important;
}

body .modulus-checkout-review-rating {
    display: grid !important;
    gap: 8px !important;
    margin-bottom: 16px !important;
    padding: 14px !important;
    border: 1px solid rgba(0,132,255,.22) !important;
    border-radius: 10px !important;
    background: rgba(0,132,255,.08) !important;
}

body .modulus-checkout-review-rating span {
    color: #ffffff !important;
    text-transform: uppercase !important;
    font-size: .74rem !important;
    font-weight: 950 !important;
    letter-spacing: .8px !important;
}

body .modulus-footer-rating {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

body .modulus-product-reviews {
    padding-top: 28px !important;
}

@media(max-width: 760px) {
    body .modulus-review-section {
        padding: 34px 0 !important;
    }

    body .modulus-review-section-inner {
        width: calc(100vw - 28px) !important;
        max-width: calc(100vw - 28px) !important;
    }

    body .modulus-cusrev-wrap {
        padding: 16px !important;
        border-radius: 12px !important;
    }
}

/* ================================
   MODULUS ECOSYSTEM LAYER
================================ */

.mod-method-hub {
    padding: 82px 0;
    background: #05070b;
}

.mod-method-panel,
.mod-shop-pathways {
    padding: 34px;
    border: 1px solid rgba(0,132,255,.24);
    border-radius: 16px;
    background:
        radial-gradient(circle at top right, rgba(0,132,255,.16), transparent 34%),
        rgba(10,14,22,.88);
    box-shadow: 0 20px 70px rgba(0,0,0,.35);
}

.mod-method-panel {
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
    gap: 30px;
    align-items: center;
}

.mod-method-panel .mod-section-head {
    margin: 0;
}

.mod-method-panel .mod-section-head p:not(.mod-kicker) {
    max-width: 620px;
    color: rgba(255,255,255,.7);
    font-size: 17px;
    line-height: 1.7;
}

.mod-method-grid,
.mod-shop-pathway-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.mod-method-card,
.mod-shop-pathway-grid a {
    display: grid;
    gap: 7px;
    min-height: 126px;
    padding: 18px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 12px;
    background: rgba(255,255,255,.035);
    color: #ffffff;
    text-decoration: none;
    transition: transform .2s ease, border-color .2s ease, background .2s ease;
}

.mod-method-card:hover,
.mod-shop-pathway-grid a:hover {
    transform: translateY(-3px);
    border-color: rgba(0,132,255,.62);
    background: rgba(0,132,255,.1);
}

.mod-method-card span,
.mod-shop-pathway-grid span {
    color: #0084ff;
    font-size: 12px;
    font-weight: 950;
    letter-spacing: 1.4px;
    text-transform: uppercase;
}

.mod-method-card strong,
.mod-shop-pathway-grid strong {
    color: #ffffff;
    font-size: 19px;
    line-height: 1.05;
}

.mod-method-card em,
.mod-shop-pathway-grid em {
    color: rgba(255,255,255,.62);
    font-size: 13px;
    font-style: normal;
    line-height: 1.45;
}

.mod-shop-pathways {
    display: grid;
    gap: 22px;
    margin-bottom: 24px;
}

.mod-shop-pathways h2 {
    margin: 0;
    color: #ffffff;
    font-size: clamp(28px, 3.4vw, 46px);
    line-height: .98;
    text-transform: uppercase;
}

.mod-shop-side-method {
    background:
        linear-gradient(145deg, rgba(0,132,255,.14), rgba(40,255,85,.06)),
        rgba(10,14,22,.9) !important;
}

@media (max-width: 980px) {
    .mod-method-panel {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 680px) {
    .mod-method-hub {
        padding: 54px 0;
    }

    .mod-method-panel,
    .mod-shop-pathways {
        padding: 20px;
        border-radius: 12px;
    }

    .mod-method-grid,
    .mod-shop-pathway-grid {
        grid-template-columns: 1fr;
    }
}

/* Homepage hero title scale */
.mod-home .mod-home-hero h1 {
    font-size: clamp(42px, 5.2vw, 72px) !important;
    line-height: .96 !important;
    letter-spacing: 0 !important;
}

@media (max-width: 760px) {
    .mod-home .mod-home-hero h1 {
        font-size: clamp(2rem, 10vw, 3rem) !important;
        line-height: 1 !important;
    }
}

/* Checkout block layout final pass */
body.woocommerce-checkout .entry-header,
body.modulus-checkout-page .entry-header,
body.woocommerce-checkout .woocommerce,
body.modulus-checkout-page .woocommerce,
body.woocommerce-checkout .wp-block-woocommerce-checkout,
body.modulus-checkout-page .wp-block-woocommerce-checkout,
body.woocommerce-checkout .wc-block-checkout,
body.modulus-checkout-page .wc-block-checkout {
    width: min(1120px, 92vw) !important;
    max-width: min(1120px, 92vw) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.woocommerce-checkout .woocommerce,
body.modulus-checkout-page .woocommerce {
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
}

body.woocommerce-checkout .woocommerce > .wp-block-woocommerce-checkout,
body.modulus-checkout-page .woocommerce > .wp-block-woocommerce-checkout,
body.woocommerce-checkout .woocommerce > .wc-block-checkout,
body.modulus-checkout-page .woocommerce > .wc-block-checkout {
    order: 20 !important;
}

body.woocommerce-checkout .woocommerce > :not(.wp-block-woocommerce-checkout):not(.wc-block-checkout),
body.modulus-checkout-page .woocommerce > :not(.wp-block-woocommerce-checkout):not(.wc-block-checkout) {
    order: 10 !important;
}

body.woocommerce-checkout .wc-block-components-sidebar-layout,
body.modulus-checkout-page .wc-block-components-sidebar-layout,
body.woocommerce-checkout .is-large.wc-block-checkout .wc-block-components-sidebar-layout,
body.modulus-checkout-page .is-large.wc-block-checkout .wc-block-components-sidebar-layout,
body.woocommerce-checkout .wc-block-checkout .wc-block-components-sidebar-layout,
body.modulus-checkout-page .wc-block-checkout .wc-block-components-sidebar-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 720px) minmax(300px, 360px) !important;
    gap: 24px !important;
    width: min(1120px, 92vw) !important;
    max-width: min(1120px, 92vw) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    align-items: start !important;
}

body.woocommerce-checkout .wc-block-components-main,
body.modulus-checkout-page .wc-block-components-main,
body.woocommerce-checkout .is-large.wc-block-checkout .wc-block-components-main,
body.modulus-checkout-page .is-large.wc-block-checkout .wc-block-components-main {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding-right: 0 !important;
}

body.woocommerce-checkout .wc-block-components-sidebar,
body.modulus-checkout-page .wc-block-components-sidebar,
body.woocommerce-checkout .is-large.wc-block-checkout .wc-block-components-sidebar,
body.modulus-checkout-page .is-large.wc-block-checkout .wc-block-components-sidebar {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding-left: 0 !important;
    position: sticky !important;
    top: 105px !important;
    align-self: start !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__image,
body.modulus-checkout-page .wc-block-components-order-summary-item__image {
    position: relative !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__quantity,
body.modulus-checkout-page .wc-block-components-order-summary-item__quantity {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 20px !important;
    height: 20px !important;
    padding: 0 6px !important;
    border-radius: 999px !important;
    background: #0084ff !important;
    border: 1px solid rgba(255,255,255,.75) !important;
    color: #ffffff !important;
    font-size: 11px !important;
    font-weight: 950 !important;
    line-height: 1 !important;
    text-indent: 0 !important;
    box-shadow: 0 8px 18px rgba(0,132,255,.35) !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__quantity::before,
body.woocommerce-checkout .wc-block-components-order-summary-item__quantity::after,
body.modulus-checkout-page .wc-block-components-order-summary-item__quantity::before,
body.modulus-checkout-page .wc-block-components-order-summary-item__quantity::after {
    display: none !important;
}

@media(max-width: 980px) {
    body.woocommerce-checkout .wc-block-components-sidebar-layout,
    body.modulus-checkout-page .wc-block-components-sidebar-layout,
    body.woocommerce-checkout .is-large.wc-block-checkout .wc-block-components-sidebar-layout,
    body.modulus-checkout-page .is-large.wc-block-checkout .wc-block-components-sidebar-layout {
        grid-template-columns: 1fr !important;
    }

    body.woocommerce-checkout .wc-block-components-main,
    body.modulus-checkout-page .wc-block-components-main,
    body.woocommerce-checkout .wc-block-components-sidebar,
    body.modulus-checkout-page .wc-block-components-sidebar,
    body.woocommerce-checkout .is-large.wc-block-checkout .wc-block-components-main,
    body.modulus-checkout-page .is-large.wc-block-checkout .wc-block-components-main,
    body.woocommerce-checkout .is-large.wc-block-checkout .wc-block-components-sidebar,
    body.modulus-checkout-page .is-large.wc-block-checkout .wc-block-components-sidebar {
        grid-column: auto !important;
        grid-row: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        position: static !important;
    }
}
