/*
Theme Name: MillerCart
Theme URI: https://millercart.com
Author: MillerCart
Description: Ultra-premium, minimalist, all-white WooCommerce theme for MillerCart. Real WooCommerce products, Customizer-editable homepage, Elementor Free compatible.
Version: 1.0.0
Requires at least: 6.3
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: millercart
Tags: e-commerce, white, minimal, custom-logo, custom-menu, featured-images, translation-ready
*/
:root{--ink:#0a0a0a;--g1:#6b6b6b;--g2:#e8e8e8;--g3:#f6f6f6;--max:1320px;--pad:5vw;color-scheme:light}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:#fff;color:var(--ink);font-family:"Helvetica Neue",Helvetica,Inter,Arial,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}a{color:inherit}
h1,h2,h3,h4{font-weight:300;letter-spacing:-.01em;line-height:1.1;margin:0 0 .5em}
h1{font-size:clamp(40px,6.4vw,92px);letter-spacing:-.02em}h2{font-size:clamp(28px,4vw,54px)}
.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:#fff;padding:10px;z-index:100}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.eyebrow{font-size:11px;letter-spacing:.3em;color:var(--g1);margin:0 0 22px;text-transform:uppercase}
/* header */
.mc-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--g2);padding-top:env(safe-area-inset-top,0)}
.admin-bar .mc-header{top:32px}
.mc-header .in{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;max-width:var(--max);margin:0 auto;padding:18px var(--pad)}
.mc-logo{font-weight:600;letter-spacing:.32em;font-size:15px;text-decoration:none;text-transform:uppercase}.mc-logo img{max-height:34px;width:auto}
.mc-nav ul{display:flex;gap:34px;list-style:none;margin:0;padding:0}
.mc-nav a,.mc-foot a{font-size:12px;letter-spacing:.18em;text-decoration:none;opacity:.7;transition:.3s;text-transform:uppercase}.mc-nav a:hover,.mc-foot a:hover,.mc-nav .current-menu-item a{opacity:1}
.mc-icons{display:flex;gap:18px;justify-content:flex-end;align-items:center}
.mc-icons a,.mc-icons button{background:none;border:0;padding:0;cursor:pointer;color:inherit;position:relative;display:grid}
.mc-icons svg{width:20px;height:20px;stroke:var(--ink);fill:none;stroke-width:1.4}
.mc-count{position:absolute;top:-8px;right:-9px;background:var(--ink);color:#fff;border-radius:50%;min-width:16px;height:16px;font-size:10px;display:grid;place-items:center}
.mc-burger{display:none!important}
.mc-search{position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--g2);padding:22px var(--pad);display:none}.mc-search.open{display:block}
.mc-search form{display:flex;max-width:640px;margin:auto;border-bottom:1px solid var(--ink)}
.mc-search input[type=search]{flex:1;border:0;font:inherit;padding:12px 4px;outline:0;background:none}.mc-search button{background:none;border:0;letter-spacing:.2em;font-size:12px;cursor:pointer}
/* buttons */
.btn,.woocommerce a.button,.woocommerce button.button,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce #respond input#submit,.woocommerce input.button,.wc-block-components-button:not(.is-link),.wp-block-button__link{display:inline-block;background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:0;padding:15px 30px;font-size:11px;font-weight:400;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;transition:.35s;cursor:pointer;line-height:1.4}
.btn:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce input.button:hover,.wc-block-components-button:not(.is-link):hover{background:#fff;color:var(--ink);border-color:var(--ink)}
.btn.o{background:#fff;color:var(--ink)}.btn.o:hover{background:var(--ink);color:#fff}.btn.s{padding:12px 20px}
/* hero */
.hero{min-height:86vh;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:4vw;max-width:var(--max);margin:0 auto;padding:6vh var(--pad)}
.hero h1 b{font-weight:600;display:block}.hero .sub{margin:28px 0 38px;color:var(--g1);max-width:430px;line-height:1.7}
.stage{perspective:1200px;display:grid;place-items:center;min-height:460px}.tilt{transform-style:preserve-3d;transition:transform .15s}.tilt img{max-height:560px;width:auto;filter:drop-shadow(0 40px 40px rgba(0,0,0,.12))}
.js .rise{opacity:0;transform:translateY(30px);transition:opacity 1s cubic-bezier(.2,.7,.2,1),transform 1s cubic-bezier(.2,.7,.2,1)}.js .rise.on{opacity:1;transform:none}
section.sec{padding:11vh 0}.sec.g{background:var(--g3)}
/* product cards */
.grid,.woocommerce ul.products{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:28px;margin:48px 0;padding:0;list-style:none}
.woocommerce ul.products::before,.woocommerce ul.products::after{content:none}
.card,.woocommerce ul.products li.product{float:none;width:auto;margin:0;background:var(--g3);padding:30px;transition:.5s;position:relative;display:flex;flex-direction:column;text-align:left}
.card:hover,.woocommerce ul.products li.product:hover{box-shadow:0 30px 60px -30px rgba(0,0,0,.25);transform:translateY(-6px)}
.card .art,.woocommerce ul.products li.product a img{aspect-ratio:1/1;width:100%;object-fit:contain;margin:0 0 20px;transition:transform .5s}
.card:hover .art,.woocommerce ul.products li.product:hover a img{transform:scale(1.05) rotateY(-8deg)}
.card .art{display:grid;place-items:center}.card .art img{max-height:100%;object-fit:contain}
.card h3,.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:18px;font-weight:500;padding:0;margin:0 0 8px}
.card .price,.woocommerce ul.products li.product .price,.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--g1);font-size:15px}
.card .row{margin-top:auto;display:flex;gap:10px;flex-wrap:wrap;padding-top:16px}
.woocommerce ul.products li.product .button{margin-top:14px;align-self:flex-start}.card .button{padding:12px 20px}
.woocommerce span.onsale{background:var(--ink);border-radius:0;min-height:0;min-width:0;line-height:1;padding:8px 12px;font-size:10px;letter-spacing:.2em}
/* showcases */
.show{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center}.show .media{display:grid;place-items:center;min-height:420px;background:#fff}.sec.g .media{background:#fff}.show .media img{max-height:560px;width:auto}
.show ul{list-style:none;margin:26px 0;padding:0}.show li{padding:14px 0;border-top:1px solid var(--g2);font-size:14px;color:var(--g1)}
.specs{display:flex;gap:34px;margin:28px 0;font-size:20px;letter-spacing:.14em;font-weight:300;flex-wrap:wrap}.show p.t{color:var(--g1);max-width:460px}
.why{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:40px;margin-top:50px}.why div{border-top:1px solid var(--ink);padding-top:22px}.why h4{font-weight:500;letter-spacing:.12em;font-size:13px;margin-bottom:12px}.why p{color:var(--g1);font-size:14px;margin:0}
.news{text-align:center}.news form{display:flex;max-width:480px;margin:34px auto 0;border-bottom:1px solid var(--ink)}.news input[type=email]{flex:1;border:0;background:none;padding:14px 4px;font:inherit;outline:0}.news button{background:none;border:0;letter-spacing:.2em;font-size:12px;cursor:pointer}.news .ok{color:var(--g1);margin-top:14px;font-size:13px}
/* pages */
.page-in{max-width:1000px;margin:0 auto;padding:8vh var(--pad)}.page-in.wide,.shop-in{max-width:var(--max)}.shop-in{margin:0 auto;padding:6vh var(--pad) 10vh}
.page-in h1,.shop-in h1.page-title,.woocommerce-products-header__title{font-size:clamp(32px,4.4vw,60px);font-weight:300}
.page-in .entry>*{max-width:760px}.page-in.wide .entry>*,.page-in .entry .woocommerce,.page-in .entry .alignwide{max-width:none}
.woocommerce-breadcrumb{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--g1);margin-bottom:26px}
.woocommerce-result-count{font-size:12px;color:var(--g1)}.woocommerce-ordering select,.woocommerce input.input-text,.woocommerce select,.woocommerce textarea,.woocommerce form .form-row input.input-text{border:1px solid var(--g2);border-radius:0;padding:13px;font:inherit;background:#fff}
.woocommerce-ordering select:focus,.woocommerce input.input-text:focus{border-color:var(--ink);outline:0}
/* single product */
.single-product div.product{display:grid;grid-template-columns:1.1fr 1fr;gap:5vw;align-items:start}
.single-product div.product .woocommerce-product-gallery,.single-product div.product div.summary{float:none!important;width:100%!important;margin:0}
.single-product div.product .woocommerce-product-gallery{background:var(--g3);padding:20px}
.single-product div.product .woocommerce-tabs,.single-product div.product .related,.single-product div.product .upsells{grid-column:1/-1}
.single-product .product_title{font-size:clamp(28px,3.6vw,48px);font-weight:300}.single-product .woocommerce-product-details__short-description{color:var(--g1)}
.woocommerce div.product form.cart{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:24px 0}.woocommerce div.product form.cart.variations_form{display:block}
.woocommerce div.product form.cart .variations select{min-width:220px}.woocommerce div.product form.cart .variations th,.woocommerce div.product form.cart .variations td{display:block;padding:0 0 8px;text-align:left}
.woocommerce div.product form.cart .variations label{font-size:11px;letter-spacing:.2em;text-transform:uppercase}
.woocommerce .quantity .qty{width:70px;padding:13px 6px;text-align:center;border:1px solid var(--g2)}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin:0 0 24px;border-bottom:1px solid var(--g2)}.woocommerce div.product .woocommerce-tabs ul.tabs::before{border:0}.woocommerce div.product .woocommerce-tabs ul.tabs li{background:none;border:0;border-radius:0;margin:0 22px 0 0;padding:0}.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:400;padding:12px 0}.woocommerce div.product .woocommerce-tabs ul.tabs li.active{border-bottom:1px solid var(--ink)}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-top-color:var(--ink);background:var(--g3)}.woocommerce-message::before,.woocommerce-info::before{color:var(--ink)}
.woocommerce table.shop_table{border-radius:0;border-color:var(--g2)}.woocommerce-cart table.cart img{width:70px}
.woocommerce-checkout #payment{background:var(--g3);border-radius:0}.woocommerce-checkout #payment div.payment_box{background:#fff}
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;padding:0}.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:12px 0;border-bottom:1px solid var(--g2);text-decoration:none;font-size:13px;letter-spacing:.12em;text-transform:uppercase}
/* mini cart drawer */
.mc-ov{position:fixed;inset:0;background:rgba(255,255,255,.55);backdrop-filter:blur(3px);z-index:90;opacity:0;pointer-events:none;transition:.4s}.mc-ov.on{opacity:1;pointer-events:auto}
.mc-drawer{position:fixed;top:0;right:0;bottom:0;width:min(430px,100%);background:#fff;z-index:100;transform:translateX(102%);transition:transform .5s cubic-bezier(.2,.7,.2,1);box-shadow:-30px 0 60px -30px rgba(0,0,0,.2);padding:28px;display:flex;flex-direction:column;overflow:auto}.mc-drawer.on{transform:none}
.mc-drawer h5{font-weight:500;letter-spacing:.2em;font-size:13px;display:flex;justify-content:space-between;margin:0 0 20px;text-transform:uppercase}.mc-drawer h5 button{background:none;border:0;cursor:pointer;font-size:16px}
.woocommerce-mini-cart{list-style:none;margin:0;padding:0}.woocommerce-mini-cart li{position:relative;padding:16px 28px 16px 0;border-bottom:1px solid var(--g2);font-size:14px;overflow:hidden}
.woocommerce-mini-cart li img{float:left;width:60px;margin:0 14px 0 0}.woocommerce-mini-cart li a:not(.remove){text-decoration:none;font-weight:500}.woocommerce-mini-cart a.remove{position:absolute;right:0;top:16px;text-decoration:none;color:var(--g1)!important}
.woocommerce-mini-cart__total{display:flex;justify-content:space-between;margin:20px 0;font-size:14px;letter-spacing:.1em;text-transform:uppercase}.woocommerce-mini-cart__buttons{display:grid;gap:10px}.woocommerce-mini-cart__buttons a{text-align:center}.woocommerce-mini-cart__empty-message{color:var(--g1)}
/* 360 viewer */
.mc360{background:var(--g3);display:grid;place-items:center;min-height:420px;cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none;padding:20px}.mc360 img{max-height:480px;width:auto;pointer-events:none}.mc360-hint{text-align:center;font-size:11px;letter-spacing:.2em;color:var(--g1);margin-top:10px;text-transform:uppercase}
/* footer */
.mc-foot{padding:70px var(--pad) calc(40px + env(safe-area-inset-bottom,0));border-top:1px solid var(--g2);display:grid;gap:26px;text-align:center}.mc-foot ul{display:flex;gap:26px;justify-content:center;flex-wrap:wrap;list-style:none;margin:0;padding:0}.mc-foot small{color:var(--g1);font-size:11px;letter-spacing:.06em}.mc-foot .ct{font-size:13px;color:var(--g1)}
@media(max-width:860px){
.mc-header .in{grid-template-columns:1fr auto}.mc-burger{display:grid!important}.mc-nav{position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--g2);display:none;padding:10px var(--pad) 24px}.mc-nav.open{display:block}.mc-nav ul{flex-direction:column;gap:0}.mc-nav a{display:block;padding:16px 0;border-bottom:1px solid var(--g2);opacity:1}
.hero,.show,.single-product div.product{grid-template-columns:1fr}.stage{min-height:340px}.hero{padding-top:3vh}.admin-bar .mc-header{top:46px}.grid,.woocommerce ul.products{grid-template-columns:1fr}.show .media{min-height:300px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}.js .rise{opacity:1;transform:none}}
/* Rich editorial refinements (match the approved demo) */
:root{--serif:"Cormorant Garamond",Didot,"Times New Roman",serif;--sans:Inter,"Helvetica Neue",Arial,sans-serif}
body{font-family:var(--sans);font-weight:300}
h1,h2,h3,.mc-logo,.card h3,.woocommerce ul.products li.product .woocommerce-loop-product__title,.single-product .product_title,.page-in h1,.woocommerce-products-header__title{font-family:var(--serif);font-weight:300}
.mc-logo{font-weight:500;letter-spacing:.42em;font-size:19px}
.hero h1{font-size:clamp(52px,8.4vw,132px);line-height:.98}.hero h1 b{font-weight:500;font-style:italic}
.card h3,.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:28px;font-weight:400}
.eyebrow{display:flex;align-items:center;gap:14px;letter-spacing:.34em}.eyebrow::before{content:"";width:34px;height:1px;background:var(--ink)}
.mc-nav a{color:var(--g1);opacity:1}.mc-nav a:hover,.mc-nav .current-menu-item a{color:var(--ink)}
.btn,.woocommerce a.button,.woocommerce button.button{letter-spacing:.3em}
.hero .stage::before{content:"";position:absolute;width:480px;max-width:90%;aspect-ratio:1;border-radius:50%;background:radial-gradient(#f1f1f4,#fff 70%)}.stage{position:relative}
.show .media,.card .art{background:transparent}
