/*
Theme Name:   Divi 3D Max
Theme URI:    https://3dmaxdesign.com
Description:  3D Max brand layer for Divi 5: design tokens as CSS variables, brand fonts and base styles. Edit colors here and in Divi > Global Colors together.
Author:       3D Max
Template:     Divi
Version: 1.12.0
Text Domain:  divi-3dmax
*/

/* ---- Design tokens (from the 3D Max Design System) ---- */
:root, [data-theme="light"] {
  --max-cyan-100: #e3f8fe;
  --max-cyan-300: #6fdcf7;
  --max-cyan-500: #12bef2;
  --max-cyan-600: #0aa3d9;
  --max-blue-400: #2e9be0;
  --max-blue-500: #0a86d6;
  --max-blue-600: #0872c2;
  --max-blue-700: #0a5da8;
  --max-navy-700: #0e4a85;
  --max-navy-800: #0b3a6b;
  --max-navy-900: #062a4e;
  --max-navy-950: #041a33;
  --max-indigo-600: #1d3fa8;
  --max-violet-400: #9a83f5;
  --max-violet-500: #7a5cf0;
  --max-violet-100: #efebfe;
  --slate-0: #ffffff;
  --slate-50: #f5f8fb;
  --slate-100: #ebf0f5;
  --slate-200: #d8e0e9;
  --slate-300: #b4c1cf;
  --slate-400: #8595a8;
  --slate-500: #5b6b7f;
  --slate-600: #3a4859;
  --slate-700: #27323f;
  --slate-800: #1a232e;
  --slate-900: #0e1620;
  --green-100: #ddf5ea;
  --green-600: #12875a;
  --amber-100: #fdf1d6;
  --amber-600: #b87a00;
  --red-100: #fce4e2;
  --red-600: #c8322a;
  --bg-page: var(--slate-0);
  --bg-subtle: var(--slate-50);
  --bg-muted: var(--slate-100);
  --bg-inverse: var(--max-navy-950);
  --bg-inverse-2: var(--max-navy-900);
  --surface-card: var(--slate-0);
  --surface-raised: var(--slate-0);
  --surface-inverse: var(--max-navy-900);
  --fg-1: var(--slate-900);
  --fg-2: var(--slate-600);
  --fg-3: var(--slate-500);
  --fg-disabled: var(--slate-400);
  --fg-on-inverse: #ffffff;
  --fg-on-inverse-2: #a9bcd3;
  --fg-on-accent: #ffffff;
  --text-heading: var(--max-navy-950);
  --text-body: var(--fg-1);
  --text-muted: var(--fg-2);
  --text-link: var(--max-blue-600);
  --text-link-hover: var(--max-navy-800);
  --accent: var(--max-blue-600);
  --accent-hover: var(--max-blue-700);
  --accent-press: var(--max-navy-800);
  --accent-soft: var(--max-cyan-100);
  --accent-bright: var(--max-cyan-500);
  --accent-alt: var(--max-violet-500);
  --border-1: var(--slate-200);
  --border-2: var(--slate-300);
  --border-strong: var(--slate-600);
  --border-inverse: rgba(169,188,211,.18);
  --focus-ring: var(--max-cyan-500);
  --success: var(--green-600);
  --success-soft: var(--green-100);
  --warning: var(--amber-600);
  --warning-soft: var(--amber-100);
  --danger: var(--red-600);
  --danger-soft: var(--red-100);
  --info: var(--max-blue-600);
  --info-soft: var(--max-cyan-100);
  --shadow-1: 0 1px 2px rgba(4,26,51,.06),0 1px 1px rgba(4,26,51,.04);
  --shadow-2: 0 4px 12px -2px rgba(4,26,51,.08),0 2px 4px rgba(4,26,51,.05);
  --shadow-3: 0 18px 40px -12px rgba(4,26,51,.22),0 4px 10px rgba(4,26,51,.06);
  --shadow-glow: 0 0 0 1px rgba(18,190,242,.35),0 8px 28px -6px rgba(18,190,242,.45);
  --ring-focus: 0 0 0 3px rgba(18,190,242,.45);
}

:root {
  --space-0: 0;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --space-20: 80px;
  --space-24: 96px;
  --space-32: 128px;
  --control-h-sm: 34px;
  --control-h-md: 44px;
  --control-h-lg: 54px;
  --container-max: 1240px;
  --gutter: 24px;
  --header-h: 76px;
  --radius-xs: 3px;
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --radius-pill: 999px;
  --grad-axis: linear-gradient(90deg,#12BEF2 0%,#0A86D6 30%,#0B3A6B 62%,#1D3FA8 82%,#7A5CF0 100%);
  --grad-wordmark: linear-gradient(90deg,#6FDCF7 0%,#12BEF2 18%,#0A86D6 38%,#062A4E 62%,#1D3FA8 86%,#7A5CF0 100%);
  --font-display: "Saira", ui-sans-serif, system-ui, sans-serif;
  --font-sans: "Barlow", ui-sans-serif, system-ui, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, Menlo, monospace;
}

:root {
  --dm-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
  --font-display: "Saira", ui-sans-serif, system-ui, sans-serif;
  --font-sans: "Barlow", ui-sans-serif, system-ui, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, Menlo, monospace;
  --display-stretch:118%;
  --fs-12:12px;
  --fs-13:13px;
  --fs-14:14px;
  --fs-16:16px;
  --fs-18:18px;
  --fs-20:20px;
  --fs-24:24px;
  --fs-30:30px;
  --fs-38:38px;
  --fs-48:48px;
  --fs-64:64px;
  --fs-80:80px;
  --fw-regular:400;
  --fw-medium:500;
  --fw-semibold:600;
  --fw-bold:700;
  --fw-black:800;
  --lh-tight:1.05;
  --lh-snug:1.2;
  --lh-body:1.55;
  --tracking-display:-0.01em;
  --tracking-eyebrow:0.14em;
  --tracking-button:0.02em;
  --type-display:var(--fw-bold) var(--fs-64)/var(--lh-tight) var(--font-display);
  --type-h1:var(--fw-bold) var(--fs-48)/var(--lh-tight) var(--font-display);
  --type-h2:var(--fw-bold) var(--fs-38)/var(--lh-snug) var(--font-display);
  --type-h3:var(--fw-semibold) var(--fs-24)/var(--lh-snug) var(--font-display);
  --type-h4:var(--fw-semibold) var(--fs-18)/var(--lh-snug) var(--font-display);
  --type-body-lg:var(--fw-regular) var(--fs-18)/var(--lh-body) var(--font-sans);
  --type-body:var(--fw-regular) var(--fs-16)/var(--lh-body) var(--font-sans);
  --type-body-sm:var(--fw-regular) var(--fs-14)/var(--lh-body) var(--font-sans);
  --type-label:var(--fw-semibold) var(--fs-14)/1.3 var(--font-sans);
  --type-eyebrow:var(--fw-semibold) var(--fs-12)/1.2 var(--font-mono);
  --type-spec:var(--fw-regular) var(--fs-13)/1.4 var(--font-mono);
  --ease-out:cubic-bezier(.2,.7,.2,1);
  --ease-in-out:cubic-bezier(.6,0,.3,1);
  --dur-fast:120ms;
  --dur-base:200ms;
  --dur-slow:360ms;
  --grid-blueprint:linear-gradient(rgba(111,220,247,.07) 1px,transparent 1px) 0 0/32px 32px,linear-gradient(90deg,rgba(111,220,247,.07) 1px,transparent 1px) 0 0/32px 32px;
  --grid-plate:linear-gradient(var(--slate-100) 1px,transparent 1px) 0 0/24px 24px,linear-gradient(90deg,var(--slate-100) 1px,transparent 1px) 0 0/24px 24px;
}

/* ---- Base typography ---- */
body { font-family: var(--font-sans); color: var(--text-body); -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-display);
  font-stretch: var(--display-stretch);
  color: var(--text-heading);
  letter-spacing: var(--tracking-display);
  text-wrap: balance;
  padding-bottom: 0.4em;
}
/* "body hN" so these win over Divi's theme-options heading sizes; module settings in the builder still override them. */
body h1 { font-size: 48px; line-height: 1.05; font-weight: 700; }
body h2 { font-size: 38px; line-height: 1.2;  font-weight: 700; }
body h3 { font-size: 24px; line-height: 1.2;  font-weight: 600; }
body h4 { font-size: 18px; line-height: 1.2;  font-weight: 600; }
p, li { line-height: 1.55; }
a { color: var(--text-link); }
a:hover { color: var(--text-link-hover); }
::selection { background: var(--max-cyan-300); color: var(--max-navy-950); }
:focus-visible { outline: none; box-shadow: var(--ring-focus); border-radius: var(--radius-xs); }

@media (max-width: 767px) {
  body h1 { font-size: 36px; }
  body h2 { font-size: 30px; }
  body h3 { font-size: 22px; }
}

/* ---- Reusable helper classes (add in Divi > Advanced > CSS Class) ---- */
.dm-eyebrow, .dm-eyebrow p {
  font: var(--type-eyebrow); letter-spacing: var(--tracking-eyebrow);
  text-transform: uppercase; color: var(--accent);
}
.dm-eyebrow::after { content: ""; display: block; width: 48px; height: 2px; margin-top: 10px; background: var(--grad-axis); }
.dm-eyebrow--dark, .dm-eyebrow--dark p { color: var(--max-cyan-300); }
.dm-spec, .dm-spec p { font: var(--type-spec); color: var(--fg-3); }
body .dm-display h1, body .dm-display h2, body h1.dm-display { font-size: 64px; line-height: 1.05; }
@media (max-width: 767px) { body .dm-display h1, body .dm-display h2, body h1.dm-display { font-size: 40px; } }
.dm-axis-rule { height: 3px; background: var(--grad-axis); border: 0; }
.dm-blueprint { background-image: var(--grid-blueprint); }
.dm-card { background: var(--surface-card); border: 1px solid var(--border-1); border-radius: var(--radius-md); box-shadow: var(--shadow-1); transition: transform var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out); }
.dm-card:hover { transform: translateY(-2px); box-shadow: var(--shadow-3); }

/* ---- Buttons: Divi + WooCommerce ---- */
body .et_pb_button,
body .et_pb_button:hover,
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce #respond input#submit {
  font-family: var(--font-sans);
  font-weight: 600;
  letter-spacing: var(--tracking-button);
  border-radius: var(--radius-sm);
  transition: background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);
}
body .et_pb_button { padding: 0.55em 1.25em !important; }
body .et_pb_button:after { display: none; }
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce #respond input#submit {
  background: var(--accent); color: var(--fg-on-accent); border: 0; padding: 0.75em 1.4em;
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce #respond input#submit:hover {
  background: var(--accent-hover); color: var(--fg-on-accent); box-shadow: var(--shadow-glow);
}
body .et_pb_button:active, .woocommerce .button:active { transform: translateY(1px); }

/* Secondary and inverse button styles: add the class to a Divi Button module (Advanced > CSS Class).
   !important so they win over Divi's theme-wide button colors. */
body .et_pb_button.dm-btn-secondary { background: transparent !important; color: var(--text-heading) !important; border: 1.5px solid var(--border-2) !important; }
body .et_pb_button.dm-btn-secondary:hover { background: transparent !important; border-color: var(--text-heading) !important; color: var(--text-heading) !important; }
body .et_pb_button.dm-btn-inverse { background: #fff !important; color: var(--max-navy-950) !important; border: 0 !important; }
body .et_pb_button.dm-btn-inverse:hover { background: var(--max-cyan-100) !important; color: var(--max-navy-950) !important; }
body .et_pb_button.dm-btn-outline-inverse { background: transparent !important; color: #fff !important; border: 1.5px solid rgba(255,255,255,.45) !important; }
body .et_pb_button.dm-btn-outline-inverse:hover { background: rgba(255,255,255,.08) !important; border-color: #fff !important; color: #fff !important; }

/* ---- Forms ---- */
input[type=text], input[type=email], input[type=tel], input[type=number], input[type=password], input[type=search], select, textarea,
.woocommerce form .form-row .input-text, .woocommerce form .form-row select {
  font-family: var(--font-sans); font-size: 16px; color: var(--fg-1);
  border: 1.5px solid var(--border-2); border-radius: var(--radius-sm); background: #fff;
}
input:focus, select:focus, textarea:focus { border-color: var(--max-blue-500); box-shadow: var(--ring-focus); outline: none; }


/* =========================================================================
   Header (Theme Builder > Global header)
   ========================================================================= */
.dm-header { box-shadow: 0 1px 0 var(--border-1); }
.dm-announce-row { background: var(--bg-inverse); }
.dm-announce, .dm-announce p {
  font: 500 12px/1 var(--font-mono); letter-spacing: .04em;
  color: var(--fg-on-inverse-2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.dm-announce p { padding: 0; }
@media (min-width: 981px) {
  .dm-header-row { display: flex; align-items: center; min-height: var(--header-h); }
  .dm-header-row > .et_pb_column { margin-bottom: 0 !important; }
  .dm-header-cta { text-align: right; }
}

/* Menu links */
.dm-header-menu .et-menu > li > a,
.dm-header-menu .et_mobile_menu li a {
  font-family: var(--font-display); font-stretch: 110%; font-weight: 600; font-size: 15px;
}
.dm-header-menu .et-menu > li { padding-left: 14px; padding-right: 14px; }
.dm-header-menu .et-menu > li > a { padding-bottom: 0 !important; position: relative; }
.dm-header-menu .et_pb_menu__menu > nav > ul > li { display: flex; align-items: center; }
.dm-header-menu .et-menu > li.current-menu-item > a::before,
.dm-header-menu .et-menu > li.current-menu-ancestor > a::before {
  content: ""; position: absolute; left: 0; right: 0; bottom: -8px; height: 2px; background: var(--grad-axis);
}
.dm-menu-nolink > a { cursor: default; }

/* "Shop" menu item as a blue button with a bag icon */
.dm-header-menu .et-menu > li.dm-menu-shop > a {
  display: inline-flex; align-items: center; gap: 8px; height: 38px; padding: 0 18px !important;
  border-radius: var(--radius-sm); background: var(--accent); color: var(--fg-on-accent) !important; opacity: 1 !important;
  transition: background var(--dur-fast) var(--ease-out);
}
.dm-header-menu .et-menu > li.dm-menu-shop > a:hover { background: var(--accent-hover); }
.dm-header-menu .et-menu > li.dm-menu-shop > a::after,
.dm-header-menu .et_mobile_menu li.dm-menu-shop > a::before {
  content: ""; order: -1; width: 16px; height: 16px; background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2 3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4Z'/%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M16 10a4 4 0 0 1-8 0'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2 3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4Z'/%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M16 10a4 4 0 0 1-8 0'/%3E%3C/svg%3E") center / contain no-repeat;
}
.dm-header-menu .et-menu > li.dm-menu-shop.current-menu-item > a::before { display: none; }

/* Dropdown panel */
.dm-header-menu .et-menu li ul.sub-menu {
  width: 320px; padding: 8px; border: 1px solid var(--border-1);
  border-radius: var(--radius-md); box-shadow: var(--shadow-3); background: #fff;
}
.dm-header-menu .et-menu li ul.sub-menu::before {
  content: ""; position: absolute; left: 12px; right: 12px; top: -1px; height: 3px; background: var(--grad-axis); border-radius: 2px;
}
.dm-header-menu .et-menu li ul.sub-menu li { width: 100%; padding: 0; }
.dm-header-menu .et-menu li ul.sub-menu a {
  width: 100%; padding: 10px 12px !important; border-radius: var(--radius-sm);
  font-family: var(--font-sans); font-stretch: 100%; font-weight: 600; font-size: 15px; line-height: 1.3; color: var(--text-heading) !important;
}
.dm-header-menu .et-menu li ul.sub-menu a:hover { background: var(--bg-subtle); opacity: 1 !important; }

/* Cart icon and item count */
.dm-header-menu .et_pb_menu__cart-button { position: relative; }
.dm-header-menu .et_pb_menu__cart-count {
  position: absolute; top: -8px; right: -10px; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 999px;
  background: var(--max-cyan-500); color: var(--max-navy-950); font: 700 11px/18px var(--font-sans); text-align: center;
}

/* Mobile menu */
.dm-header-menu .et_mobile_menu { border-top: 3px solid var(--accent); border-radius: 0 0 var(--radius-md) var(--radius-md); box-shadow: var(--shadow-3); }
.dm-header-menu .et_mobile_menu li a { color: var(--text-heading) !important; font-size: 16px; padding: 12px 5%; }
.dm-header-menu .et_mobile_menu li.dm-menu-shop > a { display: flex; align-items: center; gap: 8px; color: var(--accent) !important; }

/* =========================================================================
   Footer (Theme Builder > Global footer)
   ========================================================================= */
.dm-footer { position: relative; color: var(--fg-on-inverse-2); }
.dm-footer::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: var(--grad-axis); }
.dm-footer, .dm-footer p, .dm-footer li { font: var(--type-body-sm); color: var(--fg-on-inverse-2); }
.dm-footer a { color: var(--fg-on-inverse-2); transition: color var(--dur-fast); }
.dm-footer a:hover { color: #fff; }
.dm-foot-head, .dm-footer p.dm-foot-head {
  font: var(--type-eyebrow); letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; color: #fff; padding-bottom: 14px;
}
.dm-foot-links { list-style: none; margin: 0; padding: 0 !important; display: flex; flex-direction: column; gap: 12px; }
.dm-foot-links li { padding: 0; line-height: 1.3; }
.dm-foot-text p { max-width: 280px; padding-bottom: 18px; }
.dm-footer p.dm-foot-email, .dm-footer p.dm-foot-email a { font: var(--type-spec); color: var(--max-cyan-300); }
.dm-footer-bottom { border-top: 1px solid var(--border-inverse); }
.dm-footer-bottom p, .dm-footer-bottom a { font: var(--type-spec); font-size: 12px; }
@media (min-width: 981px) { .dm-footer-bottom .et_pb_column:last-child .et_pb_text { text-align: right; } }

/* ---- Header fixes (v1.0.5) ---- */
.dm-announce-row .et_pb_module { margin-bottom: 0 !important; }
.dm-header-menu .et-menu-nav > ul.et-menu { align-items: center; }
.dm-header-menu .et-menu > li > a { padding-top: 0 !important; padding-bottom: 0 !important; line-height: 38px; }
.dm-header-menu .et-menu > li.current-menu-item > a::before,
.dm-header-menu .et-menu > li.current-menu-ancestor > a::before { bottom: 2px; }
.dm-header-menu .et-menu > li.menu-item-has-children > a:first-child { padding-right: 20px !important; }
.dm-header-menu .et-menu > li.menu-item-has-children > a:first-child::after { top: 50%; right: 0; transform: translateY(-50%); }
.dm-header-menu .et_pb_menu__cart-count:empty { display: none; }
.dm-header-menu .et_pb_menu__icon.et_pb_menu__cart-button { margin-left: 8px; }

/* ---- Footer fixes (v1.0.5) ---- */
.dm-footer ul.dm-foot-links { list-style: none !important; padding-left: 0 !important; }
.dm-footer ul.dm-foot-links li { list-style: none; }

/* ---- Mobile header (v1.0.6) ---- */
.dm-header-menu .et-menu > li.dm-menu-mobile-only { display: none; }
@media (max-width: 980px) {
  .dm-header-row > .et_pb_column:last-child { display: none; }
  .dm-header-row > .et_pb_column:first-child { margin-bottom: 0 !important; }
  .dm-header-row { padding-top: 10px !important; padding-bottom: 10px !important; }
  .dm-header-menu .et_mobile_menu li.dm-menu-mobile-only > a {
    margin: 10px 0 4px; text-align: center; border-radius: var(--radius-sm);
    background: var(--accent); color: var(--fg-on-accent) !important;
  }
}


/* ---- Icons (Lucide, ISC license): <span class="dm-icon dm-icon--NAME"></span> ---- */
.dm-icon { display: inline-block; flex: none; width: 1em; height: 1em; background: currentColor; -webkit-mask: var(--dm-icon) center / contain no-repeat; mask: var(--dm-icon) center / contain no-repeat; vertical-align: -0.125em; }
.dm-icon--anchor { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22V8'/%3E%3Cpath d='M5 12H2a10 10 0 0 0 20 0h-3'/%3E%3Ccircle cx='12' cy='5' r='3'/%3E%3C/svg%3E"); }
.dm-icon--arrow-right { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m12 5 7 7-7 7'/%3E%3C/svg%3E"); }
.dm-icon--badge-check { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.85 8.62a4 4 0 0 1 4.78-4.77 4 4 0 0 1 6.74 0 4 4 0 0 1 4.78 4.78 4 4 0 0 1 0 6.74 4 4 0 0 1-4.77 4.78 4 4 0 0 1-6.75 0 4 4 0 0 1-4.78-4.77 4 4 0 0 1 0-6.76Z'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E"); }
.dm-icon--box { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z'/%3E%3Cpath d='m3.3 7 8.7 5 8.7-5'/%3E%3Cpath d='M12 22V12'/%3E%3C/svg%3E"); }
.dm-icon--boxes { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.97 12.92A2 2 0 0 0 2 14.63v3.24a2 2 0 0 0 .97 1.71l3 1.8a2 2 0 0 0 2.06 0L12 19v-5.5l-5-3-4.03 2.42Z'/%3E%3Cpath d='m7 16.5-4.74-2.85'/%3E%3Cpath d='m7 16.5 5-3'/%3E%3Cpath d='M7 16.5v5.17'/%3E%3Cpath d='M12 13.5V19l3.97 2.38a2 2 0 0 0 2.06 0l3-1.8a2 2 0 0 0 .97-1.71v-3.24a2 2 0 0 0-.97-1.71L17 10.5l-5 3Z'/%3E%3Cpath d='m17 16.5-5-3'/%3E%3Cpath d='m17 16.5 4.74-2.85'/%3E%3Cpath d='M17 16.5v5.17'/%3E%3Cpath d='M7.97 4.42A2 2 0 0 0 7 6.13v4.37l5 3 5-3V6.13a2 2 0 0 0-.97-1.71l-3-1.8a2 2 0 0 0-2.06 0l-3 1.8Z'/%3E%3Cpath d='M12 8 7.26 5.15'/%3E%3Cpath d='m12 8 4.74-2.85'/%3E%3Cpath d='M12 13.5V8'/%3E%3C/svg%3E"); }
.dm-icon--calculator { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='16' height='20' x='4' y='2' rx='2'/%3E%3Cline x1='8' x2='16' y1='6' y2='6'/%3E%3Cline x1='16' x2='16' y1='14' y2='18'/%3E%3Cpath d='M16 10h.01'/%3E%3Cpath d='M12 10h.01'/%3E%3Cpath d='M8 10h.01'/%3E%3Cpath d='M12 14h.01'/%3E%3Cpath d='M8 14h.01'/%3E%3Cpath d='M12 18h.01'/%3E%3Cpath d='M8 18h.01'/%3E%3C/svg%3E"); }
.dm-icon--camera { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.5 4h-5L7 7H4a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-3l-2.5-3z'/%3E%3Ccircle cx='12' cy='13' r='3'/%3E%3C/svg%3E"); }
.dm-icon--car { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 17h2c.6 0 1-.4 1-1v-3c0-.9-.7-1.7-1.5-1.9C18.7 10.6 16 10 16 10s-1.3-1.4-2.2-2.3c-.5-.4-1.1-.7-1.8-.7H5c-.6 0-1.1.4-1.4.9l-1.4 2.9A3.7 3.7 0 0 0 2 12v4c0 .6.4 1 1 1h2'/%3E%3Ccircle cx='7' cy='17' r='2'/%3E%3Cpath d='M9 17h6'/%3E%3Ccircle cx='17' cy='17' r='2'/%3E%3C/svg%3E"); }
.dm-icon--check { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E"); }
.dm-icon--chevron-right { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E"); }
.dm-icon--circle-dashed { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10.1 2.182a10 10 0 0 1 3.8 0'/%3E%3Cpath d='M13.9 21.818a10 10 0 0 1-3.8 0'/%3E%3Cpath d='M17.609 3.721a10 10 0 0 1 2.69 2.7'/%3E%3Cpath d='M2.182 13.9a10 10 0 0 1 0-3.8'/%3E%3Cpath d='M20.279 17.609a10 10 0 0 1-2.7 2.69'/%3E%3Cpath d='M21.818 10.1a10 10 0 0 1 0 3.8'/%3E%3Cpath d='M3.721 6.391a10 10 0 0 1 2.7-2.69'/%3E%3Cpath d='M6.391 20.279a10 10 0 0 1-2.69-2.7'/%3E%3C/svg%3E"); }
.dm-icon--clock { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpolyline points='12 6 12 12 16 14'/%3E%3C/svg%3E"); }
.dm-icon--cog { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20a8 8 0 1 0 0-16 8 8 0 0 0 0 16Z'/%3E%3Cpath d='M12 14a2 2 0 1 0 0-4 2 2 0 0 0 0 4Z'/%3E%3Cpath d='M12 2v2'/%3E%3Cpath d='M12 22v-2'/%3E%3Cpath d='m17 20.66-1-1.73'/%3E%3Cpath d='M11 10.27 7 3.34'/%3E%3Cpath d='m20.66 17-1.73-1'/%3E%3Cpath d='m3.34 7 1.73 1'/%3E%3Cpath d='M14 12h8'/%3E%3Cpath d='M2 12h2'/%3E%3Cpath d='m20.66 7-1.73 1'/%3E%3Cpath d='m3.34 17 1.73-1'/%3E%3Cpath d='m17 3.34-1 1.73'/%3E%3Cpath d='m11 13.73-4 6.93'/%3E%3C/svg%3E"); }
.dm-icon--cpu { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='16' height='16' x='4' y='4' rx='2'/%3E%3Crect width='6' height='6' x='9' y='9' rx='1'/%3E%3Cpath d='M15 2v2'/%3E%3Cpath d='M15 20v2'/%3E%3Cpath d='M2 15h2'/%3E%3Cpath d='M2 9h2'/%3E%3Cpath d='M20 15h2'/%3E%3Cpath d='M20 9h2'/%3E%3Cpath d='M9 2v2'/%3E%3Cpath d='M9 20v2'/%3E%3C/svg%3E"); }
.dm-icon--drafting-compass { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12.99 6.74 1.93 3.44'/%3E%3Cpath d='M19.136 12a10 10 0 0 1-14.271 0'/%3E%3Cpath d='m21 21-2.16-3.84'/%3E%3Cpath d='m3 21 8.02-14.26'/%3E%3Ccircle cx='12' cy='5' r='2'/%3E%3C/svg%3E"); }
.dm-icon--factory { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8l-7 5V8l-7 5V4a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2Z'/%3E%3Cpath d='M17 18h1'/%3E%3Cpath d='M12 18h1'/%3E%3Cpath d='M7 18h1'/%3E%3C/svg%3E"); }
.dm-icon--file { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z'/%3E%3Cpath d='M14 2v4a2 2 0 0 0 2 2h4'/%3E%3C/svg%3E"); }
.dm-icon--flag { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 15s1-1 4-1 5 2 8 2 4-1 4-1V3s-1 1-4 1-5-2-8-2-4 1-4 1z'/%3E%3Cline x1='4' x2='4' y1='22' y2='15'/%3E%3C/svg%3E"); }
.dm-icon--gift { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='8' width='18' height='4' rx='1'/%3E%3Cpath d='M12 8v13'/%3E%3Cpath d='M19 12v7a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2v-7'/%3E%3Cpath d='M7.5 8a2.5 2.5 0 0 1 0-5A4.8 8 0 0 1 12 8a4.8 8 0 0 1 4.5-5 2.5 2.5 0 0 1 0 5'/%3E%3C/svg%3E"); }
.dm-icon--hammer { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m15 12-8.373 8.373a1 1 0 1 1-3-3L12 9'/%3E%3Cpath d='m18 15 4-4'/%3E%3Cpath d='m21.5 11.5-1.914-1.914A2 2 0 0 1 19 8.172V7l-2.26-2.26a6 6 0 0 0-4.202-1.756L9 2.96l.92.82A6.18 6.18 0 0 1 12 8.4V10l2 2h1.172a2 2 0 0 1 1.414.586L18.5 14.5'/%3E%3C/svg%3E"); }
.dm-icon--lightbulb { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5'/%3E%3Cpath d='M9 18h6'/%3E%3Cpath d='M10 22h4'/%3E%3C/svg%3E"); }
.dm-icon--lock { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='18' height='11' x='3' y='11' rx='2' ry='2'/%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'/%3E%3C/svg%3E"); }
.dm-icon--mail { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='20' height='16' x='2' y='4' rx='2'/%3E%3Cpath d='m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7'/%3E%3C/svg%3E"); }
.dm-icon--message-circle { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7.9 20A9 9 0 1 0 4 16.1L2 22Z'/%3E%3C/svg%3E"); }
.dm-icon--minus { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E"); }
.dm-icon--package { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z'/%3E%3Cpath d='M12 22V12'/%3E%3Cpath d='m3.3 7 7.703 4.734a2 2 0 0 0 1.994 0L20.7 7'/%3E%3Cpath d='m7.5 4.27 9 5.15'/%3E%3C/svg%3E"); }
.dm-icon--package-check { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m16 16 2 2 4-4'/%3E%3Cpath d='M21 10V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l2-1.14'/%3E%3Cpath d='m7.5 4.27 9 5.15'/%3E%3Cpolyline points='3.29 7 12 12 20.71 7'/%3E%3Cline x1='12' x2='12' y1='22' y2='12'/%3E%3C/svg%3E"); }
.dm-icon--package-open { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22v-9'/%3E%3Cpath d='M15.17 2.21a1.67 1.67 0 0 1 1.63 0L21 4.57a1.93 1.93 0 0 1 0 3.36L8.82 14.79a1.655 1.655 0 0 1-1.64 0L3 12.43a1.93 1.93 0 0 1 0-3.36z'/%3E%3Cpath d='M20 13v3.87a2.06 2.06 0 0 1-1.11 1.83l-6 3.08a1.93 1.93 0 0 1-1.78 0l-6-3.08A2.06 2.06 0 0 1 4 16.87V13'/%3E%3Cpath d='M21 12.43a1.93 1.93 0 0 0 0-3.36L8.83 2.2a1.64 1.64 0 0 0-1.63 0L3 4.57a1.93 1.93 0 0 0 0 3.36l12.18 6.86a1.636 1.636 0 0 0 1.63 0z'/%3E%3C/svg%3E"); }
.dm-icon--paintbrush { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m14.622 17.897-10.68-2.913'/%3E%3Cpath d='M18.376 2.622a1 1 0 1 1 3.002 3.002L17.36 9.643a.5.5 0 0 0 0 .707l.944.944a2.41 2.41 0 0 1 0 3.408l-.944.944a.5.5 0 0 1-.707 0L8.354 7.348a.5.5 0 0 1 0-.707l.944-.944a2.41 2.41 0 0 1 3.408 0l.944.944a.5.5 0 0 0 .707 0z'/%3E%3Cpath d='M9 8c-1.804 2.71-3.97 3.46-6.583 3.948a.507.507 0 0 0-.302.819l7.32 8.883a1 1 0 0 0 1.185.204C12.735 20.405 16 16.792 16 15'/%3E%3C/svg%3E"); }
.dm-icon--palette { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='13.5' cy='6.5' r='.5' fill='currentColor'/%3E%3Ccircle cx='17.5' cy='10.5' r='.5' fill='currentColor'/%3E%3Ccircle cx='8.5' cy='7.5' r='.5' fill='currentColor'/%3E%3Ccircle cx='6.5' cy='12.5' r='.5' fill='currentColor'/%3E%3Cpath d='M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10c.926 0 1.648-.746 1.648-1.688 0-.437-.18-.835-.437-1.125-.29-.289-.438-.652-.438-1.125a1.64 1.64 0 0 1 1.668-1.668h1.996c3.051 0 5.555-2.503 5.555-5.554C21.965 6.012 17.461 2 12 2z'/%3E%3C/svg%3E"); }
.dm-icon--pencil { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z'/%3E%3Cpath d='m15 5 4 4'/%3E%3C/svg%3E"); }
.dm-icon--pencil-ruler { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 7 8.7 2.7a2.41 2.41 0 0 0-3.4 0L2.7 5.3a2.41 2.41 0 0 0 0 3.4L7 13'/%3E%3Cpath d='m8 6 2-2'/%3E%3Cpath d='m18 16 2-2'/%3E%3Cpath d='m17 11 4.3 4.3c.94.94.94 2.46 0 3.4l-2.6 2.6c-.94.94-2.46.94-3.4 0L11 17'/%3E%3Cpath d='M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z'/%3E%3Cpath d='m15 5 4 4'/%3E%3C/svg%3E"); }
.dm-icon--plus { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='M12 5v14'/%3E%3C/svg%3E"); }
.dm-icon--printer { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2'/%3E%3Cpath d='M6 9V3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6'/%3E%3Crect x='6' y='14' width='12' height='8' rx='1'/%3E%3C/svg%3E"); }
.dm-icon--puzzle { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15.39 4.39a1 1 0 0 0 1.68-.474 2.5 2.5 0 1 1 3.014 3.015 1 1 0 0 0-.474 1.68l1.683 1.682a2.414 2.414 0 0 1 0 3.414L19.61 15.39a1 1 0 0 1-1.68-.474 2.5 2.5 0 1 0-3.014 3.015 1 1 0 0 1 .474 1.68l-1.683 1.682a2.414 2.414 0 0 1-3.414 0L8.61 19.61a1 1 0 0 0-1.68.474 2.5 2.5 0 1 1-3.014-3.015 1 1 0 0 0 .474-1.68l-1.683-1.682a2.414 2.414 0 0 1 0-3.414L4.39 8.61a1 1 0 0 1 1.68.474 2.5 2.5 0 1 0 3.014-3.015 1 1 0 0 1-.474-1.68l1.683-1.682a2.414 2.414 0 0 1 3.414 0z'/%3E%3C/svg%3E"); }
.dm-icon--repeat { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m17 2 4 4-4 4'/%3E%3Cpath d='M3 11v-1a4 4 0 0 1 4-4h14'/%3E%3Cpath d='m7 22-4-4 4-4'/%3E%3Cpath d='M21 13v1a4 4 0 0 1-4 4H3'/%3E%3C/svg%3E"); }
.dm-icon--ruler { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21.3 15.3a2.4 2.4 0 0 1 0 3.4l-2.6 2.6a2.4 2.4 0 0 1-3.4 0L2.7 8.7a2.41 2.41 0 0 1 0-3.4l2.6-2.6a2.41 2.41 0 0 1 3.4 0Z'/%3E%3Cpath d='m14.5 12.5 2-2'/%3E%3Cpath d='m11.5 9.5 2-2'/%3E%3Cpath d='m8.5 6.5 2-2'/%3E%3Cpath d='m17.5 15.5 2-2'/%3E%3C/svg%3E"); }
.dm-icon--scan-line { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7V5a2 2 0 0 1 2-2h2'/%3E%3Cpath d='M17 3h2a2 2 0 0 1 2 2v2'/%3E%3Cpath d='M21 17v2a2 2 0 0 1-2 2h-2'/%3E%3Cpath d='M7 21H5a2 2 0 0 1-2-2v-2'/%3E%3Cpath d='M7 12h10'/%3E%3C/svg%3E"); }
.dm-icon--shapes { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8.3 10a.7.7 0 0 1-.626-1.079L11.4 3a.7.7 0 0 1 1.198-.043L16.3 8.9a.7.7 0 0 1-.572 1.1Z'/%3E%3Crect x='3' y='14' width='7' height='7' rx='1'/%3E%3Ccircle cx='17.5' cy='17.5' r='3.5'/%3E%3C/svg%3E"); }
.dm-icon--shopping-bag { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2 3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4Z'/%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M16 10a4 4 0 0 1-8 0'/%3E%3C/svg%3E"); }
.dm-icon--truck { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 18V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v11a1 1 0 0 0 1 1h2'/%3E%3Cpath d='M15 18H9'/%3E%3Cpath d='M19 18h2a1 1 0 0 0 1-1v-3.65a1 1 0 0 0-.22-.624l-3.48-4.35A1 1 0 0 0 17.52 8H14'/%3E%3Ccircle cx='17' cy='18' r='2'/%3E%3Ccircle cx='7' cy='18' r='2'/%3E%3C/svg%3E"); }
.dm-icon--upload { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpolyline points='17 8 12 3 7 8'/%3E%3Cline x1='12' x2='12' y1='3' y2='15'/%3E%3C/svg%3E"); }
.dm-icon--wrench { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z'/%3E%3C/svg%3E"); }
.dm-icon--bird { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 7h.01'/%3E%3Cpath d='M3.4 18H12a8 8 0 0 0 8-8V7a4 4 0 0 0-7.28-2.3L2 20'/%3E%3Cpath d='m20 7 2 .5-2 .5'/%3E%3Cpath d='M10 18v3'/%3E%3Cpath d='M14 17.75V21'/%3E%3Cpath d='M7 18a6 6 0 0 0 3.84-10.61'/%3E%3C/svg%3E"); }
.dm-icon--bone { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 10c.7-.7 1.69 0 2.5 0a2.5 2.5 0 1 0 0-5 .5.5 0 0 1-.5-.5 2.5 2.5 0 1 0-5 0c0 .81.7 1.8 0 2.5l-7 7c-.7.7-1.69 0-2.5 0a2.5 2.5 0 0 0 0 5c.28 0 .5.22.5.5a2.5 2.5 0 1 0 5 0c0-.81-.7-1.8 0-2.5Z'/%3E%3C/svg%3E"); }
.dm-icon--bug { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m8 2 1.88 1.88'/%3E%3Cpath d='M14.12 3.88 16 2'/%3E%3Cpath d='M9 7.13v-1a3.003 3.003 0 1 1 6 0v1'/%3E%3Cpath d='M12 20c-3.3 0-6-2.7-6-6v-3a4 4 0 0 1 4-4h4a4 4 0 0 1 4 4v3c0 3.3-2.7 6-6 6'/%3E%3Cpath d='M12 20v-9'/%3E%3Cpath d='M6.53 9C4.6 8.8 3 7.1 3 5'/%3E%3Cpath d='M6 13H2'/%3E%3Cpath d='M3 21c0-2.1 1.7-3.9 3.8-4'/%3E%3Cpath d='M20.97 5c0 2.1-1.6 3.8-3.5 4'/%3E%3Cpath d='M22 13h-4'/%3E%3Cpath d='M17.2 17c2.1.1 3.8 1.9 3.8 4'/%3E%3C/svg%3E"); }
.dm-icon--castle { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 20v-9H2v9a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2Z'/%3E%3Cpath d='M18 11V4H6v7'/%3E%3Cpath d='M15 22v-4a3 3 0 0 0-3-3a3 3 0 0 0-3 3v4'/%3E%3Cpath d='M22 11V9'/%3E%3Cpath d='M2 11V9'/%3E%3Cpath d='M6 4V2'/%3E%3Cpath d='M18 4V2'/%3E%3Cpath d='M10 4V2'/%3E%3Cpath d='M14 4V2'/%3E%3C/svg%3E"); }
.dm-icon--cat { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5c.67 0 1.35.09 2 .26 1.78-2 5.03-2.84 6.42-2.26 1.4.58-.42 7-.42 7 .57 1.07 1 2.24 1 3.44C21 17.9 16.97 21 12 21s-9-3-9-7.56c0-1.25.5-2.4 1-3.44 0 0-1.89-6.42-.5-7 1.39-.58 4.72.23 6.5 2.23A9.04 9.04 0 0 1 12 5Z'/%3E%3Cpath d='M8 14v.5'/%3E%3Cpath d='M16 14v.5'/%3E%3Cpath d='M11.25 16.25h1.5L12 17l-.75-.75Z'/%3E%3C/svg%3E"); }
.dm-icon--dices { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='12' height='12' x='2' y='10' rx='2' ry='2'/%3E%3Cpath d='m17.92 14 3.5-3.5a2.24 2.24 0 0 0 0-3l-5-4.92a2.24 2.24 0 0 0-3 0L10 6'/%3E%3Cpath d='M6 18h.01'/%3E%3Cpath d='M10 14h.01'/%3E%3Cpath d='M15 6h.01'/%3E%3Cpath d='M18 9h.01'/%3E%3C/svg%3E"); }
.dm-icon--dog { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11.25 16.25h1.5L12 17z'/%3E%3Cpath d='M16 14v.5'/%3E%3Cpath d='M4.42 11.247A13.152 13.152 0 0 0 4 14.556C4 18.728 7.582 21 12 21s8-2.272 8-6.444a11.702 11.702 0 0 0-.493-3.309'/%3E%3Cpath d='M8 14v.5'/%3E%3Cpath d='M8.5 8.5c-.384 1.05-1.083 2.028-2.344 2.5-1.931.722-3.576-.297-3.656-1-.113-.994 1.177-6.53 4-7 1.923-.321 3.651.845 3.651 2.235A7.497 7.497 0 0 1 14 5.277c0-1.39 1.844-2.598 3.767-2.277 2.823.47 4.113 6.006 4 7-.08.703-1.725 1.722-3.656 1-1.261-.472-1.855-1.45-2.239-2.5'/%3E%3C/svg%3E"); }
.dm-icon--egg { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22c6.23-.05 7.87-5.57 7.5-10-.36-4.34-3.95-9.96-7.5-10-3.55.04-7.14 5.66-7.5 10-.37 4.43 1.27 9.95 7.5 10z'/%3E%3C/svg%3E"); }
.dm-icon--fish { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6.5 12c.94-3.46 4.94-6 8.5-6 3.56 0 6.06 2.54 7 6-.94 3.47-3.44 6-7 6s-7.56-2.53-8.5-6Z'/%3E%3Cpath d='M18 12v.5'/%3E%3Cpath d='M16 17.93a9.77 9.77 0 0 1 0-11.86'/%3E%3Cpath d='M7 10.67C7 8 5.58 5.97 2.73 5.5c-1 1.5-1 5 .23 6.5-1.24 1.5-1.24 5-.23 6.5C5.58 18.03 7 16 7 13.33'/%3E%3Cpath d='M10.46 7.26C10.2 5.88 9.17 4.24 8 3h5.8a2 2 0 0 1 1.98 1.67l.23 1.4'/%3E%3Cpath d='m16.01 17.93-.23 1.4A2 2 0 0 1 13.8 21H9.5a5.96 5.96 0 0 0 1.49-3.98'/%3E%3C/svg%3E"); }
.dm-icon--flame { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8.5 14.5A2.5 2.5 0 0 0 11 12c0-1.38-.5-2-1-3-1.072-2.143-.224-4.054 2-6 .5 2.5 2 4.9 4 6.5 2 1.6 3 3.5 3 5.5a7 7 0 1 1-14 0c0-1.153.433-2.294 1-3a2.5 2.5 0 0 0 2.5 2.5z'/%3E%3C/svg%3E"); }
.dm-icon--footprints { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 16v-2.38C4 11.5 2.97 10.5 3 8c.03-2.72 1.49-6 4.5-6C9.37 2 10 3.8 10 5.5c0 3.11-2 5.66-2 8.68V16a2 2 0 1 1-4 0Z'/%3E%3Cpath d='M20 20v-2.38c0-2.12 1.03-3.12 1-5.62-.03-2.72-1.49-6-4.5-6C14.63 6 14 7.8 14 9.5c0 3.11 2 5.66 2 8.68V20a2 2 0 1 0 4 0Z'/%3E%3Cpath d='M16 17h4'/%3E%3Cpath d='M4 13h4'/%3E%3C/svg%3E"); }
.dm-icon--ghost { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 10h.01'/%3E%3Cpath d='M15 10h.01'/%3E%3Cpath d='M12 2a8 8 0 0 0-8 8v12l3-3 2.5 2.5L12 19l2.5 2.5L17 19l3 3V10a8 8 0 0 0-8-8z'/%3E%3C/svg%3E"); }
.dm-icon--grid-3x3 { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='18' height='18' x='3' y='3' rx='2'/%3E%3Cpath d='M3 9h18'/%3E%3Cpath d='M3 15h18'/%3E%3Cpath d='M9 3v18'/%3E%3Cpath d='M15 3v18'/%3E%3C/svg%3E"); }
.dm-icon--infinity { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 12c-2-2.67-4-4-6-4a4 4 0 1 0 0 8c2 0 4-1.33 6-4Zm0 0c2 2.67 4 4 6 4a4 4 0 0 0 0-8c-2 0-4 1.33-6 4Z'/%3E%3C/svg%3E"); }
.dm-icon--mouse-pointer-click { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 4.1 12 6'/%3E%3Cpath d='m5.1 8-2.9-.8'/%3E%3Cpath d='m6 12-1.9 2'/%3E%3Cpath d='M7.2 2.2 8 5.1'/%3E%3Cpath d='M9.037 9.69a.498.498 0 0 1 .653-.653l11 4.5a.5.5 0 0 1-.074.949l-4.349 1.041a1 1 0 0 0-.74.739l-1.04 4.35a.5.5 0 0 1-.95.074z'/%3E%3C/svg%3E"); }
.dm-icon--music { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18V5l12-2v13'/%3E%3Ccircle cx='6' cy='18' r='3'/%3E%3Ccircle cx='18' cy='16' r='3'/%3E%3C/svg%3E"); }
.dm-icon--orbit { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Ccircle cx='19' cy='5' r='2'/%3E%3Ccircle cx='5' cy='19' r='2'/%3E%3Cpath d='M10.4 21.9a10 10 0 0 0 9.941-15.416'/%3E%3Cpath d='M13.5 2.1a10 10 0 0 0-9.841 15.416'/%3E%3C/svg%3E"); }
.dm-icon--paw-print { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='4' r='2'/%3E%3Ccircle cx='18' cy='8' r='2'/%3E%3Ccircle cx='20' cy='16' r='2'/%3E%3Cpath d='M9 10a5 5 0 0 1 5 5v3.5a3.5 3.5 0 0 1-6.84 1.045Q6.52 17.48 4.46 16.84A3.5 3.5 0 0 1 5.5 10Z'/%3E%3C/svg%3E"); }
.dm-icon--person-standing { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='5' r='1'/%3E%3Cpath d='m9 20 3-6 3 6'/%3E%3Cpath d='m6 8 6 2 6-2'/%3E%3Cpath d='M12 10v4'/%3E%3C/svg%3E"); }
.dm-icon--rabbit { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 16a3 3 0 0 1 2.24 5'/%3E%3Cpath d='M18 12h.01'/%3E%3Cpath d='M18 21h-8a4 4 0 0 1-4-4 7 7 0 0 1 7-7h.2L9.6 6.4a1 1 0 1 1 2.8-2.8L15.8 7h.2c3.3 0 6 2.7 6 6v1a2 2 0 0 1-2 2h-1a3 3 0 0 0-3 3'/%3E%3Cpath d='M20 8.54V4a2 2 0 1 0-4 0v3'/%3E%3Cpath d='M7.612 12.524a3 3 0 1 0-1.6 4.3'/%3E%3C/svg%3E"); }
.dm-icon--snowflake { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='2' x2='22' y1='12' y2='12'/%3E%3Cline x1='12' x2='12' y1='2' y2='22'/%3E%3Cpath d='m20 16-4-4 4-4'/%3E%3Cpath d='m4 8 4 4-4 4'/%3E%3Cpath d='m16 4-4 4-4-4'/%3E%3Cpath d='m8 20 4-4 4 4'/%3E%3C/svg%3E"); }
.dm-icon--squirrel { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15.236 22a3 3 0 0 0-2.2-5'/%3E%3Cpath d='M16 20a3 3 0 0 1 3-3h1a2 2 0 0 0 2-2v-2a4 4 0 0 0-4-4V4'/%3E%3Cpath d='M18 13h.01'/%3E%3Cpath d='M18 6a4 4 0 0 0-4 4 7 7 0 0 0-7 7c0-5 4-5 4-10.5a4.5 4.5 0 1 0-9 0 2.5 2.5 0 0 0 5 0C7 10 3 11 3 17c0 2.8 2.2 5 5 5h10'/%3E%3C/svg%3E"); }
.dm-icon--tag { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z'/%3E%3Ccircle cx='7.5' cy='7.5' r='.5' fill='currentColor'/%3E%3C/svg%3E"); }
.dm-icon--toggle-left { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='20' height='12' x='2' y='6' rx='6' ry='6'/%3E%3Ccircle cx='8' cy='12' r='2'/%3E%3C/svg%3E"); }
.dm-icon--turtle { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 10 2 4v3a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-3a8 8 0 1 0-16 0v3a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-3l2-4h4Z'/%3E%3Cpath d='M4.82 7.9 8 10'/%3E%3Cpath d='M15.18 7.9 12 10'/%3E%3Cpath d='M16.93 10H20a2 2 0 0 1 0 4H2'/%3E%3C/svg%3E"); }
.dm-icon--users { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M22 21v-2a4 4 0 0 0-3-3.87'/%3E%3Cpath d='M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E"); }
.dm-icon--worm { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m19 12-1.5 3'/%3E%3Cpath d='M19.63 18.81 22 20'/%3E%3Cpath d='M6.47 8.23a1.68 1.68 0 0 1 2.44 1.93l-.64 2.08a6.76 6.76 0 0 0 10.16 7.67l.42-.27a1 1 0 1 0-2.73-4.21l-.42.27a1.76 1.76 0 0 1-2.63-1.99l.64-2.08A6.66 6.66 0 0 0 3.94 3.9l-.7.4a1 1 0 1 0 2.55 4.34z'/%3E%3C/svg%3E"); }
.dm-icon--waves { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 6c.6.5 1.2 1 2.5 1C7 7 7 5 9.5 5c2.6 0 2.4 2 5 2 2.5 0 2.5-2 5-2 1.3 0 1.9.5 2.5 1'/%3E%3Cpath d='M2 12c.6.5 1.2 1 2.5 1 2.5 0 2.5-2 5-2 2.6 0 2.4 2 5 2 2.5 0 2.5-2 5-2 1.3 0 1.9.5 2.5 1'/%3E%3Cpath d='M2 18c.6.5 1.2 1 2.5 1 2.5 0 2.5-2 5-2 2.6 0 2.4 2 5 2 2.5 0 2.5-2 5-2 1.3 0 1.9.5 2.5 1'/%3E%3C/svg%3E"); }
.dm-icon--rotate-cw { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8'/%3E%3Cpath d='M21 3v5h-5'/%3E%3C/svg%3E"); }
.dm-icon--sprout { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 20h10'/%3E%3Cpath d='M10 20c5.5-2.5.8-6.4 3-10'/%3E%3Cpath d='M9.5 9.4c1.1.8 1.8 2.2 2.3 3.7-2 .4-3.5.4-4.8-.3-1.2-.6-2.3-1.9-3-4.2 2.8-.5 4.4 0 5.5.8z'/%3E%3Cpath d='M14.1 6a7 7 0 0 0-1.1 4c1.9-.1 3.3-.6 4.3-1.4 1-1 1.6-2.3 1.7-4.6-2.7.1-4 1-4.9 2z'/%3E%3C/svg%3E"); }
.dm-icon--shopping-cart { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='21' r='1'/%3E%3Ccircle cx='19' cy='21' r='1'/%3E%3Cpath d='M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h9.78a2 2 0 0 0 1.95-1.57l1.65-7.43H5.12'/%3E%3C/svg%3E"); }
.dm-icon--search { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E"); }
.dm-icon--wand-sparkles { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m21.64 3.64-1.28-1.28a1.21 1.21 0 0 0-1.72 0L2.36 18.64a1.21 1.21 0 0 0 0 1.72l1.28 1.28a1.2 1.2 0 0 0 1.72 0L21.64 5.36a1.2 1.2 0 0 0 0-1.72'/%3E%3Cpath d='m14 7 3 3'/%3E%3Cpath d='M5 6v4'/%3E%3Cpath d='M19 14v4'/%3E%3Cpath d='M10 2v2'/%3E%3Cpath d='M7 8H3'/%3E%3Cpath d='M21 16h-4'/%3E%3Cpath d='M11 3H9'/%3E%3C/svg%3E"); }
.dm-icon--leaf { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 20A7 7 0 0 1 9.8 6.1C15.5 5 17 4.48 19 2c1 2 2 4.18 2 8 0 5.5-4.78 10-10 10Z'/%3E%3Cpath d='M2 21c0-3 1.85-5.36 5.08-6C9.5 14.52 12 13 13 12'/%3E%3C/svg%3E"); }
.dm-icon--rotate-ccw { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8'/%3E%3Cpath d='M3 3v5h5'/%3E%3C/svg%3E"); }
.dm-icon--image-plus { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 5h6'/%3E%3Cpath d='M19 2v6'/%3E%3Cpath d='M21 11.5V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h7.5'/%3E%3Cpath d='m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21'/%3E%3Ccircle cx='9' cy='9' r='2'/%3E%3C/svg%3E"); }
.dm-icon--layout-grid { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='7' height='7' x='3' y='3' rx='1'/%3E%3Crect width='7' height='7' x='14' y='3' rx='1'/%3E%3Crect width='7' height='7' x='14' y='14' rx='1'/%3E%3Crect width='7' height='7' x='3' y='14' rx='1'/%3E%3C/svg%3E"); }
.dm-icon--list { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12h.01'/%3E%3Cpath d='M3 18h.01'/%3E%3Cpath d='M3 6h.01'/%3E%3Cpath d='M8 12h13'/%3E%3Cpath d='M8 18h13'/%3E%3Cpath d='M8 6h13'/%3E%3C/svg%3E"); }
.dm-icon--info { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 16v-4'/%3E%3Cpath d='M12 8h.01'/%3E%3C/svg%3E"); }
.dm-icon--chevron-down { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"); }
.dm-icon--x { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E"); }
.dm-icon--calendar-heart { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 10h18V6a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h7'/%3E%3Cpath d='M8 2v4'/%3E%3Cpath d='M16 2v4'/%3E%3Cpath d='M21.29 14.7a2.43 2.43 0 0 0-2.65-.52c-.3.12-.57.3-.8.53l-.34.34-.35-.34a2.43 2.43 0 0 0-2.65-.53c-.3.12-.56.3-.79.53-.95.94-1 2.53.2 3.74L17.5 22l3.6-3.55c1.2-1.21 1.14-2.8.19-3.74Z'/%3E%3C/svg%3E"); }
.dm-icon--cake-slice { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='7' r='2'/%3E%3Cpath d='M7.2 7.9 3 11v9c0 .6.4 1 1 1h16c.6 0 1-.4 1-1v-9c0-2-3-6-7-8l-3.6 2.6'/%3E%3Cpath d='M16 13H3'/%3E%3Cpath d='M16 17H3'/%3E%3C/svg%3E"); }
.dm-icon--hash { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='4' x2='20' y1='9' y2='9'/%3E%3Cline x1='4' x2='20' y1='15' y2='15'/%3E%3Cline x1='10' x2='8' y1='3' y2='21'/%3E%3Cline x1='16' x2='14' y1='3' y2='21'/%3E%3C/svg%3E"); }
.dm-icon--id-card { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 10h2'/%3E%3Cpath d='M16 14h2'/%3E%3Cpath d='M6.17 15a3 3 0 0 1 5.66 0'/%3E%3Ccircle cx='9' cy='11' r='2'/%3E%3Crect x='2' y='5' width='20' height='14' rx='2'/%3E%3C/svg%3E"); }
.dm-icon--wine { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 22h8'/%3E%3Cpath d='M7 10h10'/%3E%3Cpath d='M12 15v7'/%3E%3Cpath d='M12 15a5 5 0 0 0 5-5c0-2-.5-4-2-8H9c-1.5 4-2 6-2 8a5 5 0 0 0 5 5Z'/%3E%3C/svg%3E"); }
.dm-icon--hexagon { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z'/%3E%3C/svg%3E"); }
.dm-icon--signpost-big { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 9H4L2 7l2-2h6'/%3E%3Cpath d='M14 5h6l2 2-2 2h-6'/%3E%3Cpath d='M10 22V4a2 2 0 1 1 4 0v18'/%3E%3Cpath d='M8 22h8'/%3E%3C/svg%3E"); }
.dm-icon--award { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m15.477 12.89 1.515 8.526a.5.5 0 0 1-.81.47l-3.58-2.687a1 1 0 0 0-1.197 0l-3.586 2.686a.5.5 0 0 1-.81-.469l1.514-8.526'/%3E%3Ccircle cx='12' cy='8' r='6'/%3E%3C/svg%3E"); }
.dm-icon--badge { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.85 8.62a4 4 0 0 1 4.78-4.77 4 4 0 0 1 6.74 0 4 4 0 0 1 4.78 4.78 4 4 0 0 1 0 6.74 4 4 0 0 1-4.77 4.78 4 4 0 0 1-6.75 0 4 4 0 0 1-4.78-4.77 4 4 0 0 1 0-6.76Z'/%3E%3C/svg%3E"); }
.dm-icon--building-2 { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 22V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v18Z'/%3E%3Cpath d='M6 12H4a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h2'/%3E%3Cpath d='M18 9h2a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2h-2'/%3E%3Cpath d='M10 6h4'/%3E%3Cpath d='M10 10h4'/%3E%3Cpath d='M10 14h4'/%3E%3Cpath d='M10 18h4'/%3E%3C/svg%3E"); }
.dm-icon--coffee { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 2v2'/%3E%3Cpath d='M14 2v2'/%3E%3Cpath d='M16 8a1 1 0 0 1 1 1v8a4 4 0 0 1-4 4H7a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1h14a4 4 0 1 1 0 8h-1'/%3E%3Cpath d='M6 2v2'/%3E%3C/svg%3E"); }
.dm-icon--heart { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z'/%3E%3C/svg%3E"); }
.dm-icon--image { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='18' height='18' x='3' y='3' rx='2' ry='2'/%3E%3Ccircle cx='9' cy='9' r='2'/%3E%3Cpath d='m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21'/%3E%3C/svg%3E"); }
.dm-icon--key-round { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z'/%3E%3Ccircle cx='16.5' cy='7.5' r='.5' fill='currentColor'/%3E%3C/svg%3E"); }
.dm-icon--megaphone { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 11 18-5v12L3 14v-3z'/%3E%3Cpath d='M11.6 16.8a3 3 0 1 1-5.8-1.6'/%3E%3C/svg%3E"); }
.dm-icon--navigation { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='3 11 22 2 13 21 11 13 3 11'/%3E%3C/svg%3E"); }
.dm-icon--pen-line { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.376 3.622a1 1 0 0 1 3.002 3.002L7.368 18.635a2 2 0 0 1-.855.506l-2.872.838a.5.5 0 0 1-.62-.62l.838-2.872a2 2 0 0 1 .506-.854z'/%3E%3C/svg%3E"); }
.dm-icon--signpost { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 13v8'/%3E%3Cpath d='M12 3v3'/%3E%3Cpath d='M18 6a2 2 0 0 1 1.387.56l2.307 2.22a1 1 0 0 1 0 1.44l-2.307 2.22A2 2 0 0 1 18 13H6a2 2 0 0 1-1.387-.56l-2.306-2.22a1 1 0 0 1 0-1.44l2.306-2.22A2 2 0 0 1 6 6z'/%3E%3C/svg%3E"); }
.dm-icon--trophy { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9H4.5a2.5 2.5 0 0 1 0-5H6'/%3E%3Cpath d='M18 9h1.5a2.5 2.5 0 0 0 0-5H18'/%3E%3Cpath d='M4 22h16'/%3E%3Cpath d='M10 14.66V17c0 .55-.47.98-.97 1.21C7.85 18.75 7 20.24 7 22'/%3E%3Cpath d='M14 14.66V17c0 .55.47.98.97 1.21C16.15 18.75 17 20.24 17 22'/%3E%3Cpath d='M18 2H6v7a6 6 0 0 0 12 0V2Z'/%3E%3C/svg%3E"); }
.dm-icon--type { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='4 7 4 4 20 4 20 7'/%3E%3Cline x1='9' x2='15' y1='20' y2='20'/%3E%3Cline x1='12' x2='12' y1='4' y2='20'/%3E%3C/svg%3E"); }
.dm-icon--user-round { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='5'/%3E%3Cpath d='M20 21a8 8 0 0 0-16 0'/%3E%3C/svg%3E"); }
.dm-icon--eye { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E"); }
.dm-icon--rocket { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z'/%3E%3Cpath d='m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z'/%3E%3Cpath d='M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0'/%3E%3Cpath d='M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5'/%3E%3C/svg%3E"); }
.dm-icon--mountain { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m8 3 4 8 5-5 5 15H2L8 3z'/%3E%3C/svg%3E"); }
.dm-icon--shield { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z'/%3E%3C/svg%3E"); }
.dm-icon--hand { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 11V6a2 2 0 0 0-2-2a2 2 0 0 0-2 2'/%3E%3Cpath d='M14 10V4a2 2 0 0 0-2-2a2 2 0 0 0-2 2v2'/%3E%3Cpath d='M10 10.5V6a2 2 0 0 0-2-2a2 2 0 0 0-2 2v8'/%3E%3Cpath d='M18 8a2 2 0 1 1 4 0v6a8 8 0 0 1-8 8h-2c-2.8 0-4.5-.86-5.99-2.34l-3.6-3.6a2 2 0 0 1 2.83-2.82L7 15'/%3E%3C/svg%3E"); }
.dm-icon--share-2 { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='18' cy='5' r='3'/%3E%3Ccircle cx='6' cy='12' r='3'/%3E%3Ccircle cx='18' cy='19' r='3'/%3E%3Cline x1='8.59' x2='15.42' y1='13.51' y2='17.49'/%3E%3Cline x1='15.41' x2='8.59' y1='6.51' y2='10.49'/%3E%3C/svg%3E"); }
.dm-icon--map-pin { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E"); }
.dm-icon--pen-tool { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15.707 21.293a1 1 0 0 1-1.414 0l-1.586-1.586a1 1 0 0 1 0-1.414l5.586-5.586a1 1 0 0 1 1.414 0l1.586 1.586a1 1 0 0 1 0 1.414z'/%3E%3Cpath d='m18 13-1.375-6.874a1 1 0 0 0-.746-.776L3.235 2.028a1 1 0 0 0-1.207 1.207L5.35 15.879a1 1 0 0 0 .776.746L13 18'/%3E%3Cpath d='m2.3 2.3 7.286 7.286'/%3E%3Ccircle cx='11' cy='11' r='2'/%3E%3C/svg%3E"); }
.dm-icon--calendar { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 2v4'/%3E%3Cpath d='M16 2v4'/%3E%3Crect width='18' height='18' x='3' y='4' rx='2'/%3E%3Cpath d='M3 10h18'/%3E%3C/svg%3E"); }
.dm-icon--beer { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 11h1a3 3 0 0 1 0 6h-1'/%3E%3Cpath d='M9 12v6'/%3E%3Cpath d='M13 12v6'/%3E%3Cpath d='M14 7.5c-1 0-1.44.5-3 .5s-2-.5-3-.5-1.72.5-2.5.5a2.5 2.5 0 0 1 0-5c.78 0 1.57.5 2.5.5S9.44 2 11 2s2 1.5 3 1.5 1.72-.5 2.5-.5a2.5 2.5 0 0 1 0 5c-.78 0-1.5-.5-2.5-.5Z'/%3E%3Cpath d='M5 8v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V8'/%3E%3C/svg%3E"); }
.dm-icon--smartphone { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='14' height='20' x='5' y='2' rx='2' ry='2'/%3E%3Cpath d='M12 18h.01'/%3E%3C/svg%3E"); }
.dm-icon--cable { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 21v-2a1 1 0 0 1-1-1v-1a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v1a1 1 0 0 1-1 1'/%3E%3Cpath d='M19 15V6.5a1 1 0 0 0-7 0v11a1 1 0 0 1-7 0V9'/%3E%3Cpath d='M21 21v-2h-4'/%3E%3Cpath d='M3 5h4V3'/%3E%3Cpath d='M7 5a1 1 0 0 1 1 1v1a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a1 1 0 0 1 1-1V3'/%3E%3C/svg%3E"); }
.dm-icon--lamp-desk { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m14 5-3 3 2 7 8-8-7-2Z'/%3E%3Cpath d='m14 5-3 3-3-3 3-3 3 3Z'/%3E%3Cpath d='M9.5 6.5 4 12l3 6'/%3E%3Cpath d='M3 22v-2c0-1.1.9-2 2-2h4a2 2 0 0 1 2 2v2H3Z'/%3E%3C/svg%3E"); }
.dm-icon--lightbulb-off { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16.8 11.2c.8-.9 1.2-2 1.2-3.2a6 6 0 0 0-9.3-5'/%3E%3Cpath d='m2 2 20 20'/%3E%3Cpath d='M6.3 6.3a4.67 4.67 0 0 0 1.2 5.2c.7.7 1.3 1.5 1.5 2.5'/%3E%3Cpath d='M9 18h6'/%3E%3Cpath d='M10 22h4'/%3E%3C/svg%3E"); }
.dm-icon--cake { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21v-8a2 2 0 0 0-2-2H6a2 2 0 0 0-2 2v8'/%3E%3Cpath d='M4 16s.5-1 2-1 2.5 2 4 2 2.5-2 4-2 2.5 2 4 2 2-1 2-1'/%3E%3Cpath d='M2 21h20'/%3E%3Cpath d='M7 8v3'/%3E%3Cpath d='M12 8v3'/%3E%3Cpath d='M17 8v3'/%3E%3Cpath d='M7 4h.01'/%3E%3Cpath d='M12 4h.01'/%3E%3Cpath d='M17 4h.01'/%3E%3C/svg%3E"); }
.dm-icon--wallet { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 7V4a1 1 0 0 0-1-1H5a2 2 0 0 0 0 4h15a1 1 0 0 1 1 1v4h-3a2 2 0 0 0 0 4h3a1 1 0 0 0 1-1v-2a1 1 0 0 0-1-1'/%3E%3Cpath d='M3 5v14a2 2 0 0 0 2 2h15a1 1 0 0 0 1-1v-4'/%3E%3C/svg%3E"); }
.dm-icon--file-x { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z'/%3E%3Cpath d='M14 2v4a2 2 0 0 0 2 2h4'/%3E%3Cpath d='m14.5 12.5-5 5'/%3E%3Cpath d='m9.5 12.5 5 5'/%3E%3C/svg%3E"); }
.dm-icon--send { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z'/%3E%3Cpath d='m21.854 2.147-10.94 10.939'/%3E%3C/svg%3E"); }
.dm-icon--party-popper { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5.8 11.3 2 22l10.7-3.79'/%3E%3Cpath d='M4 3h.01'/%3E%3Cpath d='M22 8h.01'/%3E%3Cpath d='M15 2h.01'/%3E%3Cpath d='M22 20h.01'/%3E%3Cpath d='m22 2-2.24.75a2.9 2.9 0 0 0-1.96 3.12c.1.86-.57 1.63-1.45 1.63h-.38c-.86 0-1.6.6-1.76 1.44L14 10'/%3E%3Cpath d='m22 13-.82-.33c-.86-.34-1.82.2-1.98 1.11c-.11.7-.72 1.22-1.43 1.22H17'/%3E%3Cpath d='m11 2 .33.82c.34.86-.2 1.82-1.11 1.98C9.52 4.9 9 5.52 9 6.23V7'/%3E%3Cpath d='M11 13c1.93 1.93 2.83 4.17 2 5-.83.83-3.07-.07-5-2-1.93-1.93-2.83-4.17-2-5 .83-.83 3.07.07 5 2Z'/%3E%3C/svg%3E"); }
.dm-icon--layers { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83Z'/%3E%3Cpath d='m22 17.65-9.17 4.16a2 2 0 0 1-1.66 0L2 17.65'/%3E%3Cpath d='m22 12.65-9.17 4.16a2 2 0 0 1-1.66 0L2 12.65'/%3E%3C/svg%3E"); }
.dm-icon--archive-x { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='20' height='5' x='2' y='3' rx='1'/%3E%3Cpath d='M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8'/%3E%3Cpath d='m9.5 17 5-5'/%3E%3Cpath d='m9.5 12 5 5'/%3E%3C/svg%3E"); }
.dm-icon--sparkles { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z'/%3E%3Cpath d='M20 3v4'/%3E%3Cpath d='M22 5h-4'/%3E%3Cpath d='M4 17v2'/%3E%3Cpath d='M5 18H3'/%3E%3C/svg%3E"); }
.dm-icon--search-x { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m13.5 8.5-5 5'/%3E%3Cpath d='m8.5 8.5 5 5'/%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E"); }
.dm-icon--washing-machine { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h3'/%3E%3Cpath d='M17 6h.01'/%3E%3Crect width='18' height='20' x='3' y='2' rx='2'/%3E%3Ccircle cx='12' cy='13' r='5'/%3E%3Cpath d='M12 18a2.5 2.5 0 0 0 0-5 2.5 2.5 0 0 1 0-5'/%3E%3C/svg%3E"); }
.dm-icon--armchair { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 9V6a2 2 0 0 0-2-2H7a2 2 0 0 0-2 2v3'/%3E%3Cpath d='M3 16a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-5a2 2 0 0 0-4 0v1.5a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5V11a2 2 0 0 0-4 0z'/%3E%3Cpath d='M5 18v2'/%3E%3Cpath d='M19 18v2'/%3E%3C/svg%3E"); }
.dm-icon--history { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8'/%3E%3Cpath d='M3 3v5h5'/%3E%3Cpath d='M12 7v5l4 2'/%3E%3C/svg%3E"); }
.dm-icon--house { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8'/%3E%3Cpath d='M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'/%3E%3C/svg%3E"); }
.dm-icon--shield-check { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E"); }

/* =========================================================================
   Page building blocks (v1.1.0)
   ========================================================================= */

/* Section head: eyebrow + h2 */
.dm-section-head { margin-bottom: 40px !important; }
.dm-section-head .et_pb_module { margin-bottom: 16px !important; }
.dm-section-head .et_pb_module:last-child { margin-bottom: 0 !important; }
.dm-section-head h2 { padding-bottom: 0; }
.dm-on-dark h1, .dm-on-dark h2, .dm-on-dark h3 { color: #fff; }
.dm-hl { color: var(--max-cyan-500); }
.dm-lead p { font: var(--type-body-lg); color: var(--fg-2); max-width: 520px; }
.dm-on-dark .dm-lead p { color: var(--fg-on-inverse-2); }

/* Buttons: large, arrow, upload icon, inline rows */
body .et_pb_button.dm-btn-lg { font-size: 17px !important; padding: 0.8em 1.6em !important; }
body .et_pb_button.dm-btn-arrow::after,
body .et_pb_button.dm-btn-upload::before {
  display: inline-block !important; content: "" !important; position: static !important; opacity: 1 !important;
  width: 18px; height: 18px; margin: 0 0 0 8px; vertical-align: -3px; background: currentColor; font-size: 0 !important;
  -webkit-mask: var(--dm-btn-icon) center / contain no-repeat; mask: var(--dm-btn-icon) center / contain no-repeat;
  transition: transform var(--dur-base) var(--ease-out);
}
body .et_pb_button.dm-btn-arrow::after { --dm-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m12 5 7 7-7 7'/%3E%3C/svg%3E"); }
body .et_pb_button.dm-btn-arrow:hover::after { transform: translateX(3px); }
body .et_pb_button.dm-btn-upload::before { --dm-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpolyline points='17 8 12 3 7 8'/%3E%3Cline x1='12' x2='12' y1='3' y2='15'/%3E%3C/svg%3E"); margin: 0 8px 0 0; }
.dm-btn-row .et_pb_button_module_wrapper { display: inline-block; margin: 0 12px 12px 0 !important; }
.dm-btn-row .et_pb_button_module_wrapper:last-child { margin-right: 0 !important; }

/* Hero */
.dm-hero .dm-eyebrow { margin-bottom: 24px !important; }
.dm-hero h1 { color: #fff; }
.dm-hero .dm-lead { margin-bottom: 32px !important; }
@media (min-width: 981px) { .dm-hero-row { display: flex; align-items: flex-start; } }

/* Canvas animations */
.dm-hero-wire, .dm-rp-wire { position: relative; height: 400px; }
.dm-rp-wire { height: 480px; }
.dm-hero-wire::before, .dm-rp-wire::before {
  content: ""; position: absolute; inset: 4% 14% 12%; border-radius: 50%; pointer-events: none;
  background: radial-gradient(closest-side, rgba(18,190,242,.11), transparent);
}
.dm-hero-wire canvas, .dm-rp-wire canvas { position: relative; width: 100%; height: 100%; display: block; }
.dm-wire-caption { position: absolute; right: 8px; bottom: 8px; font: 400 11px/1 var(--font-mono); color: var(--fg-on-inverse-2); opacity: .7; }
@media (max-width: 980px) { .dm-hero-wire { height: 300px; } .dm-rp-wire { height: 340px; } .dm-wire-caption { display: none; } }

/* Card grids: put cards (text modules) in one column with class dm-grid */
.dm-grid > .et_pb_column { display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; }
.dm-grid > .et_pb_column > .et_pb_module { margin: 0 !important; width: calc((100% - 40px) / 3); display: flex; }
.dm-grid--4 > .et_pb_column > .et_pb_module { width: calc((100% - 60px) / 4); }
.dm-grid > .et_pb_column > .et_pb_module > .et_pb_text_inner { display: flex; width: 100%; }
@media (max-width: 980px) {
  .dm-grid > .et_pb_column > .et_pb_module, .dm-grid--4 > .et_pb_column > .et_pb_module { width: calc((100% - 20px) / 2); }
}
@media (max-width: 620px) {
  .dm-grid > .et_pb_column > .et_pb_module, .dm-grid--4 > .et_pb_column > .et_pb_module { width: 100%; }
}

/* Icon tiles */
.dm-icon-tile { width: 52px; height: 52px; border-radius: var(--radius-md); display: flex; align-items: center; justify-content: center; background: var(--accent-soft); color: var(--accent); font-size: 26px; flex: none; }
.dm-icon-tile--navy { width: 44px; height: 44px; border-radius: var(--radius-sm); background: var(--max-navy-900); color: var(--max-cyan-300); font-size: 22px; }

/* Service card (a.dm-svc-card) */
a.dm-svc-card {
  position: relative; display: flex; flex-direction: column; gap: 16px; width: 100%; padding: 28px; overflow: hidden;
  border-radius: var(--radius-md); border: 1px solid var(--border-1); background: var(--surface-card); color: var(--fg-2);
  transition: all var(--dur-base) var(--ease-out);
}
a.dm-svc-card::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: var(--grad-axis); transform: scaleX(0); transform-origin: left; transition: transform var(--dur-slow) var(--ease-out); }
a.dm-svc-card:hover { border-color: var(--border-2); box-shadow: var(--shadow-3); transform: translateY(-2px); color: var(--fg-2); }
a.dm-svc-card:hover::after { transform: scaleX(1); }
.dm-svc-card .dm-card-title { font: var(--type-h3); font-stretch: var(--display-stretch); color: var(--text-heading); letter-spacing: var(--tracking-display); }
.dm-svc-card .dm-card-text { font: var(--type-body); color: var(--fg-2); }
ul.dm-checks { list-style: none !important; margin: 0; padding: 0 !important; display: flex; flex-direction: column; gap: 8px; }
ul.dm-checks li { display: flex; gap: 8px; align-items: center; padding: 0; font: var(--type-body-sm); color: var(--fg-2); }
ul.dm-checks li::before { content: ""; width: 16px; height: 16px; flex: none; background: var(--accent); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / contain no-repeat; }
.dm-link-arrow { margin-top: auto; display: inline-flex; gap: 6px; align-items: center; font: 600 15px/1 var(--font-display); font-stretch: 110%; color: var(--accent); }
.dm-link-arrow::after { content: ""; width: 16px; height: 16px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m12 5 7 7-7 7'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m12 5 7 7-7 7'/%3E%3C/svg%3E") center / contain no-repeat; transition: transform var(--dur-base) var(--ease-out); }
a:hover .dm-link-arrow::after { transform: translateX(4px); }

/* Custom product card (a.dm-cp-card) */
a.dm-cp-card {
  display: flex; flex-direction: column; width: 100%; overflow: hidden; text-decoration: none;
  border-radius: var(--radius-md); border: 1px solid var(--border-1); background: var(--surface-card); box-shadow: var(--shadow-1);
  transition: transform var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out);
}
a.dm-cp-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-3); }
a.dm-cp-card img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.dm-cp-card .dm-cp-body { display: flex; flex-direction: column; gap: 8px; padding: 20px 22px 22px; flex: 1; }
.dm-cp-card .dm-card-title { font: var(--type-h3); font-stretch: var(--display-stretch); color: var(--text-heading); letter-spacing: var(--tracking-display); }
.dm-cp-card .dm-card-text { font: var(--type-body); color: var(--fg-2); }
.dm-cp-card .dm-link-arrow { margin-top: 6px; font-size: 14px; }

/* Replacement parts steps (text module with ol.dm-rp-steps) */
ol.dm-rp-steps { margin: 8px 0 0; padding: 0 !important; list-style: none !important; display: flex; flex-direction: column; gap: 8px; }
li.dm-rp-step {
  position: relative; display: grid; grid-template-columns: 48px 1fr; gap: 16px; align-items: start; padding: 16px; overflow: hidden;
  border-radius: var(--radius-md); border: 1px solid transparent; cursor: pointer; transition: all var(--dur-base) var(--ease-out);
}
li.dm-rp-step:not(:last-child)::before { content: ""; position: absolute; left: 39px; top: 68px; bottom: -12px; width: 2px; background: var(--border-inverse); }
.dm-rp-ico { width: 48px; height: 48px; border-radius: var(--radius-sm); display: grid; place-items: center; font-size: 22px; background: var(--max-navy-900); color: var(--max-cyan-300); border: 1px solid var(--border-inverse); transition: all var(--dur-base); }
.dm-rp-body { display: flex; flex-direction: column; gap: 6px; }
.dm-rp-head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; }
.dm-rp-num { font: 600 12px/1 var(--font-mono); color: var(--fg-on-inverse-2); }
.dm-rp-title { font: var(--type-h3); font-stretch: var(--display-stretch); color: #fff; letter-spacing: var(--tracking-display); }
.dm-rp-desc { font: var(--type-body); color: var(--fg-on-inverse-2); }
.dm-rp-spec { font: var(--type-spec); color: var(--max-cyan-300); }
.dm-rp-progress { position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: var(--grad-axis); transform: scaleX(0); transform-origin: left; }
@keyframes dmRpFill { from { transform: scaleX(0); } to { transform: scaleX(1); } }
.dm-rp-js li.dm-rp-step:not(.is-active) .dm-rp-desc, .dm-rp-js li.dm-rp-step:not(.is-active) .dm-rp-spec { display: none; }
li.dm-rp-step.is-active { border-color: rgba(111,220,247,.35); background: rgba(111,220,247,.07); }
li.dm-rp-step.is-active .dm-rp-ico { background: var(--max-cyan-500); color: var(--max-navy-950); border-color: transparent; }
@media (min-width: 981px) { .dm-rp-row { display: flex; align-items: center; } }

/* How it works steps */
.dm-step { display: flex; flex-direction: column; gap: 14px; padding-right: 24px; width: 100%; }
.dm-step-top { display: flex; align-items: center; gap: 12px; }
.dm-step-line { flex: 1; height: 1px; background: var(--border-2); }
.dm-grid > .et_pb_column > .et_pb_module:last-child .dm-step-line { background: transparent; }
.dm-step-num { font: 600 12px/1 var(--font-mono); color: var(--fg-3); }
.dm-step .dm-card-title { font: var(--type-h3); font-stretch: var(--display-stretch); color: var(--text-heading); letter-spacing: var(--tracking-display); }
.dm-step .dm-card-text { font: var(--type-body); color: var(--fg-2); }
@media (max-width: 980px) { .dm-step-line { display: none; } }
.dm-grid--steps > .et_pb_column { gap: 32px 0; }
.dm-grid--steps > .et_pb_column > .et_pb_module { width: 25%; }
@media (max-width: 980px) { .dm-grid--steps > .et_pb_column > .et_pb_module { width: 50%; } }
@media (max-width: 620px) { .dm-grid--steps > .et_pb_column > .et_pb_module { width: 100%; } }

/* Band: a white card row with text left and a button right */
.dm-band { background: var(--surface-card); border: 1px solid var(--border-1); border-radius: var(--radius-md); }
.dm-band-text { display: flex; align-items: center; gap: 20px; }
.dm-band-text .dm-card-title { display: block; font: var(--type-h3); font-stretch: var(--display-stretch); color: var(--text-heading); letter-spacing: var(--tracking-display); }
.dm-band-text p { font: var(--type-body); color: var(--fg-2); padding: 0; }
@media (min-width: 981px) {
  .dm-band { display: flex; align-items: center; }
  .dm-band > .et_pb_column { margin-bottom: 0 !important; }
  .dm-band .et_pb_button_module_wrapper { text-align: right; }
}


/* ---- Card markup is inline-only (WordPress wraps it in <p>); lay it out here (v1.1.1) ---- */
.dm-grid .et_pb_text_inner > p { display: flex; width: 100%; padding: 0; margin: 0; }
.dm-grid .et_pb_text_inner > p:empty { display: none; }
.dm-card-title, .dm-card-text, .dm-step-num { display: block; }
.dm-checks { display: flex; flex-direction: column; gap: 8px; }
.dm-checks > span { display: flex; gap: 8px; align-items: center; font: var(--type-body-sm); color: var(--fg-2); }
.dm-checks > span::before { content: ""; width: 16px; height: 16px; flex: none; background: var(--accent); -webkit-mask: var(--dm-check) center / contain no-repeat; mask: var(--dm-check) center / contain no-repeat; }
.dm-step, .dm-step-top, .dm-band-text { display: flex; }
.dm-band-text .et_pb_text_inner > p { padding: 0; }
.dm-band .et_pb_text_inner > p { padding: 0; }
.dm-band-text .dm-card-text { font: var(--type-body); color: var(--fg-2); margin-top: 4px; }
body .et_pb_button.dm-btn-arrow::after { vertical-align: -4px; }
body .et_pb_button.dm-btn-upload::before { vertical-align: -3px; }

/* ---- Button icons: cancel Divi's built-in translateY(-50%) and center on the text (v1.1.2) ---- */
body .et_pb_button.dm-btn-arrow::after,
body .et_pb_button.dm-btn-upload::before,
.dm-header-menu .et-menu > li.dm-menu-shop > a::after,
.dm-header-menu .et_mobile_menu li.dm-menu-shop > a::before {
  transform: none !important; top: auto !important; vertical-align: middle !important;
}
body .et_pb_button.dm-btn-arrow:hover::after { transform: translateX(3px) !important; }
body .et_pb_button.dm-btn-arrow::after { margin-top: -2px !important; }
body .et_pb_button.dm-btn-upload::before { margin-top: -3px !important; }
.dm-header-menu .et-menu > li.dm-menu-shop > a::after { align-self: center; }
body .et_pb_button.dm-btn-arrow::after { translate: 0 -1px; }

/* =========================================================================
   Service pages (v1.2.0)
   ========================================================================= */
/* Design v2 shows no blueprint grid texture */
:root { --grid-blueprint: linear-gradient(transparent, transparent); }

/* Breadcrumbs (text module, class dm-crumbs) */
.dm-crumbs, .dm-crumbs p { font: var(--type-body-sm); color: var(--fg-2); }
.dm-crumbs a { color: var(--fg-2); text-decoration: none; }
.dm-crumbs a:hover { color: var(--text-heading); }
.dm-crumbs .dm-icon { font-size: 14px; margin: 0 6px; vertical-align: -2px; }
.dm-crumbs strong { font-weight: 400; color: var(--text-heading); }
.dm-on-dark .dm-crumbs, .dm-on-dark .dm-crumbs p, .dm-on-dark .dm-crumbs a { color: var(--fg-on-inverse-2); }
.dm-on-dark .dm-crumbs strong, .dm-on-dark .dm-crumbs a:hover { color: #fff; }

/* Hero kicker: icon tile + eyebrow on one line */
.dm-kicker { display: flex; align-items: center; gap: 14px; }
.dm-icon-tile--glass { background: rgba(111,220,247,.12); color: var(--max-cyan-300); }
.dm-eyebrow-inline { display: inline-flex; flex-direction: column; gap: 10px; font: var(--type-eyebrow); letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; color: var(--accent); }
.dm-eyebrow-inline::after { content: ""; width: 48px; height: 2px; background: var(--grad-axis); }
.dm-on-dark .dm-eyebrow-inline { color: var(--max-cyan-300); }
.dm-svc-hero .dm-kicker { margin-bottom: 22px; }
.dm-svc-hero h1 { padding-bottom: 22px; }
@media (min-width: 981px) { .dm-svc-hero-row { display: flex; align-items: center; } }
.dm-react-art { min-height: 300px; }
.dm-react-art svg { max-width: 100%; height: auto; }

/* Big paragraphs */
.dm-paras p { font: var(--type-body-lg); color: var(--fg-2); }
.dm-paras p:first-child { color: var(--fg-1); }

/* Dark diagram panel (code module) */
.dm-panel { border-radius: var(--radius-lg); background: var(--grid-blueprint), var(--max-navy-900); border: 1px solid var(--border-inverse); padding: 28px; display: flex; flex-direction: column; gap: 24px; color: var(--fg-on-inverse-2); }
.dm-panel-label { font: 500 10px/1 var(--font-mono); letter-spacing: .06em; color: rgba(111,220,247,.85); text-transform: uppercase; }
.dm-lanes { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
@media (max-width: 767px) { .dm-lanes { grid-template-columns: 1fr; } }
.dm-lane { display: flex; flex-direction: column; gap: 20px; min-width: 0; }
.dm-lane-head { display: flex; flex-direction: column; gap: 6px; }
.dm-lane-label { font: 600 11px/1 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--max-cyan-300); }
.dm-lane-sub { font: 600 15px/1.3 var(--font-display); color: #fff; }
.dm-lane--muted .dm-lane-label, .dm-lane--muted .dm-lane-sub { color: var(--fg-on-inverse-2); }
.dm-lane ol { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; }
.dm-lane li { display: grid; grid-template-columns: 28px minmax(0,1fr); gap: 12px; padding: 0 0 18px; position: relative; }
.dm-lane li:last-child { padding-bottom: 0; }
.dm-lane li:not(:last-child)::before { content: ""; position: absolute; left: 13px; top: 30px; bottom: 2px; width: 1px; background: rgba(169,188,211,.22); }
.dm-lane-n { width: 28px; height: 28px; border-radius: var(--radius-sm); display: grid; place-items: center; font: 600 11px/1 var(--font-mono); font-size: 14px; border: 1px solid rgba(18,190,242,.55); background: rgba(18,190,242,.14); color: var(--max-cyan-300); }
.dm-lane-n b { font: 600 11px/1 var(--font-mono); }
.dm-lane--muted .dm-lane-n { border-color: rgba(169,188,211,.35); background: var(--max-navy-900); color: var(--fg-on-inverse-2); }
.dm-lane-t { display: flex; flex-direction: column; gap: 6px; padding-top: 5px; }
.dm-lane-t > b { font: 600 15px/1.3 var(--font-display); color: #fff; }
.dm-lane--muted .dm-lane-t > b { color: var(--fg-on-inverse-2); }
.dm-lane-t > small { font: 400 13px/1.45 var(--font-sans); color: var(--fg-on-inverse-2); }
.dm-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px; }
.dm-chip { display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px; border-radius: 999px; border: 1px solid rgba(169,188,211,.3); font: 500 12px/1 var(--font-sans); color: #fff; }
.dm-chip .dm-icon { font-size: 13px; color: var(--max-cyan-300); }
.dm-chip--light { border-color: var(--border-2); color: var(--fg-1); }

/* Icon feature list (work / who / what) */
.dm-flist { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); column-gap: 48px; }
.dm-flist > span { display: grid; grid-template-columns: 44px minmax(0,1fr) auto; gap: 16px; padding: 24px 0; border-top: 1px solid var(--border-2); align-items: start; }
.dm-flist .dm-icon-tile { width: 44px; height: 44px; border-radius: var(--radius-sm); font-size: 22px; }
.dm-flist-text { padding-top: 9px; font: var(--type-body-lg); color: var(--fg-2); }
.dm-flist-text b { font-weight: 600; color: var(--text-heading); }
.dm-tag-dark { margin-top: 9px; padding: 6px 10px; border-radius: var(--radius-sm); background: var(--max-navy-900); color: var(--max-cyan-300); font: 600 11px/1 var(--font-mono); letter-spacing: .06em; text-transform: uppercase; }
.dm-note-row { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 28px; padding-top: 24px; border-top: 1px solid var(--border-2); }
.dm-note-row > .dm-card-text { flex: 1 1 320px; font: var(--type-body); color: var(--fg-2); }
.dm-spec-chip { display: inline-flex; align-items: center; gap: 10px; padding: 10px 14px; border-radius: var(--radius-sm); background: var(--max-navy-900); color: var(--max-cyan-300); font: var(--type-spec); white-space: nowrap; }
.dm-spec-chip .dm-icon { font-size: 16px; }

/* Offer cards (What's included) */
.dm-offer { display: flex; flex-direction: column; gap: 14px; width: 100%; padding: 24px; border-radius: var(--radius-md); border: 1px solid var(--border-1); background: var(--surface-card); }
.dm-offer .dm-icon-tile { width: 44px; height: 44px; border-radius: var(--radius-sm); font-size: 22px; }

/* Vertical numbered steps */
.dm-vsteps { display: flex; flex-direction: column; }
.dm-vsteps > span { display: grid; grid-template-columns: 44px 1fr; gap: 16px; padding-bottom: 24px; position: relative; }
.dm-vsteps > span:last-child { padding-bottom: 0; }
.dm-vsteps > span:not(:last-child)::before { content: ""; position: absolute; left: 21px; top: 44px; bottom: 0; width: 2px; background: var(--border-2); }
.dm-vsteps-n { width: 44px; height: 44px; border-radius: var(--radius-sm); display: grid; place-items: center; background: var(--max-navy-900); color: var(--max-cyan-300); font: 600 14px/1 var(--font-mono); }
.dm-vsteps-t { display: flex; flex-direction: column; gap: 6px; padding-top: 4px; }

/* FAQ (Divi Accordion module, class dm-faq) */
.dm-faq .et_pb_toggle { background: #fff !important; border: 1px solid var(--border-1) !important; border-radius: var(--radius-md); padding: 18px 22px !important; margin-bottom: 8px !important; }
.dm-faq .et_pb_toggle_title { font: 600 16px/1.3 var(--font-display) !important; color: var(--text-heading) !important; padding-right: 32px; }
.dm-faq .et_pb_toggle_title::before { color: var(--accent) !important; font-size: 18px; right: 0; }
.dm-faq .et_pb_toggle_content { padding-top: 12px; font: var(--type-body); color: var(--fg-2); }
.dm-faq .et_pb_toggle_content p { padding-bottom: 0; }

/* Mail band */
.dm-mail { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 32px; width: 100%; padding: 24px; border: 1px solid var(--border-1); border-radius: var(--radius-md); background: var(--surface-card); }
.dm-mail > b { font: 600 15px/1.3 var(--font-display); color: var(--text-heading); }
.dm-mail-items { display: flex; flex-wrap: wrap; gap: 12px 28px; flex: 1 1 420px; }
.dm-mail-items > span { display: inline-flex; align-items: center; gap: 8px; font: 500 14px/1.3 var(--font-sans); color: var(--fg-1); }
.dm-mail-items .dm-icon { font-size: 16px; color: var(--accent); }

/* Scan rail (code module) */
.dm-rail { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)) 120px repeat(2, minmax(0,1fr)); gap: 20px; align-items: stretch; }
.dm-rail-step { display: flex; flex-direction: column; gap: 12px; padding-top: 16px; border-top: 1px solid rgba(169,188,211,.22); min-width: 0; }
.dm-rail-step.is-after { border-top: 2px solid var(--max-cyan-500); }
.dm-rail-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.dm-rail-ico { width: 36px; height: 36px; border-radius: var(--radius-sm); display: grid; place-items: center; font-size: 18px; border: 1px solid rgba(169,188,211,.35); color: var(--fg-on-inverse-2); }
.dm-rail-step.is-after .dm-rail-ico { border-color: rgba(18,190,242,.55); background: rgba(18,190,242,.14); color: var(--max-cyan-300); }
.dm-rail-n { font: 600 11px/1 var(--font-mono); color: var(--fg-on-inverse-2); }
.dm-rail-step.is-after .dm-rail-n { color: var(--max-cyan-300); }
.dm-rail-step > b { font: 600 16px/1.3 var(--font-display); color: #fff; }
.dm-rail-step > small { font: 400 13px/1.45 var(--font-sans); color: var(--fg-on-inverse-2); }
.dm-rail-cut { display: flex; flex-direction: column; align-items: center; gap: 8px; }
.dm-rail-cut::before, .dm-rail-cut::after { content: ""; flex: 1; width: 0; border-left: 1px dashed rgba(169,188,211,.45); }
.dm-rail-cut > span { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 10px 8px; border-radius: var(--radius-sm); border: 1px dashed rgba(169,188,211,.45); color: var(--fg-on-inverse-2); font: 600 10px/1.35 var(--font-mono); letter-spacing: .06em; text-transform: uppercase; text-align: center; }
@media (max-width: 980px) {
  .dm-rail { grid-template-columns: 1fr 1fr; }
  .dm-rail-cut { grid-column: 1 / -1; flex-direction: row; }
  .dm-rail-cut::before, .dm-rail-cut::after { height: 0; width: auto; border-left: 0; border-top: 1px dashed rgba(169,188,211,.45); }
}
@media (max-width: 520px) { .dm-rail { grid-template-columns: 1fr; } }

/* Batch: chart legend + run sheet (code modules) */
.dm-legend { display: flex; flex-wrap: wrap; gap: 8px 20px; }
.dm-legend > span { display: inline-flex; align-items: center; gap: 8px; font: 500 12px/1 var(--font-sans); color: var(--fg-on-inverse-2); }
.dm-legend i { width: 22px; border-top: 2px solid #A9CBEA; }
.dm-legend i.is-solid { border-top-color: #12BEF2; }
.dm-legend i.is-dashed { border-top-style: dashed; }
.dm-sheet { border: 1px solid var(--border-1); border-radius: var(--radius-md); background: var(--surface-card); overflow: hidden; }
.dm-sheet-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px; padding: 14px 22px; background: var(--max-navy-900); color: var(--max-cyan-300); font: 600 11px/1 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; }
.dm-sheet-head > span { display: inline-flex; align-items: center; gap: 6px; }
.dm-sheet ol { margin: 0; padding: 0; list-style: none; }
.dm-sheet li { display: grid; grid-template-columns: 44px minmax(0,1fr); gap: 16px; padding: 18px 22px; border-top: 1px solid var(--border-1); align-items: start; }
.dm-sheet li:first-child { border-top: 0; }
.dm-sheet-n { width: 44px; height: 44px; border-radius: var(--radius-sm); display: grid; place-items: center; background: var(--accent-soft); color: var(--accent); font: 600 13px/1 var(--font-mono); }
.dm-sheet-t { display: flex; flex-direction: column; gap: 4px; padding-top: 2px; }
.dm-sheet-t > b { font: 600 16px/1.3 var(--font-display); color: var(--text-heading); }
.dm-sheet-t > small { font: 400 14px/1.45 var(--font-sans); color: var(--fg-2); }
.dm-sheet-foot { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 16px 22px 20px; border-top: 1px dashed var(--border-2); }
.dm-sheet-foot > b { font: 600 11px/1 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--fg-2); margin-right: 6px; }

/* CTA band (row, class dm-cta) */
.dm-cta { border-radius: var(--radius-lg); background: var(--grid-blueprint), var(--max-navy-900); }
.dm-cta h2 { color: #fff; padding-bottom: 10px; }
.dm-cta .dm-lead p { color: var(--fg-on-inverse-2); }
@media (min-width: 981px) {
  .dm-cta { display: flex; align-items: center; }
  .dm-cta > .et_pb_column { margin-bottom: 0 !important; }
  .dm-cta .et_pb_button_module_wrapper { text-align: right; }
}
.dm-grid--2 > .et_pb_column > .et_pb_module { width: calc((100% - 20px) / 2); }
@media (max-width: 620px) { .dm-grid--2 > .et_pb_column > .et_pb_module { width: 100%; } }
.dm-paras--muted p, .dm-paras--muted p:first-child { color: var(--fg-2); }
.dm-steps-faq h2 { padding-bottom: 40px; }
.dm-steps-faq .dm-eyebrow { margin-bottom: 16px !important; }
.dm-steps-faq .et_pb_module { margin-bottom: 0; }

/* ---- v1.2.1: shared card typography, FAQ icons, tighter hero spacing ---- */
.dm-card-title { font: var(--type-h3); font-stretch: var(--display-stretch); color: var(--text-heading); letter-spacing: var(--tracking-display); }
.dm-card-text { font: var(--type-body); color: var(--fg-2); }
.dm-vsteps-t .dm-card-title { line-height: 1.2; }
.dm-faq .et_pb_toggle_title::before {
  content: "" !important; display: block !important; position: absolute; right: 0; top: 50%; margin-top: -9px; width: 18px; height: 18px;
  background: var(--accent); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='M12 5v14'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='M12 5v14'/%3E%3C/svg%3E") center / contain no-repeat; font-size: 0 !important;
}
.dm-faq .et_pb_toggle_open .et_pb_toggle_title::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E"); }
.dm-hero .et_pb_text, .dm-svc-hero .et_pb_text { margin-bottom: 24px !important; }
.dm-hero h1, .dm-svc-hero h1 { padding-bottom: 0; }
.dm-hero .dm-lead, .dm-svc-hero .dm-lead { margin-bottom: 32px !important; }
.dm-svc-hero .dm-crumbs { margin-bottom: 0 !important; }
.dm-cta .et_pb_text { margin-bottom: 10px !important; }
.dm-cta h2 { padding-bottom: 0; }
.dm-cta .dm-lead { margin-bottom: 0 !important; }

/* ---- Replacement parts page (v1.3.0) ---- */
#discontinued, #improve, #unknown { scroll-margin-top: 110px; }
.dm-rpp-jump { display: flex; flex-wrap: wrap; gap: 8px; }
.dm-rpp-jump a { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--border-inverse); background: rgba(4,26,51,.4); color: #fff !important; font: 500 14px/1 var(--font-sans); text-decoration: none; transition: border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out); }
.dm-rpp-jump a:hover { border-color: rgba(111,220,247,.45); background: rgba(111,220,247,.08); }
.dm-rpp-jump .dm-icon { font-size: 16px; color: var(--max-cyan-300); }
.dm-rpp-art { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.dm-rp-wire--framed { height: 400px; border-radius: var(--radius-md); border: 1px solid var(--border-inverse); background: rgba(4,26,51,.4); overflow: hidden; }
ol.dm-rp-steps--tabs { margin: 0; display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 8px; }
ol.dm-rp-steps--tabs li.dm-rp-step { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 14px 16px; border-color: var(--border-inverse); }
ol.dm-rp-steps--tabs li.dm-rp-step::before { display: none; }
ol.dm-rp-steps--tabs .dm-rp-ico { width: 40px; height: 40px; font-size: 20px; }
ol.dm-rp-steps--tabs .dm-rp-body { gap: 4px; }
ol.dm-rp-steps--tabs .dm-rp-num { font: 600 11px/1 var(--font-mono); }
ol.dm-rp-steps--tabs .dm-rp-title { font: 600 15px/1.2 var(--font-display); font-stretch: var(--display-stretch); letter-spacing: 0; }
li.dm-rp-step.is-active { border-color: rgba(111,220,247,.35); }
.dm-rp-caps { min-height: 44px; }
.dm-rp-cap { display: none; margin: 0; padding: 0 !important; font: var(--type-body-sm); color: var(--fg-on-inverse-2); }
.dm-rp-cap.is-active { display: block; }
@media (max-width: 980px) { .dm-rp-wire--framed { height: 300px; } ol.dm-rp-steps--tabs li.dm-rp-step { padding: 12px 10px; } }
@media (min-width: 981px) { .dm-rpp-split { display: flex; align-items: flex-start; } .dm-rpp-split--center { align-items: center; } .dm-rpp-sticky { position: sticky; top: 150px; } }
.dm-hl-w { color: #fff; }
.dm-paras--dark p, .dm-paras--dark p:first-child { color: var(--fg-on-inverse-2); padding-bottom: 28px; }
.dm-rpp-dico { width: 36px; height: 36px; flex: none; border-radius: var(--radius-sm); display: grid; place-items: center; font-size: 18px; background: var(--max-navy-900); color: var(--max-cyan-300); border: 1px solid var(--border-inverse); }
.dm-rpp-dlist { display: flex; flex-direction: column; gap: 12px; margin-top: 8px; }
.dm-rpp-dlist > span { display: flex; align-items: flex-start; gap: 14px; }
.dm-rpp-dlist > span > span:last-child { display: flex; flex-direction: column; gap: 3px; padding-top: 2px; }
.dm-rpp-dlist b, .dm-rpp-mini b { font: 600 15px/1.2 var(--font-display); font-stretch: var(--display-stretch); color: #fff; }
.dm-rpp-dlist small { font: var(--type-body-sm); color: var(--fg-on-inverse-2); }
.dm-rpp-mini { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%,150px),1fr)); gap: 10px; }
.dm-rpp-mini > span { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border-radius: var(--radius-sm); border: 1px solid var(--border-inverse); background: rgba(4,26,51,.4); }
.dm-rpp-mini .dm-rpp-dico { width: 32px; height: 32px; font-size: 16px; border: 0; }
.dm-rpp-mini > span > span:last-child { display: flex; flex-direction: column; gap: 2px; }
.dm-rpp-mini small { font: 600 10px/1 var(--font-mono); color: var(--fg-on-inverse-2); }
.dm-rpp-mini b { font-size: 14px; }
.dm-rpp-cmp { border-radius: var(--radius-lg); border: 1px solid var(--border-1); background: var(--surface-card); overflow: hidden; }
.dm-rpp-cmp-head, .dm-rpp-cmp-row { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1fr) minmax(0,1fr); gap: 12px; align-items: center; padding: 14px 20px; }
.dm-rpp-cmp-head { background: var(--bg-subtle); border-bottom: 1px solid var(--border-1); font: var(--type-eyebrow); letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; color: var(--fg-3); }
.dm-rpp-cmp-head span:last-child { color: var(--accent); }
.dm-rpp-cmp-row + .dm-rpp-cmp-row { border-top: 1px solid var(--border-1); }
.dm-rpp-cmp-row { font: var(--type-body); }
.dm-rpp-cmp-row b { font: var(--type-label); color: var(--fg-1); }
.dm-rpp-cmp-row span { color: var(--fg-3); }
.dm-rpp-cmp-row span:last-child { display: flex; align-items: center; gap: 8px; color: var(--fg-1); }
.dm-rpp-cmp-row .dm-icon { font-size: 16px; color: var(--accent); }
.dm-rpp-ident { display: flex; flex-direction: column; gap: 12px; padding: 28px; border-radius: var(--radius-lg); background: #fff; border: 1px solid var(--border-1); }
.dm-rpp-ident-label { font: var(--type-eyebrow); letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; color: var(--accent); }
.dm-rpp-ident-row { display: flex; gap: 14px; align-items: flex-start; padding-top: 12px; border-top: 1px solid var(--border-1); }
.dm-rpp-ident-row .dm-icon-tile { width: 40px; height: 40px; border-radius: var(--radius-sm); font-size: 20px; }
.dm-rpp-ident-row > span:last-child { display: flex; flex-direction: column; gap: 3px; }
.dm-rpp-ident-row b { font: var(--type-label); color: var(--fg-1); }
.dm-rpp-ident-row small { font: var(--type-body-sm); color: var(--fg-2); }
.dm-rpp-who { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1px; background: var(--border-1); border: 1px solid var(--border-1); border-radius: var(--radius-md); overflow: hidden; }
.dm-rpp-who > div { display: grid; grid-template-columns: auto 1fr; column-gap: 18px; align-items: start; padding: 26px 28px; background: #fff; }
.dm-rpp-who-n { display: flex; flex-direction: column; align-items: center; gap: 8px; font-size: 24px; color: var(--accent); }
.dm-rpp-who-n small { font: 600 11px/1 var(--font-mono); color: var(--fg-3); }
.dm-rpp-who p { margin: 0; padding: 0; font: var(--type-body-lg); color: var(--fg-2); }
.dm-rpp-who p b { display: block; margin-bottom: 4px; font: var(--type-h3); font-stretch: var(--display-stretch); letter-spacing: var(--tracking-display); color: var(--text-heading); }
@media (max-width: 768px) { .dm-rpp-who { grid-template-columns: minmax(0,1fr); } .dm-rpp-who > div { padding: 20px; } }
.dm-rpp-nda { display: flex; align-items: center; gap: 16px; margin-top: 20px; padding: 20px 24px; border-radius: var(--radius-md); background: var(--max-navy-900); font: var(--type-body-lg); color: #fff; }
.dm-rpp-nda-ico { width: 44px; height: 44px; flex: none; border-radius: var(--radius-sm); display: grid; place-items: center; font-size: 22px; background: rgba(111,220,247,.12); color: var(--max-cyan-300); }
.dm-rpp-send-top { display: flex; align-items: center; gap: 12px; }
.dm-rpp-send-n { font: 600 12px/1 var(--font-mono); color: var(--fg-3); }
.dm-rpp-mat { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 1px; background: var(--border-1); border: 1px solid var(--border-1); border-radius: var(--radius-md); overflow: hidden; }
.dm-rpp-mat > div { display: flex; flex-direction: column; gap: 8px; padding: 24px; background: #fff; }
.dm-rpp-mat b { font: var(--type-h3); font-stretch: var(--display-stretch); letter-spacing: var(--tracking-display); color: var(--text-heading); }
.dm-rpp-mat span { font: var(--type-body); color: var(--fg-2); }
.dm-rpp-mat small { font: var(--type-spec); color: var(--fg-3); }
@media (max-width: 899px) { .dm-rpp-mat { grid-template-columns: repeat(2, minmax(0,1fr)); } }
.et_pb_section.dm-cta-after-subtle { padding-top: 96px !important; }
@media (max-width: 767px) { .et_pb_section.dm-cta-after-subtle { padding-top: 56px !important; } }
.dm-rpp-hero .dm-btn-row .et_pb_text { margin-bottom: 24px !important; }
@media (min-width: 1100px) { .dm-rpp-mini { grid-template-columns: repeat(4, minmax(0,1fr)); } }
@media (max-width: 600px) {
  .dm-rpp-cmp-head, .dm-rpp-cmp-row { grid-template-columns: minmax(0,.7fr) minmax(0,1fr) minmax(0,1.2fr); gap: 10px; padding: 12px 14px; }
  .dm-rpp-cmp-row { font: var(--type-body-sm); }
  .dm-rpp-cmp-row span:last-child { gap: 6px; }
  .dm-rpp-cmp-row .dm-icon { font-size: 14px; }
}

/* ---- Custom products (v1.4.0) ---- */
/* heroes */
.dm-cph { position: relative; overflow: hidden; }
.dm-cph > .et_pb_row { position: relative; z-index: 1; }
.dm-cph-points { display: flex; flex-wrap: wrap; gap: 8px 20px; }
.dm-cph-points > span { display: inline-flex; align-items: center; gap: 8px; font: var(--type-body-sm); color: var(--text-heading); }
.dm-cph-points .dm-icon { font-size: 16px; color: var(--accent); }
.dm-on-dark .dm-cph-points > span { color: #fff; }
.dm-on-dark .dm-cph-points .dm-icon { color: var(--max-cyan-300); }
.dm-cph .dm-lead p { max-width: 520px; }
.dm-cph .dm-btn-row .et_pb_text { margin-bottom: 24px !important; }
.dm-cph h1 { text-wrap: balance; }
/* trophies: light photo hero */
.dm-cph--light { background: #EFEAEC; }
.dm-cph--light .dm-lead p { color: var(--fg-2); }
.dm-cph-photo { display: block; width: 100%; height: auto; max-height: 560px; object-fit: contain; }
/* signs + gifts: photo fading in from the right */
.dm-cph--fade { background-color: #1F2738; }
.dm-cph--fade::before { content: ""; position: absolute; top: 0; right: 0; bottom: 0; width: min(70%, 1500px); background: center / cover no-repeat; -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 22%); mask-image: linear-gradient(90deg, transparent 0%, #000 22%); }
.dm-cph--signs::before { background-image: url("https://3dmaxdesign.com/wp-content/uploads/2026/11/hero-signs.webp"); background-position: 74% center; }
.dm-cph--gifts::before { background-image: url("https://3dmaxdesign.com/wp-content/uploads/2026/11/hero-gifts.webp"); background-position: 75% center; }
.dm-cph--fade .et_pb_row:last-child { min-height: 520px; display: flex; align-items: center; }
.dm-cph-text { max-width: 540px; }
/* promo: frosted light card over the photo */
.dm-cph--glass { background: #cfcfcf url("https://3dmaxdesign.com/wp-content/uploads/2026/11/hero-promo.webp") 72% center / cover no-repeat; }
.dm-cph--glass .dm-crumbs p { display: inline-block; padding: 8px 14px; border-radius: 999px; background: rgba(13,22,38,.55); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border: 1px solid rgba(255,255,255,.18); }
.dm-cph--glass .dm-crumbs, .dm-cph--glass .dm-crumbs p, .dm-cph--glass .dm-crumbs a { color: var(--fg-on-inverse-2); }
.dm-cph--glass .dm-crumbs strong { color: #fff; }
.dm-cph--glass .et_pb_row:last-child { min-height: 560px; display: flex; align-items: center; }
.dm-cph--glass .dm-cph-text { max-width: 500px; padding: 40px 40px 20px; border-radius: var(--radius-lg); background: rgba(255,255,255,.55); -webkit-backdrop-filter: blur(8px) saturate(1.2); backdrop-filter: blur(8px) saturate(1.2); border: 1px solid rgba(255,255,255,.7); box-shadow: 0 20px 50px rgba(13,22,38,.25); }
.dm-cph--glass .dm-lead p { color: var(--fg-2); }
@media (max-width: 1100px) {
  .dm-cph--fade::before { width: 100%; -webkit-mask-image: none; mask-image: none; opacity: .35; }
  .dm-cph--fade .et_pb_row:last-child, .dm-cph--glass .et_pb_row:last-child { min-height: 0; }
  .dm-cph-text { max-width: 640px; }
}
@media (max-width: 767px) { .dm-cph--glass .dm-cph-text { padding: 28px 22px 8px; } }
.dm-cph-art { border-radius: var(--radius-lg); overflow: hidden; }

/* story panels */
.dm-cps { display: flex; flex-direction: column; gap: 20px; min-width: 0; }
.dm-cps-lab { font: 600 11px/1 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--fg-2); }
.dm-cps-lab.is-accent { color: var(--accent); }
.dm-cps-lab.is-cyan { color: var(--max-cyan-300); }
.dm-cps-lab.is-gap { margin-left: 8px; }
.dm-cps-navy { display: flex; flex-direction: column; gap: 20px; padding: 28px; border-radius: var(--radius-lg); background: var(--grid-blueprint), var(--max-navy-900); border: 1px solid var(--border-inverse); }
.dm-cps-hud { font: 500 10px/1.3 var(--font-mono); letter-spacing: .06em; text-transform: uppercase; color: rgba(111,220,247,.85); }
.dm-cps-hud--split { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px; }
.dm-cps-hud--split > span:nth-child(2) { color: rgba(169,188,211,.7); }
.dm-cps-navy-title { font: 600 15px/1.3 var(--font-display); color: #fff; }
.dm-cps-tl { margin: 0; padding: 0 !important; list-style: none !important; display: flex; flex-direction: column; }
.dm-cps-tl li { position: relative; display: grid; grid-template-columns: 28px minmax(0,1fr); gap: 12px; padding: 0 0 14px; font: 500 14px/1.4 var(--font-sans); color: #fff; }
.dm-cps-tl li:last-child { padding-bottom: 0; }
.dm-cps-tl li:not(:last-child)::before { content: ""; position: absolute; left: 13px; top: 30px; bottom: 2px; width: 1px; background: rgba(169,188,211,.22); }
.dm-cps-tl li > span { width: 28px; height: 28px; border-radius: var(--radius-sm); display: grid; place-items: center; font-size: 14px; border: 1px solid rgba(18,190,242,.55); background: rgba(18,190,242,.14); color: var(--max-cyan-300); }
.dm-cps-tl li { align-items: center; }
.dm-cps-card { display: flex; flex-direction: column; gap: 16px; padding: 24px; border: 1px solid var(--border-1); border-radius: var(--radius-md); background: var(--surface-card); }
.dm-cps-scale { position: relative; height: 28px; }
.dm-cps-scale::before { content: ""; position: absolute; left: 0; right: 0; top: 13px; height: 2px; background: var(--grad-axis); }
.dm-cps-scale i { position: absolute; top: 11px; width: 6px; height: 6px; margin-left: -5px; border-radius: 50%; background: #fff; border: 2px solid var(--accent); box-sizing: content-box; }
.dm-cps-scale i:first-child, .dm-cps-scale i:last-child { top: 9px; width: 10px; height: 10px; box-sizing: border-box; background: var(--max-navy-900); border-color: var(--max-navy-900); }
.dm-cps-scale i:first-child { margin-left: 0; }
.dm-cps-scale i:last-child { margin-left: -10px; }
.dm-cps-ends { display: flex; justify-content: space-between; gap: 16px; }
.dm-cps-ends > span { display: flex; flex-direction: column; gap: 2px; font: 400 13px/1.3 var(--font-sans); color: var(--fg-2); }
.dm-cps-ends > span:last-child { text-align: right; }
.dm-cps-ends b { font: 600 15px/1.2 var(--font-display); color: var(--text-heading); }
.dm-cps-group { display: flex; flex-direction: column; gap: 10px; }
.dm-cps-rows { display: flex; flex-direction: column; gap: 8px; }
.dm-cps-rows > span { display: flex; align-items: center; gap: 12px; padding: 10px 14px; border-radius: var(--radius-sm); border: 1px solid rgba(169,188,211,.28); font: 500 14px/1.3 var(--font-sans); color: #fff; }
.dm-cps-rows .dm-icon { font-size: 16px; color: var(--max-cyan-300); }
.dm-cps-then { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 12px; padding-top: 18px; border-top: 1px dashed rgba(169,188,211,.3); }
.dm-cps-then > span { display: flex; flex-direction: column; align-items: center; gap: 8px; text-align: center; font: 600 13px/1.2 var(--font-display); color: #fff; }
.dm-cps-then i { width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center; font-size: 16px; border: 1px solid rgba(18,190,242,.55); background: rgba(18,190,242,.14); color: var(--max-cyan-300); }
.dm-cps-fin { display: grid; grid-template-columns: repeat(auto-fit, minmax(96px, 1fr)); gap: 12px; }
.dm-cps-fin > span { display: flex; flex-direction: column; gap: 8px; font: 500 13px/1.3 var(--font-sans); color: var(--fg-1); }
.dm-cps-fin i { height: 44px; border-radius: var(--radius-sm); border: 1px solid var(--border-1); }
.dm-cps-fin .is-gold { background: linear-gradient(135deg,#F6DE96,#C9A040 55%,#8E6A1E); }
.dm-cps-fin .is-silver { background: linear-gradient(135deg,#F4F6F9,#B8C0CC 55%,#7E8894); }
.dm-cps-fin .is-bronze { background: linear-gradient(135deg,#EBC08E,#B07A43 55%,#6E4520); }
.dm-cps-fin .is-color { background: var(--max-cyan-500); }
.dm-cps-fin .is-matte { background: #5C6573; }
.dm-cps-foot { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 12px; padding-top: 14px; border-top: 1px dashed var(--border-2); }
.dm-cps-foot--first { padding-top: 0; border-top: 0; }
.dm-cps-foot > .dm-icon { font-size: 14px; color: var(--fg-3); }
.dm-cps-pill { padding: 6px 12px; border-radius: 999px; border: 1px solid var(--border-2); background: var(--bg-subtle); font: 600 13px/1 var(--font-display); }
.dm-cps-pill.is-raised { color: var(--text-heading); text-shadow: 0 1px 0 #fff, 0 -1px 0 rgba(0,0,0,.2); }
.dm-cps-pill.is-recessed { color: var(--fg-2); text-shadow: 0 1px 0 rgba(255,255,255,.9); }
.dm-cps-pill.is-inlaid { color: var(--accent); }
.dm-cps-chip, .dm-cps-chips > span { display: inline-flex; align-items: center; gap: 8px; padding: 8px 12px; border-radius: var(--radius-sm); border: 1px solid var(--border-2); font: 500 13px/1 var(--font-sans); color: var(--fg-1); }
.dm-cps-chip .dm-icon, .dm-cps-chips .dm-icon { font-size: 15px; color: var(--accent); }
.dm-cps-chip.is-struck { text-decoration: line-through; color: var(--fg-3); border-style: dashed; }
.dm-cps-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.dm-cps-split { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px; }
.dm-cps-strong { font: 600 14px/1.3 var(--font-display); color: var(--text-heading); }
.dm-cps-note { display: inline-flex; align-items: center; gap: 8px; font: 500 13px/1.3 var(--font-sans); color: var(--fg-2); }
.dm-cps-note .dm-icon { font-size: 15px; color: var(--accent); }
.dm-cps-math { margin: 0; display: flex; flex-direction: column; gap: 12px; }
.dm-cps-math > div { display: flex; align-items: baseline; gap: 10px; font: 400 13px/1.4 var(--font-mono); }
.dm-cps-math dt { flex: none; color: var(--fg-on-inverse-2); font-weight: 400; }
.dm-cps-math i { flex: 1; min-width: 12px; border-bottom: 1px dotted rgba(169,188,211,.35); transform: translateY(-4px); }
.dm-cps-math dd { margin: 0; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 0 10px; text-align: right; color: #fff; }
.dm-cps-math s { color: rgba(169,188,211,.6); }
.dm-cps-math b { font-weight: 600; color: #fff; }
.dm-cps-math b.is-cyan { color: var(--max-cyan-300); }
.dm-cps-navy-foot { display: flex; align-items: center; gap: 10px; padding-top: 16px; border-top: 1px dashed rgba(169,188,211,.3); font: 600 11px/1 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--max-cyan-300); }
.dm-cps-navy-foot .dm-icon { font-size: 15px; }
.dm-cps-navy-foot--split { flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 8px 16px; }
.dm-cps-navy-foot em { font: 500 10px/1 var(--font-mono); font-style: normal; letter-spacing: .06em; text-transform: uppercase; color: rgba(169,188,211,.75); }
.dm-cps-sizes { display: inline-flex; align-items: baseline; gap: 10px; }
.dm-cps-sizes b { font: 800 14px/1 var(--font-display); color: #fff; }
.dm-cps-sizes b + b { font-size: 30px; }
.dm-cps-letters { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
.dm-cps-letters > div { display: flex; flex-direction: column; gap: 10px; min-width: 0; padding: 18px 14px 16px; border-radius: var(--radius-md); border: 1px solid rgba(169,188,211,.22); background: rgba(255,255,255,.025); }
.dm-cps-letters small { font: 400 12px/1.4 var(--font-sans); color: var(--fg-on-inverse-2); }
.dm-cps-letters .dm-cps-lab { margin-top: 6px; }
.dm-cps-A { display: block; text-align: center; padding-right: 6px; font: 800 64px/1 var(--font-display); font-stretch: var(--display-stretch); }
.dm-cps-A.is-matte { color: #E9EDF2; text-shadow: 1px 1px 0 #B8C0CC, 2px 2px 0 #B8C0CC, 3px 3px 0 #9AA4B2, 4px 4px 0 #9AA4B2, 5px 5px 0 #7E8894, 6px 6px 0 #7E8894; }
.dm-cps-A.is-lit { color: #fff; text-shadow: 1px 1px 0 #B9E9F8, 2px 2px 0 #B9E9F8, 3px 3px 0 #8FD9F2, 4px 4px 0 #8FD9F2, 5px 5px 0 #6FDCF7, 6px 6px 0 #6FDCF7, 0 0 14px rgba(111,220,247,.95), 0 0 36px rgba(18,190,242,.7); }
.dm-cps-flow { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 12px; }
.dm-cps-flow .dm-cps-lab { margin-right: 4px; }
.dm-cps-flow b { font: 600 14px/1.3 var(--font-display); color: var(--text-heading); }
.dm-cps-flow .dm-icon { font-size: 14px; color: var(--fg-3); }
/* trophy example orders */
.dm-cps-qhead { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px 16px; margin-bottom: 28px; font: var(--type-body); color: var(--fg-2); }
.dm-eyebrow-inline.is-light::after { display: none; }
.dm-cps-qty { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%,240px),1fr)); gap: 24px 48px; }
.dm-cps-qty > div { display: flex; flex-direction: column; gap: 8px; padding-top: 20px; border-top: 2px solid var(--max-navy-900); }
.dm-cps-qty b { font: 600 48px/1 var(--font-mono); letter-spacing: -.02em; color: var(--text-heading); }
.dm-cps-qty b small { margin-left: 8px; font: 500 16px/1 var(--font-mono); letter-spacing: 0; color: var(--fg-2); }
.dm-cps-qty strong { font: 600 16px/1.3 var(--font-display); color: var(--text-heading); }
.dm-cps-qty > div > span:last-child:not(.dm-cps-lab) { font: var(--type-body); color: var(--fg-2); }
.dm-cps-qfoot { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 32px; margin-top: 40px; padding: 20px 24px; border: 1px solid var(--border-1); border-radius: var(--radius-md); background: var(--surface-card); }
.dm-cps-qfoot > span { display: inline-flex; align-items: center; gap: 10px; font: 500 14px/1.3 var(--font-sans); color: var(--fg-1); }
.dm-cps-qfoot > span > .dm-icon { font-size: 16px; color: var(--accent); }
.dm-cps-start { flex-wrap: wrap; margin-left: auto; }
.dm-cps-start em { display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px; border-radius: var(--radius-sm); background: var(--max-navy-900); color: var(--max-cyan-300); font: var(--type-spec); font-style: normal; }
.dm-cps-start .dm-icon { font-size: 14px; }
/* gift lithophane */
.dm-litho-btn { display: inline-flex; align-items: center; gap: 8px; min-height: 36px; padding: 8px 12px; border-radius: 999px; border: 1px solid rgba(169,188,211,.35); background: transparent; color: var(--fg-on-inverse-2); cursor: pointer; font: 600 12px/1 var(--font-sans); text-transform: none; letter-spacing: 0; transition: all var(--dur-base) var(--ease-out); }
.dm-litho-btn .dm-icon { font-size: 14px; }
.dm-litho-btn[aria-pressed="true"] { border-color: rgba(18,190,242,.7); background: rgba(18,190,242,.16); color: var(--max-cyan-300); }
.dm-litho-btn[aria-pressed="true"] .dm-icon { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5'/%3E%3Cpath d='M9 18h6'/%3E%3Cpath d='M10 22h4'/%3E%3C/svg%3E"); }
.dm-litho { position: relative; aspect-ratio: 4 / 3; border-radius: var(--radius-md); overflow: hidden; background: #1a2a40; box-shadow: 0 0 0 1px rgba(169,188,211,.25); transition: box-shadow .6s; }
.dm-litho img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: grayscale(1) contrast(.6) brightness(1.25); transition: filter .6s; }
.dm-litho-frost { position: absolute; inset: 0; pointer-events: none; mix-blend-mode: screen; opacity: .78; transition: opacity .7s; background: radial-gradient(circle at 20% 30%, rgba(255,255,255,.35), transparent 40%), radial-gradient(circle at 70% 60%, rgba(255,255,255,.3), transparent 45%), radial-gradient(circle at 45% 85%, rgba(255,255,255,.25), transparent 35%), linear-gradient(135deg, #F4F6F9, #DDE3EA); }
.dm-litho-glow { position: absolute; inset: 0; pointer-events: none; opacity: 0; transition: opacity .7s; background: linear-gradient(180deg, rgba(255,220,160,.25), rgba(255,200,120,.05)); }
.dm-litho.is-lit { box-shadow: 0 0 0 1px rgba(255,236,200,.35), 0 0 60px rgba(255,214,150,.35); }
.dm-litho.is-lit img { filter: grayscale(1) contrast(1.15) brightness(1.05) sepia(.25); }
.dm-litho.is-lit .dm-litho-frost { opacity: .12; }
.dm-litho.is-lit .dm-litho-glow { opacity: 1; }
.dm-litho-cap { font: 400 12px/1.45 var(--font-sans); color: var(--fg-on-inverse-2); }
@media (max-width: 600px) { .dm-cps-navy { padding: 22px 18px; } .dm-cps-math > div { flex-wrap: wrap; } .dm-cps-math i { display: none; } .dm-cps-math dd { justify-content: flex-start; width: 100%; } }
.dm-cph-photo { -webkit-mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent), linear-gradient(180deg, transparent, #000 7%, #000 93%, transparent); -webkit-mask-composite: source-in; mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent), linear-gradient(180deg, transparent, #000 7%, #000 93%, transparent); mask-composite: intersect; }

/* ---- Special events (v1.5.0) ---- */
#ev-cake, #ev-tables, #ev-favors { scroll-margin-top: 110px; }
.dm-evh { background: #F3DCD8 url("https://3dmaxdesign.com/wp-content/uploads/2026/11/hero-cakes.webp") no-repeat right top / cover; }
.dm-evh::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(252,240,238,.92) 0%, rgba(252,240,238,.75) 40%, rgba(252,240,238,0) 62%); }
.dm-evh .et_pb_row:nth-child(2) { min-height: 520px; display: flex; align-items: center; }
.dm-evh-text { max-width: 560px; }
.dm-evh .dm-lead p { color: var(--fg-2); max-width: 540px; }
.dm-evh-mobile { display: none !important; }
.dm-rpp-jump--light a { border-color: var(--border-2); background: rgba(255,255,255,.75); color: var(--text-heading) !important; }
.dm-rpp-jump--light a:hover { border-color: var(--accent); background: #fff; }
.dm-ev-img { display: block; width: 100%; height: auto; border-radius: var(--radius-md); border: 1px solid var(--border-1); }
@media (min-width: 981px) { .dm-ev-flip { flex-direction: row-reverse; } .dm-ev-flip > .et_pb_column:last-child { margin-right: 5.5% !important; } .dm-ev-flip > .et_pb_column:first-child { margin-right: 0 !important; } }
@media (max-width: 1100px) {
  .dm-evh { background: #FCF0EE; }
  .dm-evh::before { display: none; }
  .dm-evh .et_pb_row:nth-child(2) { min-height: 0; }
  .dm-evh-mobile { display: block !important; width: 100% !important; max-width: none !important; margin-top: 40px !important; }
  .dm-evh-photo { height: 520px; background: url("https://3dmaxdesign.com/wp-content/uploads/2026/11/hero-cakes.webp") no-repeat 85% top / cover; }
}
@media (max-width: 767px) { .dm-evh-photo { height: 380px; } }

/* ---- FAQ + Contact (v1.6.0) ---- */
@media (min-width: 981px) { .dm-faq-row { display: flex; align-items: flex-start; } .dm-faq-side { position: sticky; top: 150px; } }
.dm-faq-side .et_pb_module { margin-bottom: 18px !important; }
.dm-faq-side h1 { padding-bottom: 0; font-size: 48px; }
.dm-tabs-bar { display: flex; gap: 4px; overflow-x: auto; border-bottom: 1px solid var(--border-1); scrollbar-width: none; }
.dm-tabs-bar::-webkit-scrollbar { display: none; }
.dm-tabs-bar button { position: relative; flex: none; padding: 12px 14px 14px; border: 0; background: transparent; cursor: pointer; font: 600 15px/1.2 var(--font-sans); color: var(--fg-2); transition: color var(--dur-base) var(--ease-out); }
.dm-tabs-bar button:hover { color: var(--text-heading); }
.dm-tabs-bar button.is-on { color: var(--text-heading); }
.dm-tabs-bar button.is-on::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 2px; background: var(--grad-axis); }
.dm-tabs-panel { margin-top: 8px; }
.dm-fq { border-bottom: 1px solid var(--border-1); }
.dm-fq summary { list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 20px 0; cursor: pointer; font: var(--type-h4); font-stretch: var(--display-stretch); color: var(--text-heading); }
.dm-fq summary::-webkit-details-marker { display: none; }
.dm-fq summary .dm-icon { font-size: 20px; color: var(--accent); transition: transform var(--dur-base) var(--ease-out); }
.dm-fq[open] summary .dm-icon { transform: rotate(45deg); }
.dm-fq p { margin: 0 0 20px; padding: 0 !important; max-width: 680px; font: var(--type-body); color: var(--fg-2); }
.dm-fq-group { margin-top: 40px; }
.dm-fq-group:first-child { margin-top: 16px; }
.dm-fq-ghead { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 6px 16px; padding-bottom: 12px; border-bottom: 2px solid var(--max-navy-900); }
.dm-fq-ghead h2 { margin: 0; padding: 0; font: var(--type-h3); font-stretch: var(--display-stretch); color: var(--text-heading); }
.dm-fq-ghead a { font: var(--type-body-sm); color: var(--accent); text-decoration: none; }
.dm-c-hero .et_pb_text { margin-bottom: 20px !important; }
.dm-c-hero .dm-lead p { max-width: 540px; }
@media (min-width: 981px) { .dm-c-row { display: flex; align-items: flex-start; } }
.dm-c-info { display: flex; flex-direction: column; gap: 16px; }
.dm-c-card { display: flex; gap: 16px; align-items: flex-start; padding: 20px; border: 1px solid var(--border-1); border-radius: var(--radius-md); background: var(--surface-card); }
.dm-c-card .dm-icon-tile { width: 44px; height: 44px; border-radius: var(--radius-sm); font-size: 20px; }
.dm-c-card > span:last-child { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.dm-c-card small { font: var(--type-eyebrow); letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; color: var(--fg-3); }
.dm-c-card b { font: var(--type-h4); font-stretch: var(--display-stretch); color: var(--text-heading); overflow-wrap: anywhere; }
.dm-c-card b a { color: inherit; text-decoration: none; }
.dm-c-card b a:hover { color: var(--accent); }
.dm-c-card em { font: var(--type-body-sm); font-style: normal; color: var(--fg-2); }
.dm-c-band { border-radius: var(--radius-lg); background: var(--bg-subtle); border: 1px solid var(--border-1); }
.dm-c-band h2 { padding-bottom: 0; font: var(--type-h3); font-stretch: var(--display-stretch); }
.dm-c-band .et_pb_module { margin-bottom: 8px !important; }
@media (min-width: 981px) { .dm-c-band { display: flex; align-items: center; } .dm-c-band > .et_pb_column { margin-bottom: 0 !important; } .dm-c-band .et_pb_button_module_wrapper { text-align: right; } }

/* ---- Store (v1.7.0): Shop landing, Products grid, Toys list, toy maker ---- */
.dm-ph { position: relative; display: block; aspect-ratio: 1 / 1; background: repeating-linear-gradient(135deg, var(--bg-subtle) 0 8px, #eaf0f5 8px 16px); }
.dm-ph em { position: absolute; left: 12px; bottom: 10px; font: 400 11px/1 var(--font-mono); font-style: normal; color: var(--fg-3); }
.dm-badge { display: inline-flex; align-items: center; height: 24px; padding: 0 9px; border-radius: var(--radius-xs); font: 600 12px/1 var(--font-sans); color: #fff; background: var(--accent); }
.dm-badge--danger { background: var(--danger); } .dm-badge--success { background: var(--success); } .dm-badge--violet { background: var(--max-violet-500); }
.dm-price { display: inline-flex; align-items: baseline; gap: 8px; }
.dm-price b { font: 700 17px/1 var(--font-sans); color: var(--fg-1); }
.dm-price.is-sale b { color: var(--danger); }
.dm-price s { font: 400 14px/1 var(--font-sans); color: var(--fg-3); }
.dm-price .woocommerce-Price-amount { font: inherit; color: inherit; }
/* landing doors */
.dm-doors { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)); gap: 24px; }
.dm-door { display: flex; flex-direction: column; gap: 24px; padding: 28px; border-radius: 12px; border: 1px solid var(--border-1); background: var(--bg-subtle); color: var(--max-navy-950); text-decoration: none; transition: all var(--dur-base) var(--ease-out); }
.dm-door--toys { background: var(--max-cyan-100); border-radius: 28px; }
.dm-door:hover { transform: translateY(-4px); box-shadow: var(--shadow-3); }
.dm-door-img { overflow: hidden; border-radius: 4px; background: #fff; }
.dm-door--toys .dm-door-img { border-radius: 20px; }
.dm-door-img img { display: block; width: 100%; aspect-ratio: 1448 / 1086; object-fit: cover; transition: transform var(--dur-slow) var(--ease-out); }
.dm-door--toys .dm-door-img img { object-fit: contain; }
.dm-door:hover .dm-door-img img { transform: scale(1.03); }
.dm-door-text { display: flex; flex-direction: column; gap: 10px; }
.dm-door-text small { font: var(--type-eyebrow); letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; color: var(--accent); }
.dm-door-text b { font: 700 38px/1.05 var(--font-display); font-stretch: var(--display-stretch); color: var(--max-navy-950); }
.dm-door-text span { font: var(--type-body); color: var(--fg-2); }
.dm-door-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.dm-door-chips > span { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 999px; background: #fff; border: 1px solid var(--border-1); font: 500 13px/1 var(--font-sans); color: var(--fg-2); }
.dm-door-chips .dm-icon { font-size: 14px; color: var(--accent); }
.dm-door-foot { display: flex; align-items: center; justify-content: space-between; margin-top: auto; padding-top: 16px; border-top: 1px solid var(--border-1); }
.dm-door-foot small { font: var(--type-spec); color: var(--fg-3); }
.dm-door-foot span { display: inline-flex; align-items: center; gap: 8px; font: 600 15px/1 var(--font-display); color: var(--accent); }
.dm-door-foot .dm-icon { font-size: 18px; transition: transform var(--dur-base) var(--ease-out); }
.dm-door:hover .dm-door-foot .dm-icon { transform: translateX(4px); }
.dm-shop-head .et_pb_module { margin-bottom: 12px !important; }
.dm-shop-head h1 { padding-bottom: 0; }
.dm-shop-head .dm-lead p { color: var(--fg-2); }
/* products grid */
.dm-store--grid { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 48px; align-items: start; }
.dm-store-side { display: flex; flex-direction: column; gap: 32px; position: sticky; top: 150px; }
.dm-store-group { display: flex; flex-direction: column; gap: 14px; }
.dm-store-label { font: var(--type-eyebrow); letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; color: var(--fg-3); }
.dm-check { display: flex; align-items: center; gap: 10px; cursor: pointer; font: var(--type-body); color: var(--fg-1); }
.dm-check input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.dm-check-box { width: 20px; height: 20px; flex: none; display: grid; place-items: center; border: 1.5px solid var(--border-2); border-radius: 5px; background: #fff; color: transparent; font-size: 14px; transition: all var(--dur-fast); }
.dm-check input:checked + .dm-check-box { background: var(--accent); border-color: var(--accent); color: #fff; }
.dm-check input:focus-visible + .dm-check-box { box-shadow: var(--ring-focus); }
.dm-tags { display: flex; flex-wrap: wrap; gap: 8px; }
.dm-tag { height: 32px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--border-2); background: #fff; cursor: pointer; font: 500 13px/1 var(--font-sans); color: var(--fg-1); transition: all var(--dur-fast); }
.dm-tag[aria-pressed="true"] { background: var(--max-navy-900); border-color: var(--max-navy-900); color: #fff; }
.dm-store-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 24px; }
.dm-store-count { font: var(--type-spec); color: var(--fg-3); }
.dm-store-tools { display: flex; align-items: center; gap: 12px; }
.dm-store-tools select { width: 200px; height: 36px; padding: 0 32px 0 12px; font: var(--type-body-sm); border: 1.5px solid var(--border-2); border-radius: var(--radius-sm); background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2352606f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 10px center; -webkit-appearance: none; appearance: none; }
.dm-seg { display: inline-flex; padding: 3px; border-radius: var(--radius-sm); background: var(--bg-subtle); border: 1px solid var(--border-1); }
.dm-seg button { display: inline-flex; align-items: center; gap: 6px; height: 28px; padding: 0 12px; border: 0; border-radius: 5px; background: transparent; cursor: pointer; font: 600 13px/1 var(--font-sans); color: var(--fg-2); }
.dm-seg button[aria-pressed="true"] { background: #fff; color: var(--text-heading); box-shadow: var(--shadow-1); }
.dm-pc-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px 24px; }
.dm-pc-grid.is-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.dm-pc[hidden], .dm-toy[hidden] { display: none !important; }
.dm-pc { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.dm-pc-media { position: relative; border-radius: var(--radius-md); overflow: hidden; transition: box-shadow var(--dur-base) var(--ease-out); }
.dm-pc-media > a { display: block; }
.dm-pc-media img, .dm-pc-media .dm-ph { display: block; width: 100%; aspect-ratio: 1 / 1; object-fit: cover; transition: transform var(--dur-slow) var(--ease-out); }
.dm-pc:hover .dm-pc-media { box-shadow: var(--shadow-3); }
.dm-pc:hover .dm-pc-media img, .dm-pc:hover .dm-pc-media .dm-ph { transform: scale(1.03); }
.dm-pc-media .dm-badge { position: absolute; top: 12px; left: 12px; }
.dm-add { display: inline-flex; align-items: center; justify-content: center; gap: 6px; text-decoration: none; cursor: pointer; transition: all var(--dur-base) var(--ease-out); }
.dm-pc-add { position: absolute; right: 12px; bottom: 12px; width: 40px; height: 40px; border-radius: var(--radius-sm); background: var(--accent); color: #fff !important; font-size: 18px; opacity: 0; transform: translateY(6px); }
.dm-pc:hover .dm-pc-add, .dm-pc-add:focus-visible, .dm-pc-add.loading, .dm-pc-add.is-added { opacity: 1; transform: none; }
.dm-pc-add:hover { background: var(--accent-hover); }
.dm-add.loading { opacity: .7 !important; pointer-events: none; }
.dm-add.is-added { background: var(--success) !important; }
.dm-add.is-added .dm-icon { --dm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E"); }
.dm-store .added_to_cart { display: none !important; }
@media (hover: none) { .dm-pc-add { opacity: 1; transform: none; } }
.dm-pc-body { display: flex; flex-direction: column; gap: 4px; }
.dm-pc-cat { font: var(--type-eyebrow); letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; color: var(--accent); }
.dm-pc-title { font: var(--type-h4); font-stretch: var(--display-stretch); color: var(--text-heading) !important; text-decoration: none; }
.dm-pc-title:hover { color: var(--accent) !important; }
.dm-pc-spec { font: var(--type-spec); color: var(--fg-3); }
.dm-pc-body .dm-price { margin-top: 4px; }
.dm-store-empty { display: flex; flex-direction: column; align-items: center; gap: 12px; padding: 56px 24px; text-align: center; border-radius: 24px; background: var(--bg-subtle); }
.dm-store-empty[hidden] { display: none; }
.dm-store-empty > .dm-icon { font-size: 32px; color: var(--fg-3); }
.dm-store-empty b { font: 600 18px/1.2 var(--font-display); color: var(--text-heading); }
@media (max-width: 980px) { .dm-store--grid { grid-template-columns: minmax(0,1fr); gap: 28px; } .dm-store-side { position: static; flex-direction: row; flex-wrap: wrap; gap: 24px 40px; } .dm-store-side .dm-store-group:first-child { display: grid; grid-template-columns: repeat(2, auto); gap: 10px 24px; } .dm-store-side .dm-store-label { grid-column: 1 / -1; } .dm-pc-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 600px) { .dm-pc-grid, .dm-pc-grid.is-list { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 28px 14px; } .dm-seg { display: none; } .dm-store-tools select { width: 170px; } }
/* toys */
.dm-toys-head { display: flex; flex-direction: column; gap: 8px; }
.dm-toys-head .dm-eyebrow-inline { flex-direction: row; align-items: center; gap: 8px; }
.dm-toys-head .dm-eyebrow-inline .dm-icon { font-size: 16px; }
.dm-toys-head .dm-eyebrow-inline::after { display: none; }
.dm-toys-head h1 { margin: 0; padding: 0; font: 800 clamp(32px, 4vw, 48px)/1.05 var(--font-display); font-stretch: var(--display-stretch); color: var(--max-navy-950); text-wrap: balance; }
.dm-toycats { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 20px; }
.dm-toycat { flex: 0 0 auto; display: flex; flex-direction: column; align-items: center; gap: 10px; width: 104px; padding: 16px 8px 14px; border-radius: 22px; cursor: pointer; background: #fff; border: 1px solid var(--border-1); transition: all var(--dur-base) var(--ease-out); }
.dm-toycat > span { width: 48px; height: 48px; border-radius: 24px; display: grid; place-items: center; background: var(--bg-subtle); color: var(--accent); font-size: 24px; }
.dm-toycat b { font: 600 14px/1.15 var(--font-display); color: var(--fg-1); text-align: center; }
.dm-toycat:hover { border-color: var(--border-2); }
.dm-toycat.is-on { background: var(--max-navy-950); border-color: var(--max-navy-950); transform: translateY(-3px); box-shadow: var(--shadow-2); }
.dm-toycat.is-on > span { background: rgba(255,255,255,.12); color: #fff; }
.dm-toycat.is-on b { color: #fff; }
.dm-toycat-select { display: none; position: relative; margin-bottom: 16px; }
.dm-toycat-select > span { position: absolute; left: 8px; top: 50%; transform: translateY(-50%); width: 36px; height: 36px; border-radius: 18px; display: grid; place-items: center; background: var(--bg-subtle); color: var(--accent); font-size: 18px; pointer-events: none; }
.dm-toycat-select select { width: 100%; height: 52px; padding: 0 40px 0 54px; border-radius: 16px; border: 1.5px solid var(--border-2); font: 600 16px/1 var(--font-display); color: var(--max-navy-950); background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%2352606f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center; -webkit-appearance: none; appearance: none; }
.dm-toysubs { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: -6px 0 24px; padding: 12px 14px; border-radius: 18px; background: var(--bg-subtle); }
.dm-toysubs[hidden] { display: none; }
.dm-toysubs > span { margin-right: 4px; font: 600 12px/1 var(--font-display); letter-spacing: .04em; text-transform: uppercase; color: var(--fg-3); }
.dm-toysubs button { display: inline-flex; align-items: center; gap: 8px; height: 40px; padding: 0 16px 0 12px; border-radius: 999px; cursor: pointer; background: #fff; border: 1px solid var(--border-1); font: 600 14px/1 var(--font-display); color: var(--fg-1); transition: all var(--dur-fast); }
.dm-toysubs button .dm-icon { font-size: 16px; color: var(--accent); }
.dm-toysubs button.is-on { background: var(--max-navy-950); border-color: var(--max-navy-950); color: #fff; }
.dm-toysubs button.is-on .dm-icon { color: #fff; }
.dm-toybar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 28px; }
.dm-toysearch { flex: 1 1 320px; max-width: 620px; display: flex; flex-wrap: wrap; gap: 8px; }
.dm-toysearch-field { flex: 1 1 200px; position: relative; }
.dm-toysearch-field > .dm-icon { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); font-size: 18px; color: var(--fg-3); }
.dm-toysearch input { width: 100%; height: 44px; padding: 0 12px 0 40px; border: 1.5px solid var(--border-2); border-radius: var(--radius-sm); font: var(--type-body); color: var(--fg-1); background: #fff; }
.dm-toysearch input:focus { border-color: var(--max-blue-500); box-shadow: var(--ring-focus); outline: none; }
.dm-toybar .dm-q-btn[hidden] { display: none; }
.dm-toylist { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; }
.dm-toy { display: grid; grid-template-columns: 200px minmax(0, 1fr) 200px; gap: 24px; align-items: start; padding: 16px; border-radius: 22px; background: #fff; border: 1px solid var(--border-1); box-shadow: var(--shadow-1); transition: all var(--dur-base) var(--ease-out); }
.dm-toy:hover { border-color: var(--border-2); box-shadow: var(--shadow-2); }
.dm-toy-img { position: relative; display: grid; place-items: center; aspect-ratio: 1 / 1; border-radius: 16px; overflow: hidden; background: var(--tone-bg); color: var(--tone-fg); }
.dm-toy-img img { width: 100%; height: 100%; object-fit: cover; }
.dm-toy-ico { display: grid; place-items: center; width: 100%; height: 100%; font-size: 88px; transition: transform var(--dur-base) var(--ease-out); }
.dm-toy:hover .dm-toy-ico { transform: scale(1.08); }
.dm-toy.is-moving:hover .dm-toy-ico { animation: dmToyWiggle .6s ease-in-out infinite; }
@keyframes dmToyWiggle { 0%, 100% { transform: rotate(0); } 25% { transform: rotate(-6deg); } 75% { transform: rotate(6deg); } }
.dm-tone--cyan { --tone-bg: #E3F8FE; --tone-fg: #0A86D6; } .dm-tone--violet { --tone-bg: #EFEBFE; --tone-fg: #7A5CF0; } .dm-tone--amber { --tone-bg: #FDF1D6; --tone-fg: #B87A00; } .dm-tone--green { --tone-bg: #DDF5EA; --tone-fg: #12875A; }
.dm-toy-info { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; min-width: 0; padding-top: 4px; }
.dm-toy-title { font: 700 20px/1.2 var(--font-display); color: var(--max-navy-950) !important; text-decoration: none; }
.dm-toy-title:hover { color: var(--accent) !important; }
.dm-toy-spec { font: var(--type-spec); color: var(--fg-3); }
.dm-toy-age { margin-top: 4px; padding: 4px 9px; border-radius: 999px; background: var(--bg-muted); font: 600 11px/1 var(--font-mono); color: var(--fg-2); }
.dm-toy-buy { align-self: stretch; display: flex; flex-direction: column; justify-content: center; align-items: flex-end; gap: 12px; padding-left: 24px; border-left: 1px solid var(--border-1); text-align: right; }
.dm-toy-buy > div { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; }
.dm-toy-buy .dm-price b { font-size: 24px; }
.dm-toy-ships { display: inline-flex; align-items: center; gap: 5px; font: 500 12px/1 var(--font-sans); color: var(--fg-3); }
.dm-toy-ships .dm-icon { font-size: 13px; }
.dm-toy-add { height: 40px; padding: 0 18px; border-radius: 20px; background: var(--max-navy-950); color: #fff !important; white-space: nowrap; font: 600 14px/1 var(--font-display); }
.dm-toy-add .dm-icon { font-size: 16px; }
.dm-toy-add:hover { background: var(--accent); }
@media (max-width: 1024px) { .dm-toy { grid-template-columns: 150px minmax(0,1fr); gap: 18px; } .dm-toy-img { grid-row: 1 / span 2; } .dm-toy-buy { grid-column: 2; flex-direction: row; align-items: center; justify-content: space-between; text-align: left; padding: 12px 0 0; border-left: 0; border-top: 1px solid var(--border-1); } .dm-toy-buy > div { align-items: flex-start; } }
@media (max-width: 768px) { .dm-toycats { display: none; } .dm-toycat-select { display: block; } .dm-toy { grid-template-columns: 104px minmax(0,1fr); gap: 12px; padding: 12px; border-radius: 18px; } .dm-toy-ico { font-size: 48px; } .dm-toy-title { font-size: 16px; } .dm-toy-spec { font-size: 11px; line-height: 1.35; } .dm-toy-buy .dm-price b { font-size: 18px; } .dm-toy-buy { flex-wrap: wrap; gap: 8px 12px; } .dm-toy-ships { display: none; } .dm-toy-add { height: 44px; border-radius: 22px; padding: 0 16px; } }
/* toy maker band */
.dm-tm-section .dm-tm-pill { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border-radius: 999px; background: #fff; font: 600 13px/1 var(--font-display); color: var(--accent); }
.dm-tm-section h2 { padding: 0; font: 800 clamp(40px, 5vw, 64px)/1 var(--font-display); font-stretch: var(--display-stretch); color: var(--max-navy-950); text-wrap: balance; }
.dm-tm-section .dm-paras p { max-width: 460px; }
.dm-tm-trust { display: flex; flex-wrap: wrap; gap: 10px 22px; }
.dm-tm-trust span { display: inline-flex; align-items: center; gap: 8px; font: 500 14px/1 var(--font-sans); color: var(--fg-2); }
.dm-tm-trust .dm-icon { font-size: 18px; color: var(--success); }
.dm-tm-section .et_pb_text { margin-bottom: 20px !important; }
@media (min-width: 981px) { .dm-tm-row { display: flex; align-items: center; } }
/* cart toast */
.dm-cart-toast { align-items: center; }
.dm-cart-toast em { font-style: normal; }
.dm-cart-toast .dm-q-btn { min-height: 34px; padding: 0 12px; font-size: 13px; background: #fff; color: var(--max-navy-950) !important; text-decoration: none; border-radius: var(--radius-sm); }

/* ---- Product page (v1.8.0) ---- */
.single-product #main-content .container { width: 90%; max-width: 1240px; padding-top: 32px; }
.single-product #main-content .container::before { display: none; }
.single-product #left-area { width: 100%; padding: 0 !important; float: none; }
.single-product #sidebar { display: none; }
.dm-pp-crumbs { margin-bottom: 28px; }
.dm-pp-crumbs p { padding: 0; }
.woocommerce div.product { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 56px; align-items: start; }
.woocommerce div.product > * { grid-column: 1 / -1; }
.woocommerce div.product > .woocommerce-product-gallery, .woocommerce div.product > .summary { grid-column: auto; width: 100% !important; float: none !important; margin: 0 !important; }
.woocommerce div.product .woocommerce-product-gallery { position: relative; }
.woocommerce div.product .woocommerce-product-gallery__wrapper { margin: 0; }
.woocommerce div.product .woocommerce-product-gallery__image img, .woocommerce div.product .woocommerce-product-gallery__image--placeholder img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; border-radius: var(--radius-md); background: var(--bg-subtle); }
.woocommerce div.product .flex-control-thumbs { display: grid !important; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-top: 12px !important; }
.woocommerce div.product .flex-control-thumbs li { width: auto !important; float: none !important; margin: 0 !important; }
.woocommerce div.product .flex-control-thumbs img { border-radius: var(--radius-md); opacity: 1 !important; aspect-ratio: 1 / 1; object-fit: cover; outline-offset: 2px; }
.woocommerce div.product .flex-control-thumbs img.flex-active { outline: 2px solid var(--accent); }
.woocommerce div.product .woocommerce-product-gallery__trigger { top: 12px !important; right: 12px !important; }
.woocommerce span.onsale { display: none !important; }
.woocommerce div.product .summary { display: flex; flex-direction: column; gap: 22px; }
.woocommerce div.product .summary > * { margin: 0 !important; }
.dm-pp-head { display: flex; flex-direction: column; gap: 10px; }
.dm-pp-cat { font: var(--type-eyebrow); letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; color: var(--accent) !important; text-decoration: none; }
.woocommerce div.product .dm-pp-head h1 { margin: 0; padding: 0; font: var(--type-h1); font-stretch: var(--display-stretch); color: var(--text-heading); }
.dm-pp-price { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.dm-pp-price .dm-price b { font-size: 26px; }
.dm-pp-price .dm-price s { font-size: 18px; }
.dm-stock { display: inline-flex; align-items: center; gap: 6px; height: 24px; padding: 0 9px; border-radius: var(--radius-xs); background: var(--success-soft); color: var(--success); font: 600 12px/1 var(--font-sans); }
.dm-stock::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.dm-stock.is-out { background: var(--bg-muted); color: var(--fg-3); }
.dm-pp-lead p { margin: 0; padding: 0; font: var(--type-body-lg); color: var(--fg-2); }
.dm-pp-colors { margin: 0 0 20px; padding: 0; border: 0; display: flex; flex-direction: column; gap: 10px; flex-basis: 100%; }
.dm-pp-colors legend { padding: 0; margin-bottom: 10px; font: var(--type-label); color: var(--fg-1); }
.dm-pp-colors legend span { font-weight: 400; color: var(--fg-2); }
.dm-pp-colors > div { display: flex; flex-wrap: wrap; gap: 10px; }
.dm-pp-colors small { font: var(--type-body-sm); color: var(--fg-3); }
.dm-sw { position: relative; cursor: pointer; }
.dm-sw input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.dm-sw i { display: grid; place-items: center; min-width: 36px; height: 36px; border-radius: 18px; background: var(--sw, #fff); border: 1px solid var(--border-2); font: 500 13px/1 var(--font-sans); font-style: normal; color: var(--fg-1); transition: box-shadow var(--dur-fast); }
.dm-sw.is-named i { padding: 0 14px; }
.dm-sw input:checked + i { box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--accent); }
.dm-sw input:focus-visible + i { box-shadow: var(--ring-focus); }
.woocommerce div.product form.cart { display: flex; flex-wrap: wrap; align-items: stretch; gap: 12px; margin: 0 !important; }
.woocommerce div.product form.cart::before, .woocommerce div.product form.cart::after { display: none; }
.woocommerce div.product form.cart .quantity { float: none; margin: 0 !important; }
.woocommerce .quantity input.qty { width: 120px; height: 48px; padding: 0 12px; border: 1.5px solid var(--border-2) !important; border-radius: var(--radius-sm); background: #fff !important; font: 600 16px/1 var(--font-mono) !important; color: var(--fg-1) !important; text-align: center; }
.woocommerce div.product form.cart .button.single_add_to_cart_button { flex: 1; height: 48px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 0 24px !important; float: none; font: 600 16px/1 var(--font-display) !important; }
.woocommerce div.product form.cart .button.single_add_to_cart_button::before { content: ""; width: 18px; height: 18px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='21' r='1'/%3E%3Ccircle cx='19' cy='21' r='1'/%3E%3Cpath d='M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h9.78a2 2 0 0 0 1.95-1.57l1.65-7.43H5.12'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='21' r='1'/%3E%3Ccircle cx='19' cy='21' r='1'/%3E%3Cpath d='M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h9.78a2 2 0 0 0 1.95-1.57l1.65-7.43H5.12'/%3E%3C/svg%3E") center / contain no-repeat; }
.woocommerce div.product form.cart .button.single_add_to_cart_button::after { display: none !important; }
.dm-pp-trust { display: flex; flex-wrap: wrap; gap: 12px 24px; padding: 16px 0; border-top: 1px solid var(--border-1); border-bottom: 1px solid var(--border-1); }
.dm-pp-trust span { display: inline-flex; align-items: center; gap: 8px; font: var(--type-body-sm); color: var(--fg-2); }
.dm-pp-trust .dm-icon { font-size: 18px; color: var(--accent); }
.woocommerce div.product .woocommerce-tabs { max-width: 820px; margin-top: 16px; }
.woocommerce div.product .woocommerce-tabs ul.tabs { display: flex; gap: 4px; margin: 0 !important; padding: 0 !important; border-bottom: 1px solid var(--border-1) !important; background: transparent !important; overflow-x: auto; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { position: relative; margin: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; border-radius: 0 !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { display: block; padding: 12px 14px 14px !important; font: 600 15px/1.2 var(--font-sans) !important; color: var(--fg-2) !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--text-heading) !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active::after { content: "" !important; display: block !important; position: absolute; left: 0; right: 0; bottom: -1px; width: auto !important; height: 2px !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; background: var(--grad-axis); }
.woocommerce div.product .woocommerce-tabs .panel { margin: 0 !important; padding: 24px 0 0 !important; border: 0 !important; background: transparent !important; }
.woocommerce div.product .woocommerce-tabs .panel > h2:first-child { display: none; }
.dm-pp-desc p, .dm-pp-ship { margin: 0 0 12px; padding: 0; font: var(--type-body); color: var(--fg-2); }
.dm-pp-desc a, .dm-pp-ship a { color: var(--accent); }
.dm-pp-specs { display: grid; grid-template-columns: minmax(140px, 220px) 1fr; margin: 0; border: 1px solid var(--border-1); border-radius: var(--radius-md); overflow: hidden; }
.dm-pp-specs dt, .dm-pp-specs dd { margin: 0; padding: 12px 16px; border-top: 1px solid var(--border-1); }
.dm-pp-specs dt:first-of-type, .dm-pp-specs dt:first-of-type + dd { border-top: 0; }
.dm-pp-specs dt { background: var(--bg-subtle); font: var(--type-label); color: var(--fg-1); }
.dm-pp-specs dd { font: var(--type-spec); font-size: 14px; color: var(--fg-1); }
.dm-pp-related { margin-top: 72px; }
.dm-pp-related-head { display: flex; flex-direction: column; gap: 14px; margin-bottom: 32px; }
.dm-pp-related-head h2 { margin: 0; padding: 0; font: var(--type-h2); font-stretch: var(--display-stretch); color: var(--text-heading); }
.dm-pc-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.single-product .woocommerce-notices-wrapper .woocommerce-message, .single-product .woocommerce-error { grid-column: 1 / -1; }
@media (max-width: 980px) {
  .woocommerce div.product { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .dm-pc-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .woocommerce div.product .dm-pp-head h1 { font-size: 34px; }
}
#main-content .woocommerce-message, #main-content .woocommerce-info, #main-content .woocommerce-error { margin-bottom: 24px; padding: 14px 18px !important; border-radius: var(--radius-md); background: var(--bg-subtle) !important; color: var(--fg-1) !important; border: 1px solid var(--border-1); font: var(--type-body); }
#main-content .woocommerce-message::before, #main-content .woocommerce-info::before, #main-content .woocommerce-error::before { display: none; }
#main-content .woocommerce-message .button { float: right; }
.woocommerce div.product .woocommerce-tabs { border: 0 !important; padding: 0 !important; background: transparent !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs { width: 100%; }
.single-product #main-content .container { padding-bottom: 96px; }
.single-product #main-content { background: #fff; }

/* ---- Cart, checkout, account (v1.9.0) ---- */
.dm-wc-page #main-content .container { width: 90%; max-width: 1240px; padding-top: 32px; padding-bottom: 96px; }
.dm-wc-page #main-content .container::before { display: none; }
.dm-wc-page #left-area { width: 100%; padding: 0 !important; float: none; }
.dm-wc-page #sidebar, .dm-wc-page .entry-title.main_title, .dm-wc-page article > h1.entry-title { display: none; }
.dm-wc-page article.page { padding: 0; margin: 0; }
.dm-wc-head { display: flex; flex-direction: column; gap: 24px; margin-bottom: 40px; }
.dm-wc-head .dm-crumbs p { padding: 0; }
.dm-wc-head h1 { margin: 0; padding: 0; font: var(--type-h1); font-stretch: var(--display-stretch); color: var(--text-heading); }
.dm-wc-page .wp-block-woocommerce-cart, .dm-wc-page .wp-block-woocommerce-checkout { max-width: none; margin: 0; padding: 0; }
/* shared block pieces */
.dm-wc-page .wc-block-components-button:not(.is-link) { min-height: 48px; border-radius: var(--radius-sm) !important; background: var(--accent) !important; color: #fff !important; border: 0 !important; font: 600 16px/1 var(--font-display) !important; text-decoration: none !important; box-shadow: none; transition: background var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast); }
.dm-wc-page .wc-block-components-button:not(.is-link):hover { background: var(--accent-hover) !important; box-shadow: var(--shadow-glow); }
.dm-wc-page .wc-block-components-button.is-link, .dm-wc-page .wc-block-components-panel__button { color: var(--accent) !important; font-weight: 600; }
.dm-wc-page .wc-block-components-title, .dm-wc-page .wc-block-components-checkout-step__title { font: var(--type-h4) !important; font-stretch: var(--display-stretch) !important; color: var(--text-heading) !important; text-transform: none !important; }
.dm-wc-page .wc-block-components-text-input input, .dm-wc-page .wc-block-components-combobox .components-combobox-control__input, .dm-wc-page .wc-blocks-components-select .wc-blocks-components-select__select, .dm-wc-page .wc-block-components-textarea, .dm-wc-page .wc-block-components-text-input textarea { border: 1.5px solid var(--border-2) !important; border-radius: var(--radius-sm) !important; background: #fff !important; color: var(--fg-1) !important; font-family: var(--font-sans) !important; box-shadow: none !important; }
.dm-wc-page .wc-block-components-text-input.is-active input:focus, .dm-wc-page .wc-block-components-text-input input:focus, .dm-wc-page .wc-blocks-components-select__select:focus { border-color: var(--max-blue-500) !important; box-shadow: var(--ring-focus) !important; }
.dm-wc-page .wc-block-components-text-input label, .dm-wc-page .wc-blocks-components-select__label { color: var(--fg-3) !important; font-family: var(--font-sans) !important; }
.dm-wc-page .wc-block-components-radio-control__input:checked, .dm-wc-page .wc-block-components-checkbox__input:checked { border-color: var(--accent) !important; background-color: var(--accent) !important; }
.dm-wc-page .wc-block-components-radio-control__input:checked::before { background: #fff !important; }
.dm-wc-page .wc-block-components-checkbox__mark { fill: #fff !important; }
.dm-wc-page .wc-block-components-product-name { font: var(--type-h4) !important; font-stretch: var(--display-stretch) !important; color: var(--text-heading) !important; text-decoration: none !important; }
.dm-wc-page a.wc-block-components-product-name:hover { color: var(--accent) !important; }
.dm-wc-page .wc-block-components-product-metadata, .dm-wc-page .wc-block-components-product-details { font: var(--type-body-sm); color: var(--fg-3); }
.dm-wc-page .wc-block-components-product-details__name { font-weight: 600; color: var(--fg-2); }
.dm-wc-page .wc-block-components-product-price, .dm-wc-page .wc-block-formatted-money-amount { font-family: var(--font-sans); }
.dm-wc-page .wc-block-components-sale-badge { border-radius: var(--radius-xs); border: 0; background: var(--danger); color: #fff; font-weight: 600; }
.dm-wc-page .wc-block-components-totals-item { font: var(--type-body); color: var(--fg-2); }
.dm-wc-page .wc-block-components-totals-footer-item { color: var(--fg-1); }
.dm-wc-page .wc-block-components-totals-footer-item .wc-block-components-totals-item__label, .dm-wc-page .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font: 700 20px/1 var(--font-sans) !important; }
.dm-wc-page .wc-block-components-totals-wrapper { border-color: var(--border-1) !important; }
.dm-wc-page img.wc-block-components-product-image, .dm-wc-page .wc-block-cart-item__image img, .dm-wc-page .wc-block-components-order-summary-item__image img { border-radius: var(--radius-sm); background: var(--bg-subtle); aspect-ratio: 1 / 1; object-fit: cover; }
.dm-wc-page .wc-block-components-notice-banner { border-radius: var(--radius-md); font-family: var(--font-sans); }
/* cart */
.dm-wc-page .wc-block-cart { gap: 48px; }
.dm-wc-page .wc-block-cart .wc-block-cart-items { border: 0 !important; }
.dm-wc-page .wc-block-cart-items__header th { padding: 0 0 12px !important; font: var(--type-eyebrow) !important; letter-spacing: var(--tracking-eyebrow) !important; text-transform: uppercase; color: var(--fg-3) !important; border-bottom: 1px solid var(--border-1) !important; }
.dm-wc-page .wc-block-cart-items__row td { padding-top: 20px !important; padding-bottom: 20px !important; border-top: 0 !important; border-bottom: 1px solid var(--border-1) !important; }
.dm-wc-page .wc-block-cart-item__image { width: 96px !important; }
.dm-wc-page .wc-block-cart-item__total .wc-block-components-product-price__value { font: 700 16px/1 var(--font-sans); color: var(--fg-1); }
.dm-wc-page .wc-block-components-quantity-selector { height: 36px; border: 1.5px solid var(--border-2) !important; border-radius: var(--radius-sm) !important; background: #fff; }
.dm-wc-page .wc-block-components-quantity-selector::after { display: none !important; }
.dm-wc-page .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input { font: 600 15px/1 var(--font-mono) !important; color: var(--fg-1) !important; border: 0 !important; box-shadow: none !important; background: transparent !important; }
.dm-wc-page .wc-block-components-quantity-selector__button { color: var(--max-navy-950) !important; opacity: 1 !important; background: transparent !important; }
.dm-wc-page .wc-block-cart-item__remove-link { color: var(--fg-3) !important; font: var(--type-body-sm) !important; text-decoration: underline !important; }
.dm-wc-page .wc-block-cart-item__remove-link:hover { color: var(--danger) !important; }
.dm-wc-page .wc-block-cart__sidebar .wp-block-woocommerce-cart-totals-block, .dm-wc-page .wc-block-cart__sidebar > .wc-block-components-sidebar-layout__sidebar { padding: 28px !important; border: 1px solid var(--border-1); border-radius: var(--radius-md); background: var(--surface-card); }
.dm-wc-page .wc-block-cart__totals-title { padding: 0 0 12px !important; font: var(--type-h3) !important; font-stretch: var(--display-stretch) !important; text-transform: none !important; color: var(--text-heading) !important; }
.dm-wc-page .wc-block-cart__submit-container { margin-top: 8px; }
.dm-wc-page .wc-block-cart__submit-button { width: 100%; }
.dm-wc-page .wc-block-cart__payment-options { margin-top: 12px; text-align: center; }
.dm-empty-title { margin: 72px 0 12px !important; padding: 0 !important; font: var(--type-h1) !important; font-stretch: var(--display-stretch) !important; color: var(--text-heading); }
.dm-empty-text { margin: 0 0 24px !important; color: var(--fg-2); font: var(--type-body-lg); }
.dm-empty-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-bottom: 48px; }
.dm-empty-actions .dm-q-btn { text-decoration: none; }
.woocommerce-cart .dm-wc-page .wp-block-woocommerce-empty-cart-block ~ * { display: none; }
/* checkout */
.dm-wc-page .wc-block-checkout { gap: 48px; }
.dm-wc-page .wc-block-checkout__sidebar { padding: 28px !important; border: 1px solid var(--border-1); border-radius: var(--radius-md); background: var(--surface-card); align-self: start; }
.dm-wc-page .wc-block-components-checkout-place-order-button { width: 100%; min-height: 52px; }
.dm-wc-page .wc-block-checkout__actions_row .wc-block-components-checkout-return-to-cart-button { color: var(--fg-2) !important; }
.dm-wc-page .wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted, .dm-wc-page .wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted { box-shadow: inset 0 0 0 1.5px var(--accent) !important; border-radius: var(--radius-sm); }
.dm-wc-page .wc-block-components-express-payment__title-container { font-family: var(--font-display); }
/* my account (classic) */
.woocommerce-account .dm-wc-page .woocommerce, .dm-wc-page .woocommerce { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 48px; align-items: start; }
.dm-wc-page .woocommerce > .woocommerce-notices-wrapper { grid-column: 1 / -1; }
.dm-wc-page .woocommerce-MyAccount-navigation, .dm-wc-page .woocommerce-MyAccount-content { width: auto !important; float: none !important; }
.dm-wc-page .woocommerce-MyAccount-navigation ul { margin: 0; padding: 0 !important; list-style: none; display: flex; flex-direction: column; gap: 4px; }
.dm-wc-page .woocommerce-MyAccount-navigation li a { display: block; padding: 10px 14px; border-radius: var(--radius-sm); font: 600 15px/1.2 var(--font-sans); color: var(--fg-2); text-decoration: none; }
.dm-wc-page .woocommerce-MyAccount-navigation li a:hover { background: var(--bg-subtle); color: var(--text-heading); }
.dm-wc-page .woocommerce-MyAccount-navigation li.is-active a { background: var(--accent-soft); color: var(--accent); }
.dm-wc-page .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a { color: var(--fg-3); }
.dm-wc-page .woocommerce-MyAccount-content p, .dm-wc-page .woocommerce-MyAccount-content td, .dm-wc-page .woocommerce-MyAccount-content th { font: var(--type-body); color: var(--fg-2); }
.dm-wc-page .woocommerce-MyAccount-content a { color: var(--accent); }
.dm-wc-page table.shop_table { border: 1px solid var(--border-1) !important; border-radius: var(--radius-md) !important; border-collapse: separate; overflow: hidden; }
.dm-wc-page table.shop_table th { background: var(--bg-subtle); font: var(--type-eyebrow) !important; letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; color: var(--fg-3) !important; }
.dm-wc-page .woocommerce form.login, .dm-wc-page .woocommerce form.register, .dm-wc-page .woocommerce form.lost_reset_password { margin: 0; padding: 28px; border: 1px solid var(--border-1); border-radius: var(--radius-md); background: var(--surface-card); }
.dm-wc-page .woocommerce form .form-row input.input-text, .dm-wc-page .woocommerce form .form-row select, .dm-wc-page .woocommerce form .form-row textarea { height: 44px; padding: 0 12px; }
.dm-wc-page .woocommerce form .form-row textarea { height: auto; padding: 10px 12px; }
.dm-wc-page .woocommerce form .form-row label { font: var(--type-label); color: var(--fg-1); }
.dm-wc-page .woocommerce .col2-set .col-1, .dm-wc-page .woocommerce .col2-set .col-2 { width: 100%; float: none; }
.dm-wc-page .woocommerce:has(> .u-columns), .dm-wc-page .woocommerce:has(> form.login) { grid-template-columns: minmax(0, 1fr); max-width: 520px; }
.dm-wc-page .woocommerce .u-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.dm-wc-page .woocommerce:has(> .u-columns) { max-width: 1000px; }
.dm-wc-page .woocommerce h2 { font: var(--type-h3); font-stretch: var(--display-stretch); color: var(--text-heading); padding-bottom: 16px; }
.dm-wc-page .woocommerce button.button { min-height: 44px; padding: 0 20px !important; background: var(--accent) !important; color: #fff !important; border: 0 !important; font: 600 15px/1 var(--font-display) !important; }
.dm-wc-page .woocommerce button.button::after { display: none !important; }
@media (max-width: 980px) { .dm-wc-page .woocommerce, .dm-wc-page .woocommerce .u-columns { grid-template-columns: minmax(0, 1fr); gap: 28px; } .dm-wc-head h1 { font-size: 36px; } }
.dm-wc-page .wc-block-checkout__sidebar { padding: 0 !important; border: 0; background: transparent; }
.dm-wc-page .wp-block-woocommerce-checkout-order-summary-block { border: 1px solid var(--border-1) !important; border-radius: var(--radius-md) !important; background: var(--surface-card); }
.dm-wc-page .wc-block-components-checkout-order-summary__title-text { font: var(--type-h4) !important; font-stretch: var(--display-stretch) !important; color: var(--text-heading); }
.dm-wc-page .wc-block-components-product-metadata__description { display: none; }
.dm-wc-page .woocommerce form .form-row input.input-text, .dm-wc-page .woocommerce form .form-row select, .dm-wc-page .woocommerce form .form-row textarea, .dm-wc-page .woocommerce .password-input input { background: #fff !important; border: 1.5px solid var(--border-2) !important; border-radius: var(--radius-sm) !important; color: var(--fg-1) !important; box-shadow: none !important; }
.dm-wc-page .woocommerce form .form-row input.input-text:focus { border-color: var(--max-blue-500) !important; box-shadow: var(--ring-focus) !important; }
.dm-wc-page .woocommerce form.login .woocommerce-LostPassword { margin: 12px 0 0; }
.dm-wc-page .woocommerce-notices-wrapper:empty { display: none; }

/* ---- Legal pages (v1.10.0) ---- */
.dm-legal-hero .et_pb_text { margin-bottom: 18px !important; }
.dm-legal-hero .dm-lead p { max-width: 600px; }
.dm-legal-date p { font: var(--type-spec); color: var(--max-cyan-300); }
@media (min-width: 981px) { .dm-legal-row { display: flex; align-items: flex-start; } .dm-legal-side { position: sticky; top: 140px; } }
.dm-legal-nav { display: flex; flex-direction: column; gap: 2px; }
.dm-legal-nav > span { margin-bottom: 10px; font: var(--type-eyebrow); letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; color: var(--fg-3); }
.dm-legal-nav a { padding: 7px 0 7px 14px; border-left: 2px solid var(--border-1); font: var(--type-body-sm); color: var(--fg-2); text-decoration: none; transition: color var(--dur-fast), border-color var(--dur-fast); }
.dm-legal-nav a:hover { color: var(--text-heading); }
.dm-legal-nav a.is-on { border-left-color: var(--accent); color: var(--fg-1); font-weight: 600; }
.dm-legal-body { max-width: 760px; }
.dm-legal-sec { margin-bottom: 48px !important; scroll-margin-top: 120px; }
.dm-legal-sec h2 { margin: 0 0 14px; padding: 0 0 12px; border-bottom: 2px solid var(--max-navy-900); font: var(--type-h3); font-stretch: var(--display-stretch); color: var(--text-heading); }
.dm-legal-sec p { margin: 0 0 14px; padding: 0; font: var(--type-body); color: var(--fg-2); text-wrap: pretty; }
.dm-legal-sec p:last-child { margin-bottom: 0; }
@media (max-width: 980px) { .dm-legal-side { display: none; } }

/* ---- Product color parts (v1.11.0) ---- */
.dm-pp-parts { display: flex; flex-direction: column; gap: 18px; flex-basis: 100%; margin-bottom: 20px; }
.dm-pp-parts .dm-pp-colors { margin: 0; }
.dm-pp-shade { font: var(--type-body-sm); color: var(--fg-3); }
.dm-sw--custom i { gap: 6px; padding: 0 14px; background: #fff; border-style: dashed; font: var(--type-body-sm); color: var(--fg-1); }
.dm-sw--custom .dm-icon { font-size: 14px; }
.dm-sw-custom { max-width: 360px; height: 44px; margin-top: 10px; padding: 0 14px; border: 1.5px solid var(--border-2); border-radius: var(--radius-sm); font: var(--type-body); color: var(--fg-1); background: #fff; }
.dm-sw-custom[hidden] { display: none; }
.dm-pp-need { font: var(--type-body-sm); color: var(--fg-2); }
.dm-pp-need[hidden] { display: none; }
.woocommerce div.product form.cart .button.single_add_to_cart_button:disabled, .woocommerce div.product form.cart .button.single_add_to_cart_button.disabled { opacity: .45 !important; cursor: not-allowed; }
.dm-sw--custom i { display: inline-flex; align-items: center; white-space: nowrap; }

/* ===== How it works (home): outlined-number list on white ===== */
.et_pb_section.dm-how { background-color: var(--bg-page) !important; background-image: none !important; border: 0 !important; border-top: 1px solid var(--border-1) !important; }
.dm-how .dm-eyebrow, .dm-how .dm-eyebrow p { color: var(--accent) !important; }
.dm-how h2 { color: var(--text-heading) !important; }
.dm-how .dm-grid--steps > .et_pb_column { counter-reset: dmstep; }
.dm-how .dm-step { counter-increment: dmstep; display: grid; grid-template-columns: 70px auto minmax(0, 1fr); grid-template-areas: "num ico title" "num txt txt"; column-gap: 10px; row-gap: 6px; align-items: center; padding: 18px 24px 18px 0; border-top: 1px solid var(--border-1); border-bottom: 1px solid var(--border-1); box-sizing: border-box; height: 100%; }
.dm-how .dm-step::before { content: counter(dmstep, decimal-leading-zero); grid-area: num; align-self: start; white-space: nowrap; font: 800 40px/1 var(--font-display); font-stretch: var(--display-stretch); color: transparent; -webkit-text-stroke: 1.5px var(--accent); }
.dm-how .dm-step-top { grid-area: ico; display: flex; }
.dm-how .dm-step-line, .dm-how .dm-step-num { display: none !important; }
.dm-how .dm-step .dm-icon-tile--navy { width: auto; height: auto; background: none; font-size: 18px; color: var(--accent); }
.dm-how .dm-step .dm-card-title { grid-area: title; color: var(--text-heading); font-size: 20px; line-height: 1.2; }
.dm-how .dm-step .dm-card-text { grid-area: txt; color: var(--fg-2); font-size: 15px; line-height: 1.5; }
@media (max-width: 620px) {
  .dm-how .dm-grid--steps > .et_pb_column { gap: 0 !important; }
  .dm-how .dm-step { padding-right: 0; border-bottom: 0; }
  .dm-how .dm-grid--steps .et_pb_module:last-child .dm-step { border-bottom: 1px solid var(--border-1); }
}
.dm-how .dm-band { background: var(--bg-subtle); border-color: var(--border-1); }
.dm-how .dm-band-text .dm-card-title { color: var(--text-heading); }
.dm-how .dm-band-text .dm-card-text, .dm-how .dm-band-text p { color: var(--fg-2); }
.dm-how .dm-band .dm-icon-tile--navy { background: var(--max-navy-900); color: var(--max-cyan-300); }
body .dm-how .et_pb_button.dm-btn-secondary { background: var(--accent) !important; color: #fff !important; border: 1.5px solid var(--accent) !important; }
body .dm-how .et_pb_button.dm-btn-secondary:hover { background: var(--accent-hover) !important; border-color: var(--accent-hover) !important; color: #fff !important; box-shadow: var(--shadow-glow); }
@media (max-width: 620px) {
  .dm-how .dm-band .et_pb_button_module_wrapper { text-align: center; }
  body .dm-how .dm-band .et_pb_button { display: block; width: 100%; text-align: center; }
}
