/*
Theme Name: Violet Vault
Theme URI: https://eneadev.com/
Author: Enea Dev
Author URI: https://eneadev.com/
Description: Tema e-commerce WordPress custom per trading card, sealed drop e accessori da collezione.
Version: 2.9.150
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 8.0
Text Domain: violet-vault
*/

@font-face {
  font-family:"Acryluxe Display";
  src:url("assets/fonts/Anton-Regular.ttf") format("truetype");
  font-style:normal;
  font-weight:400;
  font-display:swap;
}

:root {
  --ink: #08060d;
  --muted: #a39daf;
  --purple: #8b3dff;
  --purple-light: #bd81ff;
  --line: rgba(255, 255, 255, 0.12);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }

body {
  margin: 0;
  background: var(--ink);
  color: #fff;
  font-family: Arial, Helvetica, sans-serif;
  overflow-x: hidden;
}

button, a { -webkit-tap-highlight-color: transparent; }
button { font: inherit; }
a { color: inherit; text-decoration: none; }

.announcement {
  min-height: 31px;
  padding: 6px 4vw;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  color: #cdc8d4;
  background: #4f14a2;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.announcement-dot { width: 3px; height: 3px; border-radius: 50%; background: #d5b5ff; }
.announcement-link { margin-left: auto; color: white; border-bottom: 1px solid rgba(255,255,255,.55); }

.site-header {
  height: 76px;
  padding: 0 4vw;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 30;
  background: rgba(8, 6, 13, .86);
  border-bottom: 1px solid var(--line);
  backdrop-filter: blur(18px);
}
.brand { display: flex; align-items: center; gap: 10px; font-size: 16px; font-weight: 400; letter-spacing: .04em; }
.brand b { color: var(--purple-light); font-weight: 800; }
.brand-mark {
  display: grid; place-items: center; width: 34px; height: 40px;
  color: #fff; border: 1px solid #a767ff; transform: skew(-6deg);
  background: linear-gradient(145deg, #a255ff, #451080);
  box-shadow: 0 0 22px rgba(139,61,255,.32), inset 0 0 0 3px #130a23;
}
.brand-mark span { transform: skew(6deg); font-weight: 900; }
.nav { display:block; }
.nav-list { display:flex; align-items:center; gap:34px; margin:0; padding:0; list-style:none; }
.mobile-nav-top,.mobile-nav-kicker,.mobile-nav-cta,.mobile-nav-tools { display:none; }
.nav a { position: relative; color: #cbc6d2; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .13em; }
.nav a::after { content:""; position:absolute; left:0; bottom:-10px; width:0; height:2px; background:var(--purple-light); transition:.25s; }
.nav a:hover::after { width:100%; }
.nav a:hover { color:#fff; }
.nav-list .current-menu-item > a { color:#fff; }
.nav-list .current-menu-item > a::after { width:100%; }

/* The cart drawer already provides post-add feedback; WooCommerce's inline link overlaps compact product cards. */
.woocommerce a.added_to_cart.wc-forward { display:none !important; }
.header-actions { display: flex; align-items:center; gap:8px; }
.mobile-language-slot { display:none; }
.header-actions button {
  width: 38px; height: 38px; display:grid; place-items:center;
  border:0; background:transparent; color:#e9e5ee; cursor:pointer; border-radius:50%;
}
.header-actions button:hover { background:rgba(255,255,255,.08); }
.instagram-button {
  width:38px; height:38px; display:grid; place-items:center; border-radius:50%; color:#e9e5ee;
  transition:color .2s ease,background .2s ease,box-shadow .2s ease,transform .2s ease;
}
.instagram-button:hover,.instagram-button:focus-visible {
  color:#d2a2ff; background:rgba(167,103,255,.1); box-shadow:inset 0 0 0 1px rgba(194,140,255,.32),0 0 18px rgba(139,61,255,.16); transform:translateY(-1px);
}
.bag-button { position:relative; }
.bag-button span {
  position:absolute; top:0; right:0; width:16px; height:16px; display:grid; place-items:center;
  background:var(--purple); border-radius:50%; font-size:9px; font-weight:800;
}
.menu-button { display:none !important; }

.hero {
  min-height: 690px;
  display:grid;
  grid-template-columns: 45% 55%;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:
    radial-gradient(circle at 75% 45%, rgba(122,48,225,.24), transparent 34%),
    linear-gradient(120deg, #09070e 12%, #11091c 55%, #08060d);
}
.hero-responsive-background { position:absolute; inset:0; z-index:0; display:block; overflow:hidden; pointer-events:none; }
.hero-responsive-background::after { content:""; position:absolute; inset:0; z-index:2; background:linear-gradient(90deg,rgba(6,4,10,.52) 0%,rgba(7,4,12,.2) 46%,transparent 72%); }
.hero-responsive-background picture,
.hero-responsive-background img,
.hero-responsive-background video { width:100%; height:100%; display:block; }
.hero-responsive-background picture,
.hero-responsive-background video { position:absolute; inset:0; }
.hero-responsive-background img,
.hero-responsive-background video { object-fit:cover; object-position:center 52%; }
.hero-video { z-index:1; opacity:0; transition:opacity .24s ease; }
.hero-video-fallback { z-index:0; }
.hero-responsive-background.is-video-ready .hero-video { opacity:1; }
.hero-responsive-background.is-static .hero-video { display:none; }
.hero-video-toggle {
  position:absolute; z-index:4; right:clamp(16px,2.4vw,34px); bottom:clamp(16px,2.4vw,30px); min-height:42px; padding:0 14px 0 11px;
  display:inline-flex; align-items:center; gap:9px; border:1px solid rgba(218,189,255,.42); border-radius:999px;
  background:rgba(10,7,16,.76); color:#f5f0f8; box-shadow:0 10px 28px rgba(4,1,9,.38); backdrop-filter:blur(12px);
  font:700 10px/1 Arial,sans-serif; letter-spacing:.06em; cursor:pointer; transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
.hero-video-toggle:hover { background:rgba(64,28,108,.86); border-color:#d1a9ff; transform:translateY(-1px); }
.hero-video-toggle:active { transform:translateY(0) scale(.98); }
.hero-video-toggle:focus-visible { outline:2px solid #fff; outline-offset:3px; }
.hero-video-toggle-icon { width:20px; height:20px; display:grid; place-items:center; color:#e1cbff; border-radius:50%; background:rgba(181,113,255,.2); font-size:9px; letter-spacing:-1px; }
.hero-video-toggle[hidden] { display:none; }
.hero-grid {
  position:absolute; inset:0; z-index:1; opacity:.1;
  background-image: linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px);
  background-size: 68px 68px;
  mask-image: linear-gradient(90deg, #000, transparent 80%);
}
.hero-grid::after {
  content:""; position:absolute; inset:0;
  background:linear-gradient(90deg, transparent 49.8%, rgba(255,255,255,.12) 50%, transparent 50.2%);
  transform:rotate(-18deg) scale(1.6);
}
.hero-orb { position:absolute; z-index:-1; border-radius:50%; filter:blur(1px); border:1px solid rgba(188,129,255,.2); }
.orb-one { width:570px; height:570px; right:-150px; top:-130px; box-shadow:inset 0 0 90px rgba(137,61,255,.06); }
.orb-two { width:330px; height:330px; right:27%; bottom:-200px; }
.hero-copy { padding:118px 0 80px 7.5vw; position:relative; z-index:3; }
.eyebrow {
  display:flex; align-items:center; gap:9px; color:#c9b6dc; font-size:10px; font-weight:700;
  letter-spacing:.19em; text-transform:uppercase; margin-bottom:26px;
}
.eyebrow svg { color:#a960ff; }
.hero h1 {
  margin:0; font-family:"Acryluxe Display", Impact, "Arial Narrow", sans-serif; font-size:clamp(68px, 7.1vw, 112px);
  font-weight:400; line-height:.83; letter-spacing:-.025em; text-transform:uppercase;
}
.hero h1 em { color:transparent; font-style:normal; -webkit-text-stroke:1.5px #b76fff; text-shadow:0 0 45px rgba(147,66,255,.27); }
.hero-copy > p { max-width:520px; margin:31px 0 34px; color:#afa9b6; font-size:15px; line-height:1.7; }
.hero-actions { display:flex; align-items:center; gap:30px; }
.primary-button {
  min-width:198px; height:52px; padding:0 20px; display:flex; align-items:center; justify-content:center; gap:18px;
  background:linear-gradient(115deg,#7c2be8,#a251ff); color:#fff; font-size:11px; font-weight:800;
  letter-spacing:.1em; text-transform:uppercase; border:1px solid #b77cff;
  box-shadow:0 12px 35px rgba(110,36,219,.26); transition:.25s;
}
.primary-button:hover { transform:translateY(-3px); box-shadow:0 16px 40px rgba(139,61,255,.4); }
.text-button { color:#d7d1df; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.1em; border-bottom:1px solid #746b7e; padding:9px 0; display:inline-flex; align-items:center; gap:6px; }
.text-button svg { color:var(--purple-light); }
.hero-proof { display:flex; align-items:center; gap:14px; margin-top:56px; }
.avatars { display:flex; }
.avatars span {
  width:31px; height:31px; margin-left:-6px; display:grid; place-items:center; border:2px solid #0e0916; border-radius:50%;
  background:linear-gradient(145deg,#6c3e97,#24152f); color:#eee; font-size:8px; font-weight:700;
}
.avatars span:first-child { margin-left:0; }
.hero-proof b { display:block; font-size:11px; }
.hero-proof small { display:block; margin-top:3px; color:#847d8d; font-size:9px; letter-spacing:.03em; }

.hero-visual { min-width:0; position:relative; z-index:2; }
@media (min-width:761px) { .hero-visual { visibility:hidden; pointer-events:none; } }
.hero-visual::before {
  content:""; position:absolute; inset:8% 3% 4% -4%;
  background:radial-gradient(ellipse, rgba(119,41,220,.44), transparent 59%);
  filter:blur(20px);
}
.hero-image-wrap { position:absolute; inset:5% 0 0 -9%; display:grid; place-items:center; z-index:2; }
.hero-image-wrap img {
  width:min(850px, 63vw); max-width:none; aspect-ratio:16/10; object-fit:cover; object-position:center;
  mix-blend-mode:screen; filter:saturate(1.1) contrast(1.05); transform:rotate(-2deg);
  mask-image:radial-gradient(ellipse at center, #000 51%, transparent 77%);
}
.portal-ring { position:absolute; left:49%; top:48%; transform:translate(-50%,-50%); border-radius:50%; }
.ring-one { width:480px; height:480px; border:1px solid rgba(182,107,255,.25); box-shadow:0 0 60px rgba(139,61,255,.08); }
.ring-two { width:370px; height:370px; border:1px dashed rgba(216,182,255,.18); animation:spin 22s linear infinite; }
@keyframes spin { to { transform:translate(-50%,-50%) rotate(360deg); } }
.drop-card {
  position:absolute; z-index:4; right:6%; top:18%; width:132px; padding:17px;
  border:1px solid rgba(208,167,255,.35); background:rgba(22,12,35,.72); backdrop-filter:blur(14px);
  box-shadow:0 17px 55px rgba(0,0,0,.4);
}
.drop-card span { display:block; color:#ba79ff; font-size:8px; font-weight:800; letter-spacing:.18em; }
.drop-card b { display:block; margin:8px 0 16px; font-family:Georgia,serif; font-size:15px; }
.drop-card small { color:#898190; font-size:8px; text-transform:uppercase; letter-spacing:.12em; }
.drop-card div { display:grid; grid-template-columns:auto auto auto auto; align-items:end; gap:3px; margin-top:6px; }
.drop-card strong { font-size:17px; }
.drop-card i { margin-bottom:2px; color:#77707f; font-style:normal; font-size:6px; }
.auth-chip {
  position:absolute; z-index:4; right:14%; bottom:17%; display:flex; align-items:center; gap:8px;
  padding:10px 13px; color:#d9cced; background:rgba(10,7,15,.78); border:1px solid rgba(255,255,255,.14);
  backdrop-filter:blur(10px); font-size:8px; font-weight:700; letter-spacing:.1em; text-transform:uppercase;
}
.auth-chip svg { color:#aa62ff; }

.ticker { width:100%; height:44px; overflow:hidden; display:flex; align-items:center; background:linear-gradient(90deg,#6f27d3,#8b2ff0,#6f27d3); transform:none; position:relative; z-index:6; }
.ticker div { display:flex; width:max-content; align-items:center; gap:28px; white-space:nowrap; animation:ticker 28s linear infinite; }
.ticker span { font-size:10px; font-weight:900; letter-spacing:.19em; }
.ticker b { display:grid; place-items:center; color:#d4aaff; }
@keyframes ticker { to { transform:translateX(-50%); } }

.shop-section { padding:130px 5vw 110px; background:#f3eff7; color:#16111c; }
.section-heading { display:flex; align-items:flex-end; justify-content:space-between; margin:0 auto 58px; max-width:1400px; }
.section-heading .index { display:block; margin-bottom:18px; color:#7247a1; font-size:9px; font-weight:800; letter-spacing:.18em; }
.section-heading h2 { margin:0; font-family:Impact,"Arial Narrow",sans-serif; font-size:clamp(52px,5.4vw,76px); line-height:.92; letter-spacing:-.015em; text-transform:uppercase; }
.section-heading h2 em { color:#8139d7; font-style:normal; }
.section-heading p { max-width:380px; color:#6d6674; font-size:13px; line-height:1.7; }
.filters { max-width:1400px; margin:0 auto 28px; display:flex; gap:7px; flex-wrap:wrap; }
.filters button { padding:11px 17px; border:1px solid #d4ccdc; background:transparent; color:#6e6577; font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; cursor:pointer; transition:.2s; }
.filters button:hover,.filters button.active { background:#1a1221; border-color:#1a1221; color:#fff; }
.product-customization-note { max-width:760px; margin:0 auto 20px; color:#665d70; font-size:13px; line-height:1.65; }
.product-grid { max-width:1400px; margin:0 auto; display:grid; grid-template-columns:repeat(4,1fr); gap:15px; }
.product-card { min-width:0; }
.product-art {
  height:420px; position:relative; overflow:hidden; display:grid; place-items:center;
  background:
    radial-gradient(circle at 50% 45%, color-mix(in srgb, var(--glow) 38%, transparent), transparent 35%),
    linear-gradient(145deg,#16101d,#08060c);
}
.product-art::before {
  content:""; position:absolute; inset:0; opacity:.23;
  background-image:linear-gradient(rgba(255,255,255,.11) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.11) 1px,transparent 1px);
  background-size:38px 38px; transform:perspective(300px) rotateX(63deg) scale(1.8) translateY(25%);
}
.product-art::after { content:""; position:absolute; width:220px; height:220px; border:1px solid color-mix(in srgb, var(--glow) 55%, transparent); border-radius:50%; box-shadow:0 0 50px color-mix(in srgb, var(--glow) 25%, transparent); }
.product-tag { position:absolute; z-index:4; left:15px; top:15px; padding:7px 9px; color:#fff; background:#7132c2; font-size:7px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.favorite { position:absolute; z-index:5; right:14px; top:14px; width:33px; height:33px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.2); border-radius:50%; background:rgba(0,0,0,.25); color:#fff; cursor:pointer; transition:.2s; }
.favorite.active { background:#8b3dff; border-color:#b985ff; }
.art-card {
  width:175px; height:250px; padding:13px; position:relative; z-index:2; display:flex; flex-direction:column; align-items:center; justify-content:flex-end;
  border:2px solid color-mix(in srgb, var(--glow) 75%, white); border-radius:10px;
  background:
    radial-gradient(circle at 50% 42%,color-mix(in srgb,var(--glow) 75%,white),transparent 8%),
    radial-gradient(circle at 50% 43%,color-mix(in srgb,var(--glow) 60%,transparent),transparent 35%),
    linear-gradient(140deg,#20162c,#07070d);
  box-shadow:0 25px 35px rgba(0,0,0,.55),0 0 28px color-mix(in srgb,var(--glow) 28%,transparent),inset 0 0 0 5px #110b18;
  transform:perspective(600px) rotateY(-8deg) rotateX(3deg); transition:.45s cubic-bezier(.2,.75,.2,1);
}
.product-card:hover .art-card { transform:perspective(600px) translateY(-10px) rotateY(5deg) rotateX(-2deg) scale(1.03); }
.art-card::before { content:""; position:absolute; top:59px; width:50px; height:50px; border:1px solid color-mix(in srgb,var(--glow) 75%,white); transform:rotate(45deg); box-shadow:0 0 22px var(--glow),inset 0 0 14px color-mix(in srgb,var(--glow) 18%,transparent); }
.knight .art-card::before { border-radius:50% 0; }
.eclipse .art-card::before { border-radius:50%; clip-path:inset(0 0 0 48%); }
.prism .art-card::before { width:42px; height:58px; transform:rotate(30deg) skewY(-12deg); }
.art-number { position:absolute; top:11px; left:13px; color:#cfc4dd; font-size:6px; letter-spacing:.12em; }
.art-card i { width:55px; height:1px; background:var(--glow); margin-bottom:9px; box-shadow:0 0 7px var(--glow); }
.art-card b { font-family:Georgia,serif; color:#fff; font-size:17px; text-transform:uppercase; }
.art-card small { margin-top:4px; color:#b6adbd; font-size:5px; letter-spacing:.22em; }
.art-card.has-product-image { padding:0; overflow:hidden; }
.art-card.has-product-image::before { display:none; }
.art-card.has-product-image img { width:100%; height:100%; display:block; object-fit:contain; object-position:center; margin:0; }
.product-card:is([data-product-slug="edge"],[data-product-slug="stage"],[data-product-slug="flex"],[data-product-slug="elite-block"]) .product-art { background:#fff; }
.product-card:is([data-product-slug="edge"],[data-product-slug="stage"],[data-product-slug="flex"],[data-product-slug="elite-block"]) .product-art::before,
.product-card:is([data-product-slug="edge"],[data-product-slug="stage"],[data-product-slug="flex"],[data-product-slug="elite-block"]) .product-art::after { display:none; }
.product-card:is([data-product-slug="edge"],[data-product-slug="stage"],[data-product-slug="flex"],[data-product-slug="elite-block"]) .art-card.has-product-image {
  width:100%; height:100%; border:0; border-radius:0; background:#fff; box-shadow:none; transform:none;
}
.product-card:is([data-product-slug="edge"],[data-product-slug="stage"],[data-product-slug="flex"],[data-product-slug="elite-block"]):hover .art-card.has-product-image { transform:none; }
.product-card:is([data-product-slug="edge"],[data-product-slug="stage"],[data-product-slug="flex"],[data-product-slug="elite-block"]) .art-card.has-product-image img {
  transition:transform .45s cubic-bezier(.2,.75,.2,1);
}
@media (hover:hover) and (pointer:fine) {
  .product-card:is([data-product-slug="edge"],[data-product-slug="stage"],[data-product-slug="flex"],[data-product-slug="elite-block"]):hover .art-card.has-product-image img { transform:scale(1.055); }
}
@media (prefers-reduced-motion:reduce) {
  .product-card:is([data-product-slug="edge"],[data-product-slug="stage"],[data-product-slug="flex"],[data-product-slug="elite-block"]) .art-card.has-product-image img { transition:none; }
}
.product-card:is([data-product-slug="edge"],[data-product-slug="stage"],[data-product-slug="flex"],[data-product-slug="elite-block"]) .art-number { display:none; }
.quick-add {
  position:absolute; z-index:4; left:12px; right:12px; bottom:12px; height:42px; padding:0 16px; display:flex; align-items:center; justify-content:space-between;
  border:0; background:#f8f5fb; color:#16101d; font-size:9px; font-weight:800; letter-spacing:.12em; text-transform:uppercase;
  cursor:pointer; transform:translateY(60px); transition:.3s;
}
.product-card:hover .quick-add,.quick-add:focus-visible { transform:translateY(0); }
.quick-add span { font-size:18px; font-weight:400; }
.product-info { padding:16px 2px; display:flex; justify-content:space-between; gap:10px; }
.product-info > div > span { display:block; margin-bottom:5px; color:#897f91; font-size:8px; letter-spacing:.12em; text-transform:uppercase; }
.product-info h3 { margin:0; font-size:14px; }
.product-info p { margin:0; display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:baseline; gap:4px 7px; font-size:13px; font-weight:800; line-height:1.35; }
.product-info del { color:#9d94a3; font-size:10px; font-weight:400; }
.product-info ins { text-decoration:none; }
.products-more { max-width:1400px; margin:42px auto 0; display:flex; justify-content:center; }
.toast {
  position:fixed; z-index:1000030; right:24px; bottom:24px; min-width:min(330px,calc(100vw - 24px)); display:flex; align-items:center; gap:12px;
  padding:13px 16px; background:linear-gradient(135deg,#17101f,#241030); border:1px solid #8b3dff; box-shadow:0 20px 65px rgba(0,0,0,.5),0 0 26px rgba(139,61,255,.2);
  color:#f5effb; font-size:12px; letter-spacing:.03em; animation:toastIn .3s ease both;
}
.toast span { width:28px; height:28px; flex:0 0 28px; display:grid; place-items:center; border:1px solid #a85cff; border-radius:50%; color:#d9b7ff; }
.toast span::before { content:""; width:6px; height:11px; border:solid currentColor; border-width:0 2px 2px 0; transform:translateY(-1px) rotate(45deg); }
.toast strong { font-weight:700; }
@keyframes toastIn { from { opacity:0; transform:translateY(12px); } }

.index { color:#9a72c7; font-size:9px; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.promise-section { padding:120px 5vw; display:grid; grid-template-columns:36% 64%; background:#0b0810; border-top:1px solid var(--line); }
.promise-intro { padding:20px 2vw 0 1vw; }
.promise-intro h2 { margin:23px 0 0; font-family:Impact,"Arial Narrow",sans-serif; font-size:clamp(29px,2.7vw,46px); line-height:.98; text-transform:uppercase; }
.promise-title-line { display:block; white-space:nowrap; }
.promise-intro h2 em { color:transparent; font-style:normal; -webkit-text-stroke:1px #a757ff; }
.promise-grid { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--line); }
.promise-grid article { min-height:430px; padding:30px; position:relative; display:flex; flex-direction:column; border-right:1px solid var(--line); transition:.25s; }
.promise-grid article:last-child { border-right:0; }
.promise-grid article:hover { background:linear-gradient(145deg,rgba(135,57,224,.15),transparent); }
.promise-number { display:block; margin-bottom:64px; color:#716b77; font-size:8px; letter-spacing:.12em; }
.promise-grid svg { color:#a851ff; }
.promise-grid h3 { margin:23px 0 12px; font-family:Georgia,serif; font-size:18px; font-weight:400; }
.promise-grid p { margin:0; color:#908a97; font-size:12px; line-height:1.7; }
.promise-card-link { margin-top:auto; padding-top:24px; display:inline-flex; align-items:center; gap:7px; color:#b873ff; font-size:8px; font-weight:800; line-height:1.5; letter-spacing:.12em; text-transform:uppercase; }
.promise-card-link:hover { color:#fff; }

.home-sets {
  padding:clamp(82px,8vw,126px) 5vw;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:
    radial-gradient(circle at 82% 12%,rgba(143,61,255,.18),transparent 30%),
    radial-gradient(circle at 14% 88%,rgba(95,34,174,.12),transparent 28%),
    #08060d;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.home-sets::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  opacity:.28;
  background-image:linear-gradient(rgba(181,109,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(181,109,255,.08) 1px,transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 82%,transparent);
}
.home-sets-heading {
  margin-bottom:clamp(42px,5vw,72px);
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);
  align-items:end;
  gap:clamp(36px,6vw,100px);
}
.home-sets-heading > div { min-width:0; }
.home-sets-heading span {
  display:block;
  color:#b982f3;
  font-size:10px;
  font-weight:800;
  letter-spacing:.19em;
  text-transform:uppercase;
}
.home-sets-heading h2 {
  max-width:900px;
  margin:19px 0 0;
  font-family:Impact,"Arial Narrow",sans-serif;
  font-size:clamp(44px,5.2vw,82px);
  font-weight:900;
  line-height:.91;
  letter-spacing:-.018em;
  text-transform:uppercase;
  text-wrap:balance;
}
.home-sets-heading p { max-width:510px; margin:0 0 27px; color:#b6aebe; font-size:15px; line-height:1.72; }
.home-sets-heading .primary-button { width:max-content; min-width:220px; }
.home-sets-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.home-set-card {
  min-width:0;
  min-height:360px;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  overflow:hidden;
  border:1px solid #292230;
  background:linear-gradient(145deg,rgba(18,13,25,.98),rgba(8,6,13,.96));
  transition:border-color .25s ease,transform .25s ease,box-shadow .25s ease;
}
.home-set-card:hover { transform:translateY(-4px); border-color:#5f3c7e; box-shadow:0 24px 64px rgba(0,0,0,.28); }
.home-set-card.is-featured {
  min-height:430px;
  grid-column:1/-1;
  grid-template-columns:minmax(0,1.18fr) minmax(340px,.82fr);
  border-color:#7642a7;
  background:linear-gradient(125deg,rgba(23,13,35,.99),rgba(10,7,15,.98));
  box-shadow:0 28px 85px rgba(76,22,130,.18);
}
.home-set-card-visual {
  min-width:0;
  min-height:100%;
  padding:clamp(22px,3vw,42px);
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center;
  gap:clamp(10px,1.5vw,22px);
  background:radial-gradient(circle at center,rgba(144,62,245,.2),transparent 57%),linear-gradient(145deg,#100a18,#08060d);
  border-right:1px solid var(--line);
}
.home-set-card-visual a { min-width:0; display:grid; grid-template-rows:minmax(0,1fr) auto; align-items:end; gap:15px; color:#eee8f5; text-align:center; }
.home-set-card-visual img { width:100%; height:clamp(185px,17vw,280px); display:block; object-fit:contain; object-position:center; transition:transform .28s ease; }
.home-set-card:hover .home-set-card-visual img { transform:translateY(-4px) scale(1.015); }
.home-set-card-visual strong { overflow-wrap:anywhere; font-size:11px; font-weight:800; letter-spacing:.1em; line-height:1.35; text-transform:uppercase; }
.home-set-card-visual i {
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border:1px solid #7642a7;
  border-radius:50%;
  background:#100a18;
  color:#c995ff;
  font-size:18px;
  font-style:normal;
}
.home-set-card-copy { min-width:0; padding:clamp(27px,3.2vw,48px); display:flex; flex-direction:column; align-items:flex-start; justify-content:center; }
.home-set-card-copy header { width:100%; display:flex; align-items:center; flex-wrap:wrap; gap:9px 12px; }
.home-set-card-copy header > span { color:#a99fb0; font-size:8px; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.home-set-card-copy header > b { padding:7px 9px; border:1px solid #8748be; border-radius:999px; color:#d7aeff; font-size:8px; line-height:1; letter-spacing:.13em; text-transform:uppercase; }
.home-set-card-copy h3 { width:100%; margin:15px 0 0; font-family:Georgia,serif; font-size:clamp(26px,2.35vw,39px); font-weight:400; line-height:1.05; }
.home-set-card-copy > p { max-width:480px; margin:17px 0 0; color:#a69eaa; font-size:14px; line-height:1.68; }
.home-set-card-price { margin:28px 0 19px; display:flex; align-items:center; flex-wrap:wrap; gap:11px; }
.home-set-card-price > strong { color:#fff; font-family:Georgia,serif; font-size:28px; font-weight:400; }
.home-set-card-price > span { padding:7px 9px; border:1px solid rgba(184,115,255,.45); border-radius:999px; color:#c995ff; font-size:8px; font-weight:800; letter-spacing:.11em; text-transform:uppercase; }
.home-set-card-link { min-height:44px; display:inline-flex; align-items:center; gap:9px; color:#d1a0ff; font-size:10px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.home-set-card-link svg { transition:transform .2s ease; }
.home-set-card-link:hover { color:#fff; }
.home-set-card-link:hover svg { transform:translateX(4px); }
.home-set-card-link:focus-visible { outline:2px solid #c995ff; outline-offset:5px; }

.accessory-feature { min-height:clamp(560px,62svh,640px); display:grid; grid-template-columns:56% 44%; background:#eee8f3; color:#18121d; }
.accessory-visual { min-height:clamp(560px,62svh,640px); position:relative; display:grid; place-items:center; overflow:hidden; background:radial-gradient(circle at center,#d6c6e4,#aba0b6 62%,#8f8797); }
.accessory-visual::before { content:""; position:absolute; inset:0; opacity:.23; background-image:linear-gradient(rgba(255,255,255,.7) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.7) 1px,transparent 1px); background-size:52px 52px; transform:perspective(500px) rotateX(60deg) scale(1.5) translateY(20%); }
.accessory-real-photo { position:relative; z-index:1; display:block; width:100%; max-width:none; height:100%; object-fit:contain; object-position:center; }
.accessory-copy { padding:clamp(52px,5vw,76px) 7vw; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; }
.accessory-copy h2 { margin:23px 0 25px; font-family:Impact,"Arial Narrow",sans-serif; font-size:clamp(52px,5vw,75px); line-height:.93; text-transform:uppercase; }
.accessory-copy h2 em { color:#843bd5; font-style:normal; }
.accessory-copy > p { max-width:470px; margin:0; color:#736a79; font-size:14px; line-height:1.75; }
.accessory-copy ul { width:100%; margin:30px 0 35px; padding:0; list-style:none; border-top:1px solid #d4cadb; }
.accessory-copy li { padding:15px 0; border-bottom:1px solid #d4cadb; color:#463d4c; font-size:10px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.accessory-copy li span { display:inline-block; width:35px; color:#9e8da9; }
.accessory-copy .primary-button { color:#fff; }

.membership { min-height:520px; padding:90px 20px; position:relative; isolation:isolate; display:flex; flex-direction:column; align-items:center; justify-content:center; overflow:hidden; text-align:center; background:radial-gradient(circle at 50% 70%,rgba(153,63,255,.38),transparent 40%),linear-gradient(145deg,#130a1e,#08060d); border-top:1px solid var(--line); }
.membership::before,.membership::after { content:""; position:absolute; z-index:-1; width:500px; height:500px; border:1px solid rgba(181,109,255,.16); border-radius:50%; }
.membership::before { left:-210px; top:-260px; }
.membership::after { right:-170px; bottom:-310px; }
.membership-noise { position:absolute; inset:0; z-index:-1; opacity:.22; background-image:radial-gradient(rgba(255,255,255,.5) .7px,transparent .7px); background-size:28px 28px; mask-image:radial-gradient(circle,#000,transparent 72%); }
.membership-kicker { display:flex; align-items:center; gap:8px; color:#bd8bf2; font-size:9px; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.membership h2 { margin:22px 0 14px; font-family:Impact,"Arial Narrow",sans-serif; font-size:clamp(56px,6.8vw,98px); line-height:.88; letter-spacing:-.02em; }
.membership h2 em { color:transparent; font-style:normal; -webkit-text-stroke:1px #c184ff; }
.membership > p { margin:0 0 29px; color:#aca5b4; font-size:13px; }
.membership form { width:min(540px,100%); display:grid; grid-template-columns:minmax(0,1fr) 58px; align-items:stretch; }
.membership input { min-width:0; padding:0 20px; border:0; outline:0; background:transparent; color:#fff; font-size:10px; font-weight:700; letter-spacing:.13em; }
.membership form > input[type="email"] { height:54px; border:1px solid rgba(192,137,255,.38); border-right:0; background:rgba(255,255,255,.045); }
.membership input::placeholder { color:#7d7485; }
.membership form button { width:58px; height:54px; border:0; background:#8d3de6; color:#fff; display:grid; place-items:center; cursor:pointer; }
.membership > small { display:block; max-width:540px; margin-top:14px; color:#89818f; font-size:10px; line-height:1.5; }

footer { padding:70px 5vw 20px; background:#07050a; border-top:1px solid var(--line); }
.footer-main { display:grid; grid-template-columns:42% 58%; padding-bottom:70px; }
.footer-wordmark { color:#fff; font-size:20px; font-weight:700; letter-spacing:.28em; }
.footer-brand p { max-width:300px; margin:22px 0 0; color:#77717c; font-size:11px; line-height:1.65; }
.footer-links { display:grid; grid-template-columns:repeat(3,1fr); gap:40px; }
.footer-links div { display:flex; flex-direction:column; gap:12px; }
.footer-links b { margin-bottom:8px; color:#b074ef; font-size:9px; letter-spacing:.16em; text-transform:uppercase; }
.footer-links a { color:#9c96a1; font-size:10px; }
.footer-links a:hover { color:#fff; }
.footer-social-link { display:inline-flex; align-items:center; gap:6px; }
.footer-bottom { min-height:55px; display:flex; align-items:center; gap:35px; border-top:1px solid var(--line); color:#56515a; font-size:8px; letter-spacing:.08em; text-transform:uppercase; }
.footer-business-details { padding:13px 0 16px; border-top:1px solid var(--line); color:#56515a; font-size:8px; letter-spacing:.08em; line-height:1.5; text-transform:uppercase; }
.footer-credit { display:inline-flex; align-items:center; gap:4px; color:#736b78; font-size:10px; letter-spacing:.04em; text-transform:none; white-space:nowrap; transition:color .2s ease; }
.footer-credit strong { color:#aa72e5; font-weight:800; transition:color .2s ease; }
.footer-credit:hover,.footer-credit:focus-visible,.footer-credit:hover strong,.footer-credit:focus-visible strong { color:#fff; }
.footer-bottom b { margin-left:auto; color:#7a7280; letter-spacing:.2em; }

.overlay { position:fixed; inset:0; z-index:1000010; background:rgba(4,2,7,.72); backdrop-filter:blur(3px); opacity:0; visibility:hidden; transition:.3s; }
.overlay.active { opacity:1; visibility:visible; }
.cart-drawer { position:fixed; z-index:1000020; top:0; right:0; width:min(430px,100%); height:100dvh; display:flex; flex-direction:column; background:#f4f0f7; color:#19131f; transform:translateX(102%); transition:.35s cubic-bezier(.22,.8,.25,1); box-shadow:-25px 0 80px rgba(0,0,0,.35); }
.cart-drawer.open { transform:translateX(0); }
html.panel-open .ppc-button-wrapper { visibility:hidden !important; }
.drawer-head { min-height:82px; padding:0 25px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid #d9d0df; }
.drawer-head span { display:block; color:#76508b; font-size:8px; font-weight:800; letter-spacing:.16em; }
.drawer-head b { display:block; margin-top:4px; font-size:15px; }
.drawer-head button,.search-head > button { width:36px; height:36px; border:1px solid #d2c8d9; border-radius:50%; background:transparent; color:#4e4355; font-size:24px; cursor:pointer; }
.cart-added-feedback { flex:0 0 auto; min-height:42px; padding:10px 25px; display:flex; align-items:center; gap:10px; background:linear-gradient(90deg,#251432,#7d32cf); color:#fff; font-size:10px; font-weight:800; letter-spacing:.07em; text-transform:uppercase; animation:cartFeedbackIn .3s ease both; }
.cart-added-feedback::before { content:""; width:22px; height:22px; flex:0 0 22px; border:1px solid rgba(255,255,255,.55); border-radius:50%; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 12 3 3 7-7'/%3E%3C/svg%3E") center/14px no-repeat; }
.cart-added-feedback[hidden] { display:none; }
@keyframes cartFeedbackIn { from { opacity:0; transform:translateY(-8px); } }
.js-cart-drawer-body-v2 { min-height:0; flex:1; display:flex; flex-direction:column; }
.drawer-content { flex:1; overflow:auto; padding:20px 25px; }
.empty-state { height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; }
.empty-state svg { color:#8d44df; }
.empty-state h3 { margin:18px 0 7px; font-family:Georgia,serif; font-size:22px; }
.empty-state p { color:#827889; font-size:12px; }
.empty-state button { margin-top:18px; padding:13px 20px; border:0; background:#1a1220; color:#fff; font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; cursor:pointer; }
.cart-line { padding:15px 0; display:grid; grid-template-columns:72px 1fr auto; gap:15px; align-items:center; border-bottom:1px solid #ded6e4; }
.cart-thumb { width:72px; display:block; color:#fff; font-size:32px; background:transparent; box-shadow:none; border:0; }
.cart-thumb img { width:100%; height:auto; display:block; object-fit:contain; margin:0; border:0; background:transparent; box-shadow:none; }
.cart-line-main { min-width:0; }
.cart-line span { display:block; color:#89788f; font-size:7px; letter-spacing:.1em; text-transform:uppercase; }
.cart-line b { display:block; margin:6px 0 10px; font-size:13px; }
.cart-line b a { color:inherit; }
.cart-line .variation { margin:0 0 8px; display:grid; grid-template-columns:auto 1fr; gap:2px 6px; color:#746a79; font-size:9px; }
.cart-line .variation dt,.cart-line .variation dd,.cart-line .variation p { margin:0; }
.cart-combo-label { display:block; margin:-4px 0 7px; color:#7e35ba; font-style:normal; font-size:8px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.cart-line small { color:#582081; font-size:11px; font-weight:800; }
.cart-line-bottom { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.cart-drawer-quantity { display:grid; grid-template-columns:30px 34px 30px; align-items:center; border:1px solid #d4c8dc; background:#fff; }
.cart-drawer-quantity button { width:30px; height:32px; padding:0; border:0; background:transparent; color:#60268d; font-size:16px; cursor:pointer; }
.cart-drawer-quantity button:disabled { opacity:.35; cursor:not-allowed; }
.cart-drawer-quantity span { display:grid; min-height:32px; place-items:center; border-inline:1px solid #e0d7e5; color:#24152e; font-size:10px; font-weight:900; letter-spacing:0; }
.cart-combo-linked-quantity { font-size:8px!important; }
.cart-remove { min-width:36px; min-height:36px; display:grid; place-items:center; padding:0; border:1px solid transparent; border-radius:50%; color:#776c7e; font-size:20px; }
.cart-remove:hover,.cart-remove:focus-visible { border-color:#b991d6; color:#63248e; }
html.cart-updating .cart-drawer,html.cart-updating .acryluxe-cart-page-content { cursor:wait; }
html.cart-updating .cart-drawer button,html.cart-updating .acryluxe-cart-page-content button { pointer-events:none; opacity:.65; }
.cart-drawer.cart-just-updated .cart-line:first-child { animation:cartLineAdded .65s ease both; }
@keyframes cartLineAdded { 0% { opacity:.35; transform:translateX(14px); background:rgba(139,61,255,.14); } 100% { opacity:1; transform:none; background:transparent; } }
.drawer-total { padding:22px 25px 28px; background:#fff; border-top:1px solid #d8cfdf; }
.drawer-total p { margin:0; display:flex; justify-content:space-between; font-size:14px; }
.drawer-total small { display:block; margin:6px 0 18px; color:#8c838f; font-size:8px; }
.drawer-total > a { width:100%; height:50px; padding:0 18px; display:flex; align-items:center; justify-content:space-between; background:linear-gradient(110deg,#6820bc,#9648ec); color:#fff; font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.acryluxe-free-shipping-progress { margin:0 0 18px; padding:13px 14px; border:1px solid rgba(139,61,255,.3); background:rgba(139,61,255,.07); }
.acryluxe-free-shipping-progress p { margin:0!important; display:flex; align-items:baseline; justify-content:space-between; gap:12px; font-size:10px!important; font-weight:800; letter-spacing:.03em; }
.acryluxe-free-shipping-progress p strong { color:#7d32cf; font-variant-numeric:tabular-nums; white-space:nowrap; }
.acryluxe-free-shipping-progress-bar { height:6px; margin:10px 0 7px; overflow:hidden; border-radius:999px; background:rgba(98,38,141,.15); }
.acryluxe-free-shipping-progress-bar span { display:block; width:0; height:100%; border-radius:inherit; background:linear-gradient(90deg,#6d23ba,#b066ff); transition:width .3s ease; }
.acryluxe-free-shipping-progress small { margin:0!important; color:#766a7b!important; font-size:8px!important; line-height:1.45; }
.acryluxe-free-shipping-progress.is-complete { border-color:rgba(62,150,101,.38); background:rgba(61,151,101,.08); }
.acryluxe-free-shipping-progress.is-complete p strong { color:#26734b; }
.acryluxe-free-shipping-progress.is-complete .acryluxe-free-shipping-progress-bar { background:rgba(38,115,75,.15); }
.acryluxe-free-shipping-progress.is-complete .acryluxe-free-shipping-progress-bar span { background:linear-gradient(90deg,#237246,#5ac17f); }

.acryluxe-shipping-bands { margin:12px 0; font-size:12px; line-height:1.5; }
.acryluxe-shipping-bands > div { display:grid; grid-template-columns:1fr auto; align-items:center; gap:12px; padding:7px 0; border-bottom:1px solid currentColor; border-color:rgba(139,61,255,.15); }
.acryluxe-shipping-bands dt,.acryluxe-shipping-bands dd { margin:0; }
.acryluxe-shipping-bands dd { font-variant-numeric:tabular-nums; white-space:nowrap; }
.acryluxe-shipping-bands .is-active { font-weight:800; }
.acryluxe-shipping-bands dt small { display:block; font-size:10px!important; color:inherit!important; }
.cart-page .acryluxe-free-shipping-progress p,.cart-page .acryluxe-shipping-bands { color:inherit; }
.cart-page .acryluxe-free-shipping-progress small { color:inherit!important; opacity:.8; font-size:11px!important; }

.search-panel { position:fixed; z-index:80; left:50%; top:12%; width:min(720px,calc(100% - 30px)); max-height:76dvh; overflow:hidden; background:#f3eff6; color:#19131e; box-shadow:0 35px 100px rgba(0,0,0,.55); opacity:0; visibility:hidden; transform:translate(-50%,-20px); transition:.3s; }
.search-panel.open { opacity:1; visibility:visible; transform:translate(-50%,0); }
.search-head { height:82px; padding:0 24px; display:flex; align-items:center; gap:15px; border-bottom:1px solid #d6ccdd; }
.search-head svg { color:#7437b2; }
.search-head input { flex:1; min-width:0; height:100%; border:0; outline:0; background:transparent; font-size:19px; font-family:Impact,"Arial Narrow",sans-serif; letter-spacing:.06em; }
.search-results { padding:23px 24px 27px; overflow:auto; }
.search-results > span { display:block; margin-bottom:10px; color:#8d769c; font-size:8px; font-weight:800; letter-spacing:.16em; }
.search-results > button { width:100%; padding:13px 4px; display:grid; grid-template-columns:12px 1fr auto 25px; gap:13px; align-items:center; border:0; border-bottom:1px solid #ddd4e3; background:transparent; text-align:left; cursor:pointer; }
.search-results > button:hover { background:rgba(126,55,197,.06); }
.search-results i { width:9px; height:40px; border-radius:10px; box-shadow:0 0 12px currentColor; }
.search-results button span b { display:block; font-size:13px; }
.search-results button span small { display:block; margin-top:4px; color:#8e8492; font-size:8px; text-transform:uppercase; letter-spacing:.08em; }
.search-results strong { display:grid; place-items:center; font-size:11px; }
.search-results em { color:#8032cf; font-size:18px; font-style:normal; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

/* Laptop and short desktop viewports */
@media (min-width: 761px) and (max-height: 900px) {
  .hero {
    min-height:clamp(630px,calc(100vh - 120px),740px);
    grid-template-columns:48% 52%;
  }
  .hero-copy { padding:64px 0 54px 6.5vw; }
  .eyebrow { margin-bottom:20px; }
  .hero h1 { font-size:clamp(62px,5.7vw,92px); line-height:.88; }
  .hero-actions { margin-top:24px; }
  .hero-proof { margin-top:32px; }
  .hero-image-wrap { inset:8% 0 2% -7%; }
  .hero-image-wrap img { width:min(760px,57vw); }
  .ring-one { width:420px; height:420px; }
  .ring-two { width:320px; height:320px; }
}

@media (max-width: 1050px) {
  .nav-list { gap:20px; }
  .hero { grid-template-columns:54% 46%; min-height:650px; }
  .hero-copy { padding-left:5vw; }
  .hero-image-wrap { left:-27%; }
  .drop-card { right:4%; }
  .product-grid { grid-template-columns:repeat(2,1fr); gap:24px 15px; }
  .promise-section { grid-template-columns:1fr; gap:45px; }
  .promise-intro { padding-left:0; }
  .home-sets-heading { grid-template-columns:minmax(0,1fr) minmax(280px,.7fr); gap:40px; }
  .home-set-card:not(.is-featured) { min-height:0; grid-template-columns:1fr; }
  .home-set-card:not(.is-featured) .home-set-card-visual { min-height:280px; border-right:0; border-bottom:1px solid var(--line); }
  .accessory-feature { grid-template-columns:52% 48%; }
  .accessory-copy { padding-inline:5vw; }
}

@media (max-width: 760px) {
	.hero-responsive-background::after { background:linear-gradient(180deg,rgba(5,3,9,.42) 0%,rgba(5,3,9,.2) 48%,transparent 74%); }
	.hero-responsive-background img,
	.hero-responsive-background video { object-position:55% bottom; }
	.hero-visual { visibility:hidden; pointer-events:none; }
	.hero-video-toggle { right:16px; bottom:18px; min-height:40px; padding-right:12px; font-size:9px; }
  .announcement { justify-content:center; padding-inline:15px; }
  .announcement > :nth-child(2), .announcement > :nth-child(3) { display:none; }
  .announcement-link { margin-left:0; }
  .site-header { height:68px; padding-inline:18px; }
  .brand { font-size:14px; }
  .brand-mark { width:30px; height:35px; }
  .desktop-action { display:none !important; }
  .menu-button { display:flex !important; flex-direction:column; justify-content:center; gap:6px; }
  .menu-button i { display:block; width:20px; height:1px; background:#fff; transition:.25s; }
  .menu-button.active i:first-child { transform:translateY(3.5px) rotate(45deg); }
  .menu-button.active i:last-child { transform:translateY(-3.5px) rotate(-45deg); }
  .nav {
    position:absolute; left:0; right:0; top:68px; padding:24px; display:flex; flex-direction:column; gap:20px;
    background:rgba(9,6,14,.98); border-bottom:1px solid var(--line); transform:translateY(-130%); opacity:0; pointer-events:none; transition:.3s;
  }
  .nav.open { transform:translateY(0); opacity:1; pointer-events:auto; }
  .hero { min-height:830px; grid-template-columns:1fr; grid-template-rows:auto 365px; }
  .hero-copy { padding:72px 22px 15px; }
  .hero h1 { font-size:clamp(58px,19vw,86px); }
  .hero-copy > p { margin-block:25px; font-size:14px; }
  .hero-actions { gap:18px; }
  .primary-button { min-width:180px; }
  .text-button { font-size:9px; }
  .hero-proof { margin-top:35px; }
  .hero-visual { min-height:365px; }
  .hero-image-wrap { inset:-13% -27% -2% -27%; }
  .hero-image-wrap img { width:790px; max-width:none; }
  .ring-one { width:340px; height:340px; }
  .ring-two { width:270px; height:270px; }
  .drop-card { top:0; right:18px; transform:scale(.88); transform-origin:top right; }
  .auth-chip { right:auto; left:20px; bottom:36px; }
  .ticker { height:39px; }
  .shop-section { padding:90px 16px 70px; }
  .section-heading { display:block; margin-bottom:35px; }
  .section-heading h2 { font-size:54px; }
  .section-heading p { margin-top:24px; }
  .filters { overflow:auto; flex-wrap:nowrap; margin-inline:-16px; padding:0 16px 8px; scrollbar-width:none; }
  .filters button { white-space:nowrap; }
  .product-grid { grid-template-columns:1fr 1fr; gap:18px 9px; }
  .product-art { height:315px; }
  .art-card { width:128px; height:190px; }
  .art-card::before { top:47px; width:40px; height:40px; }
  .art-card b { font-size:12px; }
  .quick-add { transform:translateY(0); left:8px; right:8px; bottom:8px; height:38px; }
  .product-info { display:block; padding-top:12px; }
  .product-info h3 { font-size:12px; }
  .product-info p { margin-top:9px; justify-content:flex-start; }
  .product-info del { display:inline-flex; }
  .promise-section { padding:80px 18px; }
  .promise-grid { grid-template-columns:1fr; }
  .promise-grid article { min-height:230px; border-right:0; border-bottom:1px solid var(--line); }
  .promise-grid article:last-child { border-bottom:0; }
  .promise-number { margin-bottom:35px; }
  .home-sets { padding:72px 18px; }
  .home-sets-heading { margin-bottom:34px; grid-template-columns:1fr; align-items:start; gap:24px; }
  .home-sets-heading h2 { margin-top:15px; font-size:clamp(37px,11.3vw,54px); line-height:.94; }
  .home-sets-heading p { max-width:38rem; margin-bottom:22px; font-size:16px; line-height:1.65; }
  .home-sets-heading .primary-button { width:100%; min-width:0; min-height:54px; }
  .home-sets-grid { grid-template-columns:minmax(0,1fr); gap:16px; }
  .home-set-card,.home-set-card.is-featured,.home-set-card:not(.is-featured) { min-height:0; grid-column:auto; grid-template-columns:minmax(0,1fr); }
  .home-set-card-visual,.home-set-card:not(.is-featured) .home-set-card-visual { min-height:250px; padding:22px 16px; border-right:0; border-bottom:1px solid var(--line); }
  .home-set-card-visual a { align-items:center; justify-items:center; }
  .home-set-card-visual img { height:clamp(170px,49vw,225px); object-fit:contain; object-position:center; margin-inline:auto; }
  .home-set-card-visual strong { font-size:10px; }
  .home-set-card-visual i { width:30px; height:30px; font-size:16px; }
  .home-set-card-copy { padding:27px 22px 30px; }
  .home-set-card-copy header > span,.home-set-card-copy header > b { font-size:9px; }
  .home-set-card-copy h3 { margin-top:13px; font-size:clamp(27px,8vw,36px); }
  .home-set-card-copy > p { margin-top:14px; font-size:15px; line-height:1.62; }
  .home-set-card-price { margin:23px 0 13px; }
  .home-set-card-price > strong { font-size:27px; }
  .home-set-card-link { width:100%; justify-content:space-between; font-size:11px; }
  .accessory-feature { grid-template-columns:1fr; }
  .accessory-visual { min-height:clamp(400px,104vw,520px); }
  .accessory-real-photo { width:100%; max-width:none; height:100%; }
  .accessory-copy { padding:78px 22px; }
  .membership { min-height:480px; }
  .membership h2 { font-size:56px; }
  footer { padding:55px 22px 18px; }
  .footer-main { grid-template-columns:1fr; gap:50px; padding-bottom:50px; }
  .footer-links { gap:20px; }
  .footer-bottom { gap:15px; flex-wrap:wrap; padding-top:18px; }
  .footer-business-details { padding:16px 0 20px; overflow-wrap:anywhere; }
  .footer-bottom b { width:100%; margin-left:0; }
  .search-panel { top:8%; }
}

@media (max-width: 390px) {
  .announcement { font-size:8px; }
  .hero { min-height:820px; }
  .hero-actions { flex-direction:column; align-items:flex-start; }
  .hero-proof { margin-top:26px; }
  .product-grid { grid-template-columns:1fr; }
  .product-art { height:390px; }
  .art-card { width:160px; height:235px; }
}

@media (prefers-reduced-motion: reduce) {
  * { scroll-behavior:auto !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; }
}

/* WordPress, WooCommerce and internal pages */
body.admin-bar .site-header { top:32px; }
.skip-link:focus { z-index:9999; top:8px; left:8px; width:auto; height:auto; padding:12px 16px; margin:0; clip:auto; overflow:visible; background:#fff; color:#111; }
.nav > li,.footer-links li { list-style:none; }
.nav > li { display:flex; }
.custom-logo { display:block; width:auto; max-width:150px; max-height:62px; height:auto; object-fit:contain; }
.account-button { width:38px; height:38px; display:grid; place-items:center; border-radius:50%; color:#e9e5ee; }
.account-button:hover { background:rgba(255,255,255,.08); }
.product-card[hidden] { display:none; }
.art-card > img { position:absolute; inset:10px; z-index:2; width:calc(100% - 20px); height:calc(100% - 20px); border-radius:6px; object-fit:cover; }
.art-card:has(img)::before { display:none; }
.quick-add { text-decoration:none; }
.drawer-action { margin-top:18px; padding:13px 20px; background:#1a1220; color:#fff; font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.panel-open { overflow:hidden; }
.toast[hidden] { display:none; }
.site-content { min-height:72vh; padding-top:0; background:radial-gradient(circle at 78% 0,rgba(139,61,255,.17),transparent 28%),var(--ink); }
.content-shell,.commerce-shell { width:min(1180px,calc(100% - 40px)); padding:95px 0 120px; margin:auto; }
.content-heading { margin-bottom:55px; }
.content-heading .kicker { display:block; margin-bottom:20px; color:#a678d9; font-size:9px; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.content-heading h1,.empty-content h1,.woocommerce h1:not(.wp-block-heading) { margin:0; font-family:Impact,"Arial Narrow",sans-serif; font-size:clamp(52px,7vw,96px); line-height:.9; letter-spacing:-.02em; text-transform:uppercase; }
.page-intro { max-width:760px; margin-top:27px; color:#aaa3b0; font-size:15px; line-height:1.75; }
.page-intro p { margin:0; }
.prose-content { font-size:16px; line-height:1.8; }
.prose-content > p,.prose-content > ul,.prose-content > ol,.prose-content > blockquote { max-width:780px; }
.prose-content img,.featured-image img { max-width:100%; height:auto; }
.page-partners .content-heading { margin-bottom:clamp(28px,5vw,52px); }
.page-partners .partners-intro { max-width:720px; margin:0 0 clamp(42px,7vw,76px); color:#b8b0bf; font-size:clamp(17px,2vw,22px); line-height:1.65; }
.page-partners .acryluxe-partners-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(16px,2.4vw,28px); }
.page-partners .acryluxe-partners-grid > .wp-block-group__inner-container { display:contents; }
.page-partners .acryluxe-partner-card { min-width:0; padding:clamp(22px,3vw,34px); border:1px solid var(--line); background:linear-gradient(145deg,rgba(139,61,255,.09),rgba(13,10,18,.96) 45%); transition:border-color .25s ease,transform .25s ease,box-shadow .25s ease; }
.page-partners .acryluxe-partner-card:hover { border-color:rgba(189,129,255,.5); transform:translateY(-3px); box-shadow:0 18px 48px rgba(0,0,0,.24); }
.page-partners .acryluxe-partner-logo { min-height:150px; margin:0 0 26px; display:grid; place-items:center; border-bottom:1px solid var(--line); }
.page-partners .acryluxe-partner-logo img { width:100%; max-width:220px; max-height:130px; margin:0 auto 26px; display:block; object-fit:contain; }
.page-partners .acryluxe-partner-card h2,.page-partners .acryluxe-partner-card h3 { margin:0 0 10px; font-size:clamp(20px,2vw,28px); line-height:1.15; }
.page-partners .acryluxe-partner-card p { margin:0 0 22px; color:#aaa3b0; font-size:14px; line-height:1.7; }
.page-partners .acryluxe-partner-card .wp-block-button__link { min-height:46px; padding:0 18px; display:inline-flex; align-items:center; border-radius:0; background:linear-gradient(110deg,#6820bc,#9648ec); color:#fff; font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
@media(max-width:800px) { .page-partners .acryluxe-partners-grid { grid-template-columns:1fr 1fr; } }
@media(max-width:560px) { .page-partners .acryluxe-partners-grid { grid-template-columns:1fr; } .page-partners .acryluxe-partners-grid > .wp-block-group__inner-container { display:contents; }
.page-partners .acryluxe-partner-card { padding:22px 18px; } }
.post-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.post-card { padding:20px; border:1px solid var(--line); background:#0d0a12; }
.post-card h2 { font-family:Georgia,serif; font-size:23px; }
.post-card p { color:#958d9b; line-height:1.6; }
.post-thumb { display:block; aspect-ratio:1.25; overflow:hidden; }
.post-thumb img { width:100%; height:100%; object-fit:cover; }
.post-meta { color:#b17df0!important; font-size:8px; letter-spacing:.12em; text-transform:uppercase; }
.empty-content { display:flex; min-height:55vh; flex-direction:column; align-items:flex-start; justify-content:center; }
.outline-cta { display:inline-flex; align-items:center; gap:8px; padding:13px 18px; border:1px solid #8b3dff; font-size:9px; font-weight:800; letter-spacing:.1em; }
.cta { min-width:190px; min-height:50px; padding:0 18px; display:inline-flex; align-items:center; justify-content:space-between; background:linear-gradient(110deg,#6820bc,#9648ec); color:#fff; font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }

.woocommerce .woocommerce-breadcrumb { margin-bottom:35px; color:#827a88; font-size:10px; }
.woocommerce .woocommerce-breadcrumb a { color:#bd81ff; }
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering { margin-bottom:28px; color:#a39daf; font-size:11px; }
.commerce-content .woocommerce-ordering,.products-page .woocommerce-ordering { width:auto!important; float:left!important; margin-right:10px!important; }
.woocommerce .woocommerce-ordering select { min-height:43px; padding:12px; border:1px solid var(--line); background:#100c15; color:#fff; }
.catalog-compatibility-filters { margin:0 0 28px; display:flex; float:left; align-items:center; gap:8px; }
.catalog-customization-note { width:100%; margin:0 0 20px; color:#aaa2ad; font-size:13px; line-height:1.65; }
.catalog-compatibility-filter {
  min-width:70px; min-height:43px; padding:0 18px; display:inline-flex; align-items:center; justify-content:center;
  border:1px solid var(--line); background:#100c15; color:#c4bdca; font-size:10px; font-weight:800;
  letter-spacing:.12em; text-transform:uppercase; transition:border-color .2s ease,background .2s ease,color .2s ease,transform .2s ease;
}
.catalog-compatibility-filter:hover { border-color:#8b4ac6; color:#fff; transform:translateY(-1px); }
.catalog-compatibility-filter.is-active { border-color:#a65af0; background:linear-gradient(110deg,#6820bc,#9648ec); color:#fff; box-shadow:0 8px 24px rgba(104,32,188,.2); }
.catalog-compatibility-filter:focus-visible { outline:2px solid #c995ff; outline-offset:3px; }
@media (max-width:760px) {
  .commerce-content .woocommerce-ordering,.products-page .woocommerce-ordering { width:100%!important; float:none!important; margin:0 0 10px!important; }
  .commerce-content .woocommerce-ordering select,.products-page .woocommerce-ordering select { width:100%; min-height:48px; }
  .catalog-compatibility-filters { width:100%; margin-bottom:28px; float:none; gap:10px; }
  .catalog-compatibility-filter { min-height:48px; flex:1 1 0; }
}
.woocommerce ul.products { display:grid; grid-template-columns:repeat(4,1fr); gap:22px 14px; clear:both; padding:0; margin:38px 0; list-style:none; }
.woocommerce ul.products::before,.woocommerce ul.products::after { display:none; }
.woocommerce ul.products li.product { float:none!important; width:auto!important; margin:0!important; display:flex!important; flex-direction:column; position:relative; }
.woocommerce ul.products li.product > .woocommerce-LoopProduct-link { display:flex; flex:1 1 auto; flex-direction:column; min-width:0; }
.woocommerce ul.products li.product > .product-tag { left:12px; top:12px; }
.woocommerce ul.products li.product img { width:100%; height:auto; aspect-ratio:2 / 3; object-fit:contain; margin:0 0 16px!important; border:1px solid var(--line); background:#100b17; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding:0!important; font-size:14px!important; }
.woocommerce .price { color:#fff!important; font-size:13px!important; }
.woocommerce ul.products li.product .price { min-height:36px; margin:8px 0 0!important; display:flex!important; flex-wrap:wrap; align-items:baseline; gap:3px 7px; line-height:1.35; }
.woocommerce ul.products li.product .price del,.woocommerce ul.products li.product .price ins { display:inline-flex; align-items:baseline; white-space:nowrap; }
.woocommerce ul.products li.product .price del { color:#9d94a3; font-size:11px; opacity:1; }
.woocommerce ul.products li.product .price ins { text-decoration:none; }
.woocommerce ul.products li.product > .button { align-self:flex-start; margin-top:14px!important; display:inline-flex!important; align-items:center; justify-content:center; }
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.wc-block-components-button { padding:15px 19px!important; border:0!important; border-radius:0!important; background:linear-gradient(110deg,#6820bc,#9648ec)!important; color:#fff!important; font-size:9px!important; font-weight:800!important; letter-spacing:.1em!important; text-transform:uppercase; }
.woocommerce div.product { position:relative; display:grid; grid-template-columns:1fr 1fr; gap:55px; }
.woocommerce span.onsale { display:none!important; }
.woocommerce div.product .summary p.price { display:flex; flex-wrap:wrap; align-items:baseline; gap:5px 10px; line-height:1.4; }
.woocommerce div.product .summary p.price del,.woocommerce div.product .summary p.price ins { display:inline-flex; align-items:baseline; white-space:nowrap; }
.woocommerce div.product .summary p.price del { color:#9d94a3; opacity:1; }
.woocommerce div.product .summary p.price ins { text-decoration:none; }
.acryluxe-edge-price-list { width:100%; display:grid!important; gap:7px; font-variant-numeric:tabular-nums; }
.acryluxe-edge-price-tier { min-width:0; display:grid; grid-template-columns:minmax(82px,1fr) max-content max-content; align-items:baseline; gap:5px 10px; }
.acryluxe-edge-price-label { color:#aaa1ae; font-size:9px; font-weight:800; letter-spacing:.12em; line-height:1.3; text-transform:uppercase; }
.acryluxe-edge-price-tier del,.acryluxe-edge-price-tier ins { display:inline-flex; align-items:baseline; white-space:nowrap; }
.acryluxe-edge-price-tier del { color:#9d94a3; font-size:.86em; font-weight:500; opacity:1; }
.acryluxe-edge-price-tier ins { color:#fff; font-weight:800; text-decoration:none; }
.product-card[data-product-slug="edge"] .product-info .acryluxe-edge-price-tier ins { color:#0b0710; }
.woocommerce ul.products .acryluxe-edge-price-tier,.product-info .acryluxe-edge-price-tier { grid-template-columns:minmax(68px,1fr) max-content; gap:2px 8px; }
.woocommerce ul.products .acryluxe-edge-price-label,.product-info .acryluxe-edge-price-label { grid-column:1; grid-row:1 / 3; align-self:center; }
.woocommerce ul.products .acryluxe-edge-price-tier del,.product-info .acryluxe-edge-price-tier del { grid-column:2; grid-row:1; }
.woocommerce ul.products .acryluxe-edge-price-tier ins,.product-info .acryluxe-edge-price-tier ins { grid-column:2; grid-row:2; }
@media(min-width:783px) {
  body.single-product.woocommerce div.product { grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr); }
  body.single-product.woocommerce div.product .woocommerce-product-gallery { width:100%!important; max-width:540px; justify-self:center; }
  body.single-product.woocommerce div.product .woocommerce-product-gallery img { width:auto; max-width:100%; height:auto; max-height:min(68vh,620px); display:block; margin-inline:auto; object-fit:contain; }
}
@media(max-width:600px) {
  .woocommerce div.product .summary .acryluxe-edge-price-tier { grid-template-columns:minmax(92px,1fr) max-content; gap:3px 10px; }
  .woocommerce div.product .summary .acryluxe-edge-price-label { grid-column:1; grid-row:1 / 3; align-self:center; }
  .woocommerce div.product .summary .acryluxe-edge-price-tier del { grid-column:2; grid-row:1; }
  .woocommerce div.product .summary .acryluxe-edge-price-tier ins { grid-column:2; grid-row:2; }
}
.woocommerce div.product .woocommerce-product-gallery,.woocommerce div.product .summary { float:none!important; width:auto!important; }
.woocommerce div.product .woocommerce-product-gallery__trigger { display:none!important; }
.woocommerce div.product .woocommerce-tabs,.woocommerce div.product .related { grid-column:1/-1; }
.woocommerce div.product form.cart { display:flex; flex-wrap:wrap; gap:10px; }
.woocommerce div.product form.variations_form { display:block; }
.woocommerce div.product form.variations_form .acryluxe-product-configurator { display:none; }
.woocommerce div.product form.variations_form.acryluxe-configurator-ready .acryluxe-product-configurator { display:block; }
.woocommerce div.product form.variations_form.acryluxe-configurator-ready table.variations,
.woocommerce div.product form.variations_form.acryluxe-configurator-ready .reset_variations { display:none!important; }
.acryluxe-product-configurator { margin:32px 0 26px; }
.acryluxe-configurator-intro { max-width:540px; margin:0 0 22px; padding-left:14px; border-left:2px solid #8b3dff; color:#aaa2ad; font-size:13px; line-height:1.6; }
.acryluxe-vault-explainer { max-width:580px; margin:0 0 22px; padding:16px 18px; border:1px solid #34283c; background:#100b16; color:#b9b1be; font-size:13px; line-height:1.6; }
.acryluxe-vault-explainer strong { color:#fff; }
.acryluxe-vault-system-choice { max-width:580px; margin:20px 0 0; padding:18px; border:1px solid #7540a2; background:linear-gradient(135deg,#171020,#100b16); }
.acryluxe-vault-system-choice[hidden] { display:none!important; }
.acryluxe-vault-system-choice p { margin:0 0 14px; color:#ddd5e3; font-size:13px; line-height:1.55; }
.acryluxe-vault-system-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.acryluxe-vault-system-actions a { min-height:48px; display:flex; align-items:center; justify-content:center; padding:10px 14px; border:1px solid #8b4ac6; background:#1b1026; color:#fff; font-size:10px; font-weight:900; letter-spacing:.1em; text-align:center; text-transform:uppercase; }
.acryluxe-vault-system-actions a:hover,.acryluxe-vault-system-actions a:focus-visible { border-color:#d5aeff; background:#7930cd; }
.acryluxe-configurator-groups { display:grid; gap:27px; }
.acryluxe-configurator-group { min-width:0; padding:0; margin:0; border:0; }
.acryluxe-configurator-group legend { width:100%; padding:0; margin:0 0 12px; display:flex; align-items:baseline; gap:10px; color:#fff; }
.acryluxe-configurator-group legend span { color:#a99fac; font-size:9px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.acryluxe-configurator-current { color:#fff; font-size:13px; font-weight:600; }
.acryluxe-configurator-options { display:flex; align-items:center; gap:6px; min-width:0; }
.acryluxe-option-button { min-height:44px; padding:0 18px; border:1px solid #34283c; border-radius:999px; background:#0e0a13; color:#bbb3c0; font:inherit; font-size:12px; cursor:pointer; transition:border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease; }
.acryluxe-option-button:hover:not(:disabled) { border-color:#8b4ac6; color:#fff; }
.acryluxe-option-button.is-active { border-color:#d5aeff; background:#20122d; color:#fff; box-shadow:0 0 0 1px rgba(181,112,255,.18),0 8px 24px rgba(84,30,135,.2); }
.acryluxe-option-button:disabled,.acryluxe-swatch-button:disabled { opacity:.42; cursor:not-allowed; }
.acryluxe-option-button.is-out-of-stock::after { content:" · ESAURITO"; color:#d6a9ec; font-size:8px; font-weight:900; letter-spacing:.08em; }
.acryluxe-swatch-button.is-out-of-stock { position:relative; }
.acryluxe-swatch-button.is-out-of-stock::after { content:"×"; position:absolute; inset:0; display:grid; place-items:center; color:#fff; font-size:22px; font-weight:700; line-height:1; text-shadow:0 1px 3px #000; }
.acryluxe-option-button:focus-visible,.acryluxe-swatch-button:focus-visible { outline:2px solid #d6b2ff; outline-offset:3px; }
.acryluxe-configurator-group.is-color .acryluxe-configurator-options { flex-wrap:wrap; }
.acryluxe-swatch-button { width:38px; height:38px; flex:0 0 38px; display:grid; place-items:center; padding:0; border:1px solid transparent; border-radius:50%; background:#0b080f; cursor:pointer; transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease; }
.acryluxe-option-button[hidden],.acryluxe-swatch-button[hidden] { display:none!important; }
.acryluxe-swatch-button:hover:not(:disabled) { transform:translateY(-1px); }
.acryluxe-swatch-button.is-active { border-color:#f0e6f8; background:#17101e; box-shadow:0 0 0 2px #09060d,0 0 0 3px rgba(196,130,255,.38); }
.acryluxe-color-swatch { width:26px; height:26px; display:block; border:1px solid rgba(255,255,255,.2); border-radius:50%; background:var(--swatch-a); box-shadow:inset 0 0 0 1px rgba(0,0,0,.2); }
.acryluxe-color-swatch.is-bicolor { background:linear-gradient(135deg,var(--swatch-a) 0 49%,var(--swatch-b) 51% 100%); }
.acryluxe-configurator-status { min-height:1.35em; margin:14px 0 0; color:#d7a9ff; font-size:12px; line-height:1.45; }
.woocommerce-product-gallery { transition:opacity .18s ease; }
.woocommerce-product-gallery.is-switching { opacity:.58; }
.woocommerce div.product form.variations_form .single_variation_wrap { margin-top:25px; }
.acryluxe-mobile-configurator-trigger,.acryluxe-mobile-configurator-backdrop,.acryluxe-mobile-configurator-header { display:none; }
.acryluxe-mobile-configurator-preview { display:none; }
.acryluxe-mobile-configurator-sheet { display:contents; }
.woocommerce div.product form.variations_form .woocommerce-variation-price { margin-bottom:16px; }
.woocommerce div.product form.variations_form .woocommerce-variation-availability { color:#aaa2ad; font-size:12px; }
.woocommerce div.product form.variations_form .variations_button { display:flex; flex-wrap:wrap; gap:10px; }
.woocommerce .quantity.acryluxe-quantity { display:inline-grid; grid-template-columns:44px minmax(52px,64px) 44px; align-items:stretch; border:1px solid #3b2a49; background:#100c15; }
.woocommerce .quantity.acryluxe-quantity .qty { width:100%!important; min-width:0; min-height:47px; padding:0 4px; border:0!important; border-inline:1px solid #3b2a49!important; outline:0; background:#100c15; color:#fff; text-align:center; font-weight:800; appearance:textfield; -moz-appearance:textfield; }
.woocommerce .quantity.acryluxe-quantity .qty::-webkit-outer-spin-button,.woocommerce .quantity.acryluxe-quantity .qty::-webkit-inner-spin-button { margin:0; appearance:none; -webkit-appearance:none; }
.woocommerce .quantity-step { width:44px; min-height:47px; padding:0; border:0; background:linear-gradient(145deg,#17101f,#24132e); color:#c68cff; font-size:21px; cursor:pointer; transition:background .2s,color .2s; }
.woocommerce .quantity-step:hover:not(:disabled),.woocommerce .quantity-step:focus-visible { background:#7d32cf; color:#fff; }
.woocommerce .quantity-step:disabled { color:#55475e; cursor:not-allowed; }
.woocommerce .single_add_to_cart_button.is-loading { opacity:.68; cursor:wait; }
.woocommerce table.shop_table { border-color:var(--line)!important; border-collapse:collapse!important; background:#0d0a12; }
.woocommerce table.shop_table td,.woocommerce table.shop_table th { padding:16px!important; border-color:var(--line)!important; }
.woocommerce table.shop_table img { width:78px!important; height:auto!important; aspect-ratio:2 / 3; display:block; object-fit:contain; border:0; background:transparent; box-shadow:none; }
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.select2-container--default .select2-selection--single { min-height:50px; padding:12px; border:1px solid var(--line); border-radius:0; background:#100c15; color:#fff; }
body.woocommerce-checkout .wc-block-components-text-input label { color:#38333d!important; opacity:1!important; }
body.woocommerce-checkout .wc-block-components-text-input.is-active label { color:#5d396f!important; }
body.woocommerce-checkout .wc-block-components-payment-method-label,
body.woocommerce-checkout .wc-block-components-radio-control__label { min-width:0; align-items:center; gap:10px; overflow:hidden; }
body.woocommerce-checkout .wc-block-components-payment-method-label img { width:auto!important; max-width:82px!important; max-height:24px!important; flex:0 0 auto; object-fit:contain; }
body.woocommerce-checkout [id$="woocommerce_payments_klarna__label"] .wc-block-components-payment-method-label { justify-content:flex-start; white-space:nowrap; }
.woocommerce-info,.woocommerce-message,.woocommerce-error { border-top-color:#8b3dff!important; background:#120d19!important; color:#fff!important; }
.woocommerce-info::before,.woocommerce-message::before { color:#bd81ff!important; }
.woocommerce a.remove { color:#bd81ff!important; }
.cart-page .woocommerce-cart-form,.cart-page .cart-collaterals { padding:22px; border:1px solid var(--line); background:#0d0a12; }
.cart-page .woocommerce-cart-form table.shop_table { width:100%!important; table-layout:fixed; border:0!important; }
.cart-page table.shop_table thead th { padding:0 14px 14px!important; color:#a89eae; font-size:9px; font-weight:900; letter-spacing:.13em; text-transform:uppercase; }
.cart-page table.shop_table th.product-remove,.cart-page table.shop_table td.product-remove { width:46px; text-align:center; }
.cart-page table.shop_table th.product-thumbnail,.cart-page table.shop_table td.product-thumbnail { width:110px; }
.cart-page table.shop_table th.product-price,.cart-page table.shop_table td.product-price { width:126px; }
.cart-page table.shop_table th.product-quantity,.cart-page table.shop_table td.product-quantity { width:172px; text-align:center; }
.cart-page table.shop_table th.product-subtotal,.cart-page table.shop_table td.product-subtotal { width:128px; text-align:right; }
.cart-page table.shop_table tr.cart_item { border-top:1px solid var(--line); }
.cart-page table.shop_table tr.cart_item:last-of-type { border-bottom:1px solid var(--line); }
.cart-page table.shop_table tr.cart_item > td { padding:18px 14px!important; vertical-align:middle; }
.cart-page table.shop_table td.product-remove { padding-inline:6px!important; }
.cart-page table.shop_table td.product-thumbnail { padding-inline:8px!important; }
.cart-page table.shop_table td.product-name > a { display:inline-block; color:#fff; font-size:15px; font-weight:800; line-height:1.25; }
.cart-page table.shop_table td.product-name .variation { margin:9px 0 0; display:grid; grid-template-columns:max-content minmax(0,1fr); align-items:baseline; gap:4px 10px; color:#aaa2ad; font-size:11px; line-height:1.35; }
.cart-page table.shop_table td.product-name .variation dt,.cart-page table.shop_table td.product-name .variation dd { float:none!important; clear:none!important; margin:0!important; padding:0!important; }
.cart-page table.shop_table td.product-name .variation dt { color:#7f7485; font-size:8px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.cart-page table.shop_table td.product-name .variation dd,.cart-page table.shop_table td.product-name .variation dd p { color:#d9d2dd; }
.cart-page table.shop_table td.product-name .variation dd p { margin:0; }
.cart-page table.shop_table td.product-price,.cart-page table.shop_table td.product-subtotal { color:#f5f0f8; font-size:13px; font-variant-numeric:tabular-nums; white-space:nowrap; }
.cart-page table.shop_table td.product-subtotal { font-weight:800; }
.cart-page table.shop_table td.product-quantity .quantity { margin-inline:auto; }
.cart-page table.shop_table td.actions { padding:18px 0 0!important; text-align:right; }
.cart-page .cart-collaterals { margin-top:24px; padding:clamp(24px,3vw,38px); border-color:rgba(203,178,224,.18); background:radial-gradient(circle at 100% 0,rgba(139,61,255,.18),transparent 38%),linear-gradient(145deg,#14101a,#0d0a12 62%); box-shadow:0 20px 45px rgba(0,0,0,.16); }
.cart-page .cart_totals { float:none!important; width:100%!important; }
.cart-page .cart_totals h2 { margin:0 0 24px; color:#fff; font-size:clamp(25px,2.2vw,32px); line-height:1.1; letter-spacing:-.035em; }
.cart-page .cart_totals table.shop_table { width:100%; margin:0; border:0!important; background:transparent; }
.cart-page .cart_totals table.shop_table th,.cart-page .cart_totals table.shop_table td { padding:18px 0!important; border:0!important; color:#f6f1f8; vertical-align:top; }
.cart-page .cart_totals table.shop_table th { width:38%; color:#b9afc0; font-size:10px; font-weight:900; letter-spacing:.1em; line-height:1.35; text-transform:uppercase; }
.cart-page .cart_totals table.shop_table td { width:62%; font-size:15px; font-weight:700; line-height:1.45; text-align:right; font-variant-numeric:tabular-nums; }
.cart-page .cart_totals table.shop_table tr + tr th,.cart-page .cart_totals table.shop_table tr + tr td { border-top:1px solid rgba(218,199,231,.14)!important; }
.cart-page .cart_totals #shipping_method { margin:0 0 8px; padding:0; list-style:none; }
.cart-page .cart_totals #shipping_method li { display:flex; align-items:center; justify-content:flex-end; gap:8px; margin:0; padding:0; list-style:none; }
.cart-page .cart_totals #shipping_method input { accent-color:#a965ff; margin:0; }
.cart-page .cart_totals #shipping_method label { color:#fff; font-size:14px; font-weight:800; }
.cart-page .cart_totals .woocommerce-shipping-destination { max-width:32ch; margin:8px 0 0 auto; color:#aaa0b3; font-size:12px; font-weight:500; line-height:1.5; }
.cart-page .cart_totals .shipping-calculator-button { display:inline-flex; align-items:center; gap:7px; margin-top:10px; color:#d7afff; font-size:11px; font-weight:800; letter-spacing:.04em; text-decoration:none; }
.cart-page .cart_totals .shipping-calculator-button::after { content:'→'; font-size:15px; line-height:1; transition:transform .2s ease; }
.cart-page .cart_totals .shipping-calculator-button:hover::after,.cart-page .cart_totals .shipping-calculator-button:focus-visible::after { transform:translateX(3px); }
.cart-page .cart_totals tr.order-total th,.cart-page .cart_totals tr.order-total td { padding-top:23px!important; padding-bottom:4px!important; border-top-color:rgba(215,185,255,.32)!important; }
.cart-page .cart_totals tr.order-total th { color:#fff; font-size:12px; }
.cart-page .cart_totals tr.order-total td { color:#e7d2ff; font-size:clamp(22px,2.1vw,28px); font-weight:900; letter-spacing:-.035em; }
.cart-page .cart_totals > .acryluxe-free-shipping-progress { margin:0 0 22px; color:#f7f1fa; border-color:rgba(190,137,255,.35); background:linear-gradient(115deg,rgba(103,37,182,.22),rgba(30,18,42,.58)); }
.cart-page .cart_totals > .acryluxe-free-shipping-progress p strong { color:#d8b4ff; }
.cart-page .cart_totals > .acryluxe-free-shipping-progress small { color:#b7acbf!important; }
.cart-page .cart_totals > .acryluxe-free-shipping-progress.is-complete { border-color:rgba(91,193,127,.38); background:rgba(46,125,77,.14); }
.cart-page .cart_totals > .acryluxe-free-shipping-progress.is-complete p strong { color:#93e7ae; }
.cart-page .wc-proceed-to-checkout { display:flex; flex-direction:column; align-items:stretch; gap:22px; padding:28px 0 0!important; }
.cart-page .wc-proceed-to-checkout #payment-method-message { width:100%; margin:0!important; padding:15px 16px 16px; border:1px solid rgba(203,178,224,.20); background:rgba(255,255,255,.025); color:#d8d0de; }
.cart-page .wc-proceed-to-checkout #payment-method-message iframe { display:block; max-width:100%; }
.cart-page .wc-proceed-to-checkout #payment-method-message:has(iframe[src*="klarna"]) { border-color:rgba(255,179,199,.48); background:linear-gradient(135deg,rgba(115,39,61,.52),rgba(31,18,27,.94)); box-shadow:inset 3px 0 0 #ffb3c7; }
.cart-page .wc-proceed-to-checkout #payment-method-message:has(iframe[src*="klarna"])::before { content:'Klarna · Paga in 3 rate'; display:block; margin:0 0 8px; color:#ffceda; font-size:9px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.cart-page .wc-proceed-to-checkout .checkout-button { min-height:58px; margin:0!important; padding:16px 20px!important; display:flex!important; align-items:center; justify-content:space-between; box-sizing:border-box; box-shadow:0 14px 28px rgba(104,32,188,.24); transition:transform .2s ease,box-shadow .2s ease,filter .2s ease; }
.cart-page .wc-proceed-to-checkout .checkout-button::after { content:'→'; font-size:19px; line-height:1; }
.cart-page .wc-proceed-to-checkout .checkout-button:hover { filter:brightness(1.08); box-shadow:0 18px 34px rgba(104,32,188,.35); transform:translateY(-1px); }
.cart-page .wc-proceed-to-checkout .checkout-button:focus-visible,.cart-page .cart_totals .shipping-calculator-button:focus-visible { outline:2px solid #e0c3ff; outline-offset:3px; }
.cart-page .woocommerce .coupon { float:none!important; display:flex; flex-wrap:wrap; align-items:center; gap:12px; padding:20px; margin:12px 0; border:1px solid #8b4fc5; border-radius:12px; background:rgba(139,61,255,.12); text-align:left; }
.cart-page .woocommerce .coupon label { position:static!important; clip:auto!important; clip-path:none!important; width:100%!important; height:auto!important; margin:0!important; overflow:visible!important; font-size:16px; font-weight:700; }
.cart-page .woocommerce .coupon #coupon_code { float:none; width:auto!important; flex:1 1 180px; min-width:0; min-height:48px; margin:0; padding:12px; border:1px solid #806494; border-radius:6px; background:#171020; color:#fff; font-size:16px; }
.cart-page .woocommerce .coupon button { float:none; min-height:48px; margin:0; }
.cart-page .acryluxe-coupon-help { flex-basis:100%; color:#e1d4eb; font-size:13px; line-height:1.5; }
@media(max-width:600px) { .cart-page .woocommerce .coupon button { width:100%; } }

.set-product-configurator,.acryluxe-set-selector { display:grid; gap:10px; }
.set-product-configurator { margin-top:22px; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.set-product-configurator label,.acryluxe-set-selector { min-width:0; }
.set-product-configurator label > span,.acryluxe-set-selector > span { display:block; margin-bottom:7px; color:#a56ee0; font-size:8px; font-weight:900; letter-spacing:.12em; }
.set-product-configurator select,.acryluxe-set-selector select { width:100%; min-height:46px; padding:0 38px 0 12px; border:1px solid #3a2b45; border-radius:0; outline:0; background:#0d0912; color:#f1edf4; font:700 11px/1.3 Arial,sans-serif; text-overflow:ellipsis; }
.set-product-configurator select:focus-visible,.acryluxe-set-selector select:focus-visible { border-color:#b975ff; box-shadow:0 0 0 2px rgba(139,61,255,.2); }
.acryluxe-set-selector { margin-top:16px; }
.acryluxe-set-compatibility-notice { grid-column:1 / -1; margin:0; padding:9px 11px; border-left:2px solid #9c4ee7; background:rgba(113,34,191,.1); color:#d8cce2; font-size:10px; line-height:1.45; }
.acryluxe-set-compatibility-notice.is-warning { border-left-color:#e1a94c; background:rgba(225,169,76,.08); color:#f0d7a9; }
.acryluxe-set-color-notice { grid-column:1 / -1; margin:0; padding:9px 11px; border-left:2px solid #e1a94c; background:rgba(225,169,76,.08); color:#f0d7a9; font-size:10px; line-height:1.45; }

/* Native Set & Risparmia upsell */
html.upsell-open,html.upsell-open body { overflow:hidden; overscroll-behavior:none; }
html.upsell-open #gt_float_wrapper,
html.upsell-open .gtranslate_wrapper,
html.upsell-open [id^="gt-wrapper-"],
html.upsell-open .acryluxe-language-fallback,
html.upsell-open .floating-actions { display:none!important; }
.acryluxe-upsell[hidden] { display:none; }
.acryluxe-upsell {
  position:fixed; inset:0; z-index:1000060; display:grid; place-items:center; padding:24px;
  opacity:0; visibility:hidden; pointer-events:none; transition:opacity .34s ease,visibility .34s ease;
}
.acryluxe-upsell.is-open { opacity:1; visibility:visible; pointer-events:auto; }
.acryluxe-upsell-backdrop { position:absolute; inset:0; background:rgba(4,2,8,.82); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); }
.acryluxe-upsell-dialog {
  position:relative; width:min(920px,100%); max-height:calc(100dvh - 48px); padding:clamp(28px,4vw,48px); overflow-y:auto;
  border:1px solid rgba(194,140,255,.36); border-radius:18px; outline:0;
  background:radial-gradient(circle at 90% 0,rgba(139,61,255,.22),transparent 34%),linear-gradient(145deg,#120b1c,#09070e 62%);
  box-shadow:0 34px 100px rgba(0,0,0,.72),inset 0 1px 0 rgba(255,255,255,.06);
  opacity:0; transform:translateY(20px) scale(.98); transition:opacity .34s ease,transform .34s cubic-bezier(.2,.75,.2,1);
}
.acryluxe-upsell.is-open .acryluxe-upsell-dialog { opacity:1; transform:translateY(0) scale(1); }
.acryluxe-upsell-close {
  position:absolute; top:18px; right:18px; z-index:2; width:44px; height:44px; display:grid; place-items:center; padding:0;
  border:1px solid rgba(255,255,255,.16); border-radius:50%; background:rgba(255,255,255,.035); color:#eee8f4; font-size:25px; line-height:1; cursor:pointer;
  transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
.acryluxe-upsell-close:hover { border-color:#b97cff; background:rgba(139,61,255,.14); transform:rotate(4deg); }
.acryluxe-upsell-close:focus-visible,.acryluxe-upsell-action:focus-visible,.acryluxe-upsell-continue:focus-visible,.set-page-cta:focus-visible { outline:2px solid #cf9cff; outline-offset:3px; }
.acryluxe-upsell-head { max-width:690px; padding-right:52px; }
.acryluxe-upsell-head > span { color:#b978ff; font-size:9px; font-weight:900; letter-spacing:.2em; }
.acryluxe-upsell-head h2 { margin:13px 0 12px; font-family:Impact,"Arial Narrow",sans-serif; font-size:clamp(42px,5.2vw,68px); font-weight:900; line-height:.9; letter-spacing:-.025em; text-transform:uppercase; text-wrap:balance; }
.acryluxe-upsell-head p { max-width:600px; margin:0; color:#b9b1c1; font-size:15px; line-height:1.65; }
.acryluxe-upsell-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:30px; }
.acryluxe-upsell-options.is-single { grid-template-columns:minmax(0,1fr); }
.acryluxe-upsell-option {
  min-width:0; padding:20px; display:flex; flex-direction:column; border:1px solid rgba(255,255,255,.12); border-radius:12px;
  background:rgba(255,255,255,.025); transition:border-color .22s ease,background .22s ease,transform .22s ease;
}
.acryluxe-upsell-option:hover { border-color:rgba(190,129,255,.42); background:rgba(139,61,255,.055); transform:translateY(-2px); }
.acryluxe-upsell-option.is-featured { border-color:#9c54eb; background:linear-gradient(145deg,rgba(139,61,255,.14),rgba(255,255,255,.025)); box-shadow:0 16px 46px rgba(83,27,145,.22); }
.acryluxe-upsell-option-top { min-height:38px; display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.acryluxe-upsell-option-top h3 { margin:0; font-size:12px; line-height:1.35; letter-spacing:.13em; }
.acryluxe-upsell-option-top span { flex:0 0 auto; padding:6px 8px; border:1px solid rgba(205,153,255,.44); border-radius:999px; color:#d9b5ff; font-size:7px; font-weight:900; letter-spacing:.13em; }
.acryluxe-upsell-products { min-height:168px; margin:13px 0 15px; display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; gap:10px; }
.acryluxe-upsell-products > div { min-width:0; display:grid; justify-items:center; gap:8px; }
.acryluxe-upsell-products img { width:100%; height:118px; display:block; object-fit:contain; border:1px solid rgba(255,255,255,.08); border-radius:7px; background:#09060d; }
.acryluxe-upsell-products strong { max-width:100%; overflow:hidden; color:#d9d2df; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.acryluxe-upsell-products i { color:#b878ff; font-style:normal; font-size:20px; font-weight:300; }
.acryluxe-upsell-meta { display:grid; grid-template-columns:1fr auto; align-items:end; gap:6px 12px; padding-top:15px; border-top:1px solid rgba(255,255,255,.1); }
.acryluxe-upsell-meta p { margin:0; color:#908797; font-size:11px; }
.acryluxe-upsell-meta strong { grid-row:1/3; grid-column:2; font-family:Georgia,serif; font-size:25px; font-variant-numeric:tabular-nums; }
.acryluxe-upsell-meta span { width:max-content; padding:5px 8px; border:1px solid rgba(174,112,232,.3); border-radius:999px; color:#c99aef; background:rgba(132,57,190,.08); font-size:7px; font-weight:900; letter-spacing:.1em; }
.acryluxe-upsell-action,.set-page-cta {
  width:100%; min-height:52px; margin-top:18px; padding:13px 16px; border:1px solid #b878ff; border-radius:3px;
  background:linear-gradient(110deg,#6d22c6,#9748ec); color:#fff; font-size:9px; font-weight:900; letter-spacing:.11em; text-transform:uppercase; cursor:pointer;
  box-shadow:0 12px 30px rgba(99,31,178,.25); transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;
}
.acryluxe-upsell-action:hover,.set-page-cta:hover { transform:translateY(-2px); box-shadow:0 16px 36px rgba(116,42,198,.38); filter:brightness(1.06); }
.acryluxe-upsell-action:active,.set-page-cta:active { transform:translateY(1px) scale(.99); }
.acryluxe-upsell-action:disabled,.set-page-cta:disabled { opacity:.58; cursor:wait; transform:none; }
.acryluxe-upsell-footer { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:24px; }
.acryluxe-upsell-footer > a { display:inline-flex; align-items:center; gap:8px; color:#d0a0ff; font-size:9px; font-weight:900; letter-spacing:.12em; }
.acryluxe-upsell-continue { min-height:44px; padding:0; border:0; border-bottom:1px solid #716878; background:transparent; color:#c5beca; font-size:12px; cursor:pointer; }
.acryluxe-upsell-status { min-height:20px; margin:14px 0 0; color:#dcb8ff; font-size:12px; }
.acryluxe-combo-quantity { display:inline-grid; min-width:44px; min-height:44px; place-items:center; border:1px solid #3b2a49; background:#100c15; font-weight:800; }

/* Set & Risparmia page */
.set-page {
  padding:clamp(64px,7vw,104px) max(20px,5vw) clamp(90px,10vw,150px);
  background:radial-gradient(circle at 50% 11%,rgba(122,48,225,.13),transparent 29%),var(--ink);
}
.set-page-hero { width:min(1180px,100%); margin:0 auto clamp(46px,6vw,76px); text-align:center; }
.set-page-eyebrow,.set-section-heading > span,.set-page-card__head > span { color:#b877ff; font-size:9px; font-weight:900; letter-spacing:.2em; }
.set-page-hero h1 { margin:16px 0 18px; font-family:Impact,"Arial Narrow",sans-serif; font-size:clamp(48px,6.6vw,92px); line-height:.9; letter-spacing:-.025em; text-transform:uppercase; text-wrap:balance; }
.set-page-lead { margin:0; color:#f0ebf4; font-family:Georgia,serif; font-size:clamp(20px,2.15vw,30px); line-height:1.25; text-wrap:balance; }
.set-page-intro { max-width:660px; margin:15px auto 0; color:#aaa3b0; font-size:clamp(15px,1.2vw,17px); line-height:1.7; text-wrap:pretty; }
.set-page-showcase,.set-compare,.set-process { width:min(1240px,100%); margin-inline:auto; }
.set-page-card { min-width:0; overflow:hidden; border:1px solid var(--line); border-radius:14px; background:linear-gradient(145deg,#100a18,#09070e); transition:border-color .25s ease,transform .25s ease,box-shadow .25s ease; }
.set-page-card:hover { border-color:rgba(190,129,255,.38); transform:translateY(-3px); }
.set-page-card.is-featured { border-color:#9650e0; background:radial-gradient(circle at 82% 8%,rgba(139,61,255,.18),transparent 35%),linear-gradient(145deg,#130b1e,#09070e); box-shadow:0 24px 70px rgba(73,20,126,.22); }
.set-page-card--featured { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr); }
.set-page-card__visual { min-width:0; min-height:420px; padding:clamp(26px,4vw,50px); display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; gap:clamp(10px,2vw,24px); background:radial-gradient(circle at 50% 48%,rgba(139,61,255,.13),transparent 44%),#08060c; }
.set-page-card__visual a { min-width:0; display:grid; justify-items:center; gap:12px; }
.set-page-card__visual img { width:100%; height:clamp(220px,24vw,320px); display:block; object-fit:contain; object-position:center; transition:transform .35s ease,filter .35s ease; }
.set-page-card:hover .set-page-card__visual img { transform:translateY(-4px) scale(1.015); filter:brightness(1.04); }
.set-page-card__visual strong { max-width:100%; color:#eee9f2; font-size:12px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.set-page-card__visual > i { color:#b777ff; font-style:normal; font-size:28px; }
.set-page-card__body { min-width:0; padding:clamp(26px,4vw,52px); display:flex; flex-direction:column; justify-content:center; }
.set-page-card__head { display:grid; grid-template-columns:1fr auto; align-items:start; gap:11px 18px; }
.set-page-card__head b { padding:6px 9px; border:1px solid rgba(205,153,255,.44); border-radius:999px; color:#d9b5ff; font-size:7px; letter-spacing:.13em; }
.set-page-card__head h2 { grid-column:1/-1; margin:6px 0 0; font-family:Impact,"Arial Narrow",sans-serif; font-size:clamp(34px,4vw,58px); line-height:.92; letter-spacing:-.02em; text-transform:uppercase; text-wrap:balance; }
.set-page-card__description { max-width:520px; margin:19px 0 0; color:#aaa3b0; font-size:15px; line-height:1.65; text-wrap:pretty; }
.set-page-card__included { margin:22px 0 0; color:#eee9f2; font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.set-page-card__included i { margin-inline:8px; color:#b777ff; font-style:normal; }
.set-page-price { margin-top:25px; padding-top:20px; display:flex; align-items:end; justify-content:space-between; gap:15px; border-top:1px solid var(--line); }
.set-page-price > div { display:grid; grid-template-columns:auto auto; align-items:end; gap:4px 12px; }
.set-page-price small { grid-column:1/-1; color:#8e8694; font-size:8px; letter-spacing:.13em; }
.set-page-price del { color:#807887; font-size:13px; }
.set-page-price strong { font-family:Georgia,serif; font-size:clamp(27px,3vw,38px); line-height:1; font-variant-numeric:tabular-nums; }
.set-page-price > span { flex:0 0 auto; padding:6px 9px; border:1px solid rgba(174,112,232,.3); border-radius:999px; color:#c99aef; font-size:7px; font-weight:900; letter-spacing:.1em; }
.set-page-card .set-page-cta { width:100%; margin-top:26px; }
.set-page-unavailable { margin-top:26px; padding:18px 0; color:#8e8694; font-size:9px; font-weight:900; letter-spacing:.12em; }
.set-page-secondary-grid { margin-top:16px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.set-page-card--secondary { display:flex; flex-direction:column; }
.set-page-card--secondary .set-page-card__visual { min-height:300px; padding:30px; }
.set-page-card--secondary .set-page-card__visual img { height:220px; }
.set-page-card--secondary .set-page-card__body { flex:1; justify-content:flex-start; padding:30px; }
.set-page-card--secondary .set-page-card__head h2 { font-size:clamp(32px,3vw,46px); }
.set-page-card--secondary .set-page-card__description { min-height:50px; }
.set-page-card--secondary .set-page-price { margin-top:auto; }
.set-compare,.set-process { margin-top:clamp(88px,10vw,140px); }
.set-section-heading { margin-bottom:clamp(30px,4vw,50px); }
.set-section-heading h2 { max-width:800px; margin:13px 0 0; font-family:Impact,"Arial Narrow",sans-serif; font-size:clamp(42px,5.5vw,72px); line-height:.9; letter-spacing:-.02em; text-transform:uppercase; text-wrap:balance; }
.set-compare-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-block:1px solid var(--line); }
.set-compare-card { min-width:0; padding:clamp(24px,3vw,38px); border-right:1px solid var(--line); }
.set-compare-card:last-child { border-right:0; }
.set-compare-card.is-featured { background:linear-gradient(180deg,rgba(139,61,255,.09),transparent); }
.set-compare-card header { min-height:54px; display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.set-compare-card h3 { margin:0; font-size:12px; line-height:1.4; letter-spacing:.12em; }
.set-compare-card header span { flex:0 0 auto; color:#c99aef; font-size:7px; font-weight:900; letter-spacing:.1em; }
.set-compare-card ul { margin:24px 0 30px; padding:0; display:grid; gap:12px; color:#a69faa; font-size:14px; list-style:none; }
.set-compare-card li::before { content:"+"; margin-right:10px; color:#b777ff; }
.set-compare-card > strong { font-family:Georgia,serif; font-size:28px; font-variant-numeric:tabular-nums; }
.set-process-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; background:var(--line); }
.set-process-grid article { min-width:0; min-height:235px; padding:clamp(26px,3vw,40px); background:#0b0810; }
.set-process-grid article > span { display:block; color:#8f49da; font-family:Georgia,serif; font-size:clamp(42px,5vw,66px); line-height:1; }
.set-process-grid h3 { margin:28px 0 10px; font-size:12px; letter-spacing:.15em; }
.set-process-grid p { max-width:300px; margin:0; color:#9f98a5; font-size:14px; line-height:1.65; }

@media(max-width:900px) {
  .set-page-card--featured { grid-template-columns:1fr; }
  .set-page-card--featured .set-page-card__visual { min-height:360px; }
  .set-page-card--featured .set-page-card__visual img { height:260px; }
}
@media(max-width:767px) {
  .acryluxe-upsell { align-items:end; padding:0; }
  .acryluxe-upsell-dialog {
    width:100%; max-height:calc(92dvh - env(safe-area-inset-top)); padding:26px 18px max(22px,calc(18px + env(safe-area-inset-bottom)));
    border-right:0; border-bottom:0; border-left:0; border-radius:22px 22px 0 0; transform:translateY(100%) scale(1);
  }
  .acryluxe-upsell.is-open .acryluxe-upsell-dialog { transform:translateY(0) scale(1); }
  .acryluxe-upsell-dialog::before { content:""; width:44px; height:3px; display:block; margin:-11px auto 18px; border-radius:999px; background:rgba(255,255,255,.22); }
  .acryluxe-upsell-close { top:17px; right:14px; }
  .acryluxe-upsell-head { padding-right:48px; }
  .acryluxe-upsell-head h2 { margin-top:10px; font-size:clamp(34px,10vw,46px); }
  .acryluxe-upsell-head p { font-size:14px; }
  .acryluxe-upsell-options { grid-template-columns:1fr; gap:12px; margin-top:22px; }
  .acryluxe-upsell-option { padding:17px; }
  .acryluxe-upsell-products { min-height:128px; margin-block:9px 12px; }
  .acryluxe-upsell-products img { height:92px; }
  .acryluxe-upsell-meta strong { font-size:23px; }
  .acryluxe-upsell-action { min-height:54px; }
  .acryluxe-upsell-footer { align-items:stretch; flex-direction:column; gap:15px; margin-top:18px; }
  .acryluxe-upsell-continue { width:100%; min-height:46px; }
  .acryluxe-upsell-footer > a { min-height:38px; justify-content:center; }
  .acryluxe-upsell-status { margin-top:8px; }
  .set-page { padding:clamp(48px,13vw,72px) 16px clamp(80px,18vw,110px); }
  .set-page-hero { margin-bottom:42px; text-align:left; }
  .set-page-hero h1 { margin-block:13px 15px; font-size:clamp(44px,13vw,62px); }
  .set-page-lead { font-size:clamp(20px,6vw,26px); }
  .set-page-intro { margin:13px 0 0; font-size:15px; }
  .set-page-secondary-grid,.set-compare-grid,.set-process-grid { grid-template-columns:1fr; }
  .set-page-secondary-grid { margin-top:12px; gap:12px; }
  .set-page-card { border-radius:11px; }
  .set-page-card--featured,.set-page-card--secondary { display:flex; flex-direction:column; }
  .set-page-card__visual,.set-page-card--featured .set-page-card__visual,.set-page-card--secondary .set-page-card__visual { min-height:0; padding:20px; }
  .set-page-card__visual a { align-content:center; }
  .set-page-card__visual img,.set-page-card--featured .set-page-card__visual img,.set-page-card--secondary .set-page-card__visual img { height:clamp(150px,45vw,200px); object-fit:contain; object-position:center; margin-inline:auto; }
  .set-page-card__body,.set-page-card--secondary .set-page-card__body { padding:24px 20px 20px; }
  .set-page-card__head h2,.set-page-card--secondary .set-page-card__head h2 { font-size:clamp(32px,9.4vw,42px); }
  .set-page-card__description,.set-page-card--secondary .set-page-card__description { min-height:0; font-size:15px; }
  .set-page-card__included { margin-top:18px; font-size:11px; }
  .set-page-price { margin-top:20px; align-items:center; }
  .set-page-price strong { font-size:30px; }
  .set-page-card .set-page-cta { min-height:54px; margin-top:22px; }
  .set-compare,.set-process { margin-top:82px; }
  .set-section-heading { margin-bottom:28px; }
  .set-section-heading h2 { font-size:clamp(38px,11vw,50px); }
  .set-compare-grid { gap:1px; border:0; background:var(--line); }
  .set-compare-card { padding:25px 22px; border:0; background:#0b0810; }
  .set-compare-card.is-featured { background:linear-gradient(135deg,rgba(139,61,255,.13),#0b0810); }
  .set-compare-card header { min-height:0; }
  .set-compare-card ul { margin-block:20px; }
  .set-process-grid article { min-height:210px; }
}

.contact-layout { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr); gap:28px; }
.contact-panel { padding:clamp(28px,4vw,58px); border:1px solid var(--line); background:radial-gradient(circle at 100% 0,rgba(139,61,255,.18),transparent 35%),#0d0a12; }
.contact-panel h2 { margin:0; font-family:Impact,"Arial Narrow",sans-serif; font-size:clamp(44px,5vw,74px); line-height:.92; text-transform:uppercase; }
.contact-form { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:40px; }
.contact-form label { display:flex; flex-direction:column; gap:9px; }
.contact-form label > span { color:#aaa2b3; font-size:8px; font-weight:800; letter-spacing:.11em; text-transform:uppercase; }
.contact-form input:not([type=checkbox]),.contact-form textarea { width:100%; padding:15px; border:1px solid var(--line); border-radius:0; outline:0; background:#09070d; color:#fff; }
.contact-form input:focus,.contact-form textarea:focus { border-color:#bd81ff; box-shadow:0 0 0 3px rgba(139,61,255,.15); }
.contact-form .full { grid-column:1/-1; }
.contact-form .privacy { display:flex; flex-direction:row; align-items:flex-start; gap:10px; }
.contact-form .privacy input { accent-color:#8b3dff; }
.contact-form .primary-button { width:max-content; border:0; cursor:pointer; }
.contact-honeypot { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.contact-details { display:flex; flex-direction:column; gap:12px; }
.contact-image { aspect-ratio:1.25; overflow:hidden; border:1px solid var(--line); }
.contact-image img { width:100%; height:100%; object-fit:cover; }
.contact-card { display:flex; flex-direction:column; gap:8px; padding:22px; border:1px solid var(--line); background:#0d0a12; }
.contact-card small { color:#bd81ff; font-size:8px; font-weight:800; letter-spacing:.14em; }
.contact-card a,.contact-card strong { font-size:14px; }
.contact-notice { padding:15px 18px; margin:24px 0; border:1px solid var(--line); background:#0a0810; font-size:13px; }
.contact-notice.success { border-color:rgba(111,255,171,.45); color:#9cffbc; }
.contact-notice.error { border-color:rgba(206,105,255,.45); color:#e4adff; }

@media(max-width:1050px) { .woocommerce ul.products { grid-template-columns:repeat(2,1fr); } }
@media(max-width:782px) { body.admin-bar .site-header { top:46px; } .post-grid { grid-template-columns:1fr; } .woocommerce div.product { grid-template-columns:1fr; } }
@media(max-width:760px) { .nav > li { display:block; } .contact-layout { grid-template-columns:1fr; } .contact-details { display:grid; grid-template-columns:1fr 1fr; } .contact-image { grid-column:1/-1; } }
@media(max-width:760px) { .custom-logo { max-width:112px; max-height:54px; } }
@media(max-width:600px) { .content-shell,.commerce-shell { width:calc(100% - 28px); padding-block:70px 90px; } .woocommerce ul.products { grid-template-columns:1fr; } .contact-form,.contact-details { grid-template-columns:1fr; } .contact-form label,.contact-form .full,.contact-image { grid-column:1; } .contact-panel { padding:28px 18px; } }

@media(max-width:782px) {
  .woocommerce div.product .summary { min-width:0; }
  .acryluxe-product-configurator { margin:24px 0 22px; }
  .acryluxe-configurator-intro { margin-bottom:20px; padding:10px 0 10px 13px; font-size:13px; line-height:1.5; }
  .acryluxe-configurator-groups { gap:0; border-top:1px solid rgba(255,255,255,.08); }
  .acryluxe-configurator-group { padding:18px 0; border-bottom:1px solid rgba(255,255,255,.08); }
  .acryluxe-configurator-group legend { margin-bottom:13px; flex-wrap:wrap; gap:5px 9px; }
  .acryluxe-configurator-group legend span { font-size:9px; }
  .acryluxe-configurator-current { font-size:13px; }
  .acryluxe-configurator-options { width:100%; gap:9px; overflow:visible; padding:0; margin:0; }
  .acryluxe-configurator-group.is-text .acryluxe-configurator-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .acryluxe-option-button { width:100%; min-width:0; min-height:46px; padding-inline:10px; text-align:center; }
  .acryluxe-configurator-group.is-color .acryluxe-configurator-options { flex-wrap:wrap; gap:9px; }
  .acryluxe-swatch-button { width:40px; height:40px; flex-basis:40px; }
  .acryluxe-color-swatch { width:27px; height:27px; }
  .acryluxe-swatch-button.is-active { box-shadow:0 0 0 2px #09060d,0 0 0 3px rgba(213,174,255,.62),0 6px 18px rgba(106,42,165,.28); }
  .woocommerce div.product form.variations_form .variations_button { display:flex; flex-direction:column; align-items:stretch; }
  .woocommerce div.product form.variations_form .quantity.acryluxe-quantity { width:100%; grid-template-columns:48px minmax(0,1fr) 48px; }
  .woocommerce div.product form.variations_form .single_add_to_cart_button { width:100%; min-width:0; }
}

@media(max-width:600px) {
	.acryluxe-vault-system-actions { grid-template-columns:minmax(0,1fr); }
  .woocommerce div.product .woocommerce-product-gallery { width:min(76vw,280px)!important; max-width:100%; margin-inline:auto!important; justify-self:center; }
  .woocommerce div.product .woocommerce-product-gallery img { width:100%; height:auto; display:block; object-fit:contain; }
  .woocommerce div.product { gap:24px; }
  .woocommerce div.product .summary { width:100%!important; }
  body.acryluxe-configurator-scroll-lock { overflow:hidden; touch-action:none; }
  .woocommerce div.product form.variations_form.acryluxe-configurator-ready > .acryluxe-mobile-configurator-trigger { width:100%; min-height:68px; display:flex; align-items:center; justify-content:space-between; gap:14px; margin:24px 0 0; padding:13px 15px; border:1px solid rgba(190,127,255,.42); background:linear-gradient(135deg,#120b19,#1b1026); color:#fff; text-align:left; cursor:pointer; box-shadow:0 16px 34px rgba(38,10,62,.2); }
  .acryluxe-mobile-configurator-trigger-copy { min-width:0; display:grid; gap:5px; }
  .acryluxe-mobile-configurator-trigger-copy small,.acryluxe-mobile-configurator-header small { color:#a89ead; font-size:8px; font-weight:800; letter-spacing:.18em; }
  .acryluxe-mobile-configurator-trigger-copy strong { max-width:100%; overflow:hidden; color:#fff; font-size:12px; line-height:1.25; text-overflow:ellipsis; white-space:nowrap; }
  .acryluxe-mobile-configurator-trigger-action { flex:0 0 auto; color:#c989ff; font-size:9px; font-weight:900; letter-spacing:.12em; }
  .acryluxe-mobile-configurator-backdrop { position:fixed; inset:0; z-index:100090; display:block; opacity:0; background:rgba(3,2,6,.76); backdrop-filter:blur(5px); transition:opacity .26s ease; }
  .acryluxe-mobile-configurator-backdrop[hidden] { display:none; }
  .acryluxe-mobile-configurator-backdrop.is-open { opacity:1; }
  .acryluxe-mobile-configurator-sheet { position:fixed; right:0; bottom:0; left:0; z-index:100100; display:flex; flex-direction:column; max-height:min(88dvh,720px); padding-bottom:env(safe-area-inset-bottom); overflow:hidden; border:1px solid rgba(191,126,255,.4); border-bottom:0; border-radius:24px 24px 0 0; background:linear-gradient(155deg,#0d0812 0%,#100919 58%,#09060d 100%); box-shadow:0 -24px 70px rgba(34,7,55,.55); opacity:0; visibility:hidden; transform:translateY(104%); transition:transform .3s cubic-bezier(.22,.8,.3,1),opacity .24s ease,visibility 0s linear .3s; }
  .acryluxe-mobile-configurator-sheet.is-open { opacity:1; visibility:visible; transform:translateY(0); transition-delay:0s; }
  .acryluxe-mobile-configurator-header { flex:0 0 auto; min-height:68px; display:flex; align-items:center; justify-content:space-between; gap:18px; padding:14px 16px 12px; border-bottom:1px solid rgba(255,255,255,.09); background:rgba(10,6,14,.92); }
  .acryluxe-mobile-configurator-header h2 { margin:4px 0 0; color:#fff; font-size:clamp(20px,7vw,28px); line-height:1; text-transform:uppercase; }
  .acryluxe-mobile-configurator-close { position:relative; width:44px; height:44px; flex:0 0 44px; padding:0; border:1px solid rgba(255,255,255,.18); border-radius:50%; background:#120c18; color:#fff; cursor:pointer; }
  .acryluxe-mobile-configurator-close span::before,.acryluxe-mobile-configurator-close span::after { content:""; position:absolute; top:50%; left:50%; width:17px; height:1px; background:currentColor; }
  .acryluxe-mobile-configurator-close span::before { transform:translate(-50%,-50%) rotate(45deg); }
  .acryluxe-mobile-configurator-close span::after { transform:translate(-50%,-50%) rotate(-45deg); }
  .acryluxe-mobile-configurator-preview { min-height:140px; flex:0 0 auto; display:grid; grid-template-columns:80px minmax(0,1fr); align-items:center; gap:14px; padding:10px 16px; border-bottom:1px solid rgba(255,255,255,.09); background:linear-gradient(90deg,rgba(116,42,180,.12),rgba(10,6,14,.9)); }
  .acryluxe-mobile-configurator-preview-media { width:80px; aspect-ratio:2 / 3; display:grid; place-items:center; overflow:hidden; border:1px solid rgba(201,145,255,.28); background:#08060b; }
  .acryluxe-mobile-configurator-preview-media img { width:100%; height:100%; display:block; object-fit:contain; opacity:1; transform:scale(1); transition:opacity .16s ease,transform .16s ease; }
  .acryluxe-mobile-configurator-preview-media img[hidden] { display:none!important; }
  .acryluxe-mobile-configurator-preview-media.uses-color-fallback { background:#f8f7f9; }
  .acryluxe-mobile-configurator-preview-color { width:46px; height:76px; padding:6px; display:block; background:linear-gradient(135deg,var(--preview-color-a) 0 48%,var(--preview-color-b) 52% 100%); box-shadow:0 5px 13px rgba(20,8,29,.22); transform:rotate(-2deg); }
  .acryluxe-mobile-configurator-preview-color::after { content:""; width:100%; height:100%; display:block; border:2px solid #18131d; background:#fff; }
  .acryluxe-mobile-configurator-preview-color[hidden] { display:none; }
  .acryluxe-mobile-configurator-preview.is-switching img { opacity:.5; transform:scale(.985); }
  .acryluxe-mobile-configurator-preview-copy { min-width:0; display:grid; gap:7px; }
  .acryluxe-mobile-configurator-preview-copy small { color:#aa9bb5; font-size:8px; font-weight:800; letter-spacing:.16em; }
  .acryluxe-mobile-configurator-preview-copy strong { overflow:hidden; color:#fff; font-size:13px; line-height:1.35; text-overflow:ellipsis; white-space:nowrap; }
  .acryluxe-mobile-configurator-preview-price { min-height:18px; color:#fff; font-size:12px; font-weight:800; line-height:1.25; font-variant-numeric:tabular-nums; }
  .acryluxe-mobile-configurator-preview-price .price { display:flex; flex-wrap:wrap; align-items:baseline; gap:5px; margin:0; color:inherit; font-size:inherit; }
  .acryluxe-mobile-configurator-preview-price del { color:#93899c; font-size:10px; font-weight:600; opacity:1; }
  .acryluxe-mobile-configurator-preview-price ins { color:#fff; font-weight:800; text-decoration:none; }
  .acryluxe-mobile-configurator-body { min-height:0; overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#6e2ba7 transparent; }
  .acryluxe-mobile-configurator-sheet .acryluxe-product-configurator { display:block!important; margin:0; padding:14px 16px 0; }
  .acryluxe-mobile-configurator-sheet .acryluxe-configurator-intro { display:none; }
  .acryluxe-mobile-configurator-sheet .acryluxe-configurator-group { padding:12px 0; }
  .acryluxe-mobile-configurator-sheet .acryluxe-configurator-group legend { margin-bottom:9px; }
  .acryluxe-mobile-configurator-sheet .acryluxe-configurator-options { gap:7px; }
  .acryluxe-mobile-configurator-sheet .acryluxe-option-button { min-height:42px; }
  .acryluxe-mobile-configurator-sheet .acryluxe-configurator-group.is-color .acryluxe-configurator-options { display:grid; grid-template-columns:repeat(auto-fit,40px); justify-content:start; gap:6px; }
  .acryluxe-mobile-configurator-sheet .acryluxe-swatch-button { width:38px; height:38px; flex-basis:38px; }
  .acryluxe-mobile-configurator-sheet .acryluxe-color-swatch { width:25px; height:25px; }
  .acryluxe-mobile-configurator-sheet .single_variation_wrap { position:sticky; bottom:0; z-index:2; margin:0!important; padding:12px 16px 14px; border-top:1px solid rgba(255,255,255,.09); background:rgba(10,6,14,.96); box-shadow:0 -12px 28px rgba(7,3,11,.72); }
  .acryluxe-mobile-configurator-sheet .single_variation { display:none!important; }
  .acryluxe-mobile-configurator-sheet .variations_button { display:grid!important; grid-template-columns:112px minmax(0,1fr); gap:8px!important; }
  .woocommerce div.product form.variations_form .acryluxe-mobile-configurator-sheet .quantity.acryluxe-quantity { width:112px; grid-template-columns:38px 36px 38px; }
  .acryluxe-mobile-configurator-sheet .quantity-step,.acryluxe-mobile-configurator-sheet .quantity.acryluxe-quantity .qty { min-height:46px; }
  .woocommerce div.product form.variations_form .acryluxe-mobile-configurator-sheet .single_add_to_cart_button { min-height:46px; padding-inline:10px!important; }
}

@media(prefers-reduced-motion:reduce) {
  .woocommerce-product-gallery,.acryluxe-option-button,.acryluxe-swatch-button,.acryluxe-mobile-configurator-backdrop,.acryluxe-mobile-configurator-sheet,.acryluxe-mobile-configurator-preview-media img { transition:none!important; }
}

/* ACRYLUXE SEO content */
.hero-description { max-width:650px; margin-top:31px; color:#cbc6d2; line-height:1.75; }
.hero-description p { margin:0 0 12px; }
@media (min-width:761px) and (max-height:900px) {
  .hero-description { max-width:590px; margin-top:26px; font-size:14px; line-height:1.62; }
  .hero-description p { margin-bottom:9px; }
}
.section-copy { max-width:590px; color:#aaa4b3; line-height:1.75; }
.section-copy p { margin:0 0 14px; }
.product-empty { grid-column:1/-1; padding:48px; text-align:center; border:1px solid var(--line); background:rgba(255,255,255,.02); }
.product-empty h3 { margin:0 0 12px; font-size:26px; }
.product-empty p { max-width:620px; margin:0 auto 26px; color:#aaa4b3; line-height:1.7; }
.brand-story,.faq-section { padding:110px 7vw; border-top:1px solid var(--line); background:#09070e; }
.brand-story h2,.faq-section h2 { max-width:900px; margin:20px 0 36px; font-size:clamp(34px,5vw,72px); line-height:1.02; letter-spacing:-.045em; }
.brand-story-copy { display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
.brand-story-copy p { margin:0; padding:28px; color:#c8c2d0; line-height:1.8; border:1px solid var(--line); background:rgba(255,255,255,.02); }
.faq-list { max-width:980px; }
.faq-list details { border-top:1px solid var(--line); }
.faq-list details:last-child { border-bottom:1px solid var(--line); }
.faq-list summary { position:relative; padding:25px 52px 25px 0; font-size:18px; font-weight:700; cursor:pointer; list-style:none; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary::after { content:'+'; position:absolute; right:10px; top:20px; color:var(--purple-light); font-size:28px; font-weight:300; }
.faq-list details[open] summary::after { content:'−'; }
.faq-list p { max-width:820px; margin:0; padding:0 52px 26px 0; color:#aaa4b3; line-height:1.75; }
@media(max-width:760px) {
  .brand-story,.faq-section { padding:80px 20px; }
  .brand-story-copy { grid-template-columns:1fr; }
  .brand-story-copy p { padding:22px; }
}

/* Privacy and legal controls */
.legal-links { display:flex; flex-wrap:wrap; align-items:center; gap:14px; }
.legal-links a,.cookie-preferences-link { color:#aaa4b3; font:inherit; text-decoration:underline; text-underline-offset:3px; }
.cookie-preferences-link { padding:0; border:0; background:none; cursor:pointer; }
.newsletter-consent { grid-column:1/-1; display:flex; align-items:flex-start; gap:10px; width:100%; margin-top:14px; color:#c8c2d0; font-size:12px; line-height:1.55; text-align:left; }
.membership .newsletter-consent input { flex:0 0 16px; width:16px; height:16px; min-width:16px; margin:2px 0 0; padding:0; accent-color:var(--purple-light); }
.newsletter-consent span { flex:1; min-width:0; }
.newsletter-consent a,.contact-form .privacy a { color:#d7b7ff; text-decoration:underline; }
.privacy-banner { position:fixed; z-index:10000; right:22px; bottom:22px; width:min(620px,calc(100% - 44px)); padding:28px; color:#f7f4fb; border:1px solid rgba(197,145,255,.45); border-radius:14px; background:#100b19; box-shadow:0 24px 80px rgba(0,0,0,.65); }
.privacy-banner[hidden],.privacy-modal[hidden] { display:none; }
.privacy-banner h2,.privacy-modal h2 { margin:0 42px 10px 0; font-size:24px; }
.privacy-banner p { margin:0 0 18px; color:#c5becd; line-height:1.6; }
.privacy-close { position:absolute; top:14px; right:16px; width:36px; height:36px; padding:0; color:#fff; border:1px solid var(--line); border-radius:50%; background:transparent; font-size:24px; cursor:pointer; }
.privacy-actions { display:flex; flex-wrap:wrap; gap:10px; }
.privacy-actions button { min-height:43px; padding:10px 16px; color:#fff; border:1px solid rgba(255,255,255,.24); border-radius:7px; background:transparent; font-weight:700; cursor:pointer; }
.privacy-actions button.primary { border-color:#a767ff; background:#7c2ee8; }
.privacy-links { margin:15px 0 0 !important; font-size:12px; }
.privacy-links a { color:#d7b7ff; text-decoration:underline; }
.privacy-modal { position:fixed; z-index:10001; inset:0; display:grid; place-items:center; padding:20px; background:rgba(0,0,0,.72); }
.privacy-modal-card { width:min(590px,100%); padding:30px; border:1px solid rgba(197,145,255,.45); border-radius:14px; background:#100b19; box-shadow:0 24px 80px rgba(0,0,0,.7); }
.privacy-modal-card > label { display:flex; justify-content:space-between; gap:20px; padding:18px 0; border-top:1px solid var(--line); }
.privacy-modal-card label span { display:grid; gap:5px; }
.privacy-modal-card small { color:#aaa4b3; line-height:1.45; }
.privacy-modal-card input { width:20px; height:20px; accent-color:var(--purple-light); }
@media(max-width:600px) {
  .privacy-banner { right:12px; bottom:12px; width:calc(100% - 24px); padding:22px 18px; }
  .privacy-actions { display:grid; }
  .privacy-actions button { width:100%; }
}

/* Floating quick actions */
.floating-actions {
  position:fixed;
  z-index:9500;
  right:22px;
  bottom:22px;
  display:flex;
  flex-direction:column;
  gap:11px;
  transition:opacity .2s ease,transform .2s ease;
}
.floating-button {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  width:54px;
  height:58px;
  padding:0;
  color:#fff;
  border:1px solid rgba(190,137,255,.42);
  border-radius:2px;
  cursor:pointer;
  background:rgba(10,7,15,.88);
  box-shadow:0 12px 34px rgba(0,0,0,.38),inset 0 2px 0 #8d3de6;
  backdrop-filter:blur(12px);
  transition:transform .2s ease,border-color .2s ease,background .2s ease;
}
.floating-button:hover,.floating-button:focus-visible { transform:translateY(-3px); border-color:#c28cff; background:#171022; }
.whatsapp-button { width:56px; height:56px; border:0; border-radius:50%; text-decoration:none; background:#f0e5ff; box-shadow:0 12px 34px rgba(0,0,0,.4),0 0 0 1px rgba(158,78,231,.16),0 0 26px rgba(139,61,255,.18); }
.whatsapp-icon { display:grid; place-items:center; color:#7122bf; line-height:1; }
.whatsapp-button:hover,.whatsapp-button:focus-visible { border-color:transparent; background:#fff; box-shadow:0 15px 38px rgba(0,0,0,.44),0 0 0 3px rgba(183,111,255,.28),0 0 30px rgba(139,61,255,.25); }
body:has(.privacy-banner:not([hidden])) .floating-actions,
body:has(.privacy-modal:not([hidden])) .floating-actions,
html.acryluxe-configurator-open .floating-actions { opacity:0; transform:translateY(10px); pointer-events:none; }
@media(max-width:600px) {
  .floating-actions { right:14px; bottom:14px; }
  .floating-button { width:52px; height:52px; }
  html.acryluxe-whatsapp-trigger-overlap .floating-actions { opacity:0; transform:translateY(10px); pointer-events:none; }
  .acryluxe-ai-root--floating { transition:opacity .18s ease,visibility .18s ease,transform .18s ease; }
  html.acryluxe-configurator-open .acryluxe-ai-root--floating { opacity:0!important; visibility:hidden!important; transform:translateY(10px); pointer-events:none!important; }
  body.single-product .acryluxe-ai-host,
  body.single-product .acryluxe-ai-root--floating { display:none!important; }
}

/* GTranslate remains the translation engine; the storefront always uses its custom control. */
.gtranslate_wrapper,
[id^="gt-wrapper-"] {
  display:none !important;
  visibility:hidden !important;
}
#gt_float_wrapper {
  position:fixed !important;
  left:20px !important;
  right:auto !important;
  bottom:20px !important;
  top:auto !important;
  z-index:999999 !important;
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
}
#gt_float_wrapper .gt_float_switcher {
  visibility:hidden !important;
  opacity:0 !important;
}
.acryluxe-language-fallback {
  position:fixed; left:20px; bottom:20px; z-index:999998; color:#f6f1fb;
  font-family:Arial,Helvetica,sans-serif;
}
.acryluxe-language-fallback[hidden],.language-fallback-options[hidden] { display:none !important; }
.language-fallback-current {
  min-width:62px; width:62px; height:40px; min-height:40px; padding:0 8px; display:flex; align-items:center; justify-content:center; gap:5px;
  border:1px solid rgba(190,137,255,.48); border-radius:999px; background:linear-gradient(145deg,rgba(29,15,43,.98),rgba(14,8,22,.98)); color:#fff;
  box-shadow:inset 0 1px 0 rgba(208,166,255,.28),0 5px 16px rgba(0,0,0,.24); cursor:pointer;
}
.language-fallback-current span,.language-fallback-options span { display:grid; place-items:center; color:#c99aff; line-height:1; }
.language-fallback-current span { width:14px; }
.language-fallback-current span svg { width:14px; height:14px; }
.language-fallback-current b { color:#fff; font-size:10px; letter-spacing:.05em; }
.language-fallback-current i { width:6px; height:6px; display:block; margin-left:auto; border-right:1px solid #caa3ee; border-bottom:1px solid #caa3ee; transform:rotate(45deg) translateY(-2px); }
.language-fallback-options {
  position:absolute; left:0; bottom:calc(100% + 8px); width:96px; padding:6px; display:grid; gap:3px;
  border:1px solid rgba(190,137,255,.46); border-radius:8px; background:rgba(10,6,15,.98); box-shadow:0 18px 48px rgba(0,0,0,.55);
}
.language-fallback-options button {
  min-height:40px; padding:6px 9px; display:flex; align-items:center; gap:9px; border:0; border-radius:5px;
  background:transparent; color:#eee8f5; font-size:11px; font-weight:800; cursor:pointer;
}
.language-fallback-options button:hover,.language-fallback-options button:focus-visible { background:rgba(139,61,255,.2); }
.language-fallback-options button.is-active { background:rgba(139,61,255,.24); color:#fff; }
@media(max-width:600px) {
  #gt_float_wrapper { left:12px !important; bottom:12px !important; }
  #gt_float_wrapper .gt_float_switcher { transform:scale(.9) !important; transform-origin:left bottom !important; }
  .acryluxe-language-fallback { left:12px; bottom:max(12px,env(safe-area-inset-bottom)); transform:scale(.9); transform-origin:left bottom; }
}

/* Mobile-first storefront experience */
html.mobile-menu-open,
html.mobile-menu-open body { overflow:hidden; overscroll-behavior:none; }
html.mobile-menu-open #gt_float_wrapper,
html.mobile-menu-open .gtranslate_wrapper,
html.mobile-menu-open [id^="gt-wrapper-"],
html.mobile-menu-open .acryluxe-language-fallback,
html.acryluxe-configurator-open #gt_float_wrapper,
html.acryluxe-configurator-open .gtranslate_wrapper,
html.acryluxe-configurator-open [id^="gt-wrapper-"],
html.acryluxe-configurator-open .acryluxe-language-fallback { display:none !important; }

@media (max-width:820px) {
  html,body { width:100%; max-width:100%; overflow-x:hidden; }
  img,svg { max-width:100%; }
  .announcement {
    min-height:28px; padding:6px 14px; justify-content:space-between; gap:8px;
    font-size:9px; line-height:1.2; letter-spacing:.09em;
  }
  .announcement > :nth-child(2),.announcement > :nth-child(3) { display:none; }
  .announcement-link { margin-left:auto; white-space:nowrap; }

  .site-header {
    position:sticky; top:0; z-index:9000; height:64px; min-height:64px; padding:0 14px 0 16px;
    background:transparent; box-shadow:0 1px 0 var(--line);
    -webkit-backdrop-filter:none; backdrop-filter:none;
    transition:background .2s ease,box-shadow .2s ease;
  }
  .site-header::before {
    content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
    background:rgba(8,6,13,.82); -webkit-backdrop-filter:blur(16px); backdrop-filter:blur(16px);
    transition:background .2s ease;
  }
  .site-header.is-scrolled { box-shadow:0 10px 30px rgba(0,0,0,.32),0 1px 0 var(--line); }
  .site-header.is-scrolled::before { background:rgba(8,6,13,.96); }
  body.admin-bar .site-header { top:46px; }
  .brand { flex:0 0 auto; height:64px; }
  .custom-logo { width:auto; max-width:104px; max-height:52px; }
  .header-actions { margin-left:auto; gap:2px; }
  .header-actions > .js-search-open,.header-actions > .instagram-button,.header-actions > .account-button { display:none !important; }
  .mobile-language-slot { width:64px; height:44px; display:grid; place-items:center; flex:0 0 64px; }
  .mobile-language-slot .acryluxe-language-fallback { position:relative; left:auto; bottom:auto; z-index:1; display:block; transform:none; }
  .header-actions .mobile-language-slot .language-fallback-current { min-width:62px; width:62px; height:40px; min-height:40px; padding:0 8px; display:flex; flex-direction:row; align-items:center; justify-content:center; gap:5px; border-radius:999px; border-color:rgba(190,137,255,.48); background:linear-gradient(145deg,rgba(29,15,43,.98),rgba(14,8,22,.98)); box-shadow:inset 0 1px 0 rgba(208,166,255,.28),0 5px 16px rgba(0,0,0,.24); }
  .mobile-language-slot .language-fallback-current span { width:14px; }
  .mobile-language-slot .language-fallback-current span svg { width:14px; height:14px; }
  .mobile-language-slot .language-fallback-current b { color:#fff; font-size:10px; letter-spacing:.05em; }
  .mobile-language-slot .language-fallback-current i { width:6px; height:6px; display:block; margin-left:auto; border-color:#caa3ee; }
  .mobile-language-slot .language-fallback-options { top:calc(100% + 8px); right:0; bottom:auto; left:auto; width:96px; padding:6px; border-color:rgba(190,137,255,.46); border-radius:8px; background:rgba(10,6,15,.98); }
  .mobile-language-slot .language-fallback-options button { position:relative; min-height:40px; border-radius:5px; }
  .mobile-language-slot .language-fallback-options button.is-active { background:rgba(139,61,255,.24); color:#fff; }
  #gt_float_wrapper { display:none !important; }
  .header-actions button,.menu-button { width:44px; min-width:44px; height:44px; min-height:44px; }
  .bag-button span { top:2px; right:2px; }
  .menu-button { display:flex !important; position:relative; z-index:1; flex-direction:column; align-items:center; justify-content:center; gap:6px; }
  .menu-button i { display:block; width:22px; height:1.5px; background:#fff; transition:transform .25s ease,opacity .2s ease; }
  .menu-button.active i:first-child { transform:translateY(3.75px) rotate(45deg); }
  .menu-button.active i:last-child { transform:translateY(-3.75px) rotate(-45deg); }

  .nav {
    position:fixed; inset:0; z-index:1000000; width:100%; min-height:100dvh; height:100dvh;
    padding:max(16px,env(safe-area-inset-top)) 18px max(16px,env(safe-area-inset-bottom));
    display:grid; grid-template-rows:auto minmax(0,1fr) auto; gap:18px; overflow:hidden;
    color:#fff; background:
      radial-gradient(circle at 88% 12%,rgba(139,61,255,.24),transparent 30%),
      radial-gradient(circle at 10% 85%,rgba(99,37,186,.16),transparent 34%),
      linear-gradient(145deg,#050307 0%,#0d0715 52%,#060409 100%);
    opacity:0; visibility:hidden; pointer-events:none; transform:translate3d(0,-18px,0);
    transition:opacity .28s ease,transform .35s cubic-bezier(.2,.75,.2,1),visibility 0s linear .35s;
  }
  .nav::before {
    content:""; position:absolute; inset:0; z-index:-1; opacity:.2; pointer-events:none;
    background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
    background-size:56px 56px; mask-image:linear-gradient(135deg,#000,transparent 80%);
  }
  .nav.open { opacity:1; visibility:visible; pointer-events:auto; transform:translate3d(0,0,0); transition-delay:0s; }
  .mobile-nav-top { display:flex; align-items:center; justify-content:space-between; min-height:54px; }
  .mobile-nav-brand { display:flex; align-items:center; min-height:48px; }
  .mobile-nav-brand::after { display:none !important; }
  .mobile-nav-brand .custom-logo { max-width:116px; max-height:54px; }
  .mobile-nav-close {
    position:relative; width:48px; height:48px; flex:0 0 48px; border:1px solid rgba(199,143,255,.34); border-radius:50%;
    background:rgba(255,255,255,.035); color:#fff; cursor:pointer;
  }
  .mobile-nav-close i { position:absolute; left:13px; top:22px; width:20px; height:1.5px; background:currentColor; }
  .mobile-nav-close i:first-child { transform:rotate(45deg); }
  .mobile-nav-close i:last-child { transform:rotate(-45deg); }
  .mobile-nav-content {
    min-height:0; overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin;
    padding:clamp(10px,4vh,34px) 2px 20px;
  }
  .mobile-nav-kicker { display:block; margin-bottom:clamp(18px,4vh,34px); color:#b778ff; font-size:10px; font-weight:800; letter-spacing:.2em; }
  .nav-list { counter-reset:mobile-nav; display:flex; flex-direction:column; align-items:stretch; gap:0; }
  .nav-list > li {
    counter-increment:mobile-nav; display:block; border-bottom:1px solid rgba(255,255,255,.1);
    opacity:0; transform:translateY(18px); transition:opacity .25s ease,transform .32s ease;
  }
  .nav-list > li:first-child { border-top:1px solid rgba(255,255,255,.1); }
  .nav.open .nav-list > li { opacity:1; transform:translateY(0); }
  .nav.open .nav-list > li:nth-child(1) { transition-delay:.06s; }
  .nav.open .nav-list > li:nth-child(2) { transition-delay:.1s; }
  .nav.open .nav-list > li:nth-child(3) { transition-delay:.14s; }
  .nav.open .nav-list > li:nth-child(4) { transition-delay:.18s; }
  .nav.open .nav-list > li:nth-child(5) { transition-delay:.22s; }
  .nav-list > li > a {
    min-height:clamp(56px,9vh,78px); display:flex; align-items:center; gap:15px; padding:10px 4px;
    color:#f6f2fa; font-family:Impact,"Arial Narrow",sans-serif; font-size:clamp(31px,10vw,48px);
    font-weight:400; line-height:.95; letter-spacing:.01em;
  }
  .nav-list > li > a::before {
    content:"0" counter(mobile-nav); flex:0 0 26px; color:#9d5fe7;
    font:700 9px/1 Arial,sans-serif; letter-spacing:.08em;
  }
  .nav-list > li > a::after { left:44px; bottom:10px; height:1px; }
  .mobile-nav-cta {
    min-height:54px; margin-top:24px; padding:0 18px; display:flex; align-items:center; justify-content:space-between;
    color:#fff !important; border:1px solid #b77cff; background:linear-gradient(115deg,#7024d6,#a251ff);
    box-shadow:0 14px 38px rgba(110,36,219,.28); font-size:11px !important; font-weight:900 !important; letter-spacing:.12em !important;
  }
  .mobile-nav-cta::after { display:none !important; }
  .mobile-nav-tools { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
  .mobile-nav-tool {
    position:relative; min-height:52px; padding:0 14px; display:flex; align-items:center; gap:10px;
    border:1px solid rgba(255,255,255,.14); background:rgba(255,255,255,.035); color:#e8e2ed; cursor:pointer;
    font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase;
  }
  .mobile-nav-tool b { margin-left:auto; min-width:20px; color:#c58cff; font-size:11px; }

  .hero { min-height:0; grid-template-columns:1fr; grid-template-rows:auto auto; }
  .hero-copy { padding:54px 20px 30px; }
  .eyebrow { margin-bottom:24px; font-size:11px; line-height:1.45; letter-spacing:.16em; }
  .hero h1 { max-width:100%; font-size:clamp(42px,11.5vw,64px); line-height:.94; letter-spacing:-.035em; overflow-wrap:normal; }
  .hero h1 em {
    color:transparent;
    -webkit-text-fill-color:transparent;
    -webkit-text-stroke:clamp(.8px,.22vw,1.3px) #b76fff;
    text-shadow:0 0 20px rgba(164,76,255,.32);
  }
  .hero-description { max-width:34rem; margin-top:30px; color:#d3cdd9; font-size:16px; line-height:1.68; }
  .hero-description p { margin-bottom:0; }
  .hero-description p:nth-child(2) { display:none; }
  .hero-actions { margin-top:29px; display:grid; grid-template-columns:1fr; gap:14px; }
  .hero-actions .primary-button { width:100%; min-width:0; min-height:54px; }
  .hero-actions .text-button { width:max-content; min-height:44px; display:flex; align-items:center; font-size:11px; }
  .hero-proof { margin-top:30px; }
  .hero-proof b { font-size:12px; }
  .hero-proof small { max-width:260px; font-size:11px; line-height:1.45; }
  .hero-visual { min-height:clamp(360px,95vw,430px); overflow:hidden; }
  .hero-visual::before { inset:5% -5%; filter:blur(14px); }
  .hero-image-wrap { inset:-8% -34% -5%; }
  .hero-image-wrap img { width:min(690px,158vw); aspect-ratio:16/10; transform:none; }
  .orb-one { width:330px; height:330px; right:-150px; top:-80px; }
  .orb-two,.ring-two { display:none; }
  .ring-one { width:min(72vw,310px); height:min(72vw,310px); left:55%; top:49%; }
  .auth-chip {
    left:50%; right:auto; bottom:20px; transform:translateX(-50%);
    width:max-content; max-width:calc(100% - 40px); justify-content:center;
    padding:10px 17px; border-radius:999px; white-space:nowrap;
    background:linear-gradient(120deg,rgba(12,8,20,.94),rgba(28,13,47,.9));
    border-color:rgba(180,104,255,.42);
    box-shadow:0 12px 32px rgba(0,0,0,.42),0 0 22px rgba(139,47,240,.16);
    font-size:9px;
  }
  .ticker { height:40px; }
  .ticker div { gap:22px; animation-duration:38s; }
  .ticker span { font-size:9px; letter-spacing:.15em; }

  .shop-section { padding:72px 16px 62px; }
  .section-heading { display:block; margin-bottom:32px; }
  .section-heading .index { margin-bottom:13px; font-size:10px; }
  .section-heading h2 { font-size:clamp(40px,12vw,60px); line-height:.94; }
  .section-heading .section-copy { margin-top:22px; }
  .section-heading p,.section-copy { max-width:38rem; font-size:16px; line-height:1.6; }
  .filters { margin:0 -16px 24px; padding:0 16px 8px; flex-wrap:nowrap; overflow-x:auto; scroll-snap-type:x proximity; scrollbar-width:none; }
  .filters::-webkit-scrollbar { display:none; }
  .filters button { min-height:44px; padding:10px 16px; flex:0 0 auto; scroll-snap-align:start; font-size:10px; }
  .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 12px; }
  .product-card { cursor:pointer; scroll-snap-align:start; }
  .product-card:focus-visible { outline:2px solid #8b3dff; outline-offset:5px; }
  .product-art { height:clamp(300px,48vw,360px); }
  .art-card { width:clamp(138px,28vw,175px); height:clamp(205px,40vw,250px); }
  .quick-add { min-height:44px; transform:none; }
  .favorite { width:44px; height:44px; right:10px; top:10px; }
  .product-info { display:block; min-height:92px; padding:14px 2px 0; }
  .product-info > div > span { font-size:10px; }
  .product-info h3 { font-size:15px; line-height:1.35; }
  .product-info p { margin-top:8px; font-size:15px; }

  .promise-section { padding:72px 18px; grid-template-columns:1fr; gap:34px; }
  .promise-section > * { min-width:0; }
  .promise-intro { min-width:0; padding:0; }
  .promise-intro h2 { margin-top:16px; font-size:clamp(25px,7.6vw,34px); }
  .promise-title-line { white-space:normal; text-wrap:balance; }
  .promise-grid { width:100%; min-width:0; grid-template-columns:minmax(0,1fr); }
  .promise-grid article { min-width:0; min-height:0; padding:25px 22px 28px; border-right:0; border-bottom:1px solid var(--line); }
  .promise-grid article:last-child { border-bottom:0; }
  .promise-number { margin-bottom:24px; color:#a39aaa; font-size:10px; }
  .promise-grid h3 { margin:18px 0 10px; font-size:21px; }
  .promise-grid p { color:#b8b1bf; font-size:16px; line-height:1.65; overflow-wrap:break-word; }
  .promise-card-link { padding-top:22px; color:#d1a0ff; font-size:10px; line-height:1.55; overflow-wrap:anywhere; }

  .accessory-feature { min-height:0; grid-template-columns:1fr; }
  .accessory-visual { min-height:clamp(400px,104vw,520px); }
  .accessory-real-photo { width:100%; max-width:none; height:100%; padding:0; border-radius:0; }
  .accessory-copy { padding:66px 18px 72px; }
  .accessory-copy h2 { margin:17px 0 22px; font-size:clamp(43px,12.5vw,62px); }
  .accessory-copy > p { max-width:38rem; font-size:16px; line-height:1.65; }
  .accessory-copy > p + p { margin-top:12px; }
  .accessory-copy ul { margin:27px 0 30px; }
  .accessory-copy li { padding:15px 0; font-size:12px; line-height:1.45; letter-spacing:.06em; }
  .accessory-copy .primary-button { width:100%; min-height:54px; }

  .brand-story,.faq-section { padding:72px 18px; }
  .brand-story h2,.faq-section h2 { margin:16px 0 28px; font-size:clamp(36px,10vw,54px); line-height:1.02; }
  .brand-story-copy { grid-template-columns:1fr; gap:12px; }
  .brand-story-copy p { padding:21px 18px; font-size:15px; line-height:1.65; }
  .faq-list summary { min-height:60px; padding:20px 44px 20px 0; font-size:16px; line-height:1.4; }
  .faq-list summary::after { right:4px; top:15px; }
  .faq-list p { padding:0 38px 22px 0; font-size:15px; line-height:1.65; }

  .membership { min-height:0; padding:72px 18px; }
  .membership-kicker { font-size:10px; }
  .membership h2 { margin:18px 0 14px; font-size:clamp(44px,13vw,64px); }
  .membership > p { font-size:16px; line-height:1.55; }
  .membership form { grid-template-columns:minmax(0,1fr) 54px; }
  .membership form > input[type="email"],.membership form button { height:54px; }
  .membership input { padding:0 14px; font-size:12px; letter-spacing:.08em; }
  .newsletter-consent { font-size:13px; line-height:1.5; }
  .membership > small { font-size:12px; }

  footer { padding:58px 18px max(90px,calc(20px + env(safe-area-inset-bottom))); }
  .footer-main { grid-template-columns:1fr; gap:40px; padding-bottom:42px; }
  .footer-brand p { font-size:14px; }
  .footer-links { grid-template-columns:1fr 1fr; gap:34px 20px; }
  .footer-links b { font-size:10px; }
  .footer-links a { min-height:28px; font-size:13px; }
  .footer-bottom { gap:15px; flex-wrap:wrap; padding-top:20px; font-size:10px; line-height:1.5; }
  .footer-business-details { padding:16px 0 20px; font-size:10px; overflow-wrap:anywhere; }
  .footer-credit { font-size:11px; }
  .footer-bottom b { width:100%; margin-left:0; }

  .content-shell,.commerce-shell { width:calc(100% - 32px); padding-block:62px 82px; }
  .page-hero h1 { font-size:clamp(42px,12vw,62px); overflow-wrap:anywhere; }
  .page-content,.entry-content { font-size:16px; line-height:1.7; }
  .woocommerce ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 12px; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size:15px !important; line-height:1.4; }
  .woocommerce div.product { gap:30px; }
  .cart-page .woocommerce-cart-form { padding:0; border:0; background:transparent; }
  .cart-page table.shop_table,.cart-page table.shop_table tbody { width:100%; display:block; }
  .cart-page table.shop_table thead { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }
  .cart-page table.shop_table tr.cart_item { position:relative; width:100%; min-height:136px; padding:16px 44px 16px 98px; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px 14px; border:1px solid var(--line); background:#0d0a12; }
  .cart-page table.shop_table tr.cart_item + tr.cart_item { margin-top:12px; }
  .cart-page table.shop_table td { width:auto!important; padding:0!important; border:0!important; min-width:0; vertical-align:initial; }
  .cart-page table.shop_table td.product-remove { position:absolute; top:12px; right:8px; }
  .cart-page table.shop_table td.product-thumbnail { position:absolute; top:14px; left:12px; }
  .cart-page table.shop_table td.product-thumbnail img { width:68px!important; height:auto!important; aspect-ratio:2 / 3; }
  .cart-page table.shop_table td.product-name { grid-column:1/-1; padding-right:4px!important; font-size:15px; line-height:1.4; }
  .cart-page table.shop_table td.product-name .variation { margin-top:8px; gap:3px 8px; font-size:11px; }
  .cart-page table.shop_table td.product-price,.cart-page table.shop_table td.product-quantity { min-height:46px; display:grid; align-content:end; gap:5px; }
  .cart-page table.shop_table td.product-price { justify-items:start; color:#f5f0f8; font-size:13px; }
  .cart-page table.shop_table td.product-quantity { justify-items:end; }
  .cart-page table.shop_table td.product-price::before,.cart-page table.shop_table td.product-quantity::before,.cart-page table.shop_table td.product-subtotal::before { content:attr(data-title); color:#7f7485; font-size:8px; font-weight:900; letter-spacing:.1em; line-height:1; text-transform:uppercase; }
  .cart-page table.shop_table td.product-subtotal { grid-column:1/-1; padding-top:12px!important; display:flex; align-items:center; justify-content:space-between; border-top:1px solid var(--line)!important; text-align:left; font-size:14px; font-weight:800; }
  .cart-page table.shop_table tr:not(.cart_item) { display:block; margin-top:12px; }
  .cart-page table.shop_table td.actions { display:block; padding:0!important; }
  .cart-page table.shop_table td.actions button[name="update_cart"] { display:none; }
  .cart-page .cart-collaterals { padding:24px 18px; }
  .cart-page .cart_totals h2 { margin:0 0 22px; font-size:28px; }
  .cart-page .cart_totals table.shop_table,
  .cart-page .cart_totals table.shop_table tbody {
    width:100%!important;
    display:block;
    background:transparent;
  }
  .cart-page .cart_totals table.shop_table tr,
  .cart-page .cart_totals table.shop_table tr:not(.cart_item) {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    width:100%;
    margin:0;
  }
  .cart-page .cart_totals table.shop_table th,
  .cart-page .cart_totals table.shop_table td {
    width:auto!important;
    min-width:0;
    padding:16px 0!important;
    display:block;
    vertical-align:middle;
  }
  .cart-page .cart_totals table.shop_table th { text-align:left; }
  .cart-page .cart_totals table.shop_table td { text-align:right!important; }
  .cart-page .cart_totals table.shop_table td::before { display:none!important; content:none!important; }
  .cart-page .cart_totals table.shop_table th { font-size:9px; }
  .cart-page .cart_totals table.shop_table td { font-size:14px; }
  .cart-page .cart_totals .woocommerce-shipping-destination { max-width:23ch; font-size:11px; }
  .cart-page .cart_totals table.shop_table tr.woocommerce-shipping-totals,
  .cart-page .cart_totals table.shop_table tr.shipping {
    grid-template-columns:minmax(0,1fr);
  }
  .cart-page .cart_totals table.shop_table tr.woocommerce-shipping-totals > th,
  .cart-page .cart_totals table.shop_table tr.woocommerce-shipping-totals > td,
  .cart-page .cart_totals table.shop_table tr.shipping > th,
  .cart-page .cart_totals table.shop_table tr.shipping > td {
    display:block;
    width:100%!important;
    max-width:100%;
    box-sizing:border-box;
    text-align:left!important;
  }
  .cart-page .cart_totals table.shop_table tr.woocommerce-shipping-totals > th,
  .cart-page .cart_totals table.shop_table tr.shipping > th { padding-bottom:0!important; }
  .cart-page .cart_totals table.shop_table tr.woocommerce-shipping-totals > td,
  .cart-page .cart_totals table.shop_table tr.shipping > td { padding-top:12px!important; }
  .cart-page .cart_totals tr.woocommerce-shipping-totals .woocommerce-shipping-destination,
  .cart-page .cart_totals tr.shipping .woocommerce-shipping-destination { max-width:none; margin:8px 0 0; }
  .cart-page .cart_totals tr.shipping #shipping_method li { justify-content:flex-start; }
  .cart-page .cart_totals tr.shipping > td { border-top:0!important; }
  .cart-page .cart_totals .shipping-calculator-button { display:none!important; }
  .cart-page .cart_totals .shipping-calculator-form { display:block!important; margin-top:14px; }
  .cart-page .cart_totals .woocommerce-shipping-calculator,
  .cart-page .cart_totals .woocommerce-shipping-calculator .form-row {
    width:100%;
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
  }
  .cart-page .cart_totals .woocommerce-shipping-calculator .form-row {
    float:none;
    margin:0 0 14px;
    padding:0;
  }
  .cart-page .cart_totals .woocommerce-shipping-calculator select:not(.select2-hidden-accessible),
  .cart-page .cart_totals .woocommerce-shipping-calculator input,
  .cart-page .cart_totals .woocommerce-shipping-calculator textarea,
  .cart-page .cart_totals .woocommerce-shipping-calculator .select2-container {
    width:100%!important;
    max-width:100%!important;
    min-width:0;
    box-sizing:border-box;
  }
  .cart-page .cart_totals .woocommerce-shipping-calculator button { max-width:100%; box-sizing:border-box; }
  .cart-page .woocommerce-shipping-calculator input,
  .cart-page .woocommerce-shipping-calculator select,
  .cart-page .woocommerce-shipping-calculator textarea,
  body.woocommerce-cart .select2-search__field { font-size:16px!important; }
  .cart-page .woocommerce-shipping-calculator select {
    min-height:50px;
    padding:12px;
    border:1px solid var(--line);
    background:#100c15;
    color:#fff;
    color-scheme:dark;
  }
  .cart-page .cart_totals table.shop_table tr.order-total th,
  .cart-page .cart_totals table.shop_table tr.order-total td { border-top:1px solid rgba(215,185,255,.32)!important; }
  .cart-page .cart_totals table.shop_table tr.order-total td { font-size:23px; }
  .cart-page .wc-proceed-to-checkout { gap:20px; padding:26px 0 0!important; }
  .cart-page .wc-proceed-to-checkout #payment-method-message {
    min-width:0;
    max-width:100%;
    overflow:hidden;
    box-sizing:border-box;
    padding:14px 14px 15px;
  }
  .cart-page .wc-proceed-to-checkout #payment-method-message:has(iframe[src*="klarna"]) iframe {
    display:block;
    inline-size:100%!important;
    width:100%!important;
    max-inline-size:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  .cart-page .wc-proceed-to-checkout #payment-method-message:has(iframe[src*="klarna"])::before { margin-bottom:9px; font-size:8px; }
  .cart-page .wc-proceed-to-checkout .checkout-button {
    width:100%; min-height:56px; margin:0!important; display:flex!important; align-items:center; justify-content:space-between; box-sizing:border-box;
  }
  .cart-page .quantity.acryluxe-quantity { grid-template-columns:38px 46px 38px; }
  .cart-page .quantity.acryluxe-quantity .qty,.cart-page .quantity-step { min-height:42px; }
  .set-product-configurator { grid-template-columns:1fr; }
  .contact-layout,.contact-form,.contact-details { grid-template-columns:1fr; }
  .contact-panel { padding:30px 18px; }
  .contact-panel h2 { font-size:clamp(42px,12vw,58px); }
  .contact-form { margin-top:28px; }
  .contact-form label,.contact-form .full,.contact-image { grid-column:1; }
  .contact-form label > span { font-size:11px; }
  .contact-form input:not([type=checkbox]),.contact-form textarea { min-height:48px; font-size:16px; }
  .contact-form .primary-button { width:100%; min-height:54px; }
  .contact-card a,.contact-card strong { font-size:16px; }

  .privacy-banner {
    right:12px; bottom:max(12px,env(safe-area-inset-bottom)); width:calc(100% - 24px); max-height:calc(100dvh - 24px);
    padding:22px 18px 76px; overflow-y:auto;
  }
  .privacy-banner h2,.privacy-modal h2 { font-size:21px; }
  .privacy-banner p { font-size:14px; }
  .privacy-actions { display:grid; }
  .privacy-actions button { width:100%; min-height:46px; }
  .privacy-modal { padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom)); }
  .privacy-modal-card { max-height:100%; padding:24px 18px; overflow-y:auto; }
  .cart-drawer,.search-panel { z-index:1000020; }
  .overlay { z-index:1000010; }
  .search-panel { top:max(12px,env(safe-area-inset-top)); max-height:calc(100dvh - 24px); }
  .toast { left:12px; right:12px; bottom:max(78px,calc(66px + env(safe-area-inset-bottom))); font-size:13px; }
  .floating-actions { right:12px; bottom:max(12px,env(safe-area-inset-bottom)); }
  #gt_float_wrapper { left:12px !important; bottom:max(12px,env(safe-area-inset-bottom)) !important; }

  .portal-ring,.hero-orb,.product-art::before,.accessory-visual::before { animation:none; }
  .product-card:hover .art-card { transform:perspective(600px) rotateY(-4deg) rotateX(2deg); }
}

@media (max-width:400px) {
  .cart-page table.shop_table tr.cart_item { grid-template-columns:minmax(0,1fr); }
  .cart-page table.shop_table td.product-price,
  .cart-page table.shop_table td.product-quantity { grid-column:1; }
  .cart-page table.shop_table td.product-quantity { justify-items:start; }
  .cart-page .cart_totals table.shop_table tr.order-total { grid-template-columns:minmax(0,1fr) max-content; }
}

@media (max-width:560px) {
  .hero h1 { font-size:clamp(34px,10.35vw,42px); line-height:.94; letter-spacing:-.04em; }
  .hero-title-primary,.hero-title-first,.hero-title-rest,.hero-title-secondary { display:block; }
  .hero-title-break { display:none; }
  .hero-title-secondary {
    width:100%;
    font-size:clamp(26px,8.4vw,36px);
    white-space:nowrap;
    letter-spacing:-.055em;
  }
  .hero-description { margin-top:28px; }
  .art-card { width:160px; height:235px; }
  .product-info { min-height:88px; }
  .woocommerce ul.products { grid-template-columns:1fr; }
}

@media (max-width:600px) {
  .product-grid {
    margin:0; padding:0; grid-template-columns:minmax(0,1fr); grid-auto-flow:row;
    grid-auto-columns:auto; gap:22px; overflow:visible; scroll-snap-type:none;
  }
  .product-art { height:clamp(360px,92vw,460px); }
  .product-card { scroll-snap-align:none; }
  .products-more .primary-button { width:100%; min-height:54px; }
}

/* Compact, action-led single product layout on phones. */
@media (max-width:600px) {
  .single-product .commerce-shell { padding-block:32px 72px; }
  .single-product .woocommerce-breadcrumb { margin-bottom:18px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  body.single-product.woocommerce div.product { gap:16px; }
  body.single-product.woocommerce div.product .woocommerce-product-gallery {
    width:min(58vw,220px,29dvh)!important;
  }
  body.single-product.woocommerce div.product .summary .product_title {
    font-size:clamp(40px,11.5vw,46px);
    line-height:.92;
  }
  body.single-product.woocommerce div.product .summary p.price { margin-block:9px; }
  .single-product .woocommerce-product-details__short-description { color:#d2ccd7; font-size:14px; line-height:1.45; }
  .single-product .woocommerce-product-details__short-description p { margin:0; }
  body.single-product.woocommerce div.product form.variations_form.acryluxe-configurator-ready > .acryluxe-mobile-configurator-trigger {
    min-height:64px;
    margin-top:14px;
    padding:8px 8px 8px 14px;
    border-color:rgba(193,127,255,.72);
    background:linear-gradient(135deg,#160b20,#241034);
    box-shadow:0 12px 32px rgba(91,29,147,.3),inset 0 0 0 1px rgba(255,255,255,.025);
  }
  .single-product .acryluxe-mobile-configurator-trigger-copy { gap:4px; }
  .single-product .acryluxe-mobile-configurator-trigger-copy small { color:#c8b6d5; }
  .single-product .acryluxe-mobile-configurator-trigger-copy strong { font-size:12px; }
  .single-product .acryluxe-mobile-configurator-trigger-action {
    min-width:118px;
    min-height:46px;
    padding:0 13px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    background:linear-gradient(110deg,#7722d5,#a84fff);
    color:#fff;
    box-shadow:0 8px 22px rgba(122,34,207,.38);
  }
  .single-product .acryluxe-mobile-configurator-trigger-action::after { content:'\2192'; font-size:15px; line-height:1; }
  .single-product .acryluxe-mobile-configurator-trigger:hover .acryluxe-mobile-configurator-trigger-action,
  .single-product .acryluxe-mobile-configurator-trigger:focus-visible .acryluxe-mobile-configurator-trigger-action {
    background:linear-gradient(110deg,#8b2ce8,#b45cff);
  }
  .single-product .acryluxe-mobile-configurator-trigger:focus-visible { outline:2px solid #d9b8ff; outline-offset:3px; }
}

@media (max-width:360px) {
  .hero-copy { padding:48px 16px 28px; }
  .hero h1 { font-size:clamp(34px,11vw,40px); }
  .mobile-nav-tools { grid-template-columns:1fr; }
  .mobile-nav-tool { min-height:46px; }
  .nav-list > li > a { font-size:clamp(29px,9vw,36px); min-height:53px; }
  .shop-section { padding-inline:14px; }
  .product-grid { margin:0; padding:0; grid-auto-columns:auto; }
  .footer-links { grid-template-columns:1fr; }
}

@media (max-width:820px) and (max-height:600px) {
  .mobile-nav-content { padding-top:4px; }
  .mobile-nav-kicker { margin-bottom:10px; }
  .nav-list > li > a { min-height:48px; font-size:30px; }
  .mobile-nav-cta { min-height:48px; margin-top:14px; }
  .mobile-nav-tools { grid-template-columns:1fr 1fr; }
  .mobile-nav-tool { min-height:46px; }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
  .hero-video { display:none; }
  .hero-video-toggle { display:none; }
}

/* Hero video: keep the subject visible while preserving readable editorial copy. */
.hero-responsive-background::after {
  background:
    linear-gradient(90deg,rgba(5,3,9,.94) 0%,rgba(5,3,9,.86) 37%,rgba(5,3,9,.61) 52%,rgba(5,3,9,.22) 72%,rgba(5,3,9,.06) 100%),
    linear-gradient(180deg,rgba(5,3,9,.22),transparent 50%,rgba(5,3,9,.34));
}
.hero-copy { isolation:isolate; }
.hero-copy > .eyebrow { color:#e7d2ff; text-shadow:0 1px 12px rgba(0,0,0,.68); }
.hero-copy > .hero-description { color:#f1edf5; font-weight:500; text-shadow:0 1px 12px rgba(0,0,0,.8); }
.hero h1 { color:#fff; text-shadow:0 2px 18px rgba(0,0,0,.66); }
.hero h1 em { color:#e3c5ff; -webkit-text-fill-color:#e3c5ff; -webkit-text-stroke:0; text-shadow:0 2px 18px rgba(0,0,0,.72),0 0 20px rgba(164,76,255,.32); }
.hero-video-toggle:focus-visible { outline:3px solid #fff; outline-offset:4px; }

/* Wide screens: editorial copy and product media are two independent Hero columns. */
@media (min-width:1024px) {
  .hero {
    height:clamp(650px,calc(100svh - 118px),950px);
    min-height:clamp(650px,calc(100svh - 118px),950px);
    grid-template-columns:minmax(0,42%) minmax(0,58%);
    grid-template-rows:minmax(0,1fr);
    background:#050307;
  }
	.hero-responsive-background {
		position:relative;
		inset:auto;
		grid-column:2;
		grid-row:1;
		z-index:1;
		width:100%;
		height:100%;
		background:radial-gradient(circle at 82% 62%,rgba(132,48,238,.18),transparent 48%),#050307;
	}
	.hero-responsive-background picture.hero-video-fallback {
		position:absolute;
		inset:0;
	}
	.hero-responsive-background::after {
		background:
			linear-gradient(90deg,#050307 0%,rgba(5,3,10,.82) 12%,rgba(5,3,10,.32) 27%,transparent 43%),
			linear-gradient(0deg,rgba(5,3,10,.20) 0%,transparent 38%);
	}
	.hero-responsive-background img,
	.hero-responsive-background video { object-position:70% center; }
	.hero-responsive-background picture.hero-video-fallback img {
		object-fit:cover;
		object-position:70% center;
	}
  .hero-copy {
    grid-column:1;
    grid-row:1;
    align-self:center;
    z-index:3;
    width:100%;
    min-height:0;
    max-width:720px;
    box-sizing:border-box;
    padding:clamp(48px,6vh,78px) clamp(40px,4vw,60px) clamp(48px,6vh,78px) clamp(48px,6vw,110px);
  }
  .hero h1 {
    font-size:clamp(58px,5vw,92px);
    line-height:.9;
  }
  .hero-grid,.hero-visual,.hero-mobile-scroll-indicator { display:none !important; }
  .hero-proof { margin-top:clamp(24px,3vh,38px); }
  .hero-video-toggle {
    right:clamp(18px,2.2vw,38px);
    bottom:clamp(20px,3vh,38px);
  }
}
@media (min-width:1024px) and (max-width:1199px) {
  .hero { grid-template-columns:minmax(0,46%) minmax(0,54%); }
  .hero-copy {
    padding-left:clamp(40px,5vw,56px);
    padding-right:clamp(28px,3vw,40px);
  }
}

@media (max-width:820px) {
  .hero-responsive-background::after {
    background:
      linear-gradient(180deg,rgba(5,3,9,.9) 0%,rgba(5,3,9,.83) 44%,rgba(5,3,9,.58) 67%,rgba(5,3,9,.2) 100%),
      linear-gradient(90deg,rgba(5,3,9,.42) 0%,transparent 78%);
  }
  .hero-responsive-background img,
  .hero-responsive-background video { object-position:center top; }
  .hero-copy > .hero-description { color:#f7f3f8; }
  .hero h1 em { color:#ebd9ff; -webkit-text-fill-color:#ebd9ff; }
}

/* Mobile hero: one editorial scene, with the product retained in its vertical art direction. */
.hero-mobile-scroll-indicator { display:none; }

@media (max-width:767px) {
  .announcement {
    min-height:36px;
    height:36px;
    padding:0 16px;
    gap:0;
    background:linear-gradient(90deg,#5617f5,#7928ff);
    color:#fff;
    font-size:11px;
    font-weight:600;
    letter-spacing:.18em;
  }
  .announcement > :not(:first-child) { display:none; }
  .announcement > :first-child { white-space:nowrap; }
  .site-header {
    height:82px;
    padding-inline:clamp(20px,6vw,28px);
    background:rgba(4,4,6,.78);
    border-bottom-color:rgba(255,255,255,.06);
    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);
  }
  .brand .custom-logo { width:clamp(110px,31vw,124px); height:auto; }
  .hero {
    --mobile-chrome-height:118px;
    --mobile-product-safe-start:clamp(32px, 6svh, 56px);
    min-height:0;
    height:calc(100svh - var(--mobile-chrome-height));
    display:grid;
    grid-template-columns:minmax(0,1fr);
    grid-template-rows:minmax(0,52%) minmax(0,48%);
    isolation:isolate;
    overflow:hidden;
    background:#040307;
  }
  .hero-grid,.hero-orb,.hero-visual,.hero-video-toggle { display:none !important; }
  .hero-responsive-background {
    position:absolute;
    inset:0;
    z-index:0;
    display:block;
    flex:none;
    min-height:0;
    width:auto;
    margin:0;
    overflow:hidden;
  }
  .hero-responsive-background picture.hero-video-fallback {
    display:block;
    position:absolute;
    /* Keep the display's upper edge below the CTA without moving the CTA itself. */
    inset:var(--mobile-product-safe-start) 0 0;
  }
  .hero-responsive-background picture.hero-video-fallback img {
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center bottom;
  }
  .hero-responsive-background > .hero-video {
    display:block;
    inset:var(--mobile-product-safe-start) 0 0;
    width:100%;
    height:calc(100% - var(--mobile-product-safe-start));
    object-fit:cover;
    object-position:center bottom;
  }
  .hero-responsive-background::after {
    inset:0;
    height:auto;
    background:
      linear-gradient(180deg,rgba(3,2,6,.95) 0%,rgba(3,2,6,.84) 18%,rgba(3,2,6,.55) 37%,rgba(3,2,6,.18) 52%,rgba(3,2,6,.05) 67%,rgba(3,2,6,.08) 82%,rgba(3,2,6,.18) 100%),
      radial-gradient(ellipse at 50% 74%,transparent 35%,rgba(0,0,0,.16) 76%,rgba(0,0,0,.34) 100%);
  }
  .hero-copy {
    width:100%;
    max-width:420px;
    min-height:0;
    margin:0;
    padding:clamp(21px,4.2svh,34px) clamp(20px,6vw,28px) 0;
    position:relative;
    grid-column:1;
    grid-row:1;
    align-self:start;
    z-index:3;
  }
  .hero-copy > .eyebrow {
    margin:0 0 14px;
    color:rgba(255,255,255,.86);
    font-size:clamp(11px,3.2vw,13px);
    font-weight:500;
    letter-spacing:.14em;
    line-height:1;
    text-shadow:none;
  }
  .hero-copy > .eyebrow svg { color:#b66cff; }
  .hero h1 {
    max-width:100%;
    margin:0;
    color:#fff;
    font-size:clamp(40px,10.5vw,52px);
    font-weight:400;
    line-height:.9;
    letter-spacing:-.04em;
    text-shadow:none;
  }
  .hero-title-primary,.hero-title-first,.hero-title-rest,.hero-title-secondary { display:block; }
  .hero-title-break { display:none; }
  .hero-title-secondary {
    margin-top:2px;
    color:transparent !important;
    background:linear-gradient(90deg,#d9a4ff,#a35eff);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent !important;
    -webkit-text-stroke:0;
    font-size:clamp(29px,8.8vw,39px);
    font-style:normal;
    line-height:.94;
    letter-spacing:-.045em;
    text-shadow:none !important;
    white-space:nowrap;
  }
  .hero-description {
    max-width:350px;
    margin-top:18px;
    color:rgba(255,255,255,.88);
    text-shadow:none;
  }
  .hero-description p { margin:0; font-size:clamp(15px,4.2vw,18px); font-weight:400; line-height:1.4; }
  .hero-description p:nth-child(2),.hero-proof { display:none; }
  .hero-actions { display:block; margin-top:clamp(20px,3svh,24px); }
  .hero-actions .primary-button {
    display:inline-flex;
    width:fit-content;
    min-width:220px;
    max-width:232px;
    height:48px;
    min-height:48px;
    padding:0 15px;
    gap:14px;
    justify-content:space-between;
    border:1px solid rgba(255,255,255,.12);
    border-radius:0;
    background:linear-gradient(90deg,#5518ff,#7628ff);
    box-shadow:0 14px 30px rgba(54,11,132,.26);
    font-size:12px;
    font-weight:600;
    letter-spacing:.04em;
    line-height:1;
    white-space:nowrap;
  }
  .hero-actions .primary-button:active { transform:scale(.985); }
  .hero-actions .text-button { display:none; }
  .hero-mobile-scroll-indicator {
    position:relative;
    grid-column:1;
    grid-row:2;
    align-self:end;
    justify-self:start;
    z-index:4;
    margin:0 0 max(calc(env(safe-area-inset-bottom) + 12px),18px) clamp(20px,6vw,28px);
    display:grid;
    justify-items:center;
    gap:3px;
    color:#fff;
    font-size:10px;
    font-weight:600;
    letter-spacing:.08em;
    opacity:.7;
    text-transform:uppercase;
  }
  .hero-mobile-scroll-indicator svg { width:15px; height:18px; animation:hero-mobile-scroll 2s ease-in-out infinite; }
  .hero-copy > .eyebrow,
  .hero-title-first,.hero-title-rest,.hero-title-secondary,
  .hero-description,.hero-actions,.hero-mobile-scroll-indicator { opacity:0; animation:hero-mobile-reveal 700ms cubic-bezier(.16,1,.3,1) both; }
  .hero-copy > .eyebrow { animation-delay:120ms; }
  .hero-title-first { animation-delay:220ms; }
  .hero-title-rest { animation-delay:280ms; }
  .hero-title-secondary { animation-delay:340ms; }
  .hero-description { animation-delay:430ms; }
  .hero-actions { animation-delay:560ms; }
  .hero-mobile-scroll-indicator { animation-delay:900ms; }

  /* iOS Safari magnifies editable controls whose computed text is below 16px.
     Keep its native focus scale without disabling the visitor's manual zoom. */
  body.woocommerce-checkout .woocommerce form .form-row input.input-text,
  body.woocommerce-checkout .woocommerce form .form-row textarea,
  body.woocommerce-checkout .woocommerce form .form-row select,
  body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered,
  body.woocommerce-checkout .select2-container--open .select2-search__field,
  body.woocommerce-checkout .select2-dropdown .select2-search__field,
  body.woocommerce-checkout .wc-block-components-text-input input,
  body.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input,
  body.woocommerce-checkout .wc-block-components-select select {
    font-size:16px !important;
  }

  /* Keep WooCommerce address controls inside narrow mobile viewports.
     The province combobox renders nested controls, so each layer must be
     allowed to shrink instead of inheriting an intrinsic minimum width. */
  body.woocommerce-checkout .wc-block-checkout,
  body.woocommerce-checkout .wc-block-components-checkout-step,
  body.woocommerce-checkout .wc-block-components-address-form,
  body.woocommerce-checkout .wc-block-components-address-form__address-fields,
  body.woocommerce-checkout .wc-block-components-text-input,
  body.woocommerce-checkout .wc-block-components-combobox,
  body.woocommerce-checkout .wc-block-components-select,
  body.woocommerce-checkout .woocommerce form .form-row {
    min-width:0;
    max-width:100%;
  }
  body.woocommerce-checkout .wc-block-components-address-form__address-fields > *,
  body.woocommerce-checkout .wc-block-components-text-input,
  body.woocommerce-checkout .wc-block-components-combobox,
  body.woocommerce-checkout .wc-block-components-select,
  body.woocommerce-checkout .woocommerce form .form-row,
  body.woocommerce-checkout .wc-block-components-text-input input,
  body.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control,
  body.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input,
  body.woocommerce-checkout .wc-block-components-select select,
  body.woocommerce-checkout .woocommerce form .form-row input.input-text,
  body.woocommerce-checkout .woocommerce form .form-row textarea,
  body.woocommerce-checkout .woocommerce form .form-row select {
    box-sizing:border-box;
    min-width:0;
    max-width:100%;
  }
  body.woocommerce-checkout .wc-block-components-text-input input,
  body.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control,
  body.woocommerce-checkout .wc-block-components-select select,
  body.woocommerce-checkout .woocommerce form .form-row input.input-text,
  body.woocommerce-checkout .woocommerce form .form-row textarea,
  body.woocommerce-checkout .woocommerce form .form-row select {
    width:100%;
  }
  body.woocommerce-checkout .select2-container,
  body.woocommerce-checkout .select2-dropdown {
    box-sizing:border-box;
    max-width:calc(100vw - 40px) !important;
  }
}

@keyframes hero-mobile-reveal { from { opacity:0; transform:translateY(14px); } to { opacity:1; transform:translateY(0); } }
@keyframes hero-mobile-scroll { 0%,100% { transform:translateY(0); } 50% { transform:translateY(5px); } }

@media (max-width:767px) and (max-height:700px) {
  .announcement { min-height:34px; height:34px; font-size:10px; }
  .site-header { height:76px; }
  .hero {
    --mobile-chrome-height:110px;
    --mobile-product-safe-start:20px;
    min-height:0;
    height:calc(100svh - var(--mobile-chrome-height));
    grid-template-rows:minmax(0,57%) minmax(0,43%);
  }
  .hero-responsive-background { min-height:0; margin:0; }
  .hero-copy { padding-top:14px; }
  .hero-copy > .eyebrow { margin-bottom:11px; }
  .hero h1 { font-size:clamp(32px,9.5vw,40px); }
  .hero-title-secondary { font-size:clamp(24px,7.8vw,31px); }
  .hero-description { margin-top:14px; }
  .hero-description p { font-size:14px; line-height:1.35; }
  .hero-actions { margin-top:17px; }
  .hero-actions .primary-button { min-width:210px; max-width:222px; min-height:46px; height:46px; padding-inline:14px; font-size:11px; }
}

@media (max-width:359px) {
  .hero-copy { padding-inline:18px; }
  .hero h1 { font-size:clamp(31px,9.5vw,36px); }
  .hero-title-secondary { font-size:clamp(23px,7.8vw,27px); }
}

@media (max-width:767px) and (prefers-reduced-motion:reduce) {
  .hero-copy > .eyebrow,
  .hero-title-first,.hero-title-rest,.hero-title-secondary,
  .hero-description,.hero-actions,.hero-mobile-scroll-indicator { opacity:1; animation:none; transform:none; }
  .hero-mobile-scroll-indicator svg { animation:none; }
}

/* The address must be reviewed before any checkout payment method is offered. */
@supports selector(:has(*)) {
  body.woocommerce-checkout .wp-block-woocommerce-checkout:not(:has(#order-violet-vault-acryluxe-address-confirmation:checked)) .wp-block-woocommerce-checkout-express-payment-block,
  body.woocommerce-checkout .wp-block-woocommerce-checkout:not(:has(#order-violet-vault-acryluxe-address-confirmation:checked)) .wp-block-woocommerce-checkout-payment-block {
    display:none;
  }
}

.acryluxe-home-reviews { padding:clamp(72px,8vw,120px) 7vw; border-top:1px solid var(--line); background:#09070e; }
.acryluxe-home-reviews__header { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:24px; max-width:1440px; margin:0 auto 46px; }
.acryluxe-home-reviews__header .index { grid-column:1 / -1; color:var(--purple-light); }
.acryluxe-home-reviews__header h2 { grid-column:1 / span 7; margin:0; max-width:800px; font-family:"Acryluxe Display",Impact,"Arial Narrow",sans-serif; font-size:clamp(46px,6vw,88px); font-weight:400; line-height:1.04; text-wrap:balance; }
.acryluxe-home-reviews__intro { grid-column:9 / span 4; align-self:end; }
.acryluxe-home-reviews__intro p { margin:0 0 24px; color:#c8c2d0; font-size:17px; line-height:1.65; }
.acryluxe-home-reviews__intro a { display:inline-flex; align-items:center; gap:12px; padding-bottom:8px; border-bottom:1px solid currentColor; color:var(--purple-light); font-size:11px; font-weight:700; line-height:1.5; letter-spacing:.1em; }
.acryluxe-home-reviews a:focus-visible { outline:2px solid var(--purple-light); outline-offset:6px; }
.acryluxe-home-reviews__cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr)); gap:28px; max-width:1440px; margin:auto; }
.acryluxe-review-card { display:flex; flex-direction:column; min-width:0; padding:28px; background:#120d1c; border:1px solid rgba(189,129,255,.25); border-radius:6px; box-shadow:0 20px 60px rgba(139,61,255,.06); }
.acryluxe-review-card:only-child { width:min(100%,520px); justify-self:center; }
.acryluxe-review-card__profile { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; }
.acryluxe-review-card__profile h3 { margin:0; font-size:22px; line-height:1.2; overflow-wrap:anywhere; }
.acryluxe-review-card__profile p { margin:8px 0 0; color:#b6adbf; font-size:14px; line-height:1.4; }
.acryluxe-review-card__badge { display:grid; place-items:center; flex:none; width:72px; height:48px; }
.acryluxe-review-card__badge img { display:block; width:100%; height:100%; object-fit:contain; }
.acryluxe-review-card__rating { display:flex; align-items:baseline; gap:12px; margin:24px 0 4px; }
.acryluxe-review-card__rating strong { font-family:"Acryluxe Display",Impact,sans-serif; font-size:76px; font-weight:400; line-height:1.1; }
.acryluxe-review-card__rating > span { color:#b6adbf; font-size:22px; }
.acryluxe-review-card__stars { color:#ffd166; font-size:22px; letter-spacing:4px; }
.acryluxe-review-card__count { margin:14px 0 28px; color:#c8c2d0; font-size:16px; }
.acryluxe-review-card blockquote { margin:30px 0 28px; color:#e4ddea; font-size:18px; line-height:1.55; white-space:pre-line; overflow-wrap:anywhere; }
.acryluxe-review-card__meta { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-top:auto; padding-top:20px; border-top:1px solid var(--line); color:#b6adbf; font-size:13px; }
.acryluxe-review-card__meta > :last-child { color:var(--purple-light); }
.acryluxe-home-reviews__controls { display:flex; justify-content:flex-end; max-width:1440px; margin:28px auto 8px; }
.acryluxe-home-reviews__pause { padding:10px 14px; border:1px solid rgba(189,129,255,.4); border-radius:6px; background:#120d1c; color:var(--purple-light); font:inherit; font-size:13px; cursor:pointer; }
.acryluxe-home-reviews__pause[hidden] { display:none; }
.acryluxe-home-reviews__pause:focus-visible,.acryluxe-home-reviews__row:focus-visible { outline:2px solid var(--purple-light); outline-offset:4px; }
.acryluxe-home-reviews__rows { margin-top:24px; }
.acryluxe-home-reviews__row { position:relative; overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:thin; scrollbar-color:var(--purple-light) #120d1c; cursor:grab; }
.acryluxe-home-reviews__row.is-dragging { cursor:grabbing; user-select:none; }
.acryluxe-home-reviews__track { display:flex; width:max-content; padding:14px 0; }
.acryluxe-home-reviews__group { display:flex; gap:24px; }
.acryluxe-home-reviews__group > .acryluxe-review-card,.acryluxe-home-reviews__summary-copy { flex:0 0 auto; width:clamp(288px,25vw,368px); min-height:248px; }
.acryluxe-home-reviews__summary-copy { display:flex; }
.acryluxe-home-reviews__summary-copy > .acryluxe-review-card { width:100%; }
@media(prefers-reduced-motion:reduce) {
  .acryluxe-home-reviews__pause { display:none; }
}
@media(max-width:760px) {
  .acryluxe-home-reviews { padding:64px 6vw; }
  .acryluxe-home-reviews__header { display:block; margin-bottom:32px; }
  .acryluxe-home-reviews__header h2 { margin:20px 0 24px; font-size:clamp(40px,11.5vw,66px); }
  .acryluxe-home-reviews__intro p { font-size:16px; }
  .acryluxe-review-card { padding:24px; }
}
