/* WooCommerce remains the source for products, prices, stock and transactions. */
.woocommerce-page .site-main.mcg-commerce { width:min(calc(100% - 80px),1280px); padding-block:28px 64px; }
.mcg-commerce h1,.mcg-commerce h2,.mcg-commerce h3 { color:var(--mcg-green); }
.mcg-shop-banners { position:relative; margin-bottom:26px; }
.mcg-shop-banner { position:relative; min-height:290px; overflow:hidden; border-radius:12px; background:var(--mcg-forest-950); display:flex; align-items:center; }
.mcg-shop-banner > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 57%; }
.mcg-shop-banner::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#103623f2 0%,#123c29c9 42%,#123c2910 100%); }
.mcg-shop-banner-copy { z-index:1; position:relative; color:white; padding:38px 48px; max-width:660px; }
.mcg-shop-banner-copy h2 { color:white; font-size:clamp(28px,3.5vw,44px); margin-bottom:20px; }
.mcg-shop-banner-copy .eyebrow { color:#c9e6b8; }
.mcg-shop-banner-copy p { max-width:570px; line-height:1.75; }
.mcg-shop-banner-copy .button { margin-top:30px; background:white; color:var(--mcg-green); min-height:44px; }
.mcg-shop-banner-controls { position:absolute; right:20px; bottom:18px; z-index:2; display:flex; align-items:center; gap:12px; color:white; font-size:13px; }
.mcg-shop-banner-controls button,.mcg-rail-controls button { width:36px; height:36px; border:1px solid #cbdace; background:white; border-radius:50%; color:var(--mcg-green); padding:0; }
.mcg-shop-category-section { position:relative; margin-bottom:48px; }
.mcg-shop-category-rail { display:flex; gap:28px; overflow-x:auto; scrollbar-width:thin; padding:12px 4px; scroll-snap-type:x mandatory; }
.mcg-shop-category-rail > a { flex:1 0 145px; text-align:center; scroll-snap-align:start; color:var(--mcg-green); }
.mcg-category-circle { display:grid; place-items:center; margin:0 auto 13px; background:#eef3eb; width:130px; height:130px; border-radius:50%; overflow:hidden; transition:background .2s; }
.mcg-category-circle svg { width:52px; height:52px; stroke-width:1; }
.mcg-category-circle img { width:100%; height:100%; object-fit:contain; }
.mcg-shop-category-rail a:hover .mcg-category-circle { background:#dcebd6; }
.mcg-shop-category-rail strong { display:block; max-width:160px; margin:auto; font-size:14px; line-height:1.4; }
.mcg-rail-controls { display:flex; justify-content:flex-end; gap:8px; margin-bottom:4px; }
.mcg-rail-controls button:disabled { opacity:.35; }
.mcg-catalog-layout { display:grid; grid-template-columns:230px minmax(0,1fr); gap:32px; scroll-margin-top:28px; }
.mcg-shop-sidebar { align-self:start; border:1px solid var(--mcg-line); border-radius:9px; background:#f6f8f4; padding:20px; }
.mcg-shop-sidebar summary { color:var(--mcg-green); font-size:16px; font-weight:700; cursor:pointer; border-bottom:1px solid var(--mcg-line); padding-bottom:14px; margin-bottom:14px; }
.mcg-category-option { display:flex; gap:9px; align-items:baseline; font-size:13px; line-height:1.6; margin-block:12px; cursor:pointer; }
.mcg-category-option input { accent-color:var(--mcg-green); }
.mcg-category-option small { color:var(--mcg-muted); }
.mcg-filter-actions { display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-top:20px; font-size:12px; }
.mcg-filter-actions .button { min-height:38px; font-size:12px; padding:9px 12px; }
.mcg-filter-actions > a { text-decoration:underline; }
.mcg-catalog-heading h1 { font-size:32px; margin:0 0 12px; }
.mcg-catalog-heading .term-description { font-size:14px; color:var(--mcg-muted); }
.mcg-product-search { display:flex; margin-block:18px; max-width:430px; border:1px solid var(--mcg-line); border-radius:6px; background:white; }
.mcg-product-search input { min-width:0; flex:1; border:0; padding:11px 14px; border-radius:6px; font-size:14px; background:transparent; }
.mcg-product-search button { flex:0 0 44px; border:0; color:var(--mcg-green); background:transparent; }
.mcg-product-search svg { width:20px; }
.mcg-catalog-toolbar { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; align-items:center; margin-bottom:22px; }
.mcg-catalog-toolbar::before,.mcg-catalog-toolbar::after { display:none; }
.mcg-catalog-toolbar .woocommerce-notices-wrapper { flex-basis:100%; }
.mcg-catalog-toolbar .woocommerce-notices-wrapper:empty { display:none; }
.mcg-commerce .woocommerce-result-count,.mcg-commerce .woocommerce-ordering { margin:0; float:none; font-size:13px; color:var(--mcg-muted); }
.mcg-commerce .orderby { padding:9px; max-width:100%; border:1px solid var(--mcg-line); border-radius:5px; background:white; color:var(--mcg-ink); }
.woocommerce .mcg-commerce ul.products { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:26px 18px; margin:0; }
.woocommerce .mcg-commerce ul.products::before,.woocommerce .mcg-commerce ul.products::after { display:none; }
.woocommerce .mcg-commerce ul.products li.product { display:flex; flex-direction:column; width:auto!important; float:none!important; clear:none!important; margin:0!important; padding:0 0 15px; border:1px solid var(--mcg-line); border-radius:8px; overflow:hidden; background:white; }
.woocommerce .mcg-commerce ul.products li.product a img { aspect-ratio:1; object-fit:contain; margin:0 0 12px; }
.woocommerce .mcg-commerce ul.products li.product .woocommerce-loop-product__title { padding:0 13px 10px; font-size:16px; line-height:1.4; font-weight:650; }
.woocommerce .mcg-commerce ul.products li.product .price { padding-inline:13px; color:var(--mcg-green); font-size:16px; font-weight:700; margin-bottom:12px; }
.woocommerce .mcg-commerce ul.products li.product .price del { font-weight:400; font-size:12px; display:block; }
.woocommerce .mcg-commerce ul.products li.product .price ins { text-decoration:none; }
.woocommerce .mcg-commerce ul.products li.product .button { margin: auto 13px 0; padding:10px; min-height:39px; font-size:12px; text-align:center; }
.woocommerce .mcg-commerce ul.products li.product .added_to_cart { font-size:12px; text-align:center; margin-top:8px; color:var(--mcg-blue); }
.woocommerce .mcg-commerce ul.products li.product .star-rating { margin-inline:13px; font-size:12px; color:#b78310; }
.mcg-product-sold { display:block; font-size:11px; color:var(--mcg-muted); padding:0 13px 8px; }
.woocommerce .mcg-commerce span.onsale { z-index:2; min-height:0; min-width:0; border-radius:4px; background:var(--mcg-green); color:white; padding:5px 9px; font-size:12px; line-height:1.4; }
.woocommerce .mcg-commerce ul.products li.product .onsale { top:10px; left:10px; right:auto; margin:0; }
.mcg-product-swatches { display:flex; gap:5px; padding:0 12px 12px; order:0; }
.mcg-product-swatches button { width:34px; height:34px; border:1px solid var(--mcg-line); border-radius:4px; background:white; padding:2px; }
.mcg-product-swatches button[aria-pressed="true"] { border-color:var(--mcg-green); }
.mcg-product-swatches img { width:100%; height:100%; object-fit:contain; }
.mcg-commerce .woocommerce-pagination { margin-top:34px; }
.woocommerce .mcg-commerce nav.woocommerce-pagination ul { border:0; display:flex; justify-content:center; gap:8px; flex-wrap:wrap; }
.woocommerce .mcg-commerce nav.woocommerce-pagination ul li { border:1px solid var(--mcg-line); border-radius:4px; }
.woocommerce .mcg-commerce nav.woocommerce-pagination ul li a,.woocommerce .mcg-commerce nav.woocommerce-pagination ul li span { padding:12px 15px; }
.woocommerce .mcg-commerce nav.woocommerce-pagination ul li span.current { background:var(--mcg-green); color:white; }
.mcg-commerce .woocommerce-breadcrumb { font-size:12px; color:var(--mcg-muted); line-height:1.8; }
.mcg-product-top { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:44px; margin-block:30px 50px; align-items:start; }
.mcg-product-gallery { position:relative; min-width:0; }
.woocommerce .mcg-commerce div.product div.images,.woocommerce .mcg-commerce div.product div.summary { width:100%; float:none; margin:0; }
.woocommerce .mcg-commerce div.product div.images img { background:#f5f7f2; object-fit:contain; }
.mcg-product-gallery .woocommerce-product-gallery__wrapper { border:1px solid var(--mcg-line); border-radius:9px; overflow:hidden; }
.mcg-product-gallery .woocommerce-product-gallery__image img { aspect-ratio:1; }
.mcg-product-gallery .flex-control-thumbs { display:flex; flex-wrap:wrap; gap:10px; margin-top:14px!important; }
.woocommerce .mcg-commerce div.product div.images .flex-control-thumbs li { width:calc(20% - 8px); border:1px solid var(--mcg-line); border-radius:5px; overflow:hidden; }
.mcg-product-gallery .flex-direction-nav { list-style:none; margin:0; padding:0; }
.mcg-product-gallery .flex-direction-nav a { position:absolute; top:42%; z-index:3; width:36px; height:36px; border-radius:50%; background:white; border:1px solid var(--mcg-line); font-size:0; display:grid; place-items:center; }
.mcg-product-gallery .flex-prev { left:12px; }.mcg-product-gallery .flex-next { right:12px; }
.mcg-product-gallery .flex-prev::after { content:"←"; font-size:20px; }.mcg-product-gallery .flex-next::after { content:"→"; font-size:20px; }
.woocommerce .mcg-commerce div.product .product_title { font-size:clamp(27px,2.6vw,37px); margin-bottom:18px; }
.woocommerce .mcg-commerce div.product p.price { font-size:24px; color:var(--mcg-green); margin-bottom:18px; font-weight:700; }
.woocommerce .mcg-commerce div.product p.price del { font-size:17px; font-weight:400; margin-right:10px; }
.woocommerce .mcg-commerce div.product p.price ins { text-decoration:none; }
.mcg-commerce .woocommerce-product-details__short-description { font-size:15px; color:var(--mcg-muted); margin-bottom:22px; }
.mcg-commerce .woocommerce-product-details__short-description p { margin-bottom:10px; }
.woocommerce .mcg-commerce div.product form.cart { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-bottom:24px; }
.woocommerce .mcg-commerce div.product form.variations_form { display:block; }
.mcg-commerce .variations { margin:4px 0 12px; }
.mcg-commerce .variations th,.mcg-commerce .variations td { display:block; padding:0 0 8px; text-align:left; }
.mcg-commerce .variations label { color:var(--mcg-green); font-size:14px; font-weight:700; }
.mcg-commerce .variations select { width:100%; min-height:46px; padding:9px 38px 9px 12px; border:1px solid #ccd8c9; border-radius:6px; background:#fff; color:var(--mcg-ink); }
.mcg-commerce .reset_variations { display:inline-block; margin-top:7px; color:var(--mcg-blue); font-size:13px; font-weight:600; }
.mcg-commerce .single_variation { min-height:42px; margin:8px 0 14px; }
.mcg-commerce .single_variation .price { display:block; font-size:22px; color:var(--mcg-green); font-weight:700; }
.mcg-commerce .woocommerce-variation-add-to-cart { display:none!important; }
.woocommerce .mcg-commerce div.product form.cart .quantity { display:flex; float:none; margin:0; border:1px solid var(--mcg-line); border-radius:5px; overflow:hidden; height:44px; }
.mcg-quantity-step { width:30px; border:0; background:#f5f7f3; color:var(--mcg-green); }
.woocommerce .mcg-commerce .quantity .qty { width:45px; border:0; border-radius:0; padding:6px 0; appearance:textfield; -moz-appearance:textfield; }
.mcg-commerce .qty::-webkit-inner-spin-button,.mcg-commerce .qty::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
.woocommerce .mcg-commerce button.button,.woocommerce .mcg-commerce a.button { background:var(--mcg-green); color:white; font-weight:650; border-radius:5px; }
.woocommerce .mcg-commerce button.button { min-height:44px; font-size:14px; padding:12px 18px; }
.woocommerce .mcg-commerce button.mcg-buy-now { background:var(--mcg-forest-950); }
.woocommerce .mcg-commerce div.product .stock { color:var(--mcg-green); }
.mcg-commerce button:disabled { opacity:.5; }
.mcg-price-note { margin-block:12px 22px; font-size:13px; color:var(--mcg-muted); }
.mcg-product-box { border:1px solid #d9e3d3; border-radius:7px; margin-block:18px; overflow:hidden; font-size:14px; }
.mcg-product-box h2 { font-size:16px; background:#edf4e7; padding:12px 16px; border-bottom:1px solid #d9e3d3; }
.mcg-product-box > div { padding:14px 16px; }
.mcg-product-box p { margin-bottom:8px; }.mcg-product-box p:last-child { margin-bottom:0; }
.mcg-product-box a { color:var(--mcg-blue); font-weight:600; }
.mcg-product-offer h2 { background:#f7f3dd; }
.mcg-commerce .product_meta { display:flex; flex-wrap:wrap; gap:8px 20px; font-size:12px; color:var(--mcg-muted); border-top:1px solid var(--mcg-line); padding-top:15px; }
.mcg-product-information { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(0,1fr); align-items:start; gap:32px; }
.mcg-product-description { border:1px solid var(--mcg-line); border-radius:8px; padding:24px; min-width:0; }
.woocommerce .mcg-commerce div.product .woocommerce-tabs ul.tabs { padding:0; display:flex; flex-wrap:wrap; gap:10px; margin-bottom:25px; }
.woocommerce .mcg-commerce div.product .woocommerce-tabs ul.tabs::before,.woocommerce .mcg-commerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce .mcg-commerce div.product .woocommerce-tabs ul.tabs li::after { display:none; }
.woocommerce .mcg-commerce div.product .woocommerce-tabs ul.tabs li { border:0; border-radius:5px; background:#eff4eb; padding:0 12px; margin:0; }
.woocommerce .mcg-commerce div.product .woocommerce-tabs ul.tabs li a { color:var(--mcg-green); font-size:14px; font-weight:650; }
.woocommerce .mcg-commerce div.product .woocommerce-tabs ul.tabs li.active { background:var(--mcg-green); }
.woocommerce .mcg-commerce div.product .woocommerce-tabs ul.tabs li.active a { color:white; }
.mcg-product-description .panel h2 { font-size:24px; margin-bottom:20px; }
.mcg-product-description .panel p { margin-bottom:16px; }
.mcg-product-description .panel h3 { margin-block:24px 12px; font-size:20px; }
.mcg-product-description .panel ul { padding-left:20px; }
.mcg-product-description .panel { overflow-wrap:anywhere; }
.mcg-product-description .panel img { height:auto; max-width:100%; }
.mcg-product-video { border:1px solid var(--mcg-line); border-radius:8px; padding:22px; }
.mcg-product-video h2 { font-size:23px; margin-bottom:20px; }
.mcg-product-video-frame { aspect-ratio:16/9; background:var(--mcg-forest-950); border-radius:6px; overflow:hidden; }
.mcg-product-video-frame iframe { width:100%; height:100%; border:0; }
.mcg-product-video-frame button { width:100%; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; background:var(--mcg-green); color:white; border:0; padding:16px; }
.mcg-product-video-frame button > span,.mcg-video-pending > span { font-size:38px; line-height:1.2; }
.mcg-product-video-frame small { font-size:11px; font-weight:400; }
.mcg-video-pending { padding:28px 20px; background:#f1f5ed; border-radius:6px; text-align:center; color:var(--mcg-green); }
.mcg-video-pending > span,.mcg-video-pending strong { display:block; margin-bottom:12px; }
.mcg-video-pending p { font-size:13px; color:var(--mcg-muted); }
.mcg-product-articles { margin-top:60px; padding-top:35px; border-top:1px solid var(--mcg-line); }
.mcg-product-section-heading h2 { text-align:center; font-size:30px; margin-bottom:30px; }
.mcg-related-articles-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; }
.mcg-related-articles-grid img { width:100%; aspect-ratio:16/10; object-fit:cover; border-radius:7px; margin-bottom:17px; }
.mcg-related-articles-grid h3 { font-size:18px; margin-bottom:12px; }.mcg-related-articles-grid p { font-size:14px; color:var(--mcg-muted); margin-bottom:14px; }.mcg-related-articles-grid .arrow-link { font-size:13px; }
.mcg-empty-related { text-align:center; background:#f3f6ef; padding:30px; border-radius:6px; }
.woocommerce-cart .wc-block-cart,.woocommerce-checkout .wc-block-checkout { font-family:var(--mcg-sans); }
.wc-block-components-button:not(.is-link) { background:var(--mcg-green); color:white; border-radius:5px; }

/* Cart and checkout: native WooCommerce transactions inside the sheet layout. */
.woocommerce-page .site-main.mcg-order-page { width:100%; max-width:none; padding:34px 0 76px; background:linear-gradient(180deg,#f6f9f3 0,#fff 360px); }
.mcg-order-page > .section-shell { width:min(calc(100% - 80px),1200px); }
.mcg-order-steps { display:flex; align-items:center; justify-content:center; gap:12px; margin:0 auto 30px; color:#66736a; font-size:13px; font-weight:600; }
.mcg-order-steps a,.mcg-order-steps > .mcg-order-step { display:flex; align-items:center; gap:8px; color:inherit; }
.mcg-order-steps a[aria-current="step"] { color:var(--mcg-green); }
.mcg-order-steps a > span,.mcg-order-steps > .mcg-order-step > span { display:grid; place-items:center; width:28px; height:28px; border:1px solid #cbd8c8; border-radius:50%; background:#fff; color:var(--mcg-green); font-size:12px; }
.mcg-order-steps a[aria-current="step"] > span { border-color:var(--mcg-green); background:var(--mcg-green); color:#fff; }
.mcg-order-step-line { width:50px; height:1px; background:#cbd8c8; }
.mcg-order-hero { position:relative; display:grid; place-items:center; min-height:185px; margin-bottom:30px; overflow:hidden; border:1px solid #dce6d8; border-radius:14px; background:#fff; text-align:center; }
.mcg-order-hero--image { min-height:290px; place-items:end start; border:0; background:var(--mcg-forest-950); text-align:left; }
.mcg-order-hero-image,.mcg-order-hero-shade { position:absolute; inset:0; width:100%; height:100%; }
.mcg-order-hero-image { object-fit:cover; object-position:center 56%; }
.mcg-order-hero-shade { background:linear-gradient(90deg,#0a3327f2 0%,#103b2bc4 42%,#103b2b26 78%); }
.mcg-order-hero-copy { position:relative; z-index:1; max-width:680px; padding:34px 46px; }
.mcg-order-hero-copy .eyebrow { margin-bottom:10px; color:var(--mcg-green); }
.mcg-order-hero-copy h1 { margin:0; color:var(--mcg-green); font-size:clamp(34px,4vw,48px); }
.mcg-order-hero-copy > p:last-child { max-width:650px; margin:14px auto 0; color:var(--mcg-muted); font-size:15px; line-height:1.7; }
.mcg-order-hero--image .mcg-order-hero-copy { padding:44px 50px; }
.mcg-order-hero--image .mcg-order-hero-copy .eyebrow { color:#d7ebca; }
.mcg-order-hero--image .mcg-order-hero-copy h1,.mcg-order-hero--image .mcg-order-hero-copy > p:last-child { color:#fff; }
.mcg-order-hero--image .mcg-order-hero-copy > p:last-child { margin-inline:0; }
.mcg-order-notice { display:flex; align-items:flex-start; gap:12px; margin:-8px 0 28px; padding:15px 18px; border-left:4px solid var(--mcg-green); border-radius:4px; background:#eaf3e5; color:#233c2d; font-size:14px; }
.mcg-order-notice svg { flex:0 0 21px; width:21px; margin-top:1px; color:var(--mcg-green); }
.mcg-order-notice p { margin:0; }
.mcg-order-content { min-width:0; }
.mcg-order-content > * { max-width:none!important; margin-inline:0!important; }
.mcg-order-content .wc-block-cart,.mcg-order-content .wc-block-checkout { margin:0; }
.mcg-order-content .wc-block-components-sidebar-layout { gap:36px; }
.mcg-order-content .wc-block-components-main { padding-right:0; }
.mcg-order-content .wc-block-components-sidebar { margin-top:0; }
.mcg-order-content .wc-block-components-sidebar > :first-child { margin-top:0; }
.mcg-order-content .wc-block-components-title,.mcg-order-content .wc-block-components-checkout-step__heading h2,.mcg-order-content .wc-block-components-order-summary__button-text { color:var(--mcg-green); font-weight:700; }
.mcg-order-content .wc-block-components-checkout-step { margin-bottom:24px; padding:25px; border:1px solid var(--mcg-line); border-radius:10px; background:#fff; }
.mcg-order-content .wc-block-components-checkout-step__heading { margin-bottom:20px; }
.mcg-order-content .wc-block-components-checkout-step__description { color:var(--mcg-muted); font-size:13px; }
.mcg-order-content .wc-block-components-text-input input,.mcg-order-content .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,.mcg-order-content .wc-block-components-textarea { min-height:48px; border-color:#ccd8c9; border-radius:6px; background:#fff; }
.mcg-order-content .wc-block-components-text-input input:focus,.mcg-order-content .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input:focus,.mcg-order-content .wc-block-components-textarea:focus { border-color:var(--mcg-green); box-shadow:0 0 0 1px var(--mcg-green); }
.mcg-order-content .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox],.mcg-order-content input[type=radio] { accent-color:var(--mcg-green); }
.mcg-order-content .wc-block-cart-items { border-spacing:0 12px; border-collapse:separate; }
.mcg-order-content .wc-block-cart-items thead { color:var(--mcg-muted); font-size:12px; text-transform:uppercase; letter-spacing:.04em; }
.mcg-order-content .wc-block-cart-items tbody tr { border:1px solid var(--mcg-line); background:#fff; }
.mcg-order-content .wc-block-cart-items tbody td { border-top:1px solid var(--mcg-line); border-bottom:1px solid var(--mcg-line); padding-block:22px; }
.mcg-order-content .wc-block-cart-items tbody td:first-child { border-left:1px solid var(--mcg-line); border-radius:9px 0 0 9px; }
.mcg-order-content .wc-block-cart-items tbody td:last-child { border-right:1px solid var(--mcg-line); border-radius:0 9px 9px 0; }
.mcg-order-content .wc-block-cart-item__image img,.mcg-order-content .wc-block-components-order-summary-item__image img { border-radius:6px; background:#f4f7f1; object-fit:contain; }
.mcg-order-content .wc-block-components-product-name { color:var(--mcg-green); font-size:15px; font-weight:700; line-height:1.45; }
.mcg-order-content .wc-block-cart-item__remove-link { color:#a33731!important; font-size:12px!important; }
.mcg-order-content .wc-block-components-quantity-selector { border-color:#ccd8c9; border-radius:5px; }
.mcg-order-content .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input { min-width:40px; }
.mcg-order-content .wc-block-components-sidebar { padding:24px; border:1px solid var(--mcg-line); border-radius:10px; background:#fff; box-shadow:0 12px 34px #173c2210; }
.mcg-order-content .wc-block-components-totals-wrapper { border-color:var(--mcg-line); }
.mcg-order-content .wc-block-components-totals-item__label,.mcg-order-content .wc-block-components-totals-item__value { color:#25342b; }
.mcg-order-content .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,.mcg-order-content .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { color:var(--mcg-green); font-size:18px; font-weight:800; }
.mcg-order-content .wc-block-components-button:not(.is-link) { min-height:50px; border-radius:5px; background:var(--mcg-green); color:#fff; font-weight:700; transition:background .2s ease,transform .2s ease; }
.mcg-order-content .wc-block-components-button:not(.is-link):hover { background:var(--mcg-forest-950); transform:translateY(-1px); }
.mcg-order-content .wc-block-components-button:not(.is-link):focus-visible { outline:3px solid #9fc78d; outline-offset:2px; }
.mcg-order-content .wc-block-components-panel__button { color:var(--mcg-green); }
.mcg-order-content .wc-block-components-radio-control-accordion-option,.mcg-order-content .wc-block-components-radio-control__option { border-color:var(--mcg-line); }
.mcg-order-content .wc-block-checkout__actions_row { align-items:center; }
.mcg-order-content .wc-block-checkout__actions_row .wc-block-components-checkout-return-to-cart-button { color:var(--mcg-blue); }
.mcg-order-content .wc-block-cart__empty-cart__title { color:var(--mcg-green); font-size:clamp(27px,3vw,36px); }
.mcg-order-content .wc-block-grid__products,.mcg-order-content .wp-block-woocommerce-product-template { gap:18px; }
.mcg-order-content .wc-block-grid__product,.mcg-order-content .wp-block-woocommerce-product-template > li { border:1px solid var(--mcg-line); border-radius:8px; overflow:hidden; background:#fff; padding-bottom:15px; }
.mcg-order-support { display:flex; align-items:center; justify-content:space-between; gap:28px; margin-top:38px; padding:24px 28px; border-radius:10px; background:var(--mcg-forest-950); color:#fff; }
.mcg-order-support > div { display:flex; align-items:flex-start; gap:17px; }
.mcg-order-support svg { flex:0 0 31px; width:31px; height:31px; color:#cce7bc; }
.mcg-order-support h2 { margin:0 0 5px; color:#fff; font-size:20px; }
.mcg-order-support p { margin:0; color:#d9e6dc; font-size:14px; }
.mcg-order-support .button { flex:0 0 auto; min-height:44px; background:var(--mcg-green); color:#fff; }

/* Classic checkout/cart remain usable if WooCommerce converts the page blocks. */
.mcg-order-content .woocommerce-cart-form table,.mcg-order-content .cart_totals,.mcg-order-content form.woocommerce-checkout .woocommerce-billing-fields,.mcg-order-content form.woocommerce-checkout .woocommerce-additional-fields,.mcg-order-content #order_review { padding:24px; border:1px solid var(--mcg-line); border-radius:10px; background:#fff; }
.mcg-order-content form.woocommerce-checkout { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr); gap:32px; }
.mcg-order-content form.woocommerce-checkout #customer_details { min-width:0; }
.mcg-order-content form.woocommerce-checkout #order_review_heading,.mcg-order-content form.woocommerce-checkout #order_review { grid-column:2; }
.mcg-order-content form.woocommerce-checkout #order_review { grid-row:1 / span 3; }
.mcg-order-content form.woocommerce-checkout input,.mcg-order-content form.woocommerce-checkout select,.mcg-order-content form.woocommerce-checkout textarea { border:1px solid #ccd8c9; border-radius:5px; }
.mcg-order-content #place_order,.mcg-order-content .checkout-button { background:var(--mcg-green); color:#fff; }
.mcg-lead-add-button { display:inline-flex!important; margin:0 0 4px; background:var(--mcg-green)!important; color:#fff!important; }
.mcg-lead-cart-layout { display:grid; grid-template-columns:minmax(0,1fr) 350px; gap:34px; align-items:start; }
.mcg-lead-cart-heading { display:grid; grid-template-columns:minmax(0,1fr) 100px 125px; gap:16px; padding:0 18px 10px; color:var(--mcg-muted); font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; }
.mcg-lead-cart-heading span:first-child { padding-left:112px; }
.mcg-lead-cart-item { display:grid; grid-template-columns:92px minmax(0,1fr) 100px 125px; align-items:center; gap:16px; margin-bottom:12px; padding:18px; border:1px solid var(--mcg-line); border-radius:9px; background:#fff; }
.mcg-lead-cart-image { display:block; overflow:hidden; border-radius:6px; background:#f2f6ef; }
.mcg-lead-cart-image img { display:block; width:100%; aspect-ratio:1; object-fit:contain; }
.mcg-lead-cart-product h2 { margin:0 0 8px; font-size:16px; line-height:1.45; }
.mcg-lead-cart-product h2 a { color:var(--mcg-green); }
.mcg-lead-cart-product p { margin:0 0 8px; color:var(--mcg-muted); font-size:13px; }
.mcg-lead-cart-product button { border:0; background:transparent; color:#a33731; font-size:12px; text-decoration:underline; }
.mcg-lead-quantity input { width:76px; min-height:43px; border:1px solid #ccd8c9; border-radius:5px; text-align:center; }
.mcg-lead-subtotal { color:var(--mcg-green); font-size:14px; text-align:right; }
.mcg-lead-update { margin-top:8px; min-height:42px; background:#eef4eb!important; color:var(--mcg-green)!important; }
.mcg-lead-cart-summary { position:sticky; top:calc(var(--mcg-header-height) + 20px); padding:25px; border:1px solid var(--mcg-line); border-radius:10px; background:#fff; box-shadow:0 12px 34px #173c2210; }
.mcg-lead-cart-summary h2 { padding-bottom:16px; border-bottom:1px solid var(--mcg-line); font-size:21px; }
.mcg-lead-cart-summary > div { display:flex; justify-content:space-between; gap:16px; padding:20px 0; }
.mcg-lead-cart-summary > div strong { color:var(--mcg-green); text-align:right; }
.mcg-lead-cart-summary > p { margin-bottom:20px; color:var(--mcg-muted); font-size:13px; line-height:1.65; }
.mcg-lead-cart-summary .button { width:100%; min-height:50px; text-align:center; }
.mcg-lead-empty,.mcg-lead-success { padding:62px 28px; border:1px solid var(--mcg-line); border-radius:10px; background:#fff; text-align:center; }
.mcg-lead-empty > span,.mcg-lead-success > span { display:grid; place-items:center; width:62px; height:62px; margin:0 auto 20px; border-radius:50%; background:#eaf3e5; color:var(--mcg-green); }
.mcg-lead-empty svg,.mcg-lead-success svg { width:30px; height:30px; }
.mcg-lead-empty h2,.mcg-lead-success h2 { margin-bottom:10px; font-size:28px; }
.mcg-lead-empty p,.mcg-lead-success p { max-width:620px; margin:0 auto 24px; color:var(--mcg-muted); }
.mcg-lead-checkout { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr); gap:34px; align-items:start; }
.mcg-lead-fields,.mcg-lead-order-summary { padding:26px; border:1px solid var(--mcg-line); border-radius:10px; background:#fff; }
.mcg-lead-fields > h2,.mcg-lead-order-summary > h2 { margin-bottom:23px; font-size:23px; }
.mcg-lead-field-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.mcg-lead-field-grid label { display:flex; flex-direction:column; gap:7px; color:#28372e; font-size:13px; font-weight:650; }
.mcg-lead-label > span { color:#a33731; }
.mcg-lead-field-grid input,.mcg-lead-field-grid textarea { width:100%; min-height:47px; border:1px solid #ccd8c9; border-radius:6px; background:#fff; color:var(--mcg-ink); padding:11px 13px; font:inherit; font-weight:400; }
.mcg-lead-field-grid textarea { min-height:120px; resize:vertical; }
.mcg-lead-field-grid input:focus,.mcg-lead-field-grid textarea:focus { border-color:var(--mcg-green); outline:2px solid #b9d8aa; outline-offset:1px; }
.mcg-lead-field-wide { grid-column:1/-1; }
.mcg-lead-consent { display:flex; align-items:flex-start; gap:10px; margin-top:20px; color:var(--mcg-muted); font-size:13px; line-height:1.55; }
.mcg-lead-consent input { margin-top:3px; accent-color:var(--mcg-green); }
.mcg-lead-consent a { color:var(--mcg-blue); text-decoration:underline; }
.mcg-lead-order-summary { position:sticky; top:calc(var(--mcg-header-height) + 20px); }
.mcg-lead-order-list article { display:grid; grid-template-columns:70px 1fr; gap:13px; align-items:center; padding:14px 0; border-bottom:1px solid var(--mcg-line); }
.mcg-lead-order-list img { width:70px; aspect-ratio:1; object-fit:contain; border-radius:5px; background:#f2f6ef; }
.mcg-lead-order-list h3 { margin:0 0 5px; font-size:14px; line-height:1.45; }
.mcg-lead-order-list p { color:var(--mcg-muted); font-size:12px; }
.mcg-lead-no-payment { margin:20px 0; padding:15px 16px; border-left:4px solid var(--mcg-green); background:#edf5e9; }
.mcg-lead-no-payment strong { color:var(--mcg-green); }
.mcg-lead-no-payment p { margin:5px 0 0; color:var(--mcg-muted); font-size:13px; line-height:1.55; }
.mcg-lead-order-summary > .button { width:100%; min-height:50px; text-align:center; }
.mcg-lead-order-summary > a:last-child { display:block; margin-top:16px; color:var(--mcg-blue); font-size:13px; text-align:center; }
.mcg-lead-error { margin-bottom:22px; padding:14px 17px; border-left:4px solid #a33731; border-radius:4px; background:#fbecea; color:#7d211d; }
.mcg-lead-honeypot { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
@media (prefers-reduced-motion:no-preference) { .mcg-shop-banner:not([hidden]) { animation:mcg-shop-fade .5s ease both; } @keyframes mcg-shop-fade { from { opacity:.3; } to { opacity:1; } } }
@media (max-width:1050px) { .mcg-lead-cart-layout,.mcg-lead-checkout { grid-template-columns:1fr; } .mcg-lead-cart-summary,.mcg-lead-order-summary { position:static; } .mcg-catalog-layout { grid-template-columns:205px minmax(0,1fr); gap:22px; } .woocommerce .mcg-commerce ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); } .mcg-product-top { gap:28px; } }
@media (max-width:780px) { .woocommerce-page .site-main.mcg-commerce { width:calc(100% - 36px); padding-top:22px; } .woocommerce-page .site-main.mcg-order-page { width:100%; padding-top:24px; } .mcg-order-page > .section-shell { width:calc(100% - 36px); } .mcg-order-steps { gap:8px; margin-bottom:22px; } .mcg-order-step-line { width:25px; } .mcg-order-steps a,.mcg-order-steps > .mcg-order-step { gap:5px; font-size:11px; } .mcg-order-hero { min-height:170px; margin-bottom:24px; } .mcg-order-hero--image { min-height:260px; } .mcg-order-hero-copy,.mcg-order-hero--image .mcg-order-hero-copy { padding:32px 28px; } .mcg-order-content .wc-block-components-sidebar-layout { display:block; } .mcg-order-content .wc-block-components-sidebar { margin-top:28px; width:100%; } .mcg-order-content form.woocommerce-checkout { grid-template-columns:1fr; } .mcg-order-content form.woocommerce-checkout #order_review_heading,.mcg-order-content form.woocommerce-checkout #order_review { grid-column:1; grid-row:auto; } .mcg-lead-cart-layout,.mcg-lead-checkout { grid-template-columns:1fr; } .mcg-lead-cart-summary,.mcg-lead-order-summary { position:static; } .mcg-order-support { align-items:flex-start; flex-direction:column; } .mcg-catalog-layout { grid-template-columns:1fr; gap:24px; } .mcg-shop-sidebar { padding:14px 18px; } .mcg-shop-sidebar form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 16px; } .mcg-filter-actions { grid-column:1/-1; } .mcg-product-top,.mcg-product-information { grid-template-columns:1fr; } .mcg-product-top { gap:32px; } .mcg-related-articles-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .mcg-shop-banner-copy { padding:30px; max-width:85%; } .mcg-category-circle { width:105px; height:105px; } .mcg-shop-category-rail > a { flex:0 0 125px; } .mcg-shop-category-rail { gap:16px; } }
@media (max-width:480px) { .mcg-shop-banner { min-height:310px; } .mcg-shop-banner-copy { max-width:100%; padding:28px 23px 58px; } .mcg-shop-banner::after { background:#103623c9; } .mcg-shop-banner-copy h2 { font-size:30px; }.mcg-shop-banner-copy p { font-size:14px; } .woocommerce .mcg-commerce ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 12px; } .woocommerce .mcg-commerce ul.products li.product .woocommerce-loop-product__title { font-size:14px; padding-inline:10px; } .woocommerce .mcg-commerce ul.products li.product .price { font-size:14px; padding-inline:10px; } .mcg-shop-sidebar form { grid-template-columns:1fr; } .mcg-category-option { margin-block:7px; } .mcg-catalog-heading h1 { font-size:28px; } .mcg-catalog-toolbar { align-items:flex-start; } .mcg-product-description,.mcg-product-video { padding:18px; } .mcg-related-articles-grid { gap:20px 14px; } .mcg-related-articles-grid h3 { font-size:16px; } .mcg-product-section-heading h2 { font-size:26px; } }
@media (max-width:540px) { .mcg-order-steps { justify-content:flex-start; overflow-x:auto; padding-bottom:4px; } .mcg-order-step-line { width:18px; flex:0 0 18px; } .mcg-order-steps a,.mcg-order-steps > .mcg-order-step { flex:0 0 auto; } .mcg-order-hero-copy,.mcg-order-hero--image .mcg-order-hero-copy { padding:28px 22px; } .mcg-order-hero-copy h1 { font-size:32px; } .mcg-order-hero-copy > p:last-child { font-size:14px; } .mcg-order-hero--image { min-height:280px; align-items:end; } .mcg-order-hero-shade { background:linear-gradient(0deg,#0a3327ef 0%,#103b2ba8 68%,#103b2b31 100%); } .mcg-order-content .wc-block-components-checkout-step,.mcg-order-content .wc-block-components-sidebar { padding:18px 15px; } .mcg-order-content .wc-block-cart-items tbody td { padding-block:16px; } .mcg-lead-cart-heading { display:none; } .mcg-lead-cart-item { grid-template-columns:72px minmax(0,1fr) 78px; gap:12px; padding:14px; } .mcg-lead-cart-product { grid-column:2/-1; } .mcg-lead-quantity { grid-column:2; } .mcg-lead-subtotal { grid-column:3; } .mcg-lead-field-grid { grid-template-columns:1fr; } .mcg-lead-field-wide { grid-column:auto; } .mcg-lead-fields,.mcg-lead-order-summary { padding:20px 16px; } .mcg-order-support { padding:22px 20px; } .mcg-order-support .button { width:100%; text-align:center; } }
