/* EP Integrations review store. Example only. */
:root {
  --ink: #1c211e;
  --ink-soft: #3c463f;
  --paper: #f3efe6;
  --paper-2: #e8e2d4;
  --white: #fbf8f2;
  --line: #d4cec0;
  --ember: #b55224;
  --steel: #4a5550;
  --ok: #2f5d3a;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
html, body { background: var(--paper); color: var(--ink); font-family: "DM Sans", system-ui, sans-serif; }
body { line-height: 1.55; min-height: 100vh; }
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button, input { font-family: inherit; }
.review-bar { background: var(--ink); color: var(--paper); padding: 12px 20px; font-size: 13px; display: flex; gap: 16px; flex-wrap: wrap; justify-content: space-between; }
.review-bar strong { color: #f0c9a8; }
.nav { display: flex; align-items: center; justify-content: space-between; padding: 18px 28px; border-bottom: 1px solid var(--line); background: var(--white); position: sticky; top: 0; z-index: 20; }
.logo { font-family: "Source Serif 4", Georgia, serif; font-size: 22px; letter-spacing: -0.02em; }
.logo small { display: block; font-family: "DM Sans", sans-serif; font-size: 10px; letter-spacing: .16em; text-transform: uppercase; color: var(--steel); margin-top: 2px; }
.menu { display: flex; gap: 22px; font-size: 14px; color: var(--ink-soft); }
.menu a.active, .menu a:hover { color: var(--ink); border-bottom: 1px solid var(--ember); }
.nav-right { display: flex; gap: 16px; align-items: center; font-size: 14px; }
.cart-dot { background: var(--ember); color: #fff; border-radius: 99px; padding: 2px 7px; font-size: 11px; }
.hero { display: grid; grid-template-columns: 1.15fr .85fr; min-height: 72vh; }
.hero-copy { padding: 72px 56px; display: flex; flex-direction: column; justify-content: center; }
.eyebrow { font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--ember); font-weight: 600; margin-bottom: 16px; }
h1 { font-family: "Source Serif 4", Georgia, serif; font-size: clamp(34px, 5vw, 56px); line-height: 1.08; font-weight: 550; letter-spacing: -0.03em; }
h2 { font-family: "Source Serif 4", Georgia, serif; font-size: 32px; font-weight: 550; letter-spacing: -0.02em; }
.lede { margin: 22px 0 32px; font-size: 18px; color: var(--ink-soft); max-width: 34em; }
.btns { display: flex; gap: 12px; flex-wrap: wrap; }
.btn { border: 0; background: var(--ink); color: var(--paper); padding: 13px 20px; font-size: 14px; font-weight: 600; cursor: pointer; display: inline-block; }
.btn.ghost { background: transparent; color: var(--ink); border: 1px solid var(--ink); }
.btn.ember { background: var(--ember); }
.btn.full { width: 100%; text-align: center; }
.fine { margin-top: 18px; font-size: 13px; color: var(--steel); }
.hero-photo { overflow: hidden; background: #cfc6b6; }
.hero-photo img { width: 100%; height: 100%; object-fit: cover; min-height: 420px; }
section { padding: 64px 56px; }
.sec-h { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 28px; gap: 16px; }
.linkish { font-size: 14px; border-bottom: 1px solid var(--ember); }
.cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.card { background: var(--white); border: 1px solid var(--line); padding: 22px; }
.card h3 { font-size: 18px; margin: 8px 0; }
.card p, .muted { color: var(--ink-soft); }
.num { font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--ember); }
.grid4, .grid3 { display: grid; gap: 16px; }
.grid4 { grid-template-columns: repeat(4, 1fr); }
.grid3 { grid-template-columns: repeat(3, 1fr); }
.prod { background: var(--white); border: 1px solid var(--line); }
.prod .ph { height: 190px; overflow: hidden; background: #efe8da; }
.prod .ph img { width: 100%; height: 100%; object-fit: cover; }
.prod .meta { padding: 14px 14px 16px; }
.prod h3 { font-size: 15px; font-weight: 600; margin-bottom: 4px; }
.prod .pr { font-size: 14px; color: var(--steel); }
.band { background: var(--ink); color: var(--paper); }
.band .quote { font-family: "Source Serif 4", Georgia, serif; font-size: 28px; max-width: 18em; line-height: 1.25; }
.band .who { margin-top: 16px; font-size: 13px; opacity: .7; }
.split { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center; }
footer { border-top: 1px solid var(--line); padding: 40px 56px 56px; display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 24px; font-size: 14px; background: var(--white); }
footer h4 { font-size: 12px; letter-spacing: .14em; text-transform: uppercase; margin-bottom: 10px; color: var(--steel); }
footer a { display: block; padding: 3px 0; color: var(--ink-soft); }
.crumbs { font-size: 13px; color: var(--steel); padding: 18px 56px 0; }
.crumbs a { border-bottom: 1px solid var(--line); }
.pdp { display: grid; grid-template-columns: 1.1fr .9fr; gap: 40px; padding: 36px 56px 24px; }
.gallery { background: #efe8da; border: 1px solid var(--line); }
.gallery img { width: 100%; height: 460px; object-fit: cover; }
.sku { font-size: 12px; letter-spacing: .08em; color: var(--steel); margin: 8px 0 10px; }
.price { font-size: 28px; font-weight: 600; margin: 8px 0 6px; }
.ship { font-size: 14px; color: var(--ok); margin-bottom: 18px; }
.qtyrow { display: flex; gap: 10px; margin: 16px 0 10px; }
input[type="number"] { width: 72px; padding: 12px; border: 1px solid var(--line); background: var(--white); }
.policy { margin-top: 22px; padding: 14px 16px; background: var(--paper-2); font-size: 13px; color: var(--ink-soft); }
.body { padding: 10px 56px 64px; display: grid; grid-template-columns: 1.3fr .7fr; gap: 48px; }
.body h2 { font-size: 24px; margin: 28px 0 12px; }
.body p { margin-bottom: 12px; color: var(--ink-soft); }
table { width: 100%; border-collapse: collapse; font-size: 14px; }
td { padding: 8px 0; border-bottom: 1px solid var(--line); vertical-align: top; }
td:first-child { color: var(--steel); width: 46%; }
.video { position: relative; padding-top: 56.25%; background: #111; margin: 18px 0; }
.video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.cart-table { width: 100%; border-collapse: collapse; background: var(--white); }
.cart-table th, .cart-table td { text-align: left; padding: 14px; border-bottom: 1px solid var(--line); }
.notice { background: #fff7ea; border: 1px solid #e4d3b0; padding: 14px 16px; margin-bottom: 18px; font-size: 14px; }
.post { max-width: 740px; }
.post p { margin: 12px 0; color: var(--ink-soft); }
@media (max-width: 900px) {
  .hero, .pdp, .body, .split, footer, .cards, .grid4, .grid3 { grid-template-columns: 1fr; }
  section, .hero-copy, .pdp, .body, .crumbs, footer { padding-left: 20px; padding-right: 20px; }
  .menu { display: none; }
}

.menu{display:flex;gap:4px;align-items:center;flex-wrap:wrap}
.drop{position:relative}
.drop>button{background:none;border:0;font-size:14px;color:var(--ink-soft);cursor:pointer;padding:8px 6px}
.drop.open>button,.drop>button:hover{color:var(--ink);border-bottom:1px solid var(--ember)}
.panel{display:none;position:absolute;top:100%;left:0;background:var(--white);border:1px solid var(--line);min-width:260px;padding:8px;z-index:30}
.drop.open .panel{display:block}
.panel a{display:block;padding:8px;font-size:14px;color:var(--ink-soft)}
.panel .label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ember);padding:8px 8px 4px}
.cats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.cat{background:var(--white);border:1px solid var(--line);padding:18px;min-height:92px}
.cat strong{display:block;font-size:16px;margin-bottom:4px}
.cat span{color:var(--steel);font-size:13px}
.menu-btn{display:none;border:1px solid var(--ink);background:var(--white);padding:8px 12px;font-size:14px;font-weight:600;cursor:pointer}
@media(max-width:900px){
  .menu{display:none !important}
  .nav{flex-wrap:wrap}
  .menu-btn{display:inline-block}
  .nav.mobile-open .menu{display:block !important;flex:1 0 100%;width:100%}
  .nav.mobile-open .drop{display:block;width:100%}
  .nav.mobile-open .panel{display:block;position:static;border:0;box-shadow:none}
  .hero,.pdp,.body,.cards,.grid3,.grid4,.cats,footer{display:block}
  .hero-copy,section,.pdp,.body,footer{padding-left:16px;padding-right:16px}
  h1{font-size:32px}
}

.panel.wide{min-width:280px;max-height:70vh;overflow:auto}

.panel a.sub{padding-left:22px;font-size:13px;color:var(--steel)}

.ep-hidden-select{position:absolute;opacity:0;pointer-events:none;height:0}
.ep-choices{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.ep-choice{border:1px solid var(--line);background:var(--white);color:var(--ink);padding:8px 14px;border-radius:4px;cursor:pointer}
.ep-choice.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}

.tier-list{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 28px}
.tier{border:1px solid var(--line);background:var(--white);padding:12px 18px;border-radius:4px}
.tier:hover{border-color:var(--ink)}

.subdrop{position:relative}
.subdrop>button{background:none;border:0;color:inherit;font:inherit;cursor:pointer;padding:6px 0;display:block;width:100
.subdrop{position:relative}
.subdrop>button{background:none;border:0;color:inherit;font:inherit;cursor:pointer;padding:6px 0;display:block;width:100%;text-align:left}
.subdrop>.panel{display:none;padding-left:12px}
.subdrop.open>.panel{display:block}

.brass-search{display:flex;gap:8px;margin:0 0 24px;max-width:520px}
.brass-search input{flex:1;border:1px solid var(--line);background:var(--white);padding:10px 12px}
.brass-search button{border:0;background:var(--ink);color:var(--paper);padding:10px 16px;cursor:pointer}

.woocommerce div.product{display:grid;grid-template-columns:minmax(0,560px) minmax(0,1fr);gap:28px;align-items:start}
.woocommerce-product-gallery{display:flex;flex-direction:row;align-items:flex-end;gap:10px}
.woocommerce-product-gallery__wrapper{flex:1 1 auto;min-width:0}
.woocommerce-product-gallery__image img,.woocommerce-product-gallery .wp-post-image{max-height:420px;width:auto;max-width:100%;object-fit:contain;background:#fff;margin:0 auto}
.flex-control-thumbs{display:flex;flex-direction:column;gap:8px;width:76px;margin:0;padding:0;list-style:none}
.flex-control-thumbs li{width:76px;float:none}
.flex-control-thumbs img{width:76px;height:76px;object-fit:contain;background:#fff;border:1px solid var(--line)}
.product .summary,.woocommerce div.product .summary{padding-top:0}
@media(max-width:900px){
  .woocommerce div.product{display:block}
  .woocommerce-product-gallery{display:block}
  .flex-control-thumbs{flex-direction:row;width:auto;margin-top:8px}
}

body .woocommerce div.product div.images,
body .woocommerce-product-gallery{display:flex !important;flex-direction:row !important;align-items:flex-end !important;gap:10px !important;float:none !important;width:auto !important;max-width:560px}
body .woocommerce-product-gallery__wrapper,
body .woocommerce-product-gallery__image{max-height:380px !important}
body .woocommerce-product-gallery img.wp-post-image,
body .woocommerce-product-gallery__image img{max-height:380px !important;width:auto !important;max-width:460px !important;object-fit:contain !important;background:#fff}
body .flex-control-thumbs{display:flex !important;flex-direction:column !important;gap:8px !important;width:72px !important;margin:0 0 0 8px !important;padding:0 !important}
body .flex-control-thumbs li{width:72px !important;float:none !important}
body .flex-control-thumbs img{width:72px !important;height:72px !important;object-fit:contain !important;background:#fff}

.ep-photo-row{display:flex;flex-direction:row;align-items:flex-end;gap:10px;max-width:640px}
.ep-photo-row .woocommerce-product-gallery__image{flex:1 1 auto;min-width:0}
.ep-photo-row .woocommerce-product-gallery__image img{max-height:420px;width:auto;max-width:100%;object-fit:contain;background:#fff}
.ep-photo-row .flex-control-thumbs{display:flex;flex-direction:column;gap:8px;width:78px;margin:0;padding:0;list-style:none}
.ep-photo-row .flex-control-thumbs li{width:78px;float:none}
.ep-photo-row .flex-control-thumbs img{width:78px;height:78px;object-fit:contain;background:#fff;border:1px solid #d4cec0;cursor:pointer}

.ep-photo-row{display:flex !important;flex-direction:row !important;align-items:flex-end !important;gap:12px !important;width:100%}
.ep-photo-row>.woocommerce-product-gallery__image{flex:1 1 auto}
.ep-photo-row>.woocommerce-product-gallery__image img{max-height:420px !important;width:auto !important;max-width:100% !important;object-fit:contain !important;background:#fff}
.ep-photo-row>.flex-control-thumbs{display:flex !important;flex-direction:column !important;gap:8px !important;width:80px !important;margin:0 !important;padding:0 !important;position:static !important}
.ep-photo-row>.flex-control-thumbs li{width:80px !important;float:none !important;opacity:1 !important}
.ep-photo-row>.flex-control-thumbs img{width:80px !important;height:80px !important;object-fit:contain !important;background:#fff;border:1px solid #d4cec0}
.ep-thumbs{display:none !important}

	.nav { padding: 24px 28px; }
	.nav .logo { font-size: 25px; }
	.menu, .nav-right { font-size: 15px; }
	
	/* larger nav labels */
	.menu, .nav-right { font-size: 17px; }
	.drop>button { font-size: 17px; }
	.panel .label { font-size: 13px; }
	
	/* Hide catalog sort on sparse category archives */
	body.tax-product_cat.term-annealers .woocommerce-ordering,
	body.tax-product_cat.term-annealer-accessories .woocommerce-ordering,
	body.tax-product_cat.term-lockdown-blocks .woocommerce-ordering,
	body.tax-product_cat.term-reloading-supplies .woocommerce-ordering {
		display: none !important;
	}
	
	}
/* Category landings: tighten dead space under header */
body.tax-product_cat section { padding-top: 36px; }
