/*
Theme Name: Aukurban x Caldri
Theme URI: https://aukurban.in
Author: Aukurban
Description: Single-page animated parallax storefront for the Aukurban x Caldri sneaker drop. Cut-out product photography, scroll-linked colour panels and a built-in mini game.
Version: 5.7
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: aukurban-caldri
*/

html, body { margin:0; padding:0; }
body { background:#0A0A0E; }
/* ===== AUKURBAN x CALDRI — everything scoped under .ax ===== */
.ax *, .ax *::before, .ax *::after { box-sizing: border-box; }
.ax {
  --ink:#0A0A0E; --ink2:#111117; --bone:#F4F0E8; --bone-dim:rgba(244,240,232,.62);
  --bone-far:rgba(244,240,232,.34); --gold:#D8A93B; --edge:rgba(244,240,232,.12);
  --disp:'Big Shoulders Display', 'Arial Narrow', sans-serif;
  --body:'DM Sans', system-ui, sans-serif;
  --mono:'DM Mono', ui-monospace, monospace;
  background:var(--ink); color:var(--bone); font-family:var(--body);
  font-size:16px; line-height:1.55; -webkit-font-smoothing:antialiased;
  overflow-x:clip; position:relative;
}
.ax img { max-width:100%; height:auto; display:block; }
.ax a { color:inherit; text-decoration:none; }
.ax button, .ax input { font:inherit; color:inherit; }
.ax :focus-visible { outline:2px solid var(--gold); outline-offset:3px; }
.ax .wrap { width:min(1240px, 92vw); margin-inline:auto; }
.ax section { position:relative; }

/* type */
.ax .disp { font-family:var(--disp); font-weight:900; line-height:.86;
  text-transform:uppercase; letter-spacing:-.005em; margin:0;
  font-size:clamp(44px, 8.4vw, 128px); text-wrap:balance; }
.ax .disp em { font-style:normal; color:var(--gold); }
.ax .giant { font-family:var(--disp); font-weight:900; text-transform:uppercase;
  line-height:.78; letter-spacing:-.02em; margin:0; font-size:clamp(84px, 22vw, 300px); }
.ax .eyebrow { font-family:var(--mono); font-size:11px; letter-spacing:.28em;
  text-transform:uppercase; color:var(--bone-far); margin:0; }
.ax .lede { font-size:clamp(15px, 1.5vw, 19px); color:var(--bone-dim); max-width:52ch; margin:0; }
.ax .head { display:grid; gap:16px; margin-bottom:clamp(34px, 5vw, 64px); }

/* buttons */
.ax .btn { display:inline-flex; align-items:center; gap:10px; border:1px solid var(--bone);
  background:transparent; color:var(--bone); padding:14px 26px; border-radius:999px;
  font-weight:700; font-size:14px; letter-spacing:.02em; cursor:pointer;
  transition:background .35s, color .35s, transform .25s; }
.ax .btn:hover { background:var(--bone); color:var(--ink); }
.ax .btn.gold { background:var(--gold); border-color:var(--gold); color:#1A1408; }
.ax .btn.gold:hover { background:var(--bone); border-color:var(--bone); }

/* reveal primitives - the page is fully visible without JavaScript.
   JS adds .anim to the root, and only then do elements start hidden. */
.ax [data-mask] { display:block; overflow:hidden; }
.ax [data-mask] > span { display:block; transition:transform .95s cubic-bezier(.19,1,.22,1); transition-delay:var(--d,0ms); }
.ax.anim [data-mask] > span { transform:translateY(105%); }
.ax.anim .in [data-mask] > span, .ax.anim [data-mask].in > span { transform:none; }
.ax [data-rise] { transition:opacity .8s ease, transform .9s cubic-bezier(.19,1,.22,1); transition-delay:var(--d,0ms); }
.ax.anim [data-rise] { opacity:0; transform:translateY(26px); }
.ax.anim [data-rise].in, .ax.anim .in [data-rise] { opacity:1; transform:none; }
.ax [data-wipe] { position:relative; overflow:hidden; }
.ax.anim [data-wipe]::after { content:''; position:absolute; inset:0; background:var(--ink2);
  transform-origin:bottom; transition:transform 1.05s cubic-bezier(.76,0,.24,1); transition-delay:var(--d,0ms); z-index:2; }
.ax.anim [data-wipe].in::after { transform:scaleY(0); }

/* cursor (desktop only) */
.ax .cursor { position:fixed; z-index:9999; left:0; top:0; width:26px; height:26px;
  border:1px solid var(--gold); border-radius:50%; pointer-events:none; mix-blend-mode:difference;
  transform:translate(-50%,-50%); transition:width .25s, height .25s, background .25s; display:none; }
@media (hover:hover) and (pointer:fine) { .ax .cursor { display:block; } .ax.hascursor { cursor:none; } .ax.hascursor a, .ax.hascursor button { cursor:none; } }
.ax .cursor.big { width:64px; height:64px; background:rgba(216,169,59,.16); }

/* ============ NAV ============ */
.ax .nav { position:fixed; inset:0 0 auto 0; z-index:900; display:flex; align-items:center;
  justify-content:space-between; gap:18px; padding:16px clamp(16px,4vw,44px);
  background:linear-gradient(var(--ink), rgba(10,10,14,0)); transition:background .4s, padding .4s; }
.ax .nav.solid { background:rgba(10,10,14,.9); backdrop-filter:blur(14px); padding-block:11px; border-bottom:1px solid var(--edge); }
.ax .brand { font-family:var(--disp); font-weight:900; font-size:clamp(17px,2.2vw,24px);
  letter-spacing:.07em; white-space:nowrap; line-height:1; }
.ax .brand i { font-style:normal; color:var(--gold); margin:0 .16em; }
.ax .brand small { display:block; font-family:var(--mono); font-size:8.5px; letter-spacing:.3em;
  color:var(--bone-far); margin-top:2px; }
.ax .navlinks { display:none; gap:26px; font-size:13px; letter-spacing:.04em; }
.ax .navlinks a { position:relative; padding-block:4px; color:var(--bone-dim); transition:color .3s; }
.ax .navlinks a::after { content:''; position:absolute; left:0; right:100%; bottom:0; height:1px;
  background:var(--gold); transition:right .4s cubic-bezier(.19,1,.22,1); }
.ax .navlinks a:hover { color:var(--bone); } .ax .navlinks a:hover::after { right:0; }
@media (min-width:900px) { .ax .navlinks { display:flex; } }
.ax .navcta { border:1px solid var(--edge); background:transparent; border-radius:999px;
  padding:9px 18px; font-size:12.5px; font-weight:700; cursor:pointer; white-space:nowrap;
  transition:background .3s, color .3s, border-color .3s; }
.ax .navcta:hover { background:var(--gold); border-color:var(--gold); color:#1A1408; }

/* progress bar */
.ax .prog { position:fixed; left:0; top:0; height:2px; width:100%; transform:scaleX(0);
  transform-origin:left; background:var(--gold); z-index:950; }

/* ============ 1 HERO ============ */
.ax .hero { min-height:100svh; display:flex; align-items:center; padding:120px 0 60px; overflow:hidden; }
.ax .hero-grid { display:grid; gap:34px; align-items:center; }
@media (min-width:900px) { .ax .hero-grid { grid-template-columns:1fr 1.05fr; gap:40px; } }
.ax .hero-shoe { position:relative; display:grid; place-items:center; }
.ax .hero-shoe .aura { position:absolute; width:min(78vw,560px); aspect-ratio:1; border-radius:50%;
  background:radial-gradient(circle, rgba(216,169,59,.30), rgba(216,169,59,0) 68%); filter:blur(6px); }
.ax .hero-shoe .ring { position:absolute; width:min(72vw,500px); aspect-ratio:1; border:1px solid var(--edge); border-radius:50%; }
.ax .hero-shoe img { position:relative; width:min(88vw,620px);
  filter:drop-shadow(0 46px 60px rgba(0,0,0,.72)); animation:hover 7s ease-in-out infinite; }
@keyframes hover { 0%,100%{transform:translateY(-10px) rotate(-3deg)} 50%{transform:translateY(12px) rotate(-1deg)} }
.ax .scrollcue { display:inline-flex; align-items:center; gap:10px; font-family:var(--mono);
  font-size:10.5px; letter-spacing:.26em; text-transform:uppercase; color:var(--bone-far); margin-top:34px; }
.ax .scrollcue i { display:block; width:1px; height:34px; background:linear-gradient(var(--gold), transparent); animation:cue 1.9s ease-in-out infinite; }
@keyframes cue { 0%,100%{transform:scaleY(.35); transform-origin:top} 50%{transform:scaleY(1); transform-origin:top} }
.ax .heroTags { display:flex; flex-wrap:wrap; gap:8px; margin-top:26px; }
.ax .tag { font-family:var(--mono); font-size:10.5px; letter-spacing:.16em; text-transform:uppercase;
  border:1px solid var(--edge); border-radius:999px; padding:7px 13px; color:var(--bone-dim); }

/* ============ 2 TICKER ============ */
.ax .ticker { border-block:1px solid var(--edge); background:var(--ink2); overflow:hidden; }
.ax .ticker-row { display:flex; width:max-content; animation:slide 30s linear infinite; }
.ax .ticker:hover .ticker-row { animation-play-state:paused; }
.ax .ticker span { font-family:var(--disp); font-weight:700; font-size:clamp(30px,5.4vw,58px);
  text-transform:uppercase; padding:12px 22px; color:transparent;
  -webkit-text-stroke:1px rgba(244,240,232,.38); white-space:nowrap; }
.ax .ticker span:nth-child(even) { color:var(--gold); -webkit-text-stroke:0; }
@keyframes slide { to { transform:translateX(-50%); } }

/* ============ 3 PARALLAX COLOUR PANELS ============ */
.ax .panels { position:relative; }
.ax .panel { position:relative; height:190vh; }
.ax .panel .stick { position:sticky; top:0; height:100svh; overflow:hidden;
  --avail: calc(100svh - 216px);
  display:grid; grid-template-rows:minmax(0,1fr); grid-template-columns:minmax(0,1fr);
  place-items:center; padding:92px clamp(16px,5vw,60px) 124px; }
.ax .panel .bg { position:absolute; inset:0; background:var(--c); }
.ax .panel .bg::after { content:''; position:absolute; inset:0;
  background:radial-gradient(120% 80% at 50% 110%, rgba(0,0,0,.42), rgba(0,0,0,0) 60%); }
.ax .panel .word { position:absolute; width:100%; text-align:center; color:var(--w, rgba(255,255,255,.16));
  pointer-events:none; user-select:none; white-space:nowrap; }
.ax .panel .shoe { position:relative; width:min(78vw, 720px); max-width:100%;
  height:auto; max-height:var(--avail, 100%); object-fit:contain;
  filter:drop-shadow(0 60px 46px rgba(0,0,0,.5)); will-change:transform; }
.ax .panel .meta { position:absolute; left:clamp(16px,5vw,60px); bottom:clamp(22px,5vh,54px);
  display:grid; gap:6px; max-width:min(78vw,420px); }
.ax .panel .meta h3 { font-family:var(--disp); font-weight:900; text-transform:uppercase;
  font-size:clamp(30px,4.6vw,62px); line-height:.9; margin:0; }
.ax .panel .meta p { margin:0; font-size:13.5px; color:rgba(255,255,255,.72); }
.ax .panel .price { position:absolute; right:clamp(16px,5vw,60px); bottom:clamp(22px,5vh,54px);
  font-family:var(--mono); font-size:clamp(15px,2vw,22px); letter-spacing:.04em; }
.ax .panel .idx { position:absolute; right:clamp(16px,5vw,60px); top:clamp(80px,12vh,130px);
  font-family:var(--mono); font-size:11px; letter-spacing:.24em; color:rgba(255,255,255,.5); }
.ax .panel .chip { position:absolute; font-family:var(--mono); font-size:10px; letter-spacing:.14em;
  text-transform:uppercase; background:rgba(0,0,0,.32); border:1px solid rgba(255,255,255,.2);
  border-radius:999px; padding:6px 12px; backdrop-filter:blur(6px); white-space:nowrap; max-width:46vw; overflow:hidden; text-overflow:ellipsis; }
.ax .panel.light .meta p { color:rgba(0,0,0,.66); }
.ax .panel.light, .ax .panel.light .price, .ax .panel.light .meta h3 { color:#14120E; }
.ax .panel.light .chip { background:rgba(255,255,255,.42); border-color:rgba(0,0,0,.16); color:#14120E; }
.ax .panel.light .idx { color:rgba(0,0,0,.5); }

/* ============ 4 DROP GRID ============ */
.ax .sec { padding:clamp(78px,11vw,150px) 0; }
.ax .grid3 { display:grid; gap:18px; grid-template-columns:1fr; }
@media (min-width:760px) { .ax .grid3 { grid-template-columns:repeat(3,1fr); gap:20px; } }
.ax .card { position:relative; border:1px solid var(--edge); border-radius:20px; overflow:hidden;
  background:var(--tint); transition:transform .55s cubic-bezier(.19,1,.22,1), border-color .4s; }
.ax .card:hover { transform:translateY(-8px); border-color:rgba(244,240,232,.3); }
.ax .card .stage { aspect-ratio:4/3.1; display:grid; place-items:center; padding:20px; position:relative; }
.ax .card .stage::before { content:''; position:absolute; inset:0;
  background:radial-gradient(70% 60% at 50% 40%, rgba(255,255,255,.14), rgba(255,255,255,0) 70%); }
.ax .card .stage img { position:relative; width:88%; filter:drop-shadow(0 26px 26px rgba(0,0,0,.5));
  transition:transform .7s cubic-bezier(.19,1,.22,1), opacity .3s; }
.ax .card:hover .stage img { transform:scale(1.07) rotate(-3deg); }
.ax .card .info { padding:16px 18px 20px; border-top:1px solid var(--edge);
  display:flex; align-items:flex-end; justify-content:space-between; gap:14px; background:rgba(10,10,14,.55); }
.ax .card h3 { font-family:var(--disp); font-weight:900; text-transform:uppercase;
  font-size:26px; line-height:.95; margin:0 0 3px; }
.ax .card .sub { font-family:var(--mono); font-size:10.5px; letter-spacing:.16em;
  text-transform:uppercase; color:var(--bone-far); }
.ax .card .amt { font-family:var(--mono); font-size:15px; white-space:nowrap; }
.ax .swatches { display:flex; gap:8px; padding:0 18px 18px; background:rgba(10,10,14,.55); }
.ax .sw { width:24px; height:24px; border-radius:50%; border:1px solid rgba(244,240,232,.35);
  cursor:pointer; padding:0; transition:transform .25s, box-shadow .25s; }
.ax .sw:hover { transform:scale(1.16); }
.ax .sw[aria-pressed="true"] { box-shadow:0 0 0 2px var(--ink), 0 0 0 3px var(--gold); }

/* ============ 5 ANATOMY ============ */
.ax .anat { display:grid; gap:34px; align-items:center; }
@media (min-width:960px) { .ax .anat { grid-template-columns:1.15fr .85fr; gap:48px; } }
.ax .anat-stage { position:relative; display:grid; place-items:center;
  background:linear-gradient(150deg, #1A1A22, #0C0C11); border:1px solid var(--edge);
  border-radius:24px; padding:clamp(20px,5vw,54px); overflow:hidden; }
.ax .anat-stage img { width:100%; filter:drop-shadow(0 40px 40px rgba(0,0,0,.6)); }
.ax .hot { position:absolute; width:22px; height:22px; border-radius:50%; border:none;
  background:var(--gold); cursor:pointer; padding:0; }
.ax .hot::after { content:''; position:absolute; inset:-9px; border-radius:50%;
  border:1px solid var(--gold); opacity:.55; animation:ping 2.4s ease-out infinite; }
@keyframes ping { 0%{transform:scale(.7); opacity:.7} 100%{transform:scale(1.7); opacity:0} }
.ax .hot[aria-pressed="true"] { background:var(--bone); }
.ax .anat-list { display:grid; gap:2px; }
.ax .anat-item { border-top:1px solid var(--edge); padding:16px 4px; cursor:pointer; }
.ax .anat-item:last-child { border-bottom:1px solid var(--edge); }
.ax .anat-item h4 { margin:0; font-family:var(--disp); font-weight:700; text-transform:uppercase;
  font-size:22px; letter-spacing:.01em; display:flex; align-items:center; gap:12px; transition:color .3s; }
.ax .anat-item h4 b { font-family:var(--mono); font-weight:400; font-size:11px; color:var(--gold); }
.ax .anat-item p { margin:0; color:var(--bone-dim); font-size:14px;
  max-height:0; opacity:0; overflow:hidden; transition:max-height .5s ease, opacity .4s, margin .4s; }
.ax .anat-item.on p { max-height:120px; opacity:1; margin-top:9px; }
.ax .anat-item.on h4 { color:var(--gold); }

/* ============ 6 GAME ============ */
.ax .game { background:linear-gradient(180deg, #0C0C11, #14141C 60%, #0C0C11); border-block:1px solid var(--edge); }
.ax .gwrap { display:grid; gap:22px; justify-items:center; }
.ax .gbox { width:100%; max-width:920px; border:1px solid var(--edge); border-radius:20px;
  overflow:hidden; background:#08080C; position:relative; }
.ax .gbox canvas { display:block; width:100%; height:auto; touch-action:manipulation; }
.ax .gbar { display:flex; align-items:center; justify-content:space-between; gap:14px;
  padding:12px 16px; border-bottom:1px solid var(--edge); font-family:var(--mono); font-size:12px; }
.ax .gbar b { color:var(--gold); font-weight:500; }
.ax .gover { position:absolute; inset:44px 0 0 0; display:grid; place-items:center; gap:12px;
  align-content:center; background:rgba(8,8,12,.86); backdrop-filter:blur(4px); text-align:center; padding:20px; }
.ax .gover.hide { display:none; }
.ax .gover h3 { font-family:var(--disp); font-weight:900; text-transform:uppercase;
  font-size:clamp(30px,5vw,54px); margin:0; line-height:.9; }
.ax .gover p { margin:0; color:var(--bone-dim); font-size:14px; }

/* ============ 7 FIT ============ */
.ax .fit { display:grid; gap:34px; align-items:center; }
@media (min-width:960px) { .ax .fit { grid-template-columns:.9fr 1.1fr; gap:52px; } }
.ax .fitpic { border-radius:24px; overflow:hidden; background:linear-gradient(160deg,#1C1C24,#0B0B10);
  border:1px solid var(--edge); display:grid; place-items:center; padding:clamp(18px,4vw,46px); }
.ax .fitpic img { width:100%; filter:drop-shadow(0 34px 34px rgba(0,0,0,.55)); }
.ax .sizes { display:flex; flex-wrap:wrap; gap:9px; }
.ax .size { border:1px solid var(--edge); background:transparent; border-radius:12px;
  min-width:56px; padding:11px 8px; font-family:var(--mono); font-size:14px; cursor:pointer;
  transition:background .3s, color .3s, border-color .3s, transform .25s; }
.ax .size:hover { transform:translateY(-3px); border-color:var(--bone-far); }
.ax .size[aria-pressed="true"] { background:var(--gold); border-color:var(--gold); color:#1A1408; font-weight:500; }
.ax .fitread { margin-top:22px; border:1px solid var(--edge); border-radius:16px; padding:18px 20px;
  background:rgba(255,255,255,.03); display:grid; gap:6px; }
.ax .fitread b { font-family:var(--disp); font-weight:900; text-transform:uppercase; font-size:26px; line-height:1; }
.ax .fitread span { color:var(--bone-dim); font-size:14px; }
.ax .fitbar { height:5px; border-radius:99px; background:rgba(244,240,232,.13); overflow:hidden; margin-top:6px; }
.ax .fitbar i { display:block; height:100%; background:var(--gold); width:50%; transition:width .6s cubic-bezier(.19,1,.22,1); }

/* ============ 8 CRAFT ============ */
.ax .craft { display:grid; gap:30px; }
@media (min-width:960px) { .ax .craft { grid-template-columns:1fr 1fr; gap:60px; align-items:start; } }
.ax .craft-media { position:sticky; top:96px; border-radius:24px; overflow:hidden;
  border:1px solid var(--edge); background:var(--cm,#151520); display:grid; place-items:center;
  padding:clamp(20px,4vw,44px); transition:background .8s ease; aspect-ratio:1/1; }
.ax .craft-media img { width:92%; filter:drop-shadow(0 36px 34px rgba(0,0,0,.55));
  transition:transform .9s cubic-bezier(.19,1,.22,1), opacity .5s; }
.ax .steps { display:grid; }
.ax .step { padding:clamp(40px,10vh,110px) 0; border-top:1px solid var(--edge); opacity:.32; transition:opacity .6s; }
.ax .step.on { opacity:1; }
.ax .step b { font-family:var(--mono); font-size:11px; letter-spacing:.24em; color:var(--gold); }
.ax .step h3 { font-family:var(--disp); font-weight:900; text-transform:uppercase;
  font-size:clamp(28px,4.4vw,52px); line-height:.92; margin:10px 0 12px; }
.ax .step p { margin:0; color:var(--bone-dim); font-size:15px; max-width:46ch; }

/* ============ 9 LOOKBOOK ============ */
.ax .looks { display:grid; gap:14px; grid-template-columns:repeat(2,1fr); }
@media (min-width:840px) { .ax .looks { grid-template-columns:repeat(4,1fr); gap:16px; } }
.ax .look { position:relative; border-radius:18px; overflow:hidden; background:var(--c);
  display:grid; place-items:center; padding:14%; aspect-ratio:3/4; }
.ax .look:nth-child(4n+2), .ax .look:nth-child(4n+3) { aspect-ratio:3/3.4; }
.ax .look img { width:100%; filter:drop-shadow(0 20px 20px rgba(0,0,0,.4));
  transform:translateY(var(--p,0)) scale(1.02); transition:transform .2s linear; }
.ax .look span { position:absolute; left:12px; bottom:11px; font-family:var(--mono);
  font-size:9.5px; letter-spacing:.2em; text-transform:uppercase; color:rgba(255,255,255,.8); }
.ax .look.light span { color:rgba(0,0,0,.7); }

/* ============ 10 NUMBERS ============ */
.ax .nums { list-style:none; padding:0; margin:0; display:grid; gap:2px; grid-template-columns:repeat(2,1fr); }
@media (min-width:760px) { .ax .nums { grid-template-columns:repeat(4,1fr); } }
.ax .nums li { border-top:1px solid var(--edge); padding:26px 4px 8px; }
.ax .nums b { display:block; font-family:var(--disp); font-weight:900;
  font-size:clamp(48px,7vw,96px); line-height:.9; letter-spacing:-.02em; }
.ax .nums span { font-family:var(--mono); font-size:10.5px; letter-spacing:.2em;
  text-transform:uppercase; color:var(--bone-far); }

/* ============ 11 CTA + FOOTER ============ */
.ax .cta { text-align:center; padding:clamp(90px,14vw,180px) 0; position:relative; overflow:hidden; }
.ax .cta::before { content:''; position:absolute; left:50%; top:50%; width:min(120vw,900px);
  aspect-ratio:1; transform:translate(-50%,-50%); border-radius:50%;
  background:radial-gradient(circle, rgba(216,169,59,.14), rgba(216,169,59,0) 66%); }
.ax .cta > .wrap { position:relative; }
.ax .joinform { display:flex; flex-wrap:wrap; gap:10px; justify-content:center; margin-top:30px; }
.ax .joinform input { flex:1 1 250px; max-width:340px; background:transparent;
  border:1px solid var(--edge); border-radius:999px; padding:14px 20px; font-size:14px; }
.ax .joinform input:focus { border-color:var(--gold); outline:none; }
.ax .joinmsg { margin-top:14px; font-family:var(--mono); font-size:12px; color:var(--gold); min-height:18px; }
.ax footer { border-top:1px solid var(--edge); padding:26px clamp(16px,4vw,44px);
  display:flex; flex-wrap:wrap; gap:12px; justify-content:space-between;
  font-family:var(--mono); font-size:11px; letter-spacing:.14em;
  text-transform:uppercase; color:var(--bone-far); }

/* ============ MOBILE TUNING ============ */
@media (max-width:759px) {
  .ax .panel { height:170vh; }
  .ax .panel .stick { padding:84px 16px 130px; --avail: calc(100svh - 214px); }
  .ax .panel .shoe { width:min(88vw, 460px); }
  .ax .panel .meta { max-width:66vw; }
  .ax .hero { padding:100px 0 40px; }
  .ax .hero-grid { gap:16px; }
  .ax .heroTags { display:none; }
  .ax .hero-shoe img { width:78vw; }
  .ax .hero-shoe .aura, .ax .hero-shoe .ring { width:70vw; }
  .ax .scrollcue { margin-top:18px; }
  .ax .scrollcue i { height:26px; }
  .ax .panel .idx { display:none; }
  .ax .panel .chip { font-size:9px; padding:5px 9px; }
}

/* WordPress admin bar offset (logged-in view only) */
body.admin-bar .ax .nav { top: 32px; }
body.admin-bar .ax .panel .stick { height: calc(100svh - 32px); --avail: calc(100svh - 248px); }
@media screen and (max-width: 782px) {
  body.admin-bar .ax .nav { top: 46px; }
  body.admin-bar .ax .panel .stick { height: calc(100svh - 46px); --avail: calc(100svh - 260px); }
}

@media (prefers-reduced-motion:reduce) {
  .ax *, .ax *::before, .ax *::after { animation:none !important; transition-duration:.01ms !important; }
  .ax [data-mask] > span { transform:none; } .ax [data-rise] { opacity:1; transform:none; }
  .ax [data-wipe]::after { display:none; }
  .ax .panel { height:auto; } .ax .panel .stick { position:relative; height:auto; padding:70px 0; }
}

/* hero + panel + grid additions */
.ax .herocta { display:flex; flex-wrap:wrap; gap:10px; margin-top:26px; }
.ax .panel .shoelink { position:relative; display:block; max-width:100%; max-height:100%; min-height:0; line-height:0; }
.ax .panel .meta h3 a { color:inherit; }
.ax .panel .meta h3 a:hover { text-decoration:underline; text-underline-offset:6px; }
.ax .panel .panelcta { position:absolute; right:clamp(16px,5vw,60px); top:clamp(120px,17vh,180px);
  padding:11px 20px; font-size:13px; }
.ax .panel.light .panelcta { border-color:rgba(0,0,0,.4); color:#14120E; }
.ax .panel.light .panelcta:hover { background:#14120E; color:#E7E1D3; }
.ax .panel .price .amount, .ax .panel .price bdi { font-family:var(--mono); }
@media (max-width:759px) { .ax .panel .panelcta { display:none; } }

/* front-page product grid (mirrors the shop cards) */
.ax ul.aukx-grid { list-style:none; margin:0; padding:0; display:grid; gap:16px;
  grid-template-columns:repeat(2,1fr); }
@media (min-width:760px) { .ax ul.aukx-grid { grid-template-columns:repeat(3,1fr); gap:20px; } }
.ax ul.aukx-grid li.product { border:1px solid var(--edge); border-radius:20px; overflow:hidden;
  background:linear-gradient(165deg,#16161E,#0C0C12);
  transition:transform .5s cubic-bezier(.19,1,.22,1), border-color .4s; }
.ax ul.aukx-grid li.product:hover { transform:translateY(-7px); border-color:rgba(244,240,232,.3); }
.ax ul.aukx-grid li.product > a { display:block; }
.ax ul.aukx-grid img { width:100%; aspect-ratio:4/3.2; object-fit:contain; padding:16px 14px 4px;
  background:radial-gradient(66% 58% at 50% 42%, rgba(255,255,255,.10), rgba(255,255,255,0) 72%);
  transition:transform .6s cubic-bezier(.19,1,.22,1); }
.ax ul.aukx-grid li.product:hover img { transform:scale(1.06) rotate(-2.5deg); }
.ax ul.aukx-grid .woocommerce-loop-product__title { font-family:var(--body); font-weight:500;
  font-size:14px; line-height:1.35; padding:12px 16px 0; margin:0; color:var(--bone); }
.ax ul.aukx-grid .price { display:block; padding:6px 16px 18px; font-family:var(--mono);
  font-size:15px; color:var(--gold); }
.ax .allcta { display:flex; justify-content:center; margin-top:34px; }

/* lookbook tiles are links now */
.ax a.look { text-decoration:none; }
.ax a.look:hover img { transform:translateY(var(--p,0)) scale(1.07); }

/* ================= SHOP (WooCommerce) ================= */
.ax.shoppage { min-height: 100vh; display: flex; flex-direction: column; }
.ax .shopmain { flex: 1; padding: 120px 0 clamp(70px, 10vw, 130px); }
body.admin-bar .ax .shopmain { padding-top: 140px; }
.ax .cartlink { display: inline-flex; align-items: center; gap: 8px; }
.ax .cartcount { display: inline-grid; place-items: center; min-width: 20px; height: 20px;
  padding: 0 6px; border-radius: 999px; background: var(--gold); color: #1A1408;
  font-family: var(--mono); font-size: 11px; line-height: 1; }
.ax .cartcount.zero { background: rgba(244,240,232,.16); color: var(--bone-dim); }

/* headings */
.ax .shopmain h1, .ax .woocommerce-products-header__title, .ax .product_title {
  font-family: var(--disp); font-weight: 900; text-transform: uppercase; line-height: .9;
  font-size: clamp(38px, 6vw, 82px); letter-spacing: -.01em; margin: 0 0 10px; }
.ax .aukx-shopnote { color: var(--bone-dim); font-size: 15px; margin: 0 0 30px; max-width: 54ch; }
.ax .woocommerce-result-count { font-family: var(--mono); font-size: 11px; letter-spacing: .18em;
  text-transform: uppercase; color: var(--bone-far); margin: 0 0 18px; }
.ax .woocommerce-ordering { margin: 0 0 24px; }
.ax .woocommerce-ordering select, .ax select, .ax .input-text, .ax input[type="text"],
.ax input[type="email"], .ax input[type="tel"], .ax input[type="password"], .ax textarea {
  background: rgba(255,255,255,.04); border: 1px solid var(--edge); color: var(--bone);
  border-radius: 12px; padding: 12px 14px; font: inherit; font-size: 14px; width: 100%; max-width: 100%; }
.ax select { appearance: none; padding-right: 34px;
  background-image: linear-gradient(45deg, transparent 50%, var(--bone-dim) 50%), linear-gradient(135deg, var(--bone-dim) 50%, transparent 50%);
  background-position: right 16px center, right 11px center; background-size: 5px 5px, 5px 5px; background-repeat: no-repeat; }
.ax select option { background: var(--ink2); color: var(--bone); }

/* ---- product grid ---- */
.ax ul.products { list-style: none; margin: 0; padding: 0;
  display: grid; gap: 16px; grid-template-columns: repeat(2, 1fr); }
@media (min-width: 760px) { .ax ul.products { grid-template-columns: repeat(3, 1fr); gap: 20px; } }
.ax ul.products li.product { position: relative; border: 1px solid var(--edge); border-radius: 20px;
  overflow: hidden; background: linear-gradient(165deg, #16161E, #0C0C12);
  display: flex; flex-direction: column; transition: transform .5s cubic-bezier(.19,1,.22,1), border-color .4s; }
.ax ul.products li.product:hover { transform: translateY(-7px); border-color: rgba(244,240,232,.3); }
.ax ul.products li.product > a { display: flex; flex-direction: column; flex: 1; }
.ax ul.products li.product img { aspect-ratio: 4/3.2; object-fit: contain; padding: 16px 14px 4px;
  background: radial-gradient(66% 58% at 50% 42%, rgba(255,255,255,.10), rgba(255,255,255,0) 72%);
  transition: transform .6s cubic-bezier(.19,1,.22,1); width: 100%; }
.ax ul.products li.product:hover img { transform: scale(1.06) rotate(-2.5deg); }
.ax ul.products li.product .woocommerce-loop-product__title {
  font-family: var(--body); font-weight: 500; font-size: 14px; line-height: 1.35;
  padding: 12px 16px 0; margin: 0; color: var(--bone); }
.ax ul.products li.product .price { display: block; padding: 6px 16px 0; margin: 0;
  font-family: var(--mono); font-size: 15px; color: var(--gold); }
.ax ul.products li.product .price del { color: var(--bone-far); margin-right: 7px; }
.ax ul.products li.product .price ins { text-decoration: none; }
.ax ul.products li.product .button { margin: 12px 16px 16px; align-self: flex-start;
  border: 1px solid var(--edge); background: transparent; color: var(--bone);
  border-radius: 999px; padding: 9px 18px; font-size: 12.5px; font-weight: 700;
  transition: background .3s, color .3s, border-color .3s; }
.ax ul.products li.product .button:hover { background: var(--bone); color: var(--ink); border-color: var(--bone); }
.ax span.onsale { position: absolute; left: 12px; top: 12px; z-index: 2; background: var(--gold);
  color: #1A1408; font-family: var(--mono); font-size: 10px; letter-spacing: .12em;
  text-transform: uppercase; border-radius: 999px; padding: 5px 11px; }

/* ---- single product ---- */
.ax .single-product div.product { display: grid; gap: 30px; }
@media (min-width: 900px) { .ax .single-product div.product { grid-template-columns: 1.05fr .95fr; gap: 52px; align-items: start; } }
.ax .woocommerce-product-gallery { border: 1px solid var(--edge); border-radius: 24px; overflow: hidden;
  background: linear-gradient(160deg, #1A1A24, #0B0B10); padding: clamp(14px, 3vw, 34px); }
.ax .woocommerce-product-gallery img { width: 100%; height: auto; }
.ax .flex-control-thumbs { list-style: none; display: flex; gap: 8px; padding: 12px 0 0; margin: 0; }
.ax .flex-control-thumbs li { width: 68px; }
.ax .flex-control-thumbs img { border: 1px solid var(--edge); border-radius: 10px; cursor: pointer; opacity: .55; }
.ax .flex-control-thumbs img.flex-active { opacity: 1; border-color: var(--gold); }
.ax .summary .price { font-family: var(--mono); font-size: clamp(21px, 3vw, 29px); color: var(--gold); margin: 0 0 6px; display: block; }
.ax .summary .price del { color: var(--bone-far); font-size: .7em; margin-right: 9px; }
.ax .summary .price ins { text-decoration: none; }
.ax .aukx-stock { font-family: var(--mono); font-size: 11.5px; letter-spacing: .12em;
  text-transform: uppercase; color: var(--bone-far); margin: 0 0 20px; }
.ax .woocommerce-product-details__short-description, .ax .woocommerce-Tabs-panel p {
  color: var(--bone-dim); font-size: 15px; line-height: 1.65; }

/* variation (size) picker */
.ax table.variations { width: 100%; border-collapse: collapse; margin: 4px 0 16px; }
.ax table.variations th, .ax table.variations td { display: block; padding: 0; text-align: left; }
.ax table.variations th.label label { font-family: var(--mono); font-size: 11px; letter-spacing: .2em;
  text-transform: uppercase; color: var(--bone-far); display: block; margin-bottom: 9px; }
.ax .reset_variations { display: inline-block; margin-top: 10px; font-family: var(--mono);
  font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--bone-far);
  border-bottom: 1px solid var(--edge); }
.ax .woocommerce-variation-price { margin-bottom: 12px; }
.ax .woocommerce-variation-availability p { font-family: var(--mono); font-size: 12px; color: var(--gold); margin: 0 0 10px; }

/* qty + add to cart */
.ax .quantity { display: inline-flex; align-items: center; border: 1px solid var(--edge);
  border-radius: 999px; overflow: hidden; margin-right: 10px; }
.ax .quantity input.qty { width: 64px; border: 0; background: transparent; text-align: center;
  font-family: var(--mono); padding: 13px 4px; border-radius: 0; }
.ax .cart { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin: 6px 0 22px; }
.ax button.button.alt, .ax .single_add_to_cart_button, .ax .checkout-button,
.ax .wc-proceed-to-checkout .button, .ax #place_order, .ax .woocommerce-form-login button {
  background: var(--gold); border: 1px solid var(--gold); color: #1A1408; border-radius: 999px;
  padding: 15px 30px; font-weight: 700; font-size: 14.5px; cursor: pointer;
  transition: background .3s, border-color .3s, transform .25s; }
.ax button.button.alt:hover, .ax .single_add_to_cart_button:hover, .ax .checkout-button:hover,
.ax .wc-proceed-to-checkout .button:hover, .ax #place_order:hover { background: var(--bone); border-color: var(--bone); }
.ax .button:disabled, .ax .single_add_to_cart_button.disabled { opacity: .4; cursor: not-allowed; }
.ax .product_meta { font-family: var(--mono); font-size: 11px; letter-spacing: .12em;
  text-transform: uppercase; color: var(--bone-far); border-top: 1px solid var(--edge); padding-top: 16px; }
.ax .product_meta a { color: var(--bone-dim); }

/* tabs + related */
.ax .woocommerce-tabs { margin-top: clamp(40px, 6vw, 76px); grid-column: 1 / -1; }
.ax .woocommerce-tabs ul.tabs { list-style: none; display: flex; flex-wrap: wrap; gap: 6px;
  padding: 0; margin: 0 0 22px; border-bottom: 1px solid var(--edge); }
.ax .woocommerce-tabs ul.tabs li { margin: 0; }
.ax .woocommerce-tabs ul.tabs li a { display: block; padding: 12px 18px; font-family: var(--mono);
  font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--bone-far);
  border-bottom: 2px solid transparent; }
.ax .woocommerce-tabs ul.tabs li.active a { color: var(--gold); border-bottom-color: var(--gold); }
.ax .woocommerce-tabs h2 { font-family: var(--disp); font-weight: 900; text-transform: uppercase;
  font-size: 30px; margin: 0 0 12px; }
.ax .related.products, .ax .up-sells { grid-column: 1 / -1; margin-top: clamp(46px, 7vw, 90px); }
.ax .related.products > h2, .ax .cross-sells > h2, .ax .cart_totals > h2, .ax .woocommerce-billing-fields h3,
.ax .woocommerce-additional-fields h3, .ax #order_review_heading {
  font-family: var(--disp); font-weight: 900; text-transform: uppercase;
  font-size: clamp(26px, 3.4vw, 44px); line-height: .95; margin: 0 0 22px; }

/* ---- cart & checkout ---- */
.ax .woocommerce-cart-form, .ax .woocommerce-checkout { margin-top: 8px; }
.ax table.shop_table { width: 100%; border-collapse: collapse; border: 1px solid var(--edge);
  border-radius: 18px; overflow: hidden; }
.ax table.shop_table th { font-family: var(--mono); font-size: 10.5px; letter-spacing: .18em;
  text-transform: uppercase; color: var(--bone-far); text-align: left; padding: 15px 16px;
  border-bottom: 1px solid var(--edge); font-weight: 400; }
.ax table.shop_table td { padding: 15px 16px; border-bottom: 1px solid var(--edge); font-size: 14.5px; vertical-align: middle; }
.ax table.shop_table tr:last-child td { border-bottom: 0; }
.ax table.shop_table img { width: 74px; border-radius: 10px; background: rgba(255,255,255,.05); }
.ax .product-remove a.remove { display: inline-grid; place-items: center; width: 26px; height: 26px;
  border-radius: 50%; border: 1px solid var(--edge); color: var(--bone-dim); font-size: 15px; line-height: 1; }
.ax .product-remove a.remove:hover { border-color: #C8342E; color: #C8342E; }
.ax .cart-collaterals { margin-top: 30px; display: grid; gap: 18px; }
@media (min-width: 860px) { .ax .cart-collaterals { grid-template-columns: 1fr; justify-items: end; }
  .ax .cart_totals { width: min(430px, 100%); } }
.ax .coupon { display: flex; gap: 9px; flex-wrap: wrap; margin-bottom: 16px; }
.ax .coupon .input-text { max-width: 220px; }
.ax .coupon .button, .ax button[name="update_cart"] { border: 1px solid var(--edge); background: transparent;
  color: var(--bone); border-radius: 999px; padding: 12px 22px; font-size: 13px; font-weight: 700; cursor: pointer; }
.ax .checkout .col2-set { display: grid; gap: 20px; }
@media (min-width: 900px) { .ax .checkout { display: grid; grid-template-columns: 1.05fr .95fr; gap: 44px; align-items: start; }
  .ax .checkout .col2-set { grid-column: 1; } .ax #order_review_heading, .ax #order_review { grid-column: 2; } }
.ax .form-row { margin: 0 0 15px; }
.ax .form-row label { display: block; font-family: var(--mono); font-size: 10.5px; letter-spacing: .16em;
  text-transform: uppercase; color: var(--bone-far); margin-bottom: 7px; }
.ax .required { color: var(--gold); }
.ax #payment { border: 1px solid var(--edge); border-radius: 18px; padding: 18px; margin-top: 18px;
  background: rgba(255,255,255,.03); }
.ax #payment ul.payment_methods { list-style: none; margin: 0 0 14px; padding: 0; display: grid; gap: 10px; }
.ax #payment ul.payment_methods li { border: 1px solid var(--edge); border-radius: 12px; padding: 13px 15px; }
.ax #payment ul.payment_methods label { font-family: var(--body); font-size: 14.5px;
  letter-spacing: 0; text-transform: none; color: var(--bone); display: inline; margin: 0; cursor: pointer; }
.ax #payment .payment_box { color: var(--bone-dim); font-size: 13px; margin-top: 9px; }
.ax .woocommerce-terms-and-conditions-wrapper { font-size: 13px; color: var(--bone-dim); margin-bottom: 14px; }
.ax .woocommerce-message, .ax .woocommerce-info, .ax .woocommerce-error, .ax .woocommerce-notices-wrapper > * {
  list-style: none; border: 1px solid var(--edge); border-left: 3px solid var(--gold);
  border-radius: 12px; padding: 14px 16px; margin: 0 0 20px; font-size: 14px;
  background: rgba(216,169,59,.07); display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: space-between; }
.ax .woocommerce-error { border-left-color: #C8342E; background: rgba(200,52,46,.08); }
.ax .woocommerce-message .button, .ax .woocommerce-info .button { border: 1px solid var(--bone);
  border-radius: 999px; padding: 9px 18px; font-size: 12.5px; font-weight: 700; }
.ax .woocommerce-order { display: grid; gap: 22px; }
.ax ul.woocommerce-order-overview { list-style: none; padding: 0; margin: 0; display: grid; gap: 2px;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); }
.ax ul.woocommerce-order-overview li { border-top: 1px solid var(--edge); padding: 16px 4px;
  font-family: var(--mono); font-size: 10.5px; letter-spacing: .16em; text-transform: uppercase; color: var(--bone-far); }
.ax ul.woocommerce-order-overview li strong { display: block; font-family: var(--disp); font-weight: 900;
  font-size: 26px; letter-spacing: 0; text-transform: none; color: var(--bone); margin-top: 6px; }
.ax .woocommerce-pagination ul { list-style: none; display: flex; gap: 7px; padding: 0; margin: 34px 0 0; }
.ax .woocommerce-pagination a, .ax .woocommerce-pagination span { display: grid; place-items: center;
  min-width: 40px; height: 40px; border: 1px solid var(--edge); border-radius: 12px; font-family: var(--mono); font-size: 13px; }
.ax .woocommerce-pagination span.current { background: var(--gold); border-color: var(--gold); color: #1A1408; }
.ax .screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

/* neutralise WooCommerce's float/percentage grid so our CSS grid wins */
.ax ul.products::before, .ax ul.products::after { content: none !important; display: none !important; }
.ax ul.products li.product { width: 100% !important; margin: 0 !important; float: none !important;
  clear: none !important; }
.ax .woocommerce ul.products li.product, .ax ul.products li.first, .ax ul.products li.last { clear: none !important; }
.ax ul.products li.product a img { margin: 0; box-shadow: none; }
.ax .shopmain .woocommerce { width: 100%; }
.ax .woocommerce-notices-wrapper:empty { display: none; }

/* buttons: beat WordPress core's .wp-element-button defaults */
.ax .shopmain a.button, .ax .shopmain button.button, .ax .shopmain input.button,
.ax .shopmain .wp-element-button, .ax .single_add_to_cart_button.wp-element-button,
.ax .shopmain button[type="submit"] { border-radius: 999px; }
.ax .shopmain .button.alt, .ax .single_add_to_cart_button, .ax .checkout-button,
.ax .wc-proceed-to-checkout a.button, .ax #place_order {
  background-color: var(--gold) !important; border-color: var(--gold) !important;
  color: #1A1408 !important; }
.ax .shopmain .button.alt:hover, .ax .single_add_to_cart_button:hover,
.ax .checkout-button:hover, .ax .wc-proceed-to-checkout a.button:hover, .ax #place_order:hover {
  background-color: var(--bone) !important; border-color: var(--bone) !important; }
.ax .pagebody { color: var(--bone-dim); font-size: 15.5px; line-height: 1.7; max-width: 68ch; }
.ax .pagebody a { color: var(--gold); text-decoration: underline; }
.ax .wc-proceed-to-checkout { margin-top: 18px; display: flex; justify-content: flex-end; }
.ax .cart-empty, .ax .return-to-shop { text-align: left; }
.ax .return-to-shop .button { display: inline-block; margin-top: 14px; border: 1px solid var(--bone);
  border-radius: 999px; padding: 13px 26px; font-weight: 700; }
.ax .woocommerce-form-coupon-toggle, .ax .woocommerce-form-login-toggle { margin-bottom: 16px; }

/* ---- checkout layout ---- */
.ax form.checkout.woocommerce-checkout { display: grid; gap: 34px; }
@media (min-width: 940px) {
  .ax form.checkout.woocommerce-checkout { grid-template-columns: 1.05fr .95fr; gap: 46px; align-items: start; }
  .ax form.checkout .col2-set { grid-column: 1; grid-row: 1 / span 3; }
  .ax form.checkout #order_review_heading { grid-column: 2; grid-row: 1; margin-bottom: 16px; }
  .ax form.checkout #order_review { grid-column: 2; grid-row: 2; }
}
.ax .col2-set { display: grid; gap: 26px; }
.ax .col2-set .col-1, .ax .col2-set .col-2 { width: 100% !important; float: none !important; margin: 0 !important; }
.ax .woocommerce-billing-fields__field-wrapper, .ax .woocommerce-shipping-fields__field-wrapper,
.ax .woocommerce-additional-fields__field-wrapper { display: grid; gap: 0 14px; grid-template-columns: 1fr; }
@media (min-width: 560px) { .ax .woocommerce-billing-fields__field-wrapper { grid-template-columns: 1fr 1fr; } }
.ax .form-row-first, .ax .form-row-last, .ax .form-row-wide, .ax .form-row {
  width: 100% !important; float: none !important; padding: 0 !important; }
.ax .form-row-wide, .ax #billing_address_1_field, .ax #billing_address_2_field,
.ax #billing_email_field, .ax #billing_phone_field, .ax #billing_country_field,
.ax #order_comments_field { grid-column: 1 / -1; }
.ax .form-row label { white-space: normal; }

/* inputs: beat WooCommerce + core defaults */
.ax .shopmain input[type="text"], .ax .shopmain input[type="email"], .ax .shopmain input[type="tel"],
.ax .shopmain input[type="number"], .ax .shopmain input[type="password"], .ax .shopmain input[type="search"],
.ax .shopmain textarea, .ax .shopmain select, .ax .shopmain .input-text {
  background: rgba(255,255,255,.05) !important; border: 1px solid var(--edge) !important;
  color: var(--bone) !important; border-radius: 12px !important; padding: 12px 14px !important;
  font: inherit !important; font-size: 14.5px !important; width: 100% !important; box-shadow: none !important; }
.ax .shopmain input::placeholder, .ax .shopmain textarea::placeholder { color: rgba(244,240,232,.34); }
.ax .shopmain input:focus, .ax .shopmain select:focus, .ax .shopmain textarea:focus {
  border-color: var(--gold) !important; outline: none; }
.ax .shopmain .quantity input.qty { border: 0 !important; background: transparent !important;
  border-radius: 0 !important; width: 64px !important; text-align: center; }

/* select2 (country / state) */
.ax .select2-container--default .select2-selection--single {
  background: rgba(255,255,255,.05) !important; border: 1px solid var(--edge) !important;
  border-radius: 12px !important; height: 46px !important; }
.ax .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--bone) !important; line-height: 44px !important; padding-left: 14px !important; }
.ax .select2-container--default .select2-selection--single .select2-selection__arrow { height: 44px !important; }
.select2-dropdown { background: #14141C !important; border: 1px solid rgba(244,240,232,.16) !important;
  color: #F4F0E8 !important; }
.select2-container--default .select2-results__option--highlighted[aria-selected] { background: #D8A93B !important; color: #1A1408 !important; }
.select2-search--dropdown .select2-search__field { background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(244,240,232,.16) !important; color: #F4F0E8 !important; border-radius: 8px; }

/* cart table full width */
.ax .woocommerce-cart-form { width: 100%; }
.ax .woocommerce-cart-form table.shop_table { width: 100% !important; }
.ax .cart-collaterals, .ax .cart_totals { width: 100%; }
@media (min-width: 860px) { .ax .cart_totals { width: min(440px, 100%); margin-left: auto; } }
.ax table.shop_table td.product-name a { color: var(--bone); }
.ax table.shop_table .product-thumbnail img { background: rgba(255,255,255,.06); padding: 6px; }
.ax .woocommerce-checkout-review-order-table tfoot th { color: var(--bone); }
.ax .order-total .amount { color: var(--gold); font-family: var(--mono); font-size: 18px; }

/* billing fields: deterministic flex rows (grid auto-placement mis-ordered them) */
.ax .woocommerce-billing-fields__field-wrapper,
.ax .woocommerce-shipping-fields__field-wrapper {
  display: flex !important; flex-wrap: wrap; gap: 0 14px; }
.ax .woocommerce-billing-fields__field-wrapper > .form-row,
.ax .woocommerce-shipping-fields__field-wrapper > .form-row { flex: 1 1 100%; }
@media (min-width: 560px) {
  .ax #billing_first_name_field, .ax #billing_last_name_field,
  .ax #billing_city_field, .ax #billing_postcode_field,
  .ax #billing_phone_field, .ax #billing_email_field,
  .ax #shipping_first_name_field, .ax #shipping_last_name_field {
    flex: 1 1 calc(50% - 7px) !important; }
}
.ax .woocommerce-billing-fields h3, .ax .woocommerce-shipping-fields h3 { margin-bottom: 18px; }
.ax #order_review { position: sticky; top: 96px; }
body.admin-bar .ax #order_review { top: 128px; }
@media (max-width: 939px) { .ax #order_review { position: static; } }
.ax .woocommerce-checkout-review-order-table { margin-bottom: 0; }
.ax #payment { margin-top: 16px; }

/* final checkout polish */
@media (min-width: 560px) {
  .ax #billing_first_name_field, .ax #billing_last_name_field,
  .ax #billing_city_field, .ax #billing_postcode_field,
  .ax #billing_phone_field, .ax #billing_email_field,
  .ax #shipping_first_name_field, .ax #shipping_last_name_field {
    flex: 0 1 calc(50% - 10px) !important; min-width: 0; }
}
.ax #payment ul.payment_methods li { background: rgba(255,255,255,.03); }
.ax #payment .payment_box, .ax #payment div.payment_box {
  background: rgba(255,255,255,.05) !important; color: var(--bone-dim) !important;
  border-radius: 10px !important; padding: 12px 14px !important; margin: 10px 0 0 !important;
  font-size: 13.5px !important; line-height: 1.55; }
.ax #payment .payment_box::before, .ax #payment .payment_box::after { display: none !important; }
.ax #payment ul.payment_methods li input[type="radio"] { accent-color: var(--gold); margin-right: 8px; }
.ax .woocommerce-form-coupon-toggle .woocommerce-info { align-items: center; }
.ax .place-order { margin-top: 16px; }
.ax #place_order { width: 100%; }
.ax .woocommerce-privacy-policy-text p { font-size: 12.5px; color: var(--bone-far); }

/* single product: original studio photos, every angle */
.ax .woocommerce-product-gallery.aukx-gallery { padding: 0; border: 0; background: none;
  display: grid; gap: 12px; }
.ax .aukx-main { overflow: hidden; background: #0E0E14; border: 1px solid var(--edge);
  border-radius: 24px; }
.ax .aukx-main img { width: 100%; height: auto; display: block; transition: opacity .25s ease; }
.ax .aukx-thumbs { display: grid; grid-template-columns: repeat(6, 1fr); gap: 8px; }
@media (max-width: 480px) { .ax .aukx-thumbs { grid-template-columns: repeat(5, 1fr); gap: 6px; } }
.ax .aukx-thumb { padding: 0; border: 1px solid var(--edge); border-radius: 12px; overflow: hidden;
  background: #0E0E14; cursor: pointer; aspect-ratio: 1; transition: border-color .3s, transform .3s; }
.ax .aukx-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; opacity: .65; transition: opacity .3s; }
.ax .aukx-thumb:hover { transform: translateY(-3px); }
.ax .aukx-thumb:hover img { opacity: 1; }
.ax .aukx-thumb.on { border-color: var(--gold); }
.ax .aukx-thumb.on img { opacity: 1; }

/* single product: real two-column grid (WooCommerce's own float rules relied on
   markup classes our custom gallery doesn't carry) */
.ax .shopmain div.product { display: grid; gap: 28px; }
@media (min-width: 900px) {
  .ax .shopmain div.product { grid-template-columns: 1.02fr .98fr; gap: 50px; align-items: start; }
  .ax .shopmain div.product > .woocommerce-product-gallery { grid-column: 1; grid-row: 1; }
  .ax .shopmain div.product > .summary { grid-column: 2; grid-row: 1; }
}
.ax .shopmain div.product > .woocommerce-tabs,
.ax .shopmain div.product > .related,
.ax .shopmain div.product > .up-sells,
.ax .shopmain div.product > .woocommerce-product-gallery + .summary ~ * { grid-column: 1 / -1; }
.ax .shopmain div.product div.images,
.ax .shopmain div.product .woocommerce-product-gallery,
.ax .shopmain div.product div.summary {
  width: 100% !important; float: none !important; margin: 0 !important; clear: none !important; }
.ax .aukx-gallery img { max-height: 78vh; object-fit: contain; background: #fff0; }
.ax .shopmain div.product > .summary { position: sticky; top: 96px; }
body.admin-bar .ax .shopmain div.product > .summary { top: 128px; }
@media (max-width: 899px) { .ax .shopmain div.product > .summary { position: static; } }

/* ================= PRODUCT PAGE v4 — stacked gallery + calm buy panel ================= */

/* brand line + a title that no longer shouts over everything */
.ax .aukx-eyebrow { font-family: var(--mono); font-size: 11px; letter-spacing: .26em;
  text-transform: uppercase; color: var(--bone-far); margin: 0 0 14px; }
.ax .aukx-eyebrow span { color: var(--gold); }
.ax .single-product .product_title, .ax .shopmain div.product .product_title {
  font-family: var(--disp); font-weight: 900; text-transform: uppercase;
  font-size: clamp(25px, 2.9vw, 40px); line-height: 1.02; letter-spacing: .004em;
  margin: 0 0 16px; max-width: 20ch; }
.ax .summary .price { margin: 0 0 4px; }
.ax .aukx-stock { margin: 0 0 22px; }
.ax .woocommerce-product-details__short-description { margin: 0 0 26px; max-width: 46ch; }
.ax .woocommerce-product-details__short-description p { margin: 0; }

/* ---- gallery: every angle, full width, stacked ---- */
.ax .woocommerce-product-gallery.aukx-gallery { position: relative; padding: 0; border: 0;
  background: none; display: block; overflow: visible; }
.ax .aukx-stack { display: grid; gap: 14px; }
.ax .aukx-shot { margin: 0; border: 1px solid var(--edge); border-radius: 22px; overflow: hidden;
  background: #0C0C12; }
.ax .aukx-shot img { width: 100%; height: auto; display: block; }
.ax .aukx-dots { position: absolute; left: -26px; top: 0; bottom: 0; width: 10px;
  display: none; flex-direction: column; align-items: center; justify-content: center; gap: 13px; }
@media (min-width: 1180px) { .ax .aukx-dots { display: flex; position: sticky; float: left;
  height: 100svh; top: 0; margin-left: -30px; } }
.ax .aukx-dot { width: 7px; height: 7px; padding: 0; border-radius: 50%; cursor: pointer;
  background: transparent; border: 1px solid var(--bone-far); transition: background .3s, border-color .3s, transform .3s; }
.ax .aukx-dot:hover { transform: scale(1.35); }
.ax .aukx-dot.on { background: var(--gold); border-color: var(--gold); }

/* ---- size: buttons, not a dropdown ---- */
.ax select.aukx-hidden-select { display: none !important; }
.ax .aukx-sizes { display: flex; flex-wrap: wrap; gap: 8px; margin: 2px 0 6px; }
.ax .aukx-size { min-width: 58px; padding: 12px 14px; border-radius: 12px; cursor: pointer;
  background: transparent; border: 1px solid var(--edge); color: var(--bone-dim);
  font-family: var(--mono); font-size: 13.5px; letter-spacing: .04em;
  transition: border-color .25s, color .25s, background .25s; }
.ax .aukx-size:hover { border-color: var(--bone-dim); color: var(--bone); }
.ax .aukx-size.on { border-color: var(--gold); color: var(--gold); background: rgba(198,160,74,.09); }
.ax .aukx-size.out { opacity: .3; cursor: not-allowed; text-decoration: line-through; }
.ax .aukx-sizes.nudge { animation: aukxNudge .55s ease; }
@keyframes aukxNudge { 0%,100% { transform: none; } 25% { transform: translateX(-6px); } 75% { transform: translateX(6px); } }
.ax table.variations th.label label { margin-bottom: 11px; }
.ax .reset_variations { margin-top: 4px; }

/* ---- the buy row: one full-width button ---- */
.ax .shopmain form.cart { display: grid; grid-template-columns: auto 1fr; gap: 10px;
  align-items: center; margin: 14px 0 26px; }
.ax .shopmain form.cart.variations_form { display: block; }
.ax .shopmain .woocommerce-variation-add-to-cart { display: grid; grid-template-columns: auto 1fr;
  gap: 10px; align-items: center; margin-top: 14px; }
.ax .shopmain form.cart .quantity { margin: 0; }
.ax .shopmain .single_add_to_cart_button { width: 100%; padding: 17px 26px; font-size: 14px;
  letter-spacing: .1em; text-transform: uppercase; border-radius: 999px; }
.ax .woocommerce-variation-price { margin: 14px 0 2px; }
.ax .woocommerce-variation-availability p { margin: 6px 0 0; }

/* ---- accordions under the button ---- */
.ax .aukx-acc { border-top: 1px solid var(--edge); margin-top: 4px; }
.ax .aukx-panel { border-bottom: 1px solid var(--edge); }
.ax .aukx-panel > summary { list-style: none; cursor: pointer; padding: 17px 2px;
  font-family: var(--mono); font-size: 11.5px; letter-spacing: .18em; text-transform: uppercase;
  color: var(--bone-dim); display: flex; align-items: center; justify-content: space-between;
  transition: color .25s; }
.ax .aukx-panel > summary::-webkit-details-marker { display: none; }
.ax .aukx-panel > summary::after { content: '+'; font-size: 17px; color: var(--bone-far);
  transition: transform .3s, color .3s; }
.ax .aukx-panel[open] > summary { color: var(--bone); }
.ax .aukx-panel[open] > summary::after { transform: rotate(45deg); color: var(--gold); }
.ax .aukx-panel > summary:hover { color: var(--bone); }
.ax .aukx-panelbody { padding: 0 2px 20px; color: var(--bone-dim); font-size: 14.5px; line-height: 1.68; }
.ax .aukx-panelbody p { margin: 0 0 12px; }
.ax .aukx-panelbody p:last-child { margin-bottom: 0; }
.ax table.aukx-sizetable { width: 100%; border-collapse: collapse; margin-top: 12px;
  font-family: var(--mono); font-size: 12.5px; }
.ax table.aukx-sizetable th { text-align: left; padding: 8px 10px 8px 0; color: var(--bone-far);
  font-weight: 400; letter-spacing: .14em; text-transform: uppercase; font-size: 10.5px;
  border-bottom: 1px solid var(--edge); }
.ax table.aukx-sizetable td { padding: 9px 10px 9px 0; color: var(--bone-dim);
  border-bottom: 1px solid rgba(244,240,232,.06); }
.ax table.aukx-sizetable tr:last-child td { border-bottom: 0; }

/* meta line: quiet */
.ax .product_meta { margin-top: 20px; padding-top: 16px; font-size: 10.5px; letter-spacing: .16em; }

/* ---- sticky buy bar on phones ---- */
.ax .aukx-buybar, .aukx-buybar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 60;
  display: flex; align-items: center; gap: 12px; padding: 11px 16px calc(11px + env(safe-area-inset-bottom));
  background: rgba(10,10,14,.94); backdrop-filter: blur(14px); border-top: 1px solid var(--edge);
  transform: translateY(110%); transition: transform .3s ease; }
.aukx-buybar.show { transform: none; }
.aukx-buybar-price { font-family: var(--mono); font-size: 15px; color: var(--gold); white-space: nowrap; }
.aukx-buybar-btn { flex: 1; padding: 14px 18px; border-radius: 999px; cursor: pointer;
  background: var(--gold); border: 1px solid var(--gold); color: #1A1408; font-weight: 700;
  font-size: 13px; letter-spacing: .1em; text-transform: uppercase; }
.aukx-buybar-btn:disabled { opacity: .45; }
@media (min-width: 900px) { .aukx-buybar { display: none !important; } }

/* related row header + tighter section rhythm */
.ax .related.products > h2 { font-size: clamp(20px, 2.4vw, 30px); }
.ax .woocommerce-tabs { margin-top: clamp(34px, 5vw, 60px); }

@media (max-width: 899px) {
  .ax .shopmain div.product { gap: 26px; }
  .ax .aukx-stack { gap: 10px; }
  .ax .aukx-shot { border-radius: 18px; }
  .ax .single-product .product_title, .ax .shopmain div.product .product_title { max-width: none; }
  .ax .shopmain .shopmain-pad { padding-bottom: 84px; }
  .ax .shopmain { padding-bottom: 96px; }
}

/* buy panel: disabled state must read as disabled, and the Clear link sits below the sizes */
.ax .shopmain .single_add_to_cart_button.disabled,
.ax .shopmain .single_add_to_cart_button.wc-variation-selection-needed,
.ax .single_add_to_cart_button.disabled {
  background: transparent !important; border-color: var(--edge) !important;
  color: var(--bone-far) !important; opacity: 1 !important; cursor: default; }
.ax .shopmain .single_add_to_cart_button.disabled:hover,
.ax .single_add_to_cart_button.disabled:hover { background: transparent !important;
  border-color: var(--edge) !important; }
.ax table.variations td.value { display: flex; flex-direction: column; align-items: flex-start; }
.ax table.variations td.value > .aukx-sizes { order: 1; margin: 0; }
.ax table.variations td.value > .reset_variations { order: 2; margin-top: 10px; }
.ax .woocommerce-variation.single_variation { margin-top: 14px; }

/* gallery + buy panel share their own two-column block; everything after it is full width */
.ax .shopmain div.product { display: block !important; }
.ax .aukx-top { display: grid; gap: 26px; }
@media (min-width: 900px) {
  .ax .aukx-top { grid-template-columns: 1.05fr .95fr; gap: 52px; align-items: start; }
}
.ax .aukx-top > .woocommerce-product-gallery { grid-column: 1; }
.ax .aukx-top > .summary { grid-column: 2; margin: 0; }
@media (min-width: 900px) {
  .ax .aukx-top > .summary { position: sticky; top: 96px; }
  body.admin-bar .ax .aukx-top > .summary { top: 128px; }
}
@media (max-width: 899px) { .ax .aukx-top > .summary { position: static; } }

/* ================= CART ================= */
.ax .aukx-cart { display: grid; gap: 22px; align-items: start; }
@media (min-width: 900px) {
  .ax .aukx-cart { grid-template-columns: 1fr 372px; gap: 40px; }
  .ax .aukx-cartform { grid-column: 1; }
  .ax .aukx-cart > .aukx-summary { grid-column: 2; grid-row: 1 / span 2; position: sticky; top: 96px; }
  body.admin-bar .ax .aukx-cart > .aukx-summary { top: 128px; }
}

.ax .aukx-cart-items { display: grid; gap: 12px; }
.ax .aukx-citem { position: relative; display: grid; gap: 14px; align-items: center;
  grid-template-columns: 92px 1fr auto auto; padding: 14px;
  border: 1px solid var(--edge); border-radius: 20px; background: #0E0E14; }
.ax .aukx-cthumb { width: 92px; height: 92px; border-radius: 14px; overflow: hidden;
  background: linear-gradient(160deg, #1A1A24, #0B0B10); display: grid; place-items: center; }
.ax .aukx-cthumb img { width: 100%; height: 100%; object-fit: contain; display: block; }
.ax .aukx-cname { font-family: var(--disp); font-weight: 900; text-transform: uppercase;
  font-size: 15px; line-height: 1.12; letter-spacing: .01em; margin: 0 0 6px; }
.ax .aukx-cname a { color: var(--bone); }
.ax .aukx-cname a:hover { color: var(--gold); }
.ax .aukx-cmeta { margin: 0 0 6px; font-family: var(--mono); font-size: 11px; letter-spacing: .12em;
  text-transform: uppercase; color: var(--bone-far); }
.ax .aukx-cmeta p, .ax .aukx-cmeta dl, .ax .aukx-cmeta dt, .ax .aukx-cmeta dd { display: inline; margin: 0; font: inherit; color: inherit; }
.ax .aukx-cmeta dt { opacity: .7; }
.ax .aukx-cmeta dd::after { content: ''; }
.ax .aukx-cunit { margin: 0; font-family: var(--mono); font-size: 12px; color: var(--bone-far); }
.ax .aukx-cunit .amount { color: var(--bone-dim); }
.ax .aukx-cqty .quantity { margin: 0; }
.ax .aukx-cline { font-family: var(--mono); font-size: 16px; color: var(--gold); min-width: 84px; text-align: right; }
.ax .aukx-cremove { position: absolute; top: 8px; right: 10px; }
.ax .aukx-cremove .remove { display: grid; place-items: center; width: 26px; height: 26px;
  border-radius: 50%; color: var(--bone-far); font-size: 17px; line-height: 1; text-decoration: none;
  transition: background .25s, color .25s; }
.ax .aukx-cremove .remove:hover { background: rgba(244,240,232,.1); color: var(--bone); }
.ax .aukx-citem .stock { font-family: var(--mono); font-size: 11px; letter-spacing: .1em;
  text-transform: uppercase; color: var(--gold); margin: 0 0 6px; }

/* coupon + update row */
.ax .aukx-cartbar { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-top: 16px; }
.ax .aukx-coupon { display: flex; gap: 8px; flex: 1 1 260px; }
.ax .aukx-coupon input.input-text { flex: 1; min-width: 0; }
.ax .shopmain .aukx-couponbtn, .ax .shopmain .aukx-updatecart {
  background: transparent !important; border: 1px solid var(--edge) !important; color: var(--bone-dim) !important;
  border-radius: 999px; padding: 13px 22px; font-size: 12.5px; letter-spacing: .1em;
  text-transform: uppercase; cursor: pointer; }
.ax .shopmain .aukx-couponbtn:hover, .ax .shopmain .aukx-updatecart:hover {
  border-color: var(--bone-dim) !important; color: var(--bone) !important; }
.ax .aukx-updatecart[disabled] { opacity: .35; cursor: default; }

/* summary card */
.ax .aukx-summary { margin: 0; width: auto; float: none; }
.ax .aukx-totals { border: 1px solid var(--edge); border-radius: 22px; padding: 22px;
  background: linear-gradient(170deg, #14141C, #0B0B10); }
.ax .aukx-totals h2 { font-family: var(--mono); font-size: 11px; letter-spacing: .22em;
  text-transform: uppercase; color: var(--bone-far); font-weight: 400; margin: 0 0 16px; }
.ax .aukx-trow { display: flex; justify-content: space-between; align-items: baseline; gap: 14px;
  padding: 11px 0; border-bottom: 1px solid rgba(244,240,232,.07); font-size: 14px; color: var(--bone-dim); }
.ax .aukx-trow strong { font-family: var(--mono); font-weight: 400; color: var(--bone); }
.ax .aukx-trow-total { border-bottom: 0; padding-top: 15px; margin-top: 4px;
  border-top: 1px solid var(--edge); font-size: 15px; color: var(--bone); }
.ax .aukx-trow-total strong { font-size: 21px; color: var(--gold); }
.ax .aukx-totals .woocommerce-shipping-totals th,
.ax .aukx-totals .woocommerce-shipping-totals td { display: block; padding: 0; text-align: left; }
.ax .aukx-totals .woocommerce-shipping-totals { display: block; padding: 11px 0;
  border-bottom: 1px solid rgba(244,240,232,.07); font-size: 14px; color: var(--bone-dim); }
.ax .aukx-totals ul#shipping_method { list-style: none; margin: 6px 0 0; padding: 0; }
.ax .aukx-totals ul#shipping_method li { margin: 4px 0; font-family: var(--mono); font-size: 12.5px; }
.ax .wc-proceed-to-checkout { margin-top: 18px; padding: 0; }
.ax .wc-proceed-to-checkout .button { display: block; width: 100%; text-align: center;
  padding: 17px 24px; border-radius: 999px; font-size: 13.5px; letter-spacing: .12em; text-transform: uppercase; }
.ax .aukx-tnote { margin: 14px 0 0; font-family: var(--mono); font-size: 10.5px; letter-spacing: .1em;
  text-transform: uppercase; color: var(--bone-far); line-height: 1.7; text-align: center; }

/* empty cart */
.ax .cart-empty { font-family: var(--disp); font-weight: 900; text-transform: uppercase;
  font-size: clamp(22px,3vw,34px); margin: 0 0 18px; }
.ax .return-to-shop .button { border-radius: 999px; }

@media (max-width: 899px) {
  .ax .aukx-citem { grid-template-columns: 76px 1fr; gap: 12px; padding: 12px 12px 14px; }
  .ax .aukx-cthumb { width: 76px; height: 76px; }
  .ax .aukx-cinfo { padding-right: 26px; }
  .ax .aukx-citem { grid-template-areas: 'thumb info' 'foot foot'; }
  .ax .aukx-cthumb { grid-area: thumb; }
  .ax .aukx-cinfo { grid-area: info; }
  .ax .aukx-cqty { grid-area: foot; display: flex; align-items: center;
    justify-content: space-between; gap: 12px; margin-top: 4px; }
  .ax .aukx-cline { grid-area: foot; justify-self: end; align-self: center;
    min-width: 0; font-size: 15px; pointer-events: none; }
  .ax .aukx-cname { font-size: 14px; }
  .ax .aukx-coupon { flex: 1 1 100%; }
  .ax .shopmain .aukx-updatecart { flex: 1 1 100%; }
}

/* quantity stepper (cart) */
.ax .aukx-cqty .quantity { display: inline-flex; align-items: center; border: 1px solid var(--edge);
  border-radius: 999px; overflow: hidden; }
.ax .aukx-step { width: 38px; height: 42px; padding: 0; border: 0; background: transparent;
  color: var(--bone-dim); font-size: 16px; line-height: 1; cursor: pointer;
  transition: color .2s, background .2s; }
.ax .aukx-step:hover { color: var(--bone); background: rgba(244,240,232,.06); }
.ax .aukx-cqty input.qty { width: 42px; padding: 12px 0; font-size: 14px; -moz-appearance: textfield; }
.ax .aukx-cqty input.qty::-webkit-outer-spin-button,
.ax .aukx-cqty input.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

/* cart: name + size chip */
.ax .aukx-cname a { text-decoration: none; }
.ax .aukx-cchips { margin: 0 0 7px; display: flex; flex-wrap: wrap; gap: 6px; }
.ax .aukx-chip { display: inline-block; padding: 4px 10px; border: 1px solid var(--edge);
  border-radius: 999px; font-family: var(--mono); font-size: 10.5px; letter-spacing: .14em;
  text-transform: uppercase; color: var(--bone-dim); }
.ax .aukx-citem .stock { margin: 0 0 5px; }
.ax .aukx-citem .stock.in-stock { color: var(--bone-far); }
.ax .aukx-cart p:empty, .ax .shopmain p:empty { display: none !important; }

/* ================= CART DRAWER ================= */
.aukx-drawer { position: fixed; inset: 0; z-index: 999999; pointer-events: none; }
.aukx-drawer.on { pointer-events: auto; }
.aukx-dr-veil { position: absolute; inset: 0; background: rgba(4,4,7,.66);
  opacity: 0; transition: opacity .35s ease; }
.aukx-drawer.on .aukx-dr-veil { opacity: 1; }
.aukx-dr-panel { position: absolute; top: 0; right: 0; bottom: 0; width: min(430px, 100vw);
  display: flex; flex-direction: column; background: #0B0B10;
  border-left: 1px solid rgba(244,240,232,.12);
  transform: translateX(100%); transition: transform .42s cubic-bezier(.19,1,.22,1);
  font-family: 'Inter', system-ui, -apple-system, sans-serif; color: #F4F0E8; }
.aukx-drawer.on .aukx-dr-panel { transform: none; }
.aukx-drawer.busy .aukx-dr-panel { opacity: .6; pointer-events: none; }

.aukx-dr-head { display: flex; align-items: center; justify-content: space-between;
  padding: 22px 22px 18px; border-bottom: 1px solid rgba(244,240,232,.1); }
.aukx-dr-head span { font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 12px;
  letter-spacing: .28em; text-transform: uppercase; color: #F4F0E8; }
.aukx-dr-x { background: none; border: 0; color: rgba(244,240,232,.6); font-size: 26px;
  line-height: 1; cursor: pointer; padding: 0 2px; transition: color .2s; }
.aukx-dr-x:hover { color: #F4F0E8; }

.aukx-dr-body { flex: 1; overflow-y: auto; padding: 6px 22px 10px; }
.aukx-dr-item { display: grid; grid-template-columns: 92px 1fr; gap: 14px;
  padding: 18px 0; border-bottom: 1px solid rgba(244,240,232,.08); }
.aukx-dr-item:last-child { border-bottom: 0; }
.aukx-dr-thumb { width: 92px; height: 92px; border-radius: 12px; overflow: hidden;
  background: linear-gradient(160deg, #1A1A24, #0B0B10); }
.aukx-dr-thumb img { width: 100%; height: 100%; object-fit: contain; display: block; }
.aukx-dr-info h4 { margin: 0 0 7px; font-size: 12.5px; line-height: 1.35; font-weight: 500;
  letter-spacing: .09em; text-transform: uppercase; }
.aukx-dr-info h4 a { color: #F4F0E8; text-decoration: none; }
.aukx-dr-info h4 a:hover { color: #C6A04A; }
.aukx-dr-chips { margin: 0 0 6px; display: flex; gap: 6px; flex-wrap: wrap; }
.aukx-dr-chips span { font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 10.5px;
  letter-spacing: .14em; color: rgba(244,240,232,.55); }
.aukx-dr-price { margin: 0 0 12px; font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 13.5px; color: rgba(244,240,232,.9); }
.aukx-dr-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.aukx-dr-qty { display: inline-flex; align-items: center; border: 1px solid rgba(244,240,232,.18);
  border-radius: 8px; overflow: hidden; }
.aukx-dr-step { width: 34px; height: 34px; background: none; border: 0; cursor: pointer;
  color: rgba(244,240,232,.75); font-size: 15px; line-height: 1; transition: background .2s, color .2s; }
.aukx-dr-step:hover { background: rgba(244,240,232,.08); color: #F4F0E8; }
.aukx-dr-n { min-width: 30px; text-align: center; font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 13px; }
.aukx-dr-remove { background: none; border: 0; padding: 0; cursor: pointer;
  font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 10.5px; letter-spacing: .18em;
  text-transform: uppercase; color: rgba(244,240,232,.5);
  border-bottom: 1px solid rgba(244,240,232,.25); transition: color .2s, border-color .2s; }
.aukx-dr-remove:hover { color: #F4F0E8; border-color: #F4F0E8; }

.aukx-dr-foot { padding: 18px 22px calc(20px + env(safe-area-inset-bottom));
  border-top: 1px solid rgba(244,240,232,.12); background: #0B0B10; }
.aukx-dr-foot:empty { display: none; }
.aukx-dr-note { margin: 0 0 12px; font-size: 12.5px; color: rgba(244,240,232,.5); }
.aukx-dr-total { display: flex; align-items: baseline; justify-content: space-between;
  margin: 0 0 16px; }
.aukx-dr-total span { font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 12px;
  letter-spacing: .22em; text-transform: uppercase; color: rgba(244,240,232,.75); }
.aukx-dr-total strong { font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 20px;
  font-weight: 400; color: #C6A04A; }
.aukx-dr-total .amount { color: #C6A04A; }
.aukx-dr-checkout { display: block; text-align: center; padding: 17px 20px; border-radius: 999px;
  background: #C6A04A; color: #1A1408; text-decoration: none; font-weight: 700; font-size: 13px;
  letter-spacing: .14em; text-transform: uppercase; transition: background .25s; }
.aukx-dr-checkout:hover { background: #F4F0E8; }
.aukx-dr-cartlink { display: block; text-align: center; margin-top: 12px;
  font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 10.5px; letter-spacing: .18em;
  text-transform: uppercase; color: rgba(244,240,232,.5); text-decoration: none; }
.aukx-dr-cartlink:hover { color: #F4F0E8; }

.aukx-dr-empty { padding: 60px 0; text-align: center; }
.aukx-dr-empty p { margin: 0 0 20px; color: rgba(244,240,232,.6); font-size: 14.5px; }
.aukx-dr-empty .btn { display: inline-block; padding: 14px 26px; border-radius: 999px;
  border: 1px solid rgba(244,240,232,.28); color: #F4F0E8; text-decoration: none;
  font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 11px; letter-spacing: .16em;
  text-transform: uppercase; }
.aukx-dr-empty .btn:hover { background: rgba(244,240,232,.08); }

@media (max-width: 480px) {
  .aukx-dr-panel { width: 100vw; border-left: 0; }
  .aukx-dr-item { grid-template-columns: 78px 1fr; gap: 12px; }
  .aukx-dr-thumb { width: 78px; height: 78px; }
}
@media (prefers-reduced-motion: reduce) {
  .aukx-dr-panel, .aukx-dr-veil { transition-duration: .01ms; }
}

/* ================= FOOTER ================= */
.ax .axfoot { border-top: 1px solid var(--edge); background: linear-gradient(180deg, #0A0A0E, #08080C); }

/* ticker */
.ax .axfoot-tick { overflow: hidden; border-bottom: 1px solid var(--edge); padding: 13px 0; }
.ax .axfoot-tickrun { display: flex; align-items: center; gap: 16px; width: max-content;
  animation: axtick 38s linear infinite; }
.ax .axfoot-tick:hover .axfoot-tickrun { animation-play-state: paused; }
.ax .axfoot-tickrun span { font-family: var(--mono); font-size: 11px; letter-spacing: .24em;
  text-transform: uppercase; color: var(--bone-far); white-space: nowrap; }
.ax .axfoot-tickrun i { color: var(--gold); font-style: normal; font-size: 11px; }
@keyframes axtick { to { transform: translateX(-50%); } }

/* columns */
.ax .axfoot-grid { display: grid; gap: 40px 26px; padding: clamp(38px,5vw,60px) clamp(16px,4vw,44px) clamp(28px,4vw,44px); }
@media (min-width: 720px) { .ax .axfoot-grid { grid-template-columns: 1.5fr 1fr 1fr 1.2fr; } }
.ax .axfoot-col h4 { font-family: var(--mono); font-size: 10.5px; letter-spacing: .26em;
  text-transform: uppercase; color: var(--bone-far); font-weight: 400; margin: 0 0 16px; }
.ax .axfoot-brand { display: inline-block; font-family: var(--disp); font-weight: 900;
  text-transform: uppercase; font-size: clamp(19px,2vw,24px); letter-spacing: .01em;
  color: var(--bone); text-decoration: none; margin-bottom: 12px; }
.ax .axfoot-brand i { color: var(--gold); font-style: normal; margin: 0 5px; }
.ax .axfoot-line { margin: 0 0 18px; max-width: 34ch; font-size: 14px; line-height: 1.65; color: var(--bone-dim); }

.ax .axfoot-chips { display: flex; flex-wrap: wrap; gap: 9px; }
.ax .axfoot-chip { display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px;
  border: 1px solid var(--edge); border-radius: 999px; font-family: var(--mono); font-size: 11px;
  letter-spacing: .14em; text-transform: uppercase; color: var(--bone-dim); text-decoration: none;
  transition: border-color .25s, color .25s, transform .25s; }
.ax .axfoot-chip:hover { border-color: var(--bone-dim); color: var(--bone); transform: translateY(-2px); }
.ax .axfoot-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--bone-far); flex: none; }
.ax .axfoot-dot-wa { background: #25D366; box-shadow: 0 0 0 0 rgba(37,211,102,.55); animation: axpulse 2.4s infinite; }
@keyframes axpulse { 70% { box-shadow: 0 0 0 7px rgba(37,211,102,0); } 100% { box-shadow: 0 0 0 0 rgba(37,211,102,0); } }

/* links with a sweep underline */
.ax .axfoot-links { list-style: none; margin: 0; padding: 0; display: grid; gap: 11px; }
.ax .axfoot-links a { display: inline-block; color: var(--bone-dim); text-decoration: none; font-size: 14px;
  transition: color .25s; }
.ax .axfoot-links a span { position: relative; display: inline-block; }
.ax .axfoot-links a span::after { content: ''; position: absolute; left: 0; right: 100%; bottom: -3px;
  height: 1px; background: var(--gold); transition: right .4s cubic-bezier(.19,1,.22,1); }
.ax .axfoot-links a:hover { color: var(--bone); }
.ax .axfoot-links a:hover span::after { right: 0; }

/* support status */
.ax .axfoot-status { display: flex; align-items: center; gap: 9px; margin: 0 0 9px;
  font-family: var(--mono); font-size: 11.5px; letter-spacing: .12em; text-transform: uppercase; }
.ax .axfoot-status b { font-weight: 400; color: var(--bone-dim); }
.ax .axfoot-status[data-open="1"] .axfoot-dot { background: #4ADE80; box-shadow: 0 0 10px rgba(74,222,128,.8); }
.ax .axfoot-status[data-open="1"] b { color: #4ADE80; }
.ax .axfoot-status[data-open="0"] .axfoot-dot { background: #6B6B78; }
.ax .axfoot-small { margin: 0 0 9px; font-size: 13px; line-height: 1.7; color: var(--bone-far); }
.ax .axfoot-clock { margin: 0 0 16px; font-family: var(--mono); font-size: 19px; color: var(--gold);
  font-variant-numeric: tabular-nums; }
.ax .axfoot-addr { font-size: 12.5px; }

/* the big wordmark */
.ax .axfoot-mark { --mx: 50%; --my: 50%; position: relative; padding: 0 clamp(16px,4vw,44px) 8px;
  display: grid; gap: 0; user-select: none; cursor: default; }
.ax .axfoot-mark span { display: block; font-family: var(--disp); font-weight: 900; text-transform: uppercase;
  font-size: clamp(44px, 12.6vw, 190px); line-height: .82; letter-spacing: -.015em;
  color: rgba(244,240,232,.07); transition: color .4s ease; }
.ax .axfoot-mark.lit span { color: transparent;
  background-image: radial-gradient(240px circle at var(--mx) var(--my), var(--gold) 0%, rgba(244,240,232,.22) 42%, rgba(244,240,232,.06) 70%);
  -webkit-background-clip: text; background-clip: text; }
@media (min-width: 1024px) {
  .ax .axfoot-mark { grid-template-columns: auto auto; align-items: baseline; justify-content: space-between; }
}

/* base bar */
.ax .axfoot-base { display: flex; flex-wrap: wrap; gap: 12px; align-items: center;
  justify-content: space-between; padding: 20px 88px 26px clamp(16px,4vw,44px);
  border-top: 1px solid var(--edge); font-family: var(--mono); font-size: 10.5px;
  letter-spacing: .18em; text-transform: uppercase; color: var(--bone-far); }
.ax .axfoot-top { background: none; border: 0; cursor: pointer; padding: 0; color: var(--bone-far);
  font: inherit; letter-spacing: .18em; transition: color .25s; }
.ax .axfoot-top:hover { color: var(--gold); }

@media (max-width: 719px) {
  .ax .axfoot-base { padding: 20px clamp(16px,4vw,44px) 92px; }
}
@media (prefers-reduced-motion: reduce) {
  .ax .axfoot-tickrun { animation: none; }
  .ax .axfoot-dot-wa { animation: none; }
}

/* policy pages read like documents */
.ax .shopmain .aukx-doc { max-width: 74ch; }
.ax .aukx-doc h2 { font-family: var(--disp); font-weight: 900; text-transform: uppercase;
  font-size: clamp(19px,2.3vw,27px); margin: 34px 0 12px; letter-spacing: .01em; }
.ax .aukx-doc h3 { font-family: var(--mono); font-size: 12px; letter-spacing: .2em; text-transform: uppercase;
  color: var(--gold); font-weight: 400; margin: 28px 0 10px; }
.ax .aukx-doc p { color: var(--bone-dim); font-size: 15px; line-height: 1.75; margin: 0 0 14px; }
.ax .aukx-doc ul { margin: 0 0 18px; padding-left: 20px; }
.ax .aukx-doc li { color: var(--bone-dim); font-size: 15px; line-height: 1.75; margin: 0 0 8px; }
.ax .aukx-doc li::marker { color: var(--gold); }
.ax .aukx-doc a { color: var(--gold); }
.ax .aukx-doc strong { color: var(--bone); }
/* the new footer supplies its own layout */
.ax footer.axfoot { display: block; padding: 0; }

