/* ── Elemental Aminos Theme CSS ── */
:root{
  --bg:#070B10;--bg2:#0A1017;--bg3:#0D151D;
  --panel:#101A23;--panel2:#152430;--panel3:#182C36;
  --card:#101A23;
  --teal:#12B2A6;--teal-l:#4FD8CB;--teal-d:#077F77;--teal-x:#0AA096;
  --ink:#EDF3F4;--ink2:#BCCCD1;--muted:#8399A1;--muted2:#617A83;
  --line:rgba(237,243,244,.08);--line2:rgba(18,178,166,.30);--line3:rgba(237,243,244,.14);
  --alert:#E2725B;
  --disp:'Sora','Helvetica Neue',sans-serif;
  --sans:'Inter','Helvetica Neue',sans-serif;
  --mono:'JetBrains Mono',ui-monospace,monospace;
  --r:14px;--rs:10px;--rx:6px;--rp:999px;
  --nav-h:82px;--ann-h:38px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{font-family:var(--sans);background:var(--bg);color:var(--ink);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
.ea-container{max-width:1240px;margin:0 auto;padding:0 32px}
.ea-main{padding:60px 0}

/* ── ANNOUNCE ── */
.ea-announce{background:#04090D;color:var(--ink2);text-align:center;padding:0 20px;height:var(--ann-h);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;border-bottom:1px solid var(--line)}
.ea-announce b{color:var(--teal-l);font-weight:500}
.ea-announce .sep{opacity:.28;margin:0 12px}
@media(max-width:700px){.ea-announce{font-size:9px;letter-spacing:.1em}.ea-announce .a-hide,.ea-announce .sep{display:none}}

/* ── NAV ── */
.ea-nav{position:sticky;top:0;z-index:210;background:rgba(7,11,16,.82);backdrop-filter:blur(16px) saturate(1.2);-webkit-backdrop-filter:blur(16px) saturate(1.2);border-bottom:1px solid var(--line);padding:0 32px}
.ea-nav-i{max-width:1240px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:var(--nav-h);gap:26px;flex-wrap:nowrap}
.ea-logo{display:flex;align-items:center;text-decoration:none;flex-shrink:0}
.ea-nav-center{display:flex;gap:34px;align-items:center;flex-shrink:0}
.ea-nav-center a{font-size:13.5px;font-weight:400;color:var(--ink2);text-decoration:none;letter-spacing:.01em;position:relative;padding:4px 0;transition:color .22s}
.ea-nav-center a::after{content:'';position:absolute;left:0;bottom:0;height:1px;width:0;background:var(--teal);transition:width .3s cubic-bezier(.16,1,.3,1)}
.ea-nav-center a:hover,.ea-nav-center a.on{color:var(--ink)}
.ea-nav-center a:hover::after,.ea-nav-center a.on::after{width:100%}
.ea-nav-right{display:flex;align-items:center;gap:20px;flex-shrink:0}
.ea-nav-ico{position:relative;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);color:var(--ink2);text-decoration:none;transition:border-color .25s,color .25s,background .25s}
.ea-nav-ico:hover{border-color:var(--teal);color:var(--teal-l);background:rgba(18,178,166,.08)}
.ea-cart-count{position:absolute;top:-4px;right:-4px;background:var(--teal);color:#04171B;font-family:var(--mono);font-size:9.5px;font-weight:700;min-width:17px;height:17px;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:0 4px;line-height:1}
.ea-nav-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--sans);font-weight:500;font-size:13px;letter-spacing:.05em;background:var(--teal);color:#04171B;padding:14px 28px;border-radius:var(--rp);text-decoration:none;border:1px solid var(--teal);cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .25s,box-shadow .3s,transform .3s cubic-bezier(.16,1,.3,1)}
.ea-nav-btn:hover{background:var(--teal-l);border-color:var(--teal-l);transform:translateY(-2px);box-shadow:0 14px 34px rgba(18,178,166,.30)}
.ea-nav-btn .arw{transition:transform .3s cubic-bezier(.16,1,.3,1)}
.ea-nav-btn:hover .arw{transform:translateX(4px)}

/* hamburger */
.ea-ham{display:none;width:38px;height:38px;border:1px solid var(--line);background:transparent;border-radius:50%;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px;flex-shrink:0;z-index:230}
.ea-ham span{display:block;width:16px;height:1.5px;background:var(--ink);border-radius:2px;transition:transform .3s,opacity .2s}
.ea-ham[aria-expanded="true"] span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.ea-ham[aria-expanded="true"] span:nth-child(2){opacity:0}
.ea-ham[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}

.ea-drawer{position:fixed;top:0;right:-330px;width:310px;max-width:84vw;height:100dvh;background:var(--bg2);border-left:1px solid var(--line);z-index:240;padding:24px 26px 32px;display:flex;flex-direction:column;transition:right .38s cubic-bezier(.16,1,.3,1);overflow-y:auto}
.ea-drawer.open{right:0}
.ea-drawer a{font-size:15px;color:var(--ink);text-decoration:none;padding:16px 0;border-bottom:1px solid var(--line);transition:color .2s}
.ea-drawer a:hover{color:var(--teal-l)}
.ea-drawer .ea-nav-btn{margin-top:22px;width:100%;border-bottom:none}
.ea-close{align-self:flex-end;width:38px;height:38px;border:1px solid var(--line);background:transparent;border-radius:50%;cursor:pointer;color:var(--ink);font-size:22px;line-height:1;display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.ea-overlay{position:fixed;inset:0;background:rgba(3,6,9,.66);backdrop-filter:blur(3px);z-index:235;opacity:0;pointer-events:none;transition:opacity .3s}
.ea-overlay.open{opacity:1;pointer-events:auto}

@media(max-width:960px){
  .ea-nav-center,.ea-nav-acct{display:none}
  .ea-ham{display:flex}
  .ea-nav{padding:0 20px}
  .ea-container{padding:0 20px}
}

/* ── FOOTER ── */
.ea-footer{background:var(--bg2);border-top:1px solid var(--line);padding:70px 0 34px;font-size:14px;color:var(--muted)}
.ea-foot-top{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr 1fr;gap:44px;padding-bottom:48px;border-bottom:1px solid var(--line)}
.ea-foot-brand{display:block;text-decoration:none;margin-bottom:20px}
.ea-foot-about{font-size:13.5px;line-height:1.75;font-weight:300;max-width:290px;color:var(--muted)}
.ea-foot-soc{display:flex;gap:10px;margin-top:24px}
.ea-foot-soc a{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--muted);transition:all .25s}
.ea-foot-soc a:hover{border-color:var(--teal);color:var(--teal-l);transform:translateY(-2px)}
.ea-fcol h4{font-family:var(--mono);font-size:9.5px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--ink);margin-bottom:18px}
.ea-fcol a{display:block;font-size:13.5px;color:var(--muted);text-decoration:none;padding:6px 0;font-weight:300;transition:color .2s,padding-left .25s}
.ea-fcol a:hover{color:var(--teal-l);padding-left:4px}
.ea-foot-tag{text-align:center;padding:40px 0 30px;border-bottom:1px solid var(--line)}
.ea-foot-tag .mk{margin:0 auto 16px;opacity:.85}
.ea-foot-tag .mk img{width:32px;height:32px;object-fit:contain;display:block;margin:0 auto}
.ea-foot-tag .t1{font-family:var(--disp);font-size:21px;font-weight:300;color:var(--ink);letter-spacing:-.02em}
.ea-foot-tag .t2{font-family:var(--disp);font-size:21px;font-weight:400;color:var(--teal-l);letter-spacing:-.02em}
.ea-foot-bot{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding-top:28px;font-size:12px;font-weight:300}
.ea-foot-bot .ea-foot-links,.ea-foot-links{display:flex;gap:22px;flex-wrap:wrap}
.ea-foot-bot a,.ea-foot-links a{color:var(--muted);text-decoration:none;transition:color .2s;font-size:12px;font-weight:300}
.ea-foot-bot a:hover,.ea-foot-links a:hover{color:var(--teal-l)}
.ea-foot-legal{width:100%;margin-top:22px;font-size:11px;color:var(--muted2);line-height:1.75;font-weight:300}
@media(max-width:1100px){.ea-foot-top{grid-template-columns:1fr 1fr 1fr;gap:34px}}
@media(max-width:768px){.ea-foot-top{grid-template-columns:1fr 1fr;gap:28px}.ea-foot-brand-col{grid-column:1 / -1}.ea-foot-bot{flex-direction:column;align-items:flex-start;gap:16px}}
@media(max-width:600px){.ea-foot-top{grid-template-columns:1fr}}

/* ── BREADCRUMB ── */
.ea-crumb{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:28px;display:flex;gap:8px;flex-wrap:wrap}
.ea-crumb a{color:var(--muted);text-decoration:none;transition:color .2s}
.ea-crumb a:hover{color:var(--teal-l)}
.ea-crumb-sep{opacity:.45}

/* ── SHOP ARCHIVE ── */
.ea-shop-main{padding:56px 0 96px}
.ea-page-title{font-family:var(--disp);font-size:clamp(34px,4.6vw,56px);font-weight:200;letter-spacing:-.03em;margin-bottom:14px;line-height:1.05}
.ea-page-title em{font-style:normal;font-weight:500;color:var(--teal-l)}
.ea-page-sub{font-size:15.5px;color:var(--muted);line-height:1.75;font-weight:300;max-width:580px;margin-bottom:40px}
.ea-cat-label{font-family:var(--mono);font-size:10.5px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--teal);margin-bottom:16px;display:inline-flex;align-items:center;gap:9px;border:1px solid var(--line2);border-radius:var(--rp);padding:7px 15px;background:rgba(18,178,166,.06)}
.ea-cat-label::before{content:'';width:5px;height:5px;background:var(--teal);transform:rotate(45deg)}
.ea-cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}
.ea-cat-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;text-decoration:none;color:var(--ink);transition:transform .42s cubic-bezier(.16,1,.3,1),box-shadow .42s,border-color .3s;display:flex;flex-direction:column;position:relative}
.ea-cat-card:hover{transform:translateY(-6px);border-color:var(--line2);box-shadow:0 26px 56px rgba(0,0,0,.5)}
/* corner brackets from the vial label */
.ea-cat-card::before,.ea-cat-card::after{content:'';position:absolute;width:13px;height:13px;border:1px solid var(--teal);opacity:.4;pointer-events:none;z-index:4;transition:opacity .3s,width .3s,height .3s}
.ea-cat-card::before{top:10px;left:10px;border-right:0;border-bottom:0}
.ea-cat-card::after{bottom:10px;right:10px;border-left:0;border-top:0;display:none} /* keep top-left only to avoid overlap with stock label */
.ea-cat-card:hover::before{opacity:.9;width:18px;height:18px}
.ea-cat-card-thumb{aspect-ratio:1;background:linear-gradient(150deg,#12222A,#0A151C);overflow:hidden;display:flex;align-items:center;justify-content:center;position:relative}
.ea-cat-card-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.16,1,.3,1)}
.ea-cat-card:hover .ea-cat-card-thumb img{transform:scale(1.05)}
.ea-cat-card-badge{position:absolute;top:12px;right:12px;z-index:3;background:rgba(7,11,16,.72);backdrop-filter:blur(6px);border:1px solid var(--line2);color:var(--teal-l);font-family:var(--mono);font-size:8.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;padding:5px 10px;border-radius:var(--rp)}
.ea-cat-card-placeholder{color:var(--muted2)}
.ea-cat-card-placeholder svg{width:52px}
.ea-cat-card-info{padding:20px 20px 22px;display:flex;flex-direction:column;flex:1;border-top:1px solid var(--line)}
.ea-cat-card-eyebrow{font-family:var(--mono);font-size:9.5px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--teal);margin-bottom:8px;display:block}
.ea-cat-card-title{font-family:var(--disp);font-size:20px;font-weight:500;line-height:1.15;letter-spacing:-.01em;margin-bottom:12px;color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;height:calc(20px * 1.15 * 2)}
.ea-cat-card-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:14px;border-top:1px solid var(--line);gap:10px}
.ea-cat-card-price{font-family:var(--disp);font-size:17px;font-weight:500;color:var(--ink)}
.ea-cat-card-price .woocommerce-Price-currencySymbol{margin-right:1px}
.ea-cat-card-price ins{text-decoration:none;color:var(--ink)}
.ea-cat-card-price del{color:var(--muted);opacity:.6;margin-right:6px;font-size:14px}
.ea-cat-card-stock{font-family:var(--mono);font-size:9px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}
.ea-stock-in{color:var(--teal-l)}
.ea-stock-low{color:#E8B463}
.ea-stock-out{color:var(--muted)}
@media(max-width:1024px){.ea-cat-grid{grid-template-columns:repeat(2,1fr);gap:14px}
  .ea-cat-card-info{padding:16px 15px 18px}
  .ea-cat-card-title{font-size:17px;margin-bottom:8px;height:calc(17px * 1.15 * 2)}
  .ea-cat-card-bottom{flex-direction:column;align-items:flex-start;gap:9px}
}
@media(max-width:600px){.ea-cat-grid{grid-template-columns:repeat(2,1fr);gap:12px}
  .ea-cat-card-title{font-size:16px;height:calc(16px * 1.15 * 2)}
  .ea-cat-card-price{font-size:15px}
}

/* ── PRODUCT PAGE (formula-style) ── */
.ea-pdp{padding:32px 0 72px}
.ea-wrap{max-width:1240px;margin:0 auto;padding:0 32px}

.pdp-crumb{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:26px}
.pdp-crumb a{color:var(--muted);text-decoration:none;transition:color .2s}
.pdp-crumb a:hover{color:var(--teal-l)}

.pdp-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}

/* Gallery */
.pdp-gallery{position:sticky;top:104px}
.pdp-img-wrap{background:linear-gradient(150deg,#12222A,#0A151C);border-radius:var(--r);overflow:hidden;position:relative;aspect-ratio:1/1 !important;width:100%;border:1px solid var(--line)}
.pdp-img-wrap > img,.pdp-img-wrap .pdp-img,.pdp-img-wrap .wp-post-image{width:100% !important;height:100% !important;max-width:100% !important;max-height:none !important;min-height:0 !important;display:block;object-fit:cover;object-position:center}
.pdp-img-wrap::before,.pdp-img-wrap::after{content:'';position:absolute;width:18px;height:18px;border:1px solid var(--teal);opacity:.55;pointer-events:none;z-index:4}
.pdp-img-wrap::before{top:14px;left:14px;border-right:0;border-bottom:0}
.pdp-img-wrap::after{bottom:14px;right:14px;border-left:0;border-top:0}
.pdp-img-ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:var(--bg2)}
.pdp-oos-pill{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:rgba(7,11,16,.88);backdrop-filter:blur(6px);color:var(--ink);font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:500;padding:12px 22px;border-radius:var(--rp);border:1px solid var(--line3);z-index:5}

/* Summary panel */
.pdp-bb{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:36px 32px}
.pdp-topline{display:flex;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap}
.pdp-eye{font-family:var(--mono);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--teal);font-weight:500;display:inline-flex;align-items:center;gap:8px}
.pdp-eye::before{content:'';width:5px;height:5px;background:currentColor;transform:rotate(45deg)}
.pdp-verified{font-family:var(--mono);font-size:9.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;background:rgba(18,178,166,.10);color:var(--teal-l);padding:5px 12px;border-radius:var(--rp);border:1px solid var(--line2)}
.pdp-title{font-family:var(--disp);font-size:clamp(32px,4vw,44px);font-weight:300;line-height:1.08;letter-spacing:-.025em;margin-bottom:14px;color:var(--ink)}
.pdp-sz{color:var(--muted);font-weight:300;font-size:.55em;letter-spacing:0}
.pdp-desc{font-size:14.5px;color:var(--muted);line-height:1.75;margin-bottom:22px;font-weight:300}
.pdp-priceline{display:flex;align-items:baseline;gap:14px;margin-bottom:24px}
.pdp-price-now{font-family:var(--disp);font-size:34px;font-weight:400;line-height:1;color:var(--ink);letter-spacing:-.02em}
.pdp-price-per{font-family:var(--mono);font-size:10.5px;color:var(--muted2);font-weight:400;letter-spacing:.14em;text-transform:uppercase}

/* Section labels */
.pdp-opt-label{font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--teal);margin:22px 0 12px;display:inline-flex;align-items:center;gap:8px}
.pdp-opt-label::before{content:'';width:5px;height:5px;background:currentColor;transform:rotate(45deg)}

/* Dosage pills */
.pdp-vars{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:10px}
.pdp-vpill{border:1.5px solid var(--line);border-radius:var(--rx);padding:13px 16px;background:var(--bg2);color:var(--ink);cursor:pointer;font-family:inherit;text-align:center;transition:border-color .2s,box-shadow .2s,background .2s}
.pdp-vpill:hover:not(:disabled){border-color:var(--teal)}
.pdp-vpill.active{border-color:var(--teal);background:rgba(18,178,166,.08);box-shadow:0 4px 14px rgba(18,178,166,.14)}
.pdp-vpill.oos{opacity:.4;cursor:not-allowed}
.pdp-vpill-dose{font-family:var(--disp);font-size:15px;font-weight:500;display:block;letter-spacing:-.005em}
.pdp-vpill small{font-family:var(--mono);font-size:10.5px;color:var(--muted);display:block;margin-top:4px;letter-spacing:.04em}
.pdp-vpill.active small{color:var(--teal-l)}

/* Bundle tiers */
.pdp-tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.pdp-tier{border:1.5px solid var(--line);border-radius:var(--rx);padding:16px 14px;background:var(--bg2);color:var(--ink);cursor:pointer;font-family:inherit;text-align:left;transition:border-color .2s,box-shadow .2s,background .2s;position:relative}
.pdp-tier:hover{border-color:var(--teal)}
.pdp-tier.active{border-color:var(--teal);background:rgba(18,178,166,.08);box-shadow:0 4px 14px rgba(18,178,166,.14)}
.pdp-tier-qty{font-family:var(--mono);font-size:10px;font-weight:500;margin-bottom:6px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.pdp-tier-price{font-family:var(--disp);font-size:19px;font-weight:500;color:var(--ink)}
.pdp-tier-ea{font-family:var(--mono);font-size:9.5px;color:var(--teal-l);margin-top:5px;letter-spacing:.12em;text-transform:uppercase;font-weight:500}
.pdp-tier-flag{position:absolute;top:-9px;right:10px;background:var(--teal);color:#04171B;font-family:var(--mono);font-size:8.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:4px 10px;border-radius:var(--rp)}
.pdp-tier-flag.best{background:var(--teal-l)}

/* Cross-sells */
.pdp-ups{display:flex;flex-direction:column;gap:8px}
.pdp-up{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--rx);cursor:pointer;transition:border-color .2s,background .2s;background:var(--bg2);position:relative}
.pdp-up:hover{border-color:var(--line2)}
.pdp-up-check{position:absolute;opacity:0;width:0;height:0}
.pdp-up-img{width:44px;height:44px;border-radius:var(--rx);overflow:hidden;flex-shrink:0;background:linear-gradient(150deg,#12222A,#0A151C);border:1px solid var(--line)}
.pdp-up-img img{width:100%;height:100%;object-fit:cover}
.pdp-up-info{flex:1;min-width:0}
.pdp-up-info b{font-family:var(--disp);font-size:14px;display:block;font-weight:500;letter-spacing:-.005em;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pdp-up-info small{font-family:var(--mono);font-size:9.5px;color:var(--muted);display:block;letter-spacing:.14em;text-transform:uppercase;font-weight:500;margin-top:3px}
.pdp-up-price{font-family:var(--disp);font-size:15px;font-weight:500;color:var(--ink);flex-shrink:0}
.pdp-up-box{width:22px;height:22px;border:1.5px solid var(--line3);border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:13px;color:transparent;transition:all .2s;flex-shrink:0}
.pdp-up-check:checked ~ .pdp-up-box{background:var(--teal);border-color:var(--teal);color:#04171B}

/* Total bar */
.pdp-totalbar{display:flex;justify-content:space-between;align-items:baseline;border-top:1px dashed var(--line3);padding:20px 0 16px;margin-top:24px}
.pdp-total-lbl{font-family:var(--mono);font-size:10.5px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.pdp-total-sum{font-family:var(--disp);font-size:30px;font-weight:400;color:var(--ink);letter-spacing:-.02em}

/* ATC button */
.pdp-atc{width:100%;padding:17px 22px;border:1px solid var(--teal);border-radius:var(--rp);background:var(--teal);color:#04171B;font-family:var(--sans);font-size:13.5px;font-weight:600;letter-spacing:.06em;cursor:pointer;transition:background .25s,box-shadow .3s,transform .3s cubic-bezier(.16,1,.3,1)}
.pdp-atc:hover{background:var(--teal-l);border-color:var(--teal-l);transform:translateY(-2px);box-shadow:0 14px 34px rgba(18,178,166,.30)}
.pdp-atc-oos{background:transparent;color:var(--muted);border-color:var(--line3);cursor:not-allowed}
.pdp-atc-oos:hover{background:transparent;color:var(--muted);border-color:var(--line3);transform:none;box-shadow:none}

/* COA button */
.pdp-coa-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:15px;margin-top:10px;border:1px solid var(--line3);border-radius:var(--rp);background:transparent;color:var(--ink);font-family:var(--sans);font-size:12.5px;font-weight:500;letter-spacing:.06em;text-decoration:none;transition:border-color .2s,background .2s,color .2s}
.pdp-coa-btn:hover{border-color:var(--teal);background:rgba(18,178,166,.08);color:var(--teal-l)}

/* Assurance row */
.pdp-assure{display:flex;gap:18px;flex-wrap:wrap;margin-top:22px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.pdp-assure span{font-family:var(--mono);font-size:10px;color:var(--muted);font-weight:400;letter-spacing:.1em;text-transform:uppercase;display:inline-flex;align-items:center;gap:6px}

/* Lot info grid */
.pdp-lot{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border-radius:var(--rx);overflow:hidden;margin:22px 0}
.pdp-lot-row{background:var(--bg2);padding:14px 16px}
.pdp-lot-k{font-family:var(--mono);font-size:9px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.pdp-lot-v{font-family:var(--disp);font-size:14px;font-weight:500;color:var(--ink);letter-spacing:-.005em}

/* Accordion */
.pdp-accs{margin-top:8px}
.pdp-acc{border-bottom:1px solid var(--line)}
.pdp-acc summary{display:flex;justify-content:space-between;align-items:center;padding:18px 0;font-family:var(--disp);font-size:15px;font-weight:500;cursor:pointer;list-style:none;color:var(--ink);transition:color .2s;letter-spacing:-.005em}
.pdp-acc summary::-webkit-details-marker{display:none}
.pdp-acc summary:hover{color:var(--teal-l)}
.pdp-pm{font-size:20px;color:var(--muted);line-height:1;transition:transform .3s,color .3s;font-family:var(--sans);font-weight:300}
.pdp-acc[open] .pdp-pm{transform:rotate(45deg);color:var(--teal-l)}
.pdp-ac{padding:0 0 22px;font-size:14px;color:var(--muted);line-height:1.75;font-weight:300}
.pdp-ac a{color:var(--teal-l);text-decoration:none;font-weight:500;border-bottom:1px solid rgba(18,178,166,.4)}
.pdp-ac a:hover{border-bottom-color:var(--teal-l)}
.pdp-sr{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid var(--line);font-size:13px}
.pdp-sr:last-child{border-bottom:none}
.pdp-sr-k{font-family:var(--mono);color:var(--muted);font-weight:400;letter-spacing:.1em;font-size:10.5px;text-transform:uppercase}
.pdp-sr-v{color:var(--ink);font-weight:400;text-align:right;font-family:var(--disp)}

/* Slim disclaimer */
.pdp-slim{margin-top:50px;padding:26px 30px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);font-family:var(--mono);font-size:11px;color:var(--muted);text-align:center;line-height:1.75;font-weight:400;letter-spacing:.04em}

/* Mobile PDP */
@media(max-width:820px){
    .pdp-grid{grid-template-columns:1fr;gap:20px}
    .pdp-gallery{position:relative;top:auto}
    .pdp-bb{padding:26px 22px}
    .pdp-tiers{grid-template-columns:1fr}
    .pdp-lot{grid-template-columns:1fr}
    .pdp-assure{flex-direction:column;gap:8px}
    .ea-pdp{padding:16px 0 52px}
    .ea-wrap{padding:0 18px}
    .pdp-crumb{margin-bottom:16px}
    .pdp-title{font-size:28px}
    .pdp-price-now{font-size:28px}
}

/* ─── WooCommerce Cart & Checkout link styling ─── */
body .woocommerce a,
body .woocommerce-page a,
body .woocommerce table.shop_table a,
body .woocommerce-cart table.cart a,
body .woocommerce-cart .product-name a,
body .woocommerce-checkout .product-name a,
body .woocommerce ul.order_details a,
body .woocommerce-order-details a,
body .wc-block-cart a,
body .wc-block-checkout a,
body .wc-block-cart-items a,
body .wc-block-cart-item a,
body a.wc-block-components-product-name,
body .wc-block-components-product-name,
body .wp-block-woocommerce-cart-line-items-block a,
body .wp-block-woocommerce-cart a,
body .wp-block-woocommerce-checkout a{
  color: var(--ink) !important;
  text-decoration: none !important;
  font-weight: 500 !important;
  transition: color .2s !important;
}
body .woocommerce a:hover,
body .woocommerce-page a:hover,
body .woocommerce table.shop_table a:hover,
body .woocommerce-cart .product-name a:hover,
body .woocommerce-checkout .product-name a:hover,
body .wc-block-cart a:hover,
body .wc-block-checkout a:hover,
body a.wc-block-components-product-name:hover,
body .wc-block-components-product-name:hover{
  color: var(--teal-l) !important;
  text-decoration: none !important;
}
body .woocommerce-cart .product-name a,
body .wc-block-cart-item__product a,
body a.wc-block-components-product-name,
body .wc-block-components-product-name{
  font-family: var(--disp) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  letter-spacing: -.005em !important;
}
body .woocommerce .button,
body .woocommerce a.button,
body .wc-block-components-button,
body .wc-block-components-checkout-place-order-button,
body .wc-block-cart__submit-button,
body a.wc-block-cart__submit-button,
body .wp-block-woocommerce-proceed-to-checkout-block a,
body .wc-proceed-to-checkout a,
body .wc-proceed-to-checkout .checkout-button,
body a.checkout-button,
body .wc-block-components-button__text,
body .woocommerce ul.products li.product a.button,
body .woocommerce ul.products li.product .button,
body .woocommerce a.button.add_to_cart_button,
body .woocommerce a.button.product_type_variable,
body .woocommerce a.button.product_type_simple,
body .woocommerce a.button.product_type_grouped,
body .woocommerce a.button.product_type_external,
body .wc-block-components-product-button,
body .wc-block-components-product-button__button,
body a.wc-block-components-product-button__button{
  color: #04171B !important;
  background: var(--teal) !important;
  text-decoration: none !important;
  border-radius: var(--rp) !important;
}
body .woocommerce .button:hover,
body .woocommerce a.button:hover,
body .wc-block-cart__submit-button:hover,
body .wc-proceed-to-checkout .checkout-button:hover,
body a.checkout-button:hover,
body .wc-block-components-button:hover,
body .wc-block-components-button:hover .wc-block-components-button__text,
body .woocommerce ul.products li.product a.button:hover,
body .woocommerce a.button.add_to_cart_button:hover,
body .wc-block-components-product-button__button:hover{
  color: #04171B !important;
  background: var(--teal-l) !important;
}

body .woocommerce .woocommerce-info a,
body .woocommerce .woocommerce-message a,
body .woocommerce .woocommerce-error a{
  color: var(--teal-l) !important;
  text-decoration: underline !important;
}

body .woocommerce-info,
body .woocommerce-message{border-top-color:var(--teal) !important;background:var(--panel) !important;color:var(--ink2) !important}
body .woocommerce-info::before,
body .woocommerce-message::before{color:var(--teal) !important}
body .woocommerce-error{border-top-color:var(--alert) !important;background:var(--panel) !important;color:var(--ink2) !important}

body .woocommerce form .form-row input.input-text,
body .woocommerce form .form-row textarea,
body .woocommerce form .form-row select{
  border-radius:var(--rx) !important;border-color:var(--line3) !important;background:var(--bg2) !important;color:var(--ink) !important;font-family:var(--sans) !important
}
body .woocommerce form .form-row input.input-text:focus,
body .woocommerce form .form-row textarea:focus,
body .woocommerce form .form-row select:focus{border-color:var(--teal) !important;outline:none !important}

/* ───────────────────────────────────────────────────────────────────
   WooCommerce BLOCKS checkout / cart — dark form overrides
   The classic-checkout rules above target .woocommerce form .form-row,
   which the Blocks-based Cart/Checkout blocks do NOT use. These rules
   handle the .wc-block-components-* class tree instead.
   ─────────────────────────────────────────────────────────────────── */

/* Overall Blocks container */
body .wc-block-checkout,
body .wc-block-cart,
body .wp-block-woocommerce-checkout,
body .wp-block-woocommerce-cart{
  color: var(--ink) !important;
  background: transparent !important;
}

/* Section headings ("Contact information", "Billing address", ...) */
body .wc-block-components-checkout-step__heading,
body .wc-block-components-title,
body h1.wp-block-post-title,
body .wc-block-components-checkout-step__title{
  color: var(--ink) !important;
  font-family: var(--disp) !important;
  font-weight: 400 !important;
  letter-spacing: -.015em !important;
}
body .wc-block-components-checkout-step__description{
  color: var(--muted) !important;
}

/* Text inputs — the .wc-block-components-text-input wrapper renders a
   floating <label> on top of a white <input>. Repaint both. */
body .wc-block-components-text-input,
body .wc-block-components-address-form .wc-block-components-text-input,
body .wc-block-components-combobox{
  background: var(--bg2) !important;
  border-radius: var(--rx) !important;
}
body .wc-block-components-text-input input,
body .wc-block-components-address-form input.wc-block-components-text-input__input,
body .wc-block-components-combobox input,
body .wc-block-components-textarea,
body input[type="text"].wc-block-components-text-input__input,
body input[type="email"].wc-block-components-text-input__input,
body input[type="tel"].wc-block-components-text-input__input,
body input[type="number"].wc-block-components-text-input__input{
  background: var(--bg2) !important;
  color: var(--ink) !important;
  border: 1px solid var(--line3) !important;
  border-radius: var(--rx) !important;
  font-family: var(--sans) !important;
}
body .wc-block-components-text-input input:focus,
body .wc-block-components-textarea:focus,
body .wc-block-components-combobox input:focus{
  border-color: var(--teal) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(18,178,166,.15) !important;
}

/* Floating labels — override the pale black/gray that ships by default */
body .wc-block-components-text-input label,
body .wc-block-components-combobox label,
body .wc-block-components-checkbox__label,
body .wc-block-components-radio-control__label{
  color: var(--muted) !important;
}
body .wc-block-components-text-input.is-active label,
body .wc-block-components-text-input input:focus + label,
body .wc-block-components-text-input input:not(:placeholder-shown) + label,
body .wc-block-components-combobox.is-active label{
  color: var(--teal-l) !important;
}

/* Select dropdowns + WC Combobox controls (Country/Region, State).
   Wipe every nested wrapper's background/border/shadow with a universal
   descendant selector, then paint ONLY the outermost visible container.
   This is the reliable way to defeat WC Blocks' deeply-nested default
   light styling that stacks into concentric rectangles otherwise. */

/* 1. Universal reset for every descendant of the country/state field */
body .wc-block-components-country-input *,
body .wc-block-components-state-input *,
body .wc-block-components-address-form__country *,
body .wc-block-components-address-form__state *{
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

/* 2. Paint the visible outer field */
body .wc-block-components-country-input,
body .wc-block-components-state-input,
body .wc-block-components-address-form__country,
body .wc-block-components-address-form__state,
body .wc-block-components-select,
body .wc-block-checkout select,
body .wc-block-cart select{
  background: var(--bg2) !important;
  color: var(--ink) !important;
  border: 1px solid var(--line3) !important;
  border-radius: var(--rx) !important;
  font-family: var(--sans) !important;
}

/* 3. Text inside the combobox / native select — visible + no chrome */
body .wc-block-components-country-input input,
body .wc-block-components-state-input input,
body .wc-block-components-combobox input,
body .wc-block-components-combobox-control input,
body .components-form-token-field__input-container,
body .components-form-token-field__input{
  background: transparent !important;
  color: var(--ink) !important;
  border: none !important;
  box-shadow: none !important;
  font-family: var(--sans) !important;
}

/* 4. Focused state — teal ring on the outer field */
body .wc-block-components-country-input:focus-within,
body .wc-block-components-state-input:focus-within,
body .wc-block-components-select:focus-within{
  border-color: var(--teal) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(18,178,166,.15) !important;
}

/* 5. Native <select> option list */
body .wc-block-components-select select option,
body .wc-block-checkout select option{
  background: var(--bg2) !important;
  color: var(--ink) !important;
}

/* 6. Chevron / arrow — restore visibility (universal reset above wiped it) */
body .wc-block-components-select svg,
body .wc-block-components-combobox svg,
body .wc-block-components-country-input svg,
body .wc-block-components-state-input svg,
body .wc-block-components-select .wc-block-components-select__container::after,
body .wc-block-components-combobox .wc-block-components-combobox__container::after,
body .wc-block-components-country-input__container::after,
body .wc-block-components-state-input__container::after{
  color: var(--muted) !important;
  fill: var(--muted) !important;
}

/* Combobox dropdown suggestion list (country/state autocomplete) */
body .components-form-token-field__suggestions-list,
body .wc-block-components-combobox__suggestion,
body .wc-block-components-form-token-field__suggestions-list{
  background: var(--panel) !important;
  color: var(--ink) !important;
  border: 1px solid var(--line3) !important;
}
body .wc-block-components-form-token-field__suggestions-list li,
body .components-form-token-field__suggestions-list li{
  color: var(--ink) !important;
}
body .wc-block-components-form-token-field__suggestions-list li:hover,
body .components-form-token-field__suggestions-list li[aria-selected="true"]{
  background: rgba(18,178,166,.12) !important;
  color: var(--teal-l) !important;
}

/* Checkboxes */
body .wc-block-components-checkbox input[type="checkbox"],
body .wc-block-components-checkbox__input{
  background: var(--bg2) !important;
  border: 1px solid var(--line3) !important;
}
body .wc-block-components-checkbox input[type="checkbox"]:checked,
body .wc-block-components-checkbox__input:checked{
  background: var(--teal) !important;
  border-color: var(--teal) !important;
}
body .wc-block-components-checkbox__mark{ color: #04171B !important; fill: #04171B !important; }

/* Radio controls — payment method picker.
   IMPORTANT: only recolor. Don't override padding/margin/borders in a way
   that creates nested boxes — WC Blocks wraps the option in both
   .wc-block-components-radio-control__option and (in accordion mode)
   .wc-block-components-radio-control-accordion-option. Style the outer
   card container, leave the inner untouched. */
body .wc-block-components-radio-control{
  background: transparent !important;
  border: none !important;
}
/* Outer card in accordion-style payment picker */
body .wc-block-components-radio-control-accordion-option{
  background: var(--bg2) !important;
  border-color: var(--line3) !important;
  border-radius: var(--rx) !important;
  color: var(--ink) !important;
}
body .wc-block-components-radio-control-accordion-option--checked,
body .wc-block-components-radio-control-accordion-option[aria-checked="true"]{
  border-color: var(--teal) !important;
  background: rgba(18,178,166,.06) !important;
}
/* Simple (non-accordion) radio option — only apply when there's no
   accordion wrapper, so we don't double up borders */
body .wc-block-components-radio-control > .wc-block-components-radio-control__option{
  background: var(--bg2) !important;
  border-color: var(--line3) !important;
  border-radius: var(--rx) !important;
  color: var(--ink) !important;
}
body .wc-block-components-radio-control > .wc-block-components-radio-control__option-checked,
body .wc-block-components-radio-control > .wc-block-components-radio-control__option[aria-checked="true"]{
  border-color: var(--teal) !important;
  background: rgba(18,178,166,.06) !important;
}
/* When inside an accordion, strip the inner option's border so the outer
   accordion card is the only visible box */
body .wc-block-components-radio-control-accordion-option .wc-block-components-radio-control__option{
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}
/* Radio circle itself */
body .wc-block-components-radio-control__input{
  border: 1.5px solid var(--line3) !important;
  background: var(--bg2) !important;
}
body .wc-block-components-radio-control__input:checked{
  border-color: var(--teal) !important;
  background: var(--teal) !important;
  box-shadow: inset 0 0 0 3px var(--bg2) !important;
}
/* Label text next to the radio */
body .wc-block-components-radio-control__label,
body .wc-block-components-radio-control__option-layout,
body .wc-block-components-radio-control-accordion-option label{
  color: var(--ink) !important;
}

/* ══════════════════════════════════════════════════════════════════════
   ORDER SUMMARY / CART TOTALS SIDEBAR
   Mirrors the RUO Storefront approach: skin the outer card and recolour
   text, and otherwise leave WooCommerce Blocks' own spacing alone. The
   previous universal-descendant reset flattened the block's internal
   padding, which is what collapsed the summary layout.
   ══════════════════════════════════════════════════════════════════════ */

/* ── One card, painted once ──
   The sidebar and the totals block nest, so painting both drew two borders
   1px apart. Only the outer element is a card now, and it owns the padding. */
body .wc-block-components-sidebar{
  background: var(--panel) !important;
  border: 1px solid var(--line) !important;
  border-radius: var(--r) !important;
  color: var(--ink) !important;
  padding: 6px 24px 20px !important;
  box-sizing: border-box !important;
}

/* Every block nested inside is structural only — no card, no side padding. */
body .wc-block-components-sidebar .wp-block-woocommerce-cart-totals-block,
body .wc-block-components-sidebar .wp-block-woocommerce-cart-order-summary-block,
body .wc-block-components-sidebar .wp-block-woocommerce-checkout-order-summary-block,
body .wc-block-components-sidebar .wc-block-components-panel,
body .wc-block-components-sidebar .wc-block-components-totals-wrapper{
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* ── Spacing ──
   Blocks pads each .wc-block-components-totals-wrapper and draws a separator
   from its ::after. Wrappers that render nothing (no shipping rates, taxes
   hidden) still got that padding and that line, which is the dead gap and the
   floating rule in the middle of the summary. Zero the wrappers, then put the
   spacing on the rows that actually have content. */
body .wc-block-components-sidebar .wc-block-components-totals-wrapper{
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
body .wc-block-components-sidebar .wc-block-components-totals-wrapper::before,
body .wc-block-components-sidebar .wc-block-components-totals-wrapper::after{
  content: none !important;
  display: none !important;
  border: 0 !important;
}
/* Belt and braces: collapse the empty wrapper itself. */
body .wc-block-components-sidebar .wc-block-components-totals-wrapper:empty{
  display: none !important;
}

/* Rows that do render get uniform padding and one separator each. */
body .wc-block-components-sidebar .wc-block-components-totals-item,
body .wc-block-components-sidebar .wc-block-components-panel,
body .wc-block-components-sidebar .wc-block-components-order-summary,
body .wc-block-components-sidebar > .wc-block-components-title,
body .wc-block-components-sidebar .wc-block-components-totals-wrapper > .wc-block-components-title{
  padding-top: 15px !important;
  padding-bottom: 15px !important;
  margin: 0 !important;
  border-bottom: 1px solid var(--line) !important;
}
/* The grand total closes the card — no rule beneath it. */
body .wc-block-components-sidebar .wc-block-components-totals-footer-item{
  border-bottom: 0 !important;
  padding-top: 18px !important;
  padding-bottom: 4px !important;
}

/* Text colours */
body .wc-block-components-sidebar,
body .wc-block-components-sidebar .wc-block-components-totals-item__label,
body .wc-block-components-sidebar .wc-block-components-totals-item__value,
body .wc-block-components-sidebar .wc-block-components-product-metadata,
body .wc-block-components-sidebar .wc-block-components-product-details,
body .wc-block-components-order-summary__content{
  color: var(--ink2) !important;
}
body .wc-block-components-sidebar .wc-block-components-totals-item__label{
  color: var(--muted) !important;
}
body .wc-block-components-totals-footer-item,
body .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  color: var(--ink) !important;
  font-family: var(--disp) !important;
}

/* Summary heading ("Cart totals" / "Order summary") */
body .wc-block-components-title,
body .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-title{
  font-family: var(--disp) !important;
  color: var(--ink) !important;
  letter-spacing: -.015em !important;
}

/* Coupon disclosure row */
body .wc-block-components-panel__button{
  color: var(--ink) !important;
}
body .wc-block-components-panel__button svg{ fill: var(--muted) !important; }

/* Sale / discount badges keep their own fill */
body .wc-block-components-sale-badge{
  background: rgba(18,178,166,.14) !important;
  color: var(--teal-l) !important;
  border: 1px solid var(--line2) !important;
}

/* Strikethrough / regular price inside the summary */
body .wc-block-components-product-price__regular,
body .wc-block-components-formatted-money-amount del{
  color: var(--muted2) !important;
}

/* Line-item thumbnails */
body .wc-block-cart-item__image img,
body .wc-block-components-order-summary-item__image img{
  border: 1px solid var(--line) !important;
  border-radius: var(--rx) !important;
}

/* Proceed / place-order button */
body .wc-block-cart__submit-button,
body a.wc-block-cart__submit-button,
body .wc-block-components-checkout-place-order-button,
body .wp-block-woocommerce-proceed-to-checkout-block a{
  background: var(--teal) !important;
  color: #04171B !important;
  border: 1px solid var(--teal) !important;
  border-radius: var(--rp) !important;
  font-family: var(--sans) !important;
  font-weight: 600 !important;
}
body .wc-block-cart__submit-button:hover,
body .wc-block-components-checkout-place-order-button:hover{
  background: var(--teal-l) !important;
  border-color: var(--teal-l) !important;
  color: #04171B !important;
}
body .wc-block-components-sidebar .wc-block-cart__submit-container{
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--line) !important;
  padding: 18px 0 0 !important;
  margin: 0 !important;
}

/* ══════════════════════════════════════════════════════════════════════
   CHECKOUT FORM FIELDS
   Safari/iOS autofill and the Blocks default stylesheet both paint field
   text blue. Force one colour across every input state.
   ══════════════════════════════════════════════════════════════════════ */
body .wc-block-components-text-input input.components-text-control__input,
body .wc-block-components-text-input input[type=text],
body .wc-block-components-text-input input[type=email],
body .wc-block-components-text-input input[type=tel],
body .wc-block-components-text-input input[type=number],
body .wc-block-components-textarea,
body .wc-block-components-select__select,
body .wc-block-components-combobox-control input.components-combobox-control__input,
body .wc-block-components-address-form input,
body .wc-block-components-address-form select,
body .wc-block-components-address-form textarea{
  color: var(--ink) !important;
  -webkit-text-fill-color: var(--ink) !important;
  caret-color: var(--ink) !important;
  font-family: var(--sans) !important;
}
/* Every interaction state, including Safari's autofill repaint. */
body .wc-block-components-address-form input:focus,
body .wc-block-components-address-form input:active,
body .wc-block-components-address-form input:hover,
body .wc-block-components-text-input input:focus,
body .wc-block-components-text-input input:-webkit-autofill,
body .wc-block-components-text-input input:-webkit-autofill:hover,
body .wc-block-components-text-input input:-webkit-autofill:focus,
body .wc-block-components-address-form input:-webkit-autofill,
body .wc-block-components-address-form select:-webkit-autofill,
body .wc-block-components-combobox-control input:-webkit-autofill{
  color: var(--ink) !important;
  -webkit-text-fill-color: var(--ink) !important;
  -webkit-box-shadow: 0 0 0 1000px var(--bg3) inset !important;
  box-shadow: 0 0 0 1000px var(--bg3) inset !important;
}
/* Floating labels sit above the value; keep them muted, not blue. */
body .wc-block-components-text-input label,
body .wc-block-components-combobox-control label,
body .wc-block-components-select__label,
body .wc-block-components-checkout-step__title{
  color: var(--muted) !important;
  -webkit-text-fill-color: var(--muted) !important;
}
body .wc-block-components-text-input.is-active label{
  color: var(--muted) !important;
}

/* ══════════════════════════════════════════════════════════════════════
   ACCOUNT ENDPOINT TABLES
   ══════════════════════════════════════════════════════════════════════ */
body .woocommerce-account table.shop_table th,
body .woocommerce-orders table.shop_table th{
  background: var(--bg3) !important;
  color: var(--muted) !important;
  font-family: var(--mono) !important;
  font-size: 9.5px !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  border-bottom: 1px solid var(--line) !important;
  padding: 14px 18px !important;
}
body .woocommerce-account table.shop_table td,
body .woocommerce-orders table.shop_table td{
  background: transparent !important;
  border-bottom: 1px solid var(--line) !important;
  padding: 14px 18px !important;
  color: var(--ink) !important;
}
body .woocommerce-account table.shop_table tr:last-child td{
  border-bottom: none !important;
}

/* ══════════════════════════════════════════════════════════════════════
   ACCOUNT — sign in, register, dashboard, and the WooCommerce endpoints
   ══════════════════════════════════════════════════════════════════════ */

/* ── Shared field + control styling ── */
.ea-field{display:block;margin-bottom:16px}
.ea-field label{display:block;font-family:var(--mono);font-size:9.5px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.ea-input,
.woocommerce-MyAccount-content input[type=text],
.woocommerce-MyAccount-content input[type=email],
.woocommerce-MyAccount-content input[type=tel],
.woocommerce-MyAccount-content input[type=password],
.woocommerce-MyAccount-content select,
.woocommerce-MyAccount-content textarea{
  width:100%;padding:14px 16px;font-family:var(--sans);font-size:14.5px;color:var(--ink);
  background:var(--bg3);border:1px solid var(--line);border-radius:var(--rs);outline:none;
  transition:border-color .2s,background .2s;-webkit-appearance:none;appearance:none}
.ea-input::placeholder{color:var(--muted2)}
.ea-input:focus,
.woocommerce-MyAccount-content input:focus,
.woocommerce-MyAccount-content select:focus,
.woocommerce-MyAccount-content textarea:focus{border-color:var(--teal);background:var(--panel)}
.woocommerce-MyAccount-content select{background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 19px) calc(50% + 2px),calc(100% - 14px) calc(50% + 2px);background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:40px}

.ea-check{display:flex;align-items:flex-start;gap:10px;cursor:pointer;position:relative}
.ea-check-input{position:absolute;opacity:0;width:0;height:0}
.ea-check-box{width:19px;height:19px;border:1.5px solid var(--line3);border-radius:5px;display:flex;align-items:center;justify-content:center;color:transparent;flex-shrink:0;font-size:11px;line-height:1;transition:all .2s;margin-top:1px}
.ea-check-input:checked ~ .ea-check-box{background:var(--teal);border-color:var(--teal);color:#04171B}
.ea-check-input:focus-visible ~ .ea-check-box{box-shadow:0 0 0 3px rgba(18,178,166,.25)}
.ea-check-t{font-size:13px;color:var(--ink2);line-height:1.55;font-weight:300}
.ea-check-t b{color:var(--ink);font-weight:500}

.ea-auth-link{font-size:12.5px;color:var(--teal-l);text-decoration:none;border-bottom:1px solid rgba(18,178,166,.3);transition:border-color .2s;white-space:nowrap}
.ea-auth-link:hover{border-bottom-color:var(--teal-l)}

.ea-auth-btn{width:100%;margin-top:4px;padding:15px 26px;border:1px solid var(--teal);border-radius:var(--rp);background:var(--teal);color:#04171B;font-family:var(--sans);font-size:13.5px;font-weight:600;letter-spacing:.05em;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px;text-decoration:none;transition:background .25s,box-shadow .3s,transform .3s cubic-bezier(.16,1,.3,1)}
.ea-auth-btn:hover{background:var(--teal-l);border-color:var(--teal-l);transform:translateY(-2px);box-shadow:0 14px 34px rgba(18,178,166,.30)}
.ea-auth-btn .arw{transition:transform .3s cubic-bezier(.16,1,.3,1)}
.ea-auth-btn:hover .arw{transform:translateX(4px)}
.ea-auth-btn-ghost{background:transparent;color:var(--ink);border-color:var(--line3)}
.ea-auth-btn-ghost:hover{background:rgba(18,178,166,.10);border-color:var(--teal);color:var(--teal-l);box-shadow:none}
.ea-auth-btn-inline{width:auto;padding:13px 26px}

/* ── Sign in / register ── */
.ea-auth{padding:8px 0 24px}
.ea-auth-split{display:grid;grid-template-columns:1fr minmax(380px,460px);gap:56px;align-items:start}
.ea-auth-single{max-width:460px;margin:0 auto}
.ea-auth-h{font-family:var(--disp);font-size:clamp(32px,4.2vw,50px);font-weight:200;line-height:1.06;letter-spacing:-.03em;color:var(--ink);margin:0 0 16px}
.ea-auth-h em{font-style:normal;color:var(--teal-l);font-weight:500}
.ea-auth-sub{font-size:15px;color:var(--muted);line-height:1.75;font-weight:300;margin:0 0 26px;max-width:420px}
.ea-auth-perks{list-style:none;padding:0;margin:0 0 26px;display:flex;flex-direction:column;gap:11px}
.ea-auth-perks li{display:flex;align-items:flex-start;gap:11px;font-size:13.5px;color:var(--ink2);font-weight:300;line-height:1.5}
.ea-auth-tick{width:19px;height:19px;border-radius:50%;background:rgba(18,178,166,.14);color:var(--teal-l);display:flex;align-items:center;justify-content:center;font-size:10px;flex-shrink:0;margin-top:1px}
.ea-auth-note{font-size:12px;color:var(--muted2);line-height:1.65;font-weight:300;padding-top:20px;border-top:1px solid var(--line);margin:0;max-width:420px}

.ea-auth-cards{display:grid;grid-template-columns:1fr;gap:18px;align-items:start}
.ea-auth-single .ea-auth-cards,
.ea-auth:not(.ea-auth-split) .ea-auth-cards{grid-template-columns:1fr}
.ea-auth-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:30px 30px 32px;position:relative;overflow:hidden}
.ea-auth-card::before{content:'';position:absolute;top:12px;left:12px;width:14px;height:14px;border:1px solid var(--teal);opacity:.5;border-right:0;border-bottom:0;pointer-events:none}
.ea-auth-card-alt{background:var(--bg2)}
.ea-auth-card-hd{margin-bottom:24px}
.ea-auth-eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:9.5px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--teal);margin-bottom:10px}
.ea-auth-eyebrow::before{content:'';width:5px;height:5px;background:currentColor;transform:rotate(45deg)}
.ea-auth-card-h{font-family:var(--disp);font-size:24px;font-weight:400;letter-spacing:-.02em;color:var(--ink);margin:0;line-height:1.2}
.ea-auth-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:4px 0 22px;flex-wrap:wrap}
.ea-auth-split .ea-auth-intro{position:sticky;top:104px}
.ea-auth-attest{display:flex;flex-direction:column;gap:12px;margin:18px 0 22px;padding:16px 18px;border:1px solid var(--line);border-radius:var(--rs);background:rgba(237,243,244,.02)}
.ea-auth-hint{font-size:13px;color:var(--muted);line-height:1.65;font-weight:300;margin:0 0 18px}
.ea-auth-fine{font-size:11.5px;color:var(--muted2);line-height:1.65;font-weight:300;margin:16px 0 0}
.ea-auth-fine a{color:var(--muted);text-decoration:none;border-bottom:1px solid var(--line3)}
.ea-auth-fine a:hover{color:var(--teal-l);border-bottom-color:var(--teal-l)}
.ea-auth-back{margin:18px 0 0;text-align:center}

/* ── Account shell ── */
.ea-account{padding:8px 0 24px}
.ea-account-hd{margin-bottom:34px}
.ea-account-h{font-family:var(--disp);font-size:clamp(30px,4vw,46px);font-weight:200;line-height:1.06;letter-spacing:-.03em;color:var(--ink);margin:0 0 12px}
.ea-account-h em{font-style:normal;color:var(--teal-l);font-weight:500}
.ea-account-sub{font-size:15px;color:var(--muted);line-height:1.7;font-weight:300;margin:0}
.ea-account-grid{display:grid;grid-template-columns:246px 1fr;gap:26px;align-items:start}

.ea-acct-nav{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:10px;position:sticky;top:104px;width:100%;min-width:230px;box-sizing:border-box}
.ea-acct-nav ul{list-style:none;margin:0;padding:0}
.ea-acct-nav li{margin:0}
.ea-acct-nav li a{display:flex!important;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--rs);font-size:13.5px;font-weight:400;color:var(--ink2)!important;text-decoration:none!important;white-space:nowrap;transition:background .2s,color .2s}
.ea-acct-nav li a:hover{background:rgba(18,178,166,.07);color:var(--ink)}
.ea-acct-nav-ico{flex-shrink:0;opacity:.7;transition:opacity .2s,color .2s}
.ea-acct-nav li a:hover .ea-acct-nav-ico{opacity:1}
.ea-acct-nav li.is-active a{background:rgba(18,178,166,.12);color:var(--ink);font-weight:500}
.ea-acct-nav li.is-active .ea-acct-nav-ico{color:var(--teal-l);opacity:1}
.ea-acct-nav li.woocommerce-MyAccount-navigation-link--customer-logout{margin-top:6px;padding-top:6px;border-top:1px solid var(--line)}
.ea-acct-nav-t{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block!important;visibility:visible!important;font-size:13.5px}

.ea-account-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:30px 32px 34px;min-width:0}
.ea-account-panel > p:first-child{margin-top:0}
.ea-account-panel p{font-size:14.5px;line-height:1.75;color:var(--ink2);font-weight:300;margin:0 0 16px}
.ea-account-panel h2,.ea-account-panel h3,.ea-account-panel legend{font-family:var(--disp);font-size:19px;font-weight:500;color:var(--ink);letter-spacing:-.015em;margin:0 0 16px}
.ea-account-panel a{color:var(--teal-l)}
.ea-account-panel fieldset{border:1px solid var(--line);border-radius:var(--rs);padding:22px 24px;margin:26px 0 0}

/* ── Dashboard ── */
.ea-dash-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:30px}
.ea-dash-stat{background:var(--bg3);border:1px solid var(--line);border-radius:var(--rs);padding:20px 22px}
.ea-dash-stat-v{font-family:var(--disp);font-size:28px;font-weight:300;line-height:1;letter-spacing:-.03em;color:var(--ink)}
.ea-dash-stat-link a{color:var(--teal-l);text-decoration:none}
.ea-dash-stat-l{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted2);margin-top:12px}
.ea-dash-sec{margin-bottom:30px}
.ea-dash-sec-hd{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:14px}
.ea-dash-sec-hd h2{font-family:var(--disp);font-size:17px;font-weight:500;color:var(--ink);letter-spacing:-.01em;margin:0}
.ea-dash-orders{display:flex;flex-direction:column;gap:8px}
.ea-dash-order{display:grid;grid-template-columns:auto 1fr auto auto 18px;align-items:center;gap:14px;padding:15px 18px;background:var(--bg3);border:1px solid var(--line);border-radius:var(--rs);text-decoration:none;color:var(--ink);transition:border-color .25s,background .25s}
.ea-dash-order:hover{border-color:var(--line2);background:var(--panel2)}
.ea-dash-order-no{font-family:var(--mono);font-size:12px;font-weight:500;color:var(--teal-l);letter-spacing:.06em}
.ea-dash-order-date{font-size:12.5px;color:var(--muted);font-weight:300;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ea-dash-order-status{font-family:var(--mono);font-size:9px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);white-space:nowrap;border:1px solid var(--line3);border-radius:var(--rp);padding:4px 10px}
.ea-dash-order-status.ea-st-completed{color:var(--teal-l);border-color:var(--line2)}
.ea-dash-order-status.ea-st-processing{color:#E8B463;border-color:rgba(232,180,99,.35)}
.ea-dash-order-status.ea-st-cancelled,.ea-dash-order-status.ea-st-failed{color:var(--alert);border-color:rgba(226,114,91,.35)}
.ea-dash-order-total{font-family:var(--disp);font-size:14.5px;font-weight:500;color:var(--ink);white-space:nowrap}
.ea-dash-order-arw{color:var(--muted);transition:color .2s,transform .3s;text-align:right}
.ea-dash-order:hover .ea-dash-order-arw{color:var(--teal-l);transform:translateX(3px)}
.ea-dash-empty{padding:38px 24px;text-align:center;background:var(--bg3);border:1px dashed var(--line);border-radius:var(--rs)}
.ea-dash-empty p{color:var(--muted);font-size:14px;margin:0 0 18px}
.ea-dash-links{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ea-dash-link{display:block;padding:18px 20px;background:var(--bg3);border:1px solid var(--line);border-radius:var(--rs);text-decoration:none;transition:border-color .25s,transform .3s cubic-bezier(.16,1,.3,1)}
.ea-dash-link:hover{border-color:var(--line2);transform:translateY(-3px)}
.ea-dash-link-h{display:block;font-family:var(--disp);font-size:15px;font-weight:500;color:var(--ink);margin-bottom:6px}
.ea-dash-link-p{display:block;font-size:12.5px;color:var(--muted);line-height:1.55;font-weight:300}
.ea-dash-note{font-size:11.5px;color:var(--muted2);line-height:1.7;font-weight:300;padding-top:22px;border-top:1px solid var(--line);margin:30px 0 0}

/* ── WooCommerce endpoint tables (orders, downloads) ── */
.woocommerce-MyAccount-content table.shop_table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:var(--rs);overflow:hidden;font-size:13.5px}
.woocommerce-MyAccount-content table.shop_table th{background:var(--bg3);font-family:var(--mono);font-size:9.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);text-align:left;padding:14px 16px;border-bottom:1px solid var(--line)}
.woocommerce-MyAccount-content table.shop_table td{padding:15px 16px;border-bottom:1px solid var(--line);color:var(--ink2);font-weight:300;vertical-align:middle}
.woocommerce-MyAccount-content table.shop_table tr:last-child td{border-bottom:0}
.woocommerce-MyAccount-content table.shop_table .woocommerce-orders-table__cell-order-number a{font-family:var(--mono);font-size:12px;color:var(--teal-l);text-decoration:none;letter-spacing:.06em}
.woocommerce-MyAccount-content table.shop_table .button,
.woocommerce-MyAccount-content .woocommerce-Button,
.woocommerce-MyAccount-content button[type=submit],
.woocommerce-MyAccount-content input[type=submit]{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 22px;border-radius:var(--rp);background:var(--teal);color:#04171B;border:1px solid var(--teal);font-family:var(--sans);font-size:12.5px;font-weight:600;letter-spacing:.05em;text-decoration:none;cursor:pointer;transition:background .25s,transform .3s cubic-bezier(.16,1,.3,1)}
.woocommerce-MyAccount-content table.shop_table .button:hover,
.woocommerce-MyAccount-content .woocommerce-Button:hover,
.woocommerce-MyAccount-content button[type=submit]:hover,
.woocommerce-MyAccount-content input[type=submit]:hover{background:var(--teal-l);border-color:var(--teal-l);transform:translateY(-2px)}
.woocommerce-MyAccount-content .woocommerce-Message,
.woocommerce-MyAccount-content .woocommerce-info{background:var(--bg3);border:1px solid var(--line);border-left:2px solid var(--teal);border-radius:var(--rx);padding:16px 20px;color:var(--ink2);font-size:14px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 20px}
.woocommerce-MyAccount-content .woocommerce-Addresses{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:6px}
.woocommerce-MyAccount-content .woocommerce-Address{background:var(--bg3);border:1px solid var(--line);border-radius:var(--rs);padding:22px 24px}
.woocommerce-MyAccount-content .woocommerce-Address-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px}
.woocommerce-MyAccount-content .woocommerce-Address-title h2,
.woocommerce-MyAccount-content .woocommerce-Address-title h3{margin:0;font-size:16px}
.woocommerce-MyAccount-content address{font-style:normal;font-size:13.5px;line-height:1.75;color:var(--ink2);font-weight:300}
.woocommerce-MyAccount-content .woocommerce-form-row{margin-bottom:16px}
.woocommerce-MyAccount-content .woocommerce-form-row label,
.woocommerce-MyAccount-content .form-row label{display:block;font-family:var(--mono);font-size:9.5px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.woocommerce-MyAccount-content em,
.woocommerce-MyAccount-content .woocommerce-password-hint{font-style:normal;font-size:12px;color:var(--muted2);display:block;margin-top:6px}

/* ══════════════════════════════════════════════════════════════════════
   NEUTRALISE WOOCOMMERCE'S OWN ACCOUNT LAYOUT
   woocommerce.css floats the account nav and content and gives them
   percentage widths (30% / 68%), and floats the address cards at 47%.
   Inside our grid that squeezed the nav until the labels collapsed and
   pushed the address cards into a narrow column.

   These rules are scoped to .ea-account / .ea-account-grid — wrappers this
   theme owns — rather than to a body class, so they apply wherever the
   account templates render.
   ══════════════════════════════════════════════════════════════════════ */
.ea-account-grid > .woocommerce-MyAccount-navigation,
.ea-account-grid > .woocommerce-MyAccount-content{
  float: none !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  min-width: 0;
}
.ea-account::after,
.ea-account-grid::after{ content: none !important; clear: none !important; }

/* Address cards: replace Woo's floats with a real two-up grid. */
.ea-account .woocommerce-Addresses,
.ea-account .u-columns.woocommerce-Addresses,
.ea-account .col2-set.addresses{
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 16px !important;
  margin: 6px 0 0 !important;
  float: none !important;
  width: auto !important;
}
.ea-account .woocommerce-Address,
.ea-account .woocommerce-Addresses > .col-1,
.ea-account .woocommerce-Addresses > .col-2,
.ea-account .col2-set > .col-1,
.ea-account .col2-set > .col-2{
  float: none !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 22px 24px !important;
  background: var(--bg3) !important;
  border: 1px solid var(--line) !important;
  border-radius: var(--rs) !important;
}
.ea-account .woocommerce-Address-title{
  display: flex !important;
  align-items: baseline !important;
  justify-content: space-between !important;
  gap: 14px !important;
  margin: 0 0 14px !important;
}
.ea-account .woocommerce-Address-title h2,
.ea-account .woocommerce-Address-title h3{
  float: none !important; margin: 0 !important; font-size: 16px !important; white-space: nowrap;
}
.ea-account .woocommerce-Address-title a{
  float: none !important;
  white-space: nowrap !important;
  font-size: 12.5px !important;
  color: var(--teal-l) !important;
  font-weight: 400 !important;
  border-bottom: 1px solid rgba(18,178,166,.3);
}
.ea-account address{ font-style: normal; }

/* Edit-address and account-details forms: Woo floats the paired fields. */
.ea-account .form-row-first,
.ea-account .form-row-last,
.ea-account .form-row-wide{
  float: none !important; width: auto !important; margin-left: 0 !important;
}
.ea-account .woocommerce-address-fields__field-wrapper::after,
.ea-account .woocommerce-EditAccountForm::after{ content: none !important; }

/* ── Account notices ── */
.ea-account .woocommerce-message,
.ea-account .woocommerce-info,
.ea-account .woocommerce-error{
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
  padding: 16px 20px !important;
  background: var(--bg3) !important;
  border: 1px solid var(--line) !important;
  border-left: 2px solid var(--teal) !important;
  border-top: none !important;
  border-radius: var(--rx) !important;
  color: var(--ink2) !important;
  font-size: 14px !important;
  list-style: none !important;
  margin: 0 0 20px !important;
}
/* Woo prints an icon-font glyph here; the font isn't loaded, so it rendered
   as an empty box overlapping the text. */
.ea-account .woocommerce-message::before,
.ea-account .woocommerce-info::before,
.ea-account .woocommerce-error::before{
  content: none !important; display: none !important;
}
.ea-account .woocommerce-message .button,
.ea-account .woocommerce-info .button,
.ea-account .woocommerce-error .button{
  float: none !important;
  order: 2;
  margin: 0 !important;
  padding: 10px 20px !important;
  background: var(--teal) !important;
  color: #04171B !important;
  border: 1px solid var(--teal) !important;
  border-radius: var(--rp) !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}
.ea-account .woocommerce-message .button:hover,
.ea-account .woocommerce-info .button:hover{
  background: var(--teal-l) !important; color: #04171B !important;
}

/* ── Affiliate plugin panel sits inside our account panel ── */
.ea-account .affp-account{ color: var(--ink2); }
.ea-account .affp-account .affp-tier-card,
.ea-account .affp-account .affp-code-block,
.ea-account .affp-account .affp-notice{
  background: var(--bg3);
  border-color: var(--line) !important;
  border-radius: var(--rs);
}

@media(max-width:1024px){
  .ea-auth-split{grid-template-columns:1fr;gap:34px}
  .ea-auth-cards{grid-template-columns:1fr}
  .ea-account-grid{grid-template-columns:1fr;gap:18px}
  .ea-acct-nav{position:static;min-width:0}
  .ea-acct-nav ul{display:flex;flex-wrap:wrap;gap:4px}
  .ea-acct-nav li a{padding:10px 14px}
  .ea-acct-nav li.woocommerce-MyAccount-navigation-link--customer-logout{margin-top:0;padding-top:0;border-top:0}
}
@media(max-width:720px){
  .ea-auth-card{padding:24px 22px 26px}
  .ea-account-panel{padding:22px 20px 26px}
  .ea-dash-stats{grid-template-columns:1fr;gap:10px}
  .ea-dash-links{grid-template-columns:1fr}
  .ea-dash-order{grid-template-columns:auto 1fr;gap:8px 12px}
  .ea-dash-order-status{grid-column:1;justify-self:start}
  .ea-dash-order-total{grid-column:2;justify-self:end}
  .ea-dash-order-arw{display:none}
  .ea-account .woocommerce-Addresses,
  .ea-account .u-columns.woocommerce-Addresses,
  .ea-account .col2-set.addresses{grid-template-columns:1fr !important}
  .ea-account .woocommerce-message,
  .ea-account .woocommerce-info{align-items:flex-start !important}
  .ea-account .woocommerce-message .button,
  .ea-account .woocommerce-info .button{width:100%}
  .woocommerce-MyAccount-content table.shop_table th:nth-child(2),
  .woocommerce-MyAccount-content table.shop_table td:nth-child(2){display:none}
}

/* Variation image swap + certificate button visibility on the product page. */
.pdp-img{transition:opacity .22s ease}
.pdp-img.is-swapping{opacity:.35}
.pdp-coa-btn.is-hidden{display:none !important}
