/* Official DIGIDRAW webfont per the site's font-en.css: Roboto in four weights
   (Light 300 / Regular 400 / Medium 500 / Bold 700), loaded from Google Fonts.
   The original TTFs (Roboto-Bold-3.ttf etc.) were not included in the saved site. */
@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap");

:root{
  /* ---- Base neutrals: near-black product photography stage ---- */
  --ink-900:#0a0a0b;
  --ink-800:#0e0e0f;
  --ink-700:#101114;
  --ink-600:#17181b;
  --ink-500:#1f2126;
  --ink-400:#2a2d33;
  --ink-300:#3a3e46;
  --ink-200:#5b616c;
  --ink-100:#8b919c;

  --paper-000:#ffffff;
  --paper-050:#fafafa;
  --paper-100:#f4f4f5;
  --paper-200:#e9eaec;
  --paper-300:#d7d9dd;
  --paper-400:#b8bcc3;

  /* ---- Brand orange (sampled from the DIGIDRAW brochure) ---- */
  --orange-700:#b52c07;
  --orange-600:#cc3609;
  --orange-500:#ff4e1d; /* primary brand orange */
  --orange-400:#ff7048;
  --orange-200:#ffc4b0;
  --orange-100:#ffe6dd;
  --orange-050:#fff1ec;

  /* ---- Supporting photographic blues (screen glow, chip macro, night skyline) ---- */
  --blue-900:#0b1424;
  --blue-800:#142e53;
  --blue-600:#2a4a7f;
  --blue-400:#546ea4;
  --blue-200:#7087a8;

  /* ---- Semantic status ---- */
  --green-500:#1f9d55;
  --green-050:#e8f6ee;
  --amber-500:#c98a04;
  --amber-050:#fdf5e2;
  --red-500:#d92d20;
  --red-050:#fdecea;
  --info-500:#2e6be6;
  --info-050:#e9f0fe;

  /* ---- Semantic aliases: light (default storefront) ---- */
  --text-strong:var(--ink-800);
  --text-body:var(--ink-500);
  --text-muted:var(--ink-200);
  --text-inverse:var(--paper-000);
  --text-brand:var(--orange-600);
  --text-link:var(--orange-600);
  --text-link-hover:var(--orange-700);

  --surface-page:var(--paper-000);
  --surface-subtle:var(--paper-100);
  --surface-card:var(--paper-000);
  --surface-inset:var(--paper-050);
  --surface-stage:var(--ink-800);      /* full-bleed product stage */
  --surface-brand:var(--orange-500);
  --surface-brand-soft:var(--orange-050);

  --border-subtle:var(--paper-200);
  --border-default:var(--paper-300);
  --border-strong:var(--ink-300);
  --border-brand:var(--orange-500);

  --focus-ring:var(--orange-500);

  /* Price / commerce */
  --price-regular:var(--ink-800);
  --price-sale:var(--orange-600);
  --price-compare:var(--ink-100);
}

/* Dark stage sections (hero bands, product theatre, footer) */
.dd-dark,[data-theme="dark"]{
  --text-strong:var(--paper-000);
  --text-body:#c7cad0;
  --text-muted:var(--ink-100);
  --text-inverse:var(--ink-800);
  --text-link:var(--orange-400);
  --text-link-hover:var(--orange-200);
  --surface-page:var(--ink-800);
  --surface-subtle:var(--ink-700);
  --surface-card:var(--ink-600);
  --surface-inset:var(--ink-700);
  --border-subtle:var(--ink-400);
  --border-default:var(--ink-300);
  --border-strong:var(--ink-200);
  --price-regular:var(--paper-000);
  --price-sale:var(--orange-400);
  --price-compare:var(--ink-100);
}

:root{
  --font-display:"Roboto",system-ui,-apple-system,"Segoe UI",sans-serif;
  --font-sans:"Roboto",system-ui,-apple-system,"Segoe UI",sans-serif;
  --font-mono:"Roboto",system-ui,-apple-system,"Segoe UI",sans-serif;

  --fw-light:300; /* @kind font */
  --fw-regular:400; /* @kind font */
  --fw-medium:500; /* @kind font */
  --fw-semibold:500; /* @kind font */
  --fw-bold:700; /* @kind font */
  --fw-black:700; /* @kind font */

  /* Scale — storefront desktop values */
  --fs-display-1:64px;
  --fs-display-2:48px;
  --fs-h1:40px;
  --fs-h2:32px;
  --fs-h3:24px;
  --fs-h4:20px;
  --fs-body-lg:18px;
  --fs-body:16px;
  --fs-body-sm:14px;
  --fs-caption:13px;
  --fs-micro:11px;

  --lh-tight:1.06; /* @kind font */
  --lh-snug:1.2; /* @kind font */
  --lh-normal:1.45; /* @kind font */
  --lh-relaxed:1.65; /* @kind font */

  --ls-display:0; /* @kind font */
  --ls-heading:0; /* @kind font */
  --ls-body:0; /* @kind font */
  --ls-eyebrow:0.14em;   /* uppercase eyebrows / spec labels */
  --ls-button:0.02em; /* @kind font */

  /* Semantic type roles */
  --type-display:var(--fw-black) var(--fs-display-1)/var(--lh-tight) var(--font-display); /* @kind font */
  --type-h1:var(--fw-bold) var(--fs-h1)/var(--lh-snug) var(--font-display); /* @kind font */
  --type-h2:var(--fw-bold) var(--fs-h2)/var(--lh-snug) var(--font-display); /* @kind font */
  --type-h3:var(--fw-semibold) var(--fs-h3)/var(--lh-snug) var(--font-display); /* @kind font */
  --type-h4:var(--fw-semibold) var(--fs-h4)/var(--lh-snug) var(--font-display); /* @kind font */
  --type-body:var(--fw-regular) var(--fs-body)/var(--lh-normal) var(--font-sans); /* @kind font */
  --type-body-sm:var(--fw-regular) var(--fs-body-sm)/var(--lh-normal) var(--font-sans); /* @kind font */
  --type-button:var(--fw-semibold) var(--fs-body-sm)/1 var(--font-sans); /* @kind font */
  --type-eyebrow:var(--fw-semibold) var(--fs-micro)/1.2 var(--font-sans); /* @kind font */
  --type-spec:var(--fw-light) var(--fs-body-sm)/var(--lh-normal) var(--font-sans); /* @kind font */
  --type-price:var(--fw-bold) var(--fs-h4)/1.1 var(--font-display); /* @kind font */
}

: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;

  /* Semantic rhythm */
  --gap-inline:var(--space-2);      /* icon ↔ label */
  --gap-stack:var(--space-4);       /* paragraph rhythm */
  --gap-grid:var(--space-6);        /* product grid gutter */
  --pad-card:var(--space-5);
  --pad-section-y:var(--space-24);  /* marketing band */
  --pad-band-y:var(--space-16);     /* commerce band */
}

:root{
  --radius-0:0;
  --radius-xs:2px;
  --radius-sm:4px;
  --radius-md:8px;
  --radius-lg:12px;
  --radius-xl:20px;
  --radius-pill:999px;

  --radius-control:var(--radius-sm);   /* buttons, inputs — hardware-precise, barely rounded */
  --radius-card:var(--radius-md);
  --radius-media:var(--radius-lg);     /* product photography tiles */
  --radius-chip:var(--radius-pill);
  --border-hairline:1px; /* @kind other */
  --border-emphasis:2px; /* @kind other */
}

:root{
  /* Shadows are restrained: product photography carries depth, chrome stays flat. */
  --shadow-none:none;
  --shadow-sm:0 1px 2px rgba(14,14,15,.06);
  --shadow-card:0 2px 8px rgba(14,14,15,.06);
  --shadow-card-hover:0 8px 24px rgba(14,14,15,.10);
  --shadow-menu:0 12px 32px rgba(14,14,15,.14);
  --shadow-modal:0 24px 64px rgba(14,14,15,.28);
  --shadow-inset-field:inset 0 1px 0 rgba(14,14,15,.04);
  --glow-brand:0 6px 20px rgba(255,78,29,.28);

  /* Protection gradients over full-bleed photography */
  --scrim-bottom:linear-gradient(180deg,rgba(10,10,11,0) 0%,rgba(10,10,11,.78) 100%); /* @kind other */
  --scrim-top:linear-gradient(180deg,rgba(10,10,11,.72) 0%,rgba(10,10,11,0) 100%); /* @kind other */
  --scrim-left:linear-gradient(90deg,rgba(10,10,11,.82) 0%,rgba(10,10,11,0) 62%); /* @kind other */
  --glass-dark:rgba(14,14,15,.62); /* @kind other */
  --glass-light:rgba(255,255,255,.72); /* @kind other */
  --blur-chrome:blur(14px); /* @kind other */
}

:root{
  --ease-standard:cubic-bezier(.2,0,.2,1); /* @kind other */
  --ease-out:cubic-bezier(.16,1,.3,1); /* @kind other */
  --ease-in-out:cubic-bezier(.4,0,.2,1); /* @kind other */
  --dur-instant:80ms; /* @kind other */
  --dur-fast:160ms; /* @kind other */
  --dur-base:240ms; /* @kind other */
  --dur-slow:420ms; /* @kind other */
  --dur-reveal:640ms; /* @kind other */

  --transition-control:background-color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard); /* @kind other */
  --transition-card:transform var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out); /* @kind other */
  --transition-media:transform var(--dur-slow) var(--ease-out),opacity var(--dur-base) var(--ease-standard); /* @kind other */
  --press-scale:.985; /* @kind other */
}

:root{
  --container-max:1440px;
  --container-content:1240px;
  --container-text:720px;
  --gutter-page:40px;
  --gutter-page-sm:20px;
  --header-height:64px;
  --header-height-utility:36px;
  --grid-columns:12; /* @kind other */
  --product-grid-min:264px;
  --z-base:0; /* @kind other */
  --z-sticky:100; /* @kind other */
  --z-header:200; /* @kind other */
  --z-drawer:300; /* @kind other */
  --z-modal:400; /* @kind other */
  --z-toast:500; /* @kind other */
}

/* Minimal element defaults. Components style themselves via tokens. */
*,*::before,*::after{box-sizing:border-box}
html{overflow-x:hidden}
body{margin:0;font:var(--type-body);color:var(--text-body);background:var(--surface-page);-webkit-font-smoothing:antialiased;overflow-x:hidden;max-width:100%}
h1,h2,h3,h4{margin:0;color:var(--text-strong);letter-spacing:var(--ls-heading)}
h1{font:var(--type-h1)}h2{font:var(--type-h2)}h3{font:var(--type-h3)}h4{font:var(--type-h4)}
p{margin:0 0 var(--gap-stack)}
a{color:var(--text-link);text-decoration:none;transition:var(--transition-control)}
a:hover{color:var(--text-link-hover);text-decoration:underline;text-underline-offset:3px}
img{display:block;max-width:100%}
:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}
.dd-eyebrow{font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-muted)}
.dd-spec{font:var(--type-spec);color:var(--text-body)}
.dd-container{max-width:var(--container-content);margin:0 auto;padding:0 var(--gutter-page)}


/* ---------- DIGIDRAW storefront chrome ---------- */
.dd-header{position:relative;z-index:var(--z-header);background:var(--ink-800);color:#fff}
.dd-header a{color:#fff;text-decoration:none}
.dd-utility{height:var(--header-height-utility);display:flex;align-items:center;justify-content:center;background:var(--orange-500);color:#fff;font:var(--type-body-sm);font-weight:var(--fw-medium)}
.dd-masthead{height:var(--header-height);display:flex;align-items:center;gap:var(--space-10);max-width:var(--container-max);margin:0 auto;padding:0 var(--gutter-page)}
.dd-masthead .logo img{height:34px;display:block}
.dd-nav{display:flex;align-items:center;gap:var(--space-8);flex:1;list-style:none;margin:0;padding:0}
.dd-nav a{font:var(--type-body-sm);font-weight:var(--fw-medium);color:rgba(255,255,255,.72);border-bottom:2px solid transparent;padding-bottom:2px}
.dd-nav a:hover,.dd-nav .current-menu-item>a,.dd-nav .current_page_item>a{color:#fff;border-color:var(--orange-500)}
.dd-header-icons{display:flex;align-items:center;gap:var(--space-3)}
.dd-header-icons a{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-control)}
.dd-cart-count{position:absolute;top:2px;right:2px;min-width:16px;height:16px;padding:0 4px;border-radius:var(--radius-pill);background:var(--orange-500);color:#fff;font:var(--type-eyebrow);display:flex;align-items:center;justify-content:center}
.dd-footer{background:var(--ink-900);color:rgba(255,255,255,.72);padding:var(--space-16) 0 var(--space-8)}
.dd-footer .cols{display:grid;grid-template-columns:1.3fr repeat(4,minmax(0,1fr));gap:var(--space-8);max-width:var(--container-content);margin:0 auto;padding:0 var(--gutter-page)}
.dd-footer .cols>div{min-width:0}
.dd-footer a{overflow-wrap:anywhere}
.dd-footer h4{font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:#fff;margin:0 0 var(--space-4)}
.dd-footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}
.dd-footer a{font:var(--type-body-sm);color:rgba(255,255,255,.72);text-decoration:none}
.dd-footer a:hover{color:#fff}
/* ---------- hero slider ---------- */
.dd-hero{position:relative;min-height:680px;display:flex;align-items:center;background:var(--ink-800);overflow:hidden}
.dd-hero .media{position:absolute;inset:0}
.dd-hero .media>*{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity var(--dur-reveal) var(--ease-standard)}
.dd-hero .media>video{transform:scaleY(1.2);transform-origin:center}
.dd-hero .media>.is-active{opacity:1}
.dd-hero .scrim-l{position:absolute;inset:0;background:var(--scrim-left)}
.dd-hero .scrim-b{position:absolute;inset:0;background:var(--scrim-bottom);opacity:.55}
.dd-hero{align-items:flex-end}
.dd-hero .inner{position:relative;max-width:var(--container-content);margin:0 auto;padding:0 88px var(--space-12);width:100%}
.dd-hero .copy{max-width:560px;min-height:300px}
.dd-hero h1{font:var(--type-display);font-size:var(--fs-display-2);color:#fff;letter-spacing:var(--ls-display);margin:var(--space-5) 0 0}
.dd-hero .spec{font:var(--type-spec);font-size:clamp(11px,.95vw,14px);color:rgba(255,255,255,.82);margin-top:var(--space-4);white-space:nowrap}
.dd-hero .copy{max-width:min(900px,72vw)}
@media(max-width:820px){.dd-hero .spec{white-space:normal;font-size:var(--fs-body-sm)}}
.dd-hero .cta{display:flex;gap:var(--space-3);margin-top:var(--space-8)}
.dd-hero .dots{position:absolute;left:0;right:0;bottom:var(--space-5);display:flex;justify-content:center;gap:8px;z-index:2}
.dd-hero .dots button{width:10px;height:10px;border:0;border-radius:var(--radius-pill);background:rgba(255,255,255,.4);cursor:pointer;transition:var(--transition-control)}
.dd-hero .dots button.is-active{width:28px;background:var(--orange-500)}
.dd-hero .arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:44px;height:44px;border-radius:var(--radius-pill);border:1px solid rgba(255,255,255,.3);background:rgba(10,10,11,.35);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}
.dd-hero .arrow.prev{left:16px}.dd-hero .arrow.next{right:16px}
/* ---------- buttons ---------- */
.dd-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--gap-inline);height:52px;padding:0 30px;font:var(--type-button);font-size:var(--fs-body);letter-spacing:var(--ls-button);border-radius:var(--radius-control);text-decoration:none;cursor:pointer;transition:var(--transition-control)}
.dd-btn-primary{background:var(--orange-500);color:#fff;border:1px solid var(--orange-500)}
.dd-btn-primary:hover{background:var(--orange-600);border-color:var(--orange-600);color:#fff}
.dd-btn-inverse{background:#fff;color:var(--ink-800);border:1px solid #fff}
.dd-btn-inverse:hover{background:var(--paper-200);color:var(--ink-800)}
/* ---------- sections ---------- */
.dd-section{max-width:var(--container-content);margin:0 auto;padding:var(--pad-band-y) var(--gutter-page)}
.dd-heading{margin-bottom:var(--space-10)}
.dd-heading .eyebrow{font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--orange-500);margin-bottom:var(--space-3)}
.dd-heading h2{font:var(--type-h2);color:var(--text-strong)}
.dd-cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap-grid)}
.dd-cat{position:relative;display:block;min-height:320px;border-radius:var(--radius-media);overflow:hidden;background:var(--ink-800);text-decoration:none}
.dd-cat img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:var(--transition-media)}
.dd-cat:hover img{transform:scale(1.03)}
.dd-cat .veil{position:absolute;inset:0;background:var(--scrim-bottom)}
.dd-cat .txt{position:absolute;left:var(--space-6);right:var(--space-6);bottom:var(--space-6)}
.dd-cat .txt strong{display:block;font:var(--type-h3);color:#fff}
.dd-cat .txt span{display:block;font:var(--type-body-sm);color:rgba(255,255,255,.78);margin-top:6px}
.dd-divider{height:96px;background-position:center;background-size:cover}
.dd-edu{position:relative;min-height:360px;display:flex;align-items:center;border-radius:var(--radius-media);overflow:hidden;background:var(--ink-800)}
.dd-edu img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.dd-edu .veil{position:absolute;inset:0;background:var(--scrim-left)}
.dd-edu .txt{position:relative;padding:var(--space-12);max-width:560px}
.dd-edu h2{font:var(--type-h1);color:#fff;letter-spacing:var(--ls-display)}
.dd-edu p{font:var(--type-body-lg);color:rgba(255,255,255,.8);margin:var(--space-4) 0 0}
/* ---------- WooCommerce alignment with the design system ---------- */
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-card);overflow:hidden;padding:0;transition:var(--transition-card)}
.woocommerce ul.products li.product:hover{box-shadow:var(--shadow-card-hover)}
.woocommerce ul.products li.product a img{margin:0;aspect-ratio:1/1;object-fit:contain;background:#fff}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font:var(--type-h4);color:var(--text-strong);padding:var(--pad-card) var(--pad-card) 0}
.woocommerce ul.products li.product .price{display:block;font:var(--type-price);color:var(--price-regular);padding:var(--space-2) var(--pad-card) 0}
.woocommerce ul.products li.product .price del{font:var(--type-body-sm);color:var(--price-compare)}
.woocommerce ul.products li.product .price ins{color:var(--price-sale);text-decoration:none}
.woocommerce ul.products li.product .button{margin:var(--space-4) var(--pad-card) var(--pad-card);background:transparent;color:var(--text-strong);border:1px solid var(--border-strong);border-radius:var(--radius-control);font:var(--type-button);padding:10px 18px}
.woocommerce ul.products li.product .button:hover{background:var(--ink-800);color:#fff;border-color:var(--ink-800)}
.woocommerce span.onsale{background:var(--orange-500);color:#fff;border-radius:var(--radius-xs);font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;min-height:22px;line-height:22px;padding:0 8px;top:12px;left:12px;right:auto}
.woocommerce div.product .product_title{font:var(--type-h1);color:var(--text-strong);letter-spacing:var(--ls-heading)}
.woocommerce div.product p.price,.woocommerce div.product span.price{font:var(--type-price);font-size:var(--fs-h2);color:var(--price-regular)}
.woocommerce div.product p.price ins{color:var(--price-sale);text-decoration:none}
.woocommerce div.product div.images{max-width:66%}
.woocommerce div.product div.images img{background:#fff;border-radius:var(--radius-media);border:1px solid var(--border-subtle)}
.woocommerce div.product .flex-control-thumbs li{width:12.5%;padding:2px}
.woocommerce div.product .flex-control-thumbs img{aspect-ratio:1/1;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border-default)}
.woocommerce div.product form.cart .button,.woocommerce #respond input#submit,.woocommerce a.button.alt,.woocommerce button.button.alt{background:var(--orange-500);color:#fff;border-radius:var(--radius-control);font:var(--type-button);letter-spacing:var(--ls-button);padding:16px 26px}
.woocommerce div.product form.cart .button:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{background:var(--orange-600);color:#fff}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;border:0;border-bottom:1px solid var(--border-subtle);display:flex;gap:var(--space-8);justify-content:center;flex-wrap:wrap}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:transparent;border:0;border-radius:0;margin:0;padding:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{padding:var(--space-4) 0;font:var(--type-body);color:var(--text-muted);border-bottom:2px solid transparent}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--text-strong);font-weight:var(--fw-semibold);border-color:var(--orange-500)}
.woocommerce div.product .woocommerce-tabs .panel>h2:first-child:not(.dd-rich-h){display:none}
.dd-rich-band h2.dd-rich-h{display:block!important}
.woocommerce div.product .woocommerce-tabs .panel{padding-top:var(--space-8)}
.woocommerce .quantity .qty{height:44px;border:1px solid var(--border-default);border-radius:var(--radius-control)}
.dd-spec-table{display:grid;grid-template-columns:1fr 1fr;gap:0 var(--space-12);margin:0}
.dd-spec-table>div{display:flex;justify-content:space-between;gap:var(--space-6);padding:var(--space-3) 0;border-bottom:1px solid var(--border-subtle)}
.dd-spec-table dt{font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-muted);padding-top:2px}
.dd-spec-table dd{margin:0;font:var(--type-spec);color:var(--text-strong);text-align:right}
.dd-page-cover{margin-bottom:var(--space-10)}
.dd-page{max-width:var(--container-content);margin:0 auto;padding:0 var(--gutter-page) var(--pad-band-y)}
.dd-page .wp-block-media-text{margin:var(--space-12) 0;gap:var(--space-10)}
.dd-page .wp-block-details{border:1px solid var(--border-subtle);border-radius:var(--radius-card);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-3)}
.dd-page .wp-block-details summary{font:var(--type-body);font-weight:var(--fw-semibold);color:var(--text-strong);cursor:pointer}
.dd-page .wp-block-button__link{background:var(--orange-500);border-radius:var(--radius-control);font:var(--type-button);padding:16px 26px}
.dd-page video{width:100%;border-radius:var(--radius-media);background:#000}
@media(max-width:900px){.dd-masthead{gap:var(--space-5)}.dd-nav{display:none}.dd-values .in,.dd-cat-grid,.dd-footer .cols{grid-template-columns:1fr}.dd-hero{min-height:520px}.woocommerce div.product div.images{max-width:100%}.dd-spec-table{grid-template-columns:1fr}}

/* ---------- product card (design-system ProductCard) ---------- */
.woocommerce ul.products li.product.dd-card{display:flex;flex-direction:column;background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-card);overflow:hidden;padding:0}
.dd-card-media{position:relative;display:block;aspect-ratio:1/1;background:#fff;overflow:hidden}
.dd-card-media img{width:100%!important;height:100%;object-fit:contain;margin:0!important;transition:var(--transition-media)}
.dd-card:hover .dd-card-media img{transform:scale(1.03)}
.dd-card-badge{position:absolute;top:12px;left:12px;display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:var(--radius-xs);background:var(--ink-800);color:#fff;font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase}
.dd-card-body{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--pad-card);flex:1}
.dd-card-title{font:var(--type-h4);margin:0}
.dd-card-title a{color:var(--text-strong);text-decoration:none}
.dd-card-sub{font:var(--type-body-sm);color:var(--text-muted)}
.dd-card-spec{font:var(--type-spec);font-size:var(--fs-caption);color:var(--text-muted)}
.dd-card-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-top:auto;padding-top:var(--space-4)}
.dd-card-price{font:var(--type-price);color:var(--price-regular)}
.dd-card-price del{font:var(--type-body-sm);color:var(--price-compare);margin-right:6px}
.dd-card-price ins{color:var(--price-sale);text-decoration:none}
.dd-card-btn{display:inline-flex;align-items:center;height:36px;padding:0 16px;border:1px solid var(--border-strong);border-radius:var(--radius-control);font:var(--type-button);font-size:var(--fs-caption);color:var(--text-strong);text-decoration:none;transition:var(--transition-control)}
.dd-card-btn:hover{background:var(--ink-800);border-color:var(--ink-800);color:#fff}
.dd-card-btn-cart{background:var(--orange-500);border-color:var(--orange-500);color:#fff}
.dd-card-btn-cart:hover{background:var(--orange-600);border-color:var(--orange-600);color:#fff}
.dd-card-btn-cart.added{background:var(--green-500);border-color:var(--green-500);color:#fff}
.dd-card-btn-cart.loading{opacity:.6;pointer-events:none}
.dd-card-btn-out{background:var(--paper-200);border-color:var(--paper-200);color:var(--ink-100);cursor:default;pointer-events:none}
.dd-card .added_to_cart{display:none}
/* ---------- PDP gallery ---------- */
.woocommerce div.product{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:var(--space-12);align-items:start;max-width:var(--container-content);margin:0 auto;padding:var(--space-8) var(--gutter-page) 0}
.woocommerce div.product .dd-gallery{grid-column:1}
.woocommerce div.product .summary{grid-column:2;margin:0!important;width:auto!important;float:none!important}
.woocommerce div.product .woocommerce-tabs,.woocommerce div.product .related,.woocommerce div.product .upsells,.woocommerce div.product .woocommerce-product-gallery{grid-column:1/-1}
.woocommerce div.product .woocommerce-tabs{margin-top:var(--space-12)}
.dd-gallery-main{position:relative;aspect-ratio:1/1;background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius-media);overflow:hidden;cursor:zoom-in}
.dd-gallery-main img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity var(--dur-fast) var(--ease-standard)}
.dd-gallery-main img.is-active{opacity:1}
.dd-gallery-zoom{position:absolute;bottom:12px;right:12px;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-control);background:var(--glass-light);backdrop-filter:var(--blur-chrome);color:var(--ink-800)}
.dd-gallery-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:var(--space-2);margin-top:var(--space-3)}
.dd-gallery-thumbs button{aspect-ratio:1/1;padding:0;background:#fff;border:1px solid var(--border-default);border-radius:var(--radius-sm);overflow:hidden;cursor:pointer}
.dd-gallery-thumbs button.is-active{border:2px solid var(--orange-500)}
.dd-gallery-thumbs img{width:100%;height:100%;object-fit:cover}
.dd-lightbox[hidden]{display:none!important}
.dd-lightbox{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-8);background:rgba(10,10,11,.86);backdrop-filter:var(--blur-chrome);cursor:zoom-out}
.dd-lightbox img{max-width:92vw;max-height:88vh;object-fit:contain;border-radius:var(--radius-card);background:#fff}
.dd-lightbox button{position:absolute;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-control);background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);color:#fff;font-size:22px;line-height:1;cursor:pointer}
.dd-lb-close{top:24px;right:24px}.dd-lb-prev{left:24px}.dd-lb-next{right:24px}
.dd-lb-count{position:absolute;bottom:24px;font:var(--type-spec);color:rgba(255,255,255,.8)}
/* ---------- cart & checkout in the design-system idiom ---------- */
.woocommerce-cart .woocommerce,.woocommerce-checkout .woocommerce,.woocommerce-account .woocommerce{max-width:var(--container-content);margin:0 auto;padding:var(--space-10) var(--gutter-page) var(--pad-band-y)}
.woocommerce table.shop_table{border:0;border-radius:0}
.woocommerce table.shop_table th{font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border-subtle);padding:var(--space-3) var(--space-2)}
.woocommerce table.shop_table td{border-top:0;border-bottom:1px solid var(--border-subtle);padding:var(--space-5) var(--space-2);font:var(--type-body)}
.woocommerce table.shop_table img{width:96px;border-radius:var(--radius-sm);background:#fff}
.woocommerce table.shop_table td.product-name a{color:var(--text-strong);font-weight:var(--fw-semibold);text-decoration:none}
.woocommerce a.remove{color:var(--text-muted)!important;font-weight:400}
.woocommerce .cart-collaterals .cart_totals,.woocommerce-checkout #order_review{background:var(--surface-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-card);padding:var(--space-6)}
.woocommerce .cart_totals h2,.woocommerce-checkout #order_review_heading{font:var(--type-h4);color:var(--text-strong);margin:0 0 var(--space-4)}
.woocommerce .cart_totals table td,.woocommerce-checkout #order_review table td{font-family:var(--font-mono)}
.woocommerce .checkout .col2-set .col-1,.woocommerce .checkout .col2-set .col-2{width:100%;float:none}
.woocommerce form .form-row{padding:0;margin:0 0 var(--space-4)}
.woocommerce form .form-row label{font:var(--type-body-sm);font-weight:var(--fw-medium);color:var(--text-strong);margin-bottom:6px}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.select2-container .select2-selection--single{height:44px;padding:0 14px;font:var(--type-body);color:var(--text-strong);background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-control);box-shadow:var(--shadow-inset-field)}
.woocommerce form .form-row textarea{height:auto;padding:12px 14px}
.woocommerce-checkout h3{font:var(--type-h4);color:var(--text-strong);margin:var(--space-8) 0 var(--space-5);counter-increment:ddstep;display:flex;align-items:center;gap:var(--space-3)}
.woocommerce-checkout h3::before{content:counter(ddstep);display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-pill);background:var(--ink-800);color:#fff;font:var(--type-eyebrow)}
.woocommerce-checkout form.checkout{counter-reset:ddstep}
.woocommerce-checkout #payment{background:transparent}
.woocommerce-checkout #payment ul.payment_methods{border:0;padding:0}
.woocommerce-checkout #payment ul.payment_methods li{padding:var(--space-4);border:1px solid var(--border-default);border-radius:var(--radius-control);margin-bottom:var(--space-3);list-style:none}
.woocommerce-checkout #payment div.form-row{padding:0;margin-top:var(--space-5)}
.woocommerce ul#shipping_method li{padding:var(--space-4);border:1px solid var(--border-default);border-radius:var(--radius-control);margin-bottom:var(--space-3)}
.woocommerce .woocommerce-message,.woocommerce .woocommerce-info,.woocommerce .woocommerce-error{border-top:0;border-left:2px solid var(--orange-500);background:var(--orange-050);border-radius:var(--radius-control);color:var(--text-body);font:var(--type-body-sm)}
.woocommerce .woocommerce-message::before,.woocommerce .woocommerce-info::before{color:var(--orange-500)}
.woocommerce .woocommerce-error{border-left-color:var(--red-500);background:var(--red-050)}
.woocommerce-breadcrumb{font:var(--type-body-sm);color:var(--text-muted);max-width:var(--container-content);margin:var(--space-6) auto 0;padding:0 var(--gutter-page)}
.woocommerce-breadcrumb a{color:var(--text-muted)}
@media(max-width:900px){.woocommerce div.product{grid-template-columns:1fr}.woocommerce div.product .summary{grid-column:1}}

/* ---------- PDP summary in the design-system order ---------- */
.woocommerce div.product .summary>*{margin:0}
.woocommerce div.product .summary .dd-eyebrow{margin-bottom:var(--space-2)}
.woocommerce div.product .product_title{margin:var(--space-3) 0 var(--space-2)!important}
.woocommerce div.product .summary p.price{margin:var(--space-6) 0 var(--space-2)!important}
.woocommerce div.product .woocommerce-product-rating{display:none}
.dd-rating{display:flex;align-items:center;gap:6px;margin-top:var(--space-4);font:var(--type-body-sm);color:var(--text-muted)}
.dd-rating svg{width:15px;height:15px;flex:none}
.dd-rating strong{color:var(--text-strong);font-weight:var(--fw-semibold)}
.dd-stock{display:inline-flex;align-items:center;gap:6px;font:var(--type-body-sm);font-weight:var(--fw-medium);color:var(--green-500)}
.dd-stock::before{content:"";width:8px;height:8px;border-radius:var(--radius-pill);background:currentColor}
.dd-stock.is-low{color:var(--amber-500)}.dd-stock.is-out{color:var(--red-500)}
.dd-check-list{list-style:none;padding:0;margin:var(--space-6) 0 0;display:flex;flex-direction:column;gap:var(--space-3)}
.dd-check-list li{display:flex;gap:var(--space-3);align-items:flex-start;font:var(--type-body-sm);color:var(--text-body)}
.dd-check-list svg{width:16px;height:16px;flex:none;margin-top:2px;color:var(--orange-500)}
.dd-variants{margin-top:var(--space-8)}
.dd-variant-row{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}
.dd-variant{min-width:56px;height:40px;padding:0 14px;background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-control);font:var(--type-body-sm);font-weight:var(--fw-medium);color:var(--text-body);cursor:pointer;transition:var(--transition-control)}
.dd-variant.is-active{border:2px solid var(--orange-500);color:var(--text-strong)}
.woocommerce div.product form.cart{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-6) 0 0!important}
.woocommerce div.product form.cart .quantity{margin:0}
.woocommerce div.product form.cart .quantity .qty{width:88px;text-align:center;font-weight:var(--fw-semibold)}
.woocommerce div.product form.cart .single_add_to_cart_button{flex:1;height:52px;padding:0 26px}
.dd-buy-now{display:flex;align-items:center;justify-content:center;height:52px;margin-top:var(--space-3);background:transparent;color:var(--text-strong);border:1px solid var(--border-strong);border-radius:var(--radius-control);font:var(--type-button);font-size:var(--fs-body);letter-spacing:var(--ls-button);text-decoration:none;transition:var(--transition-control)}
.dd-buy-now:hover{background:var(--ink-800);border-color:var(--ink-800);color:#fff}
.woocommerce div.product .product_meta{display:none}

/* ---------- info pages: full-bleed bands inside a centred text column ---------- */
.dd-page>.wp-block-cover,.dd-page>.alignfull,.dd-page>.wp-block-image.alignfull,.dd-page>.dd-collage{position:relative;left:50%;transform:translateX(-50%);width:100vw;max-width:100vw}
.dd-page>.wp-block-cover{min-height:420px!important;margin:0 0 var(--space-16)}
.dd-page .wp-block-cover__inner-container{max-width:var(--container-content);margin:0 auto;padding:0 var(--gutter-page);width:100%}
.dd-page .wp-block-cover h1{font:var(--type-display)!important;font-size:var(--fs-display-2)!important;letter-spacing:var(--ls-display);color:#fff!important;margin:0}
.dd-page .wp-block-cover p{font:var(--type-body-lg)!important;color:rgba(255,255,255,.82)!important;max-width:640px;margin:var(--space-4) 0 0}
.dd-page>h2{font:var(--type-h2);color:var(--text-strong);margin:var(--space-16) 0 var(--space-4)}
.dd-page>h2:first-of-type{margin-top:0}
.dd-page>h3{font:var(--type-h3);color:var(--text-strong);margin:var(--space-10) 0 var(--space-3)}
.dd-page>p{font:var(--type-body-lg);color:var(--text-body);max-width:820px;margin:0 0 var(--space-4)}
.dd-page>.wp-block-image{margin:var(--space-10) 0}
.dd-page>.wp-block-image img{border-radius:var(--radius-media)}
.dd-page>.wp-block-image.alignfull img,.dd-page>.dd-collage img{border-radius:0}
.dd-page .wp-block-media-text__content h3{margin-top:0}
/* community collage band (About page) */
.dd-collage{position:relative;overflow:hidden;margin:var(--space-16) 0 0}
.dd-collage>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.dd-collage .veil{position:absolute;inset:0;background:rgba(204,54,9,.45)}
.dd-collage .txt{position:relative;max-width:900px;margin:0 auto;padding:var(--space-20) var(--gutter-page);text-align:center}
.dd-collage .txt img{height:64px;margin:0 auto var(--space-10)}
.dd-collage .txt p{font:var(--type-body-lg);font-size:20px;color:#fff;line-height:var(--lh-relaxed);margin:0 0 var(--space-6)}
.dd-page-wrap>.dd-page:last-child{padding-bottom:0}

/* ---------- home page bands (mirrors Home.jsx) ---------- */
.dd-badge{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:var(--radius-xs);background:var(--orange-500);color:#fff;font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase}
.dd-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-8)}
.dd-link-arrow{font:var(--type-button);font-size:var(--fs-body-sm);color:var(--text-strong);text-decoration:none;white-space:nowrap}
.dd-link-arrow:hover{color:var(--orange-600)}
.dd-link-arrow.is-light{color:#fff}
.dd-flagship{position:relative;background:var(--ink-800);overflow:hidden}
.dd-flagship>img{position:absolute;right:0;top:0;width:58%;height:100%;object-fit:cover}
.dd-flagship>.veil{position:absolute;inset:0;background:linear-gradient(90deg,var(--ink-800) 42%,rgba(14,14,15,.25) 75%,rgba(14,14,15,0) 100%)}
.dd-flagship .txt{max-width:460px}
.dd-flagship .eyebrow{font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--orange-400);margin-bottom:var(--space-3)}
.dd-flagship h2{font:var(--type-h1);color:#fff;letter-spacing:var(--ls-display)}
.dd-flagship p{font:var(--type-body-lg);color:rgba(255,255,255,.78);margin-top:var(--space-4)}
.dd-flagship .row{display:flex;align-items:center;gap:var(--space-4);margin-top:var(--space-6)}
.dd-flagship .strip{height:10px;background-position:center;background-size:cover}
.dd-split{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-16);align-items:center}
.dd-split .eyebrow{font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--orange-500);margin-bottom:var(--space-3)}
.dd-split h2{font:var(--type-h2);color:var(--text-strong)}
.dd-split p{font:var(--type-body-lg);color:var(--text-muted);margin-top:var(--space-4)}
.dd-split .dd-spec-table{margin-top:var(--space-6)}
.dd-spec-1col{grid-template-columns:1fr}
.dd-split-img{width:100%;height:420px;object-fit:cover;border-radius:var(--radius-media)}
.dd-band-subtle{background:var(--surface-subtle);border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}
.dd-community{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}
.dd-community figure{margin:0}
.dd-community img{width:100%;height:220px;object-fit:cover;border-radius:var(--radius-media)}
.dd-community figcaption{font:var(--type-spec);font-size:var(--fs-caption);color:var(--text-muted);margin-top:var(--space-2)}
.dd-newsletter{position:relative;overflow:hidden}
.dd-newsletter>img{position:absolute;right:-40px;top:50%;transform:translateY(-50%);width:52%;opacity:.9}
.dd-newsletter .txt{max-width:480px}
.dd-newsletter h2{font:var(--type-h2);color:var(--text-strong)}
.dd-newsletter p{font:var(--type-body);color:var(--text-muted);margin:var(--space-3) 0 0}
.dd-newsletter .row{display:flex;gap:var(--space-2);margin-top:var(--space-6)}
.dd-newsletter input{flex:1;height:44px;padding:0 14px;font:var(--type-body);color:var(--text-strong);background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-control);box-shadow:var(--shadow-inset-field)}
.dd-btn-dark{background:var(--ink-800);color:#fff;border:1px solid var(--ink-800);height:44px;padding:0 22px;font-size:var(--fs-body-sm)}
.dd-btn-dark:hover{background:var(--ink-900);color:#fff}
.dd-promo{position:relative;min-height:520px;display:flex;align-items:center;border-radius:var(--radius-media);overflow:hidden;background:var(--ink-800)}
.dd-promo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.dd-promo>.veil{position:absolute;inset:0;background:var(--scrim-left)}
.dd-promo .txt{position:relative;padding:var(--space-12);max-width:560px}
.dd-promo .eyebrow{font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--orange-400);margin-bottom:var(--space-3)}
.dd-promo h2{font:var(--type-h1);color:#fff;letter-spacing:var(--ls-display)}
.dd-promo p{font:var(--type-body-lg);color:rgba(255,255,255,.8);margin:var(--space-4) 0 var(--space-6)}
/* price must not wrap (1 299,00 zł) */
.dd-card-price,.woocommerce div.product .summary p.price{white-space:nowrap}
.dd-card-foot{flex-wrap:wrap}
@media(max-width:900px){.dd-split,.dd-community{grid-template-columns:1fr}.dd-flagship>img,.dd-newsletter>img{display:none}.dd-promo{min-height:420px}}

/* ---------- catalog (mirrors Collection.jsx) ---------- */
.dd-archive-banner{position:relative;min-height:340px;display:flex;align-items:center;background:var(--ink-800);overflow:hidden}
.dd-archive-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.dd-archive-banner>.veil{position:absolute;inset:0;background:var(--scrim-left)}
.dd-archive-banner .txt{position:relative;max-width:var(--container-content);width:100%;margin:0 auto;padding:0 var(--gutter-page)}
.dd-archive-banner h1{font:var(--type-display);font-size:var(--fs-h1);color:#fff;letter-spacing:var(--ls-display);margin:var(--space-4) 0 0}
.dd-archive-banner p{font:var(--type-body-lg);color:rgba(255,255,255,.8);max-width:640px;margin:var(--space-4) 0 0}
.dd-crumbs{display:flex;align-items:center;gap:6px;font:var(--type-body-sm);color:rgba(255,255,255,.7)}
.dd-crumbs a{color:rgba(255,255,255,.7);text-decoration:none}
.dd-crumbs .is-current{color:#fff}
.dd-archive{display:grid;grid-template-columns:240px 1fr;gap:var(--space-12);align-items:start}
.dd-facets{display:flex;flex-direction:column;gap:var(--space-8)}
.dd-facets .dd-eyebrow{display:block;margin-bottom:var(--space-4)}
.dd-facet-list{display:flex;flex-direction:column;gap:var(--space-3)}
.dd-check{display:inline-flex;align-items:center;gap:10px;font:var(--type-body-sm);color:var(--text-body);text-decoration:none}
.dd-check .box{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex:none;border-radius:var(--radius-xs);background:var(--surface-card);border:1px solid var(--border-default);transition:var(--transition-control)}
.dd-check .box svg{width:12px;height:12px;opacity:0;color:#fff}
.dd-check.is-on .box{background:var(--orange-500);border-color:var(--orange-500)}
.dd-check.is-on .box svg{opacity:1}
.dd-check.is-static{opacity:.9;cursor:default}
.dd-check .cnt{color:var(--text-muted)}
.dd-check:hover{color:var(--text-strong)}
.dd-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.dd-tag{display:inline-flex;align-items:center;height:32px;padding:0 14px;border-radius:var(--radius-pill);font:var(--type-body-sm);color:var(--text-body);background:var(--surface-subtle);border:1px solid var(--border-subtle);text-decoration:none;transition:var(--transition-control)}
.dd-tag:hover{color:var(--text-strong)}
.dd-tag.is-on{background:var(--ink-800);border-color:var(--ink-800);color:#fff}
.dd-archive-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid var(--border-subtle)}
.dd-archive-bar .cnt{font:var(--type-body-sm);color:var(--text-muted)}
.dd-archive-bar .sort{display:flex;align-items:center;gap:var(--space-3);color:var(--text-muted)}
.dd-archive-bar form.woocommerce-ordering{margin:0}
.dd-archive-bar select{width:220px;height:44px;padding:0 14px;font:var(--type-body);color:var(--text-strong);background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-control)}
.woocommerce .dd-archive-main ul.products{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--product-grid-min),1fr));gap:var(--gap-grid);margin:0}
.woocommerce .dd-archive-main ul.products::before,.woocommerce .dd-archive-main ul.products::after{display:none}
.woocommerce .dd-archive-main ul.products li.product{width:auto!important;margin:0!important;float:none!important}
.dd-pager{display:flex;justify-content:center;margin-top:var(--space-12)}
.woocommerce nav.woocommerce-pagination{margin:0}
.woocommerce nav.woocommerce-pagination ul{border:0;display:flex;gap:var(--space-2)}
.woocommerce nav.woocommerce-pagination ul li{border:0;margin:0}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 10px;font:var(--type-body-sm);border:1px solid var(--border-subtle);border-radius:var(--radius-control);color:var(--text-body)}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--ink-800);border-color:var(--ink-800);color:#fff;font-weight:var(--fw-semibold)}
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-products-header{display:none}
@media(max-width:900px){.dd-archive{grid-template-columns:1fr}.dd-archive-banner{min-height:260px}}

/* safety net: the value row was removed from the design system — hide it if a stale template still prints it */
.dd-values{display:none!important}

/* hero stat row */
.dd-hero .stats{display:flex;flex-wrap:wrap;gap:var(--space-10);margin-top:var(--space-10);padding-top:var(--space-5);border-top:1px solid rgba(255,255,255,.22)}
.dd-hero .stats .v{font:var(--type-h3);font-family:var(--font-mono);color:#fff}
.dd-hero .stats .l{font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:rgba(255,255,255,.6);margin-top:4px}
/* header utilities: phone + language */
.dd-header-utils{display:flex;align-items:center;gap:var(--space-5)}
.dd-phone{display:inline-flex;align-items:center;gap:7px;font:var(--type-body-sm);color:rgba(255,255,255,.85);white-space:nowrap}
.dd-phone:hover{color:#fff}
.dd-lang{display:inline-flex;align-items:center;gap:2px;list-style:none;margin:0;padding:0}
.dd-lang ul{display:flex;gap:2px;list-style:none;margin:0;padding:0}
.dd-lang li{margin:0}
.dd-lang a{display:inline-flex;align-items:center;height:26px;padding:0 9px;border-radius:var(--radius-xs);font:var(--type-eyebrow);letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.dd-lang a:hover{color:#fff}
.dd-lang a.is-on,.dd-lang li.current-lang a{background:var(--orange-500);color:#fff}
@media(max-width:1200px){.dd-phone{display:none}}
@media(max-width:900px){.dd-hero .inner{padding:0 var(--gutter-page) var(--space-10)}.dd-hero .stats{gap:var(--space-6)}}

/* ---------- product rich content (mirrors Product.jsx RichContent) ---------- */
.dd-rich{position:relative;left:50%;transform:translateX(-50%);width:100vw;max-width:100vw}
.dd-rich img{display:block;width:100%}
.dd-rich-hero{display:block;width:100%}
.dd-rich-sec{background:#000;color:#fff}
.dd-rich-sec .in{max-width:860px;margin:0 auto;padding:var(--space-20) var(--gutter-page) 0;text-align:center}
.dd-rich-sec h2{font:var(--type-h1);color:var(--orange-400);letter-spacing:var(--ls-display);margin:0}
.dd-rich-sec p{font:var(--type-body-lg);color:rgba(255,255,255,.78);margin:var(--space-4) 0 0}
.dd-rich-sec>img{max-width:1440px;margin:0 auto}
.dd-rich-sec .in+img{margin-top:var(--space-8)}
.dd-rich-sec.is-light{background:#fff;color:var(--ink-300)}
.dd-rich-sec.is-light h2{color:var(--orange-600)}
.dd-rich-sec.is-light p{color:var(--ink-300)}
.dd-rich-sec.is-light>img{max-width:1200px;padding-bottom:var(--space-12)}
.dd-rich-sec.is-light .in+img{margin-top:var(--space-8)}
.dd-rich-sec.is-k30{background:#000;padding:var(--space-20) var(--gutter-page)}
.dd-rich-sec.is-k30 .in{padding:0;max-width:900px}
.dd-rich-sec.is-k30 h2{color:#fff}
.dd-rich-sec.is-k30 p.sub{font:var(--type-body);color:rgba(255,255,255,.55);margin-top:var(--space-3)}
.woocommerce div.product .woocommerce-tabs .panel{overflow:visible}
.woocommerce div.product .woocommerce-tabs #tab-description{padding:0;overflow:visible}


/* ---------- product rich content: edge-to-edge editorial bands (mirrors RichContent in Product.jsx) ---------- */
.woocommerce div.product .woocommerce-tabs #tab-description{padding-top:0}
.woocommerce div.product .woocommerce-tabs #tab-description>h2:first-child{display:none}
.dd-rich-band{position:relative;width:100vw!important;max-width:100vw!important;left:50%;right:50%;margin-left:-50vw!important;margin-right:-50vw!important;padding:var(--space-20) 0}
.dd-rich-band.is-dark{background:#000}
.dd-rich-band.is-light{background:#fff}
.dd-rich-band.is-hero{padding:0}
.dd-rich-band>.dd-rich-h,.dd-rich-band>.dd-rich-p,.dd-rich-band>.dd-rich-x{max-width:860px;margin-left:auto;margin-right:auto;padding:0 var(--gutter-page);text-align:center}
.dd-rich-band .dd-rich-h{font:var(--type-h1);letter-spacing:var(--ls-display);margin:0}
.dd-rich-band.is-dark .dd-rich-h{color:var(--orange-400)}
.dd-rich-band.is-light .dd-rich-h{color:var(--orange-600)}
.dd-rich-band .dd-rich-p{font:var(--type-body-lg);margin:var(--space-4) auto 0}
.dd-rich-band.is-dark .dd-rich-p{color:rgba(255,255,255,.78)}
.dd-rich-band.is-light .dd-rich-p{color:var(--text-body)}
.dd-rich-band .dd-rich-x{font:var(--type-body);margin:var(--space-3) auto 0}
.dd-rich-band.is-dark .dd-rich-x{color:rgba(255,255,255,.55)}
.dd-rich-band.is-light .dd-rich-x{color:var(--text-muted)}
.dd-rich-band.is-center .dd-rich-h{color:#fff}
.dd-rich-band figure.dd-rich-img{width:100%;max-width:none!important;margin:var(--space-10) 0 0;padding:0}
.dd-rich-band.is-hero figure.dd-rich-img{margin:0}
.dd-rich-band figure.dd-rich-img img{width:100%;max-width:none;height:auto;display:block;border-radius:0}
.dd-rich-band:has(>figure.dd-rich-img:first-child){padding-top:0;padding-bottom:0}
.dd-rich-band+.dd-rich-band{margin-top:0}
@media(max-width:900px){.dd-rich-band{padding:var(--space-12) 0}.dd-rich-band>.dd-rich-h,.dd-rich-band>.dd-rich-p,.dd-rich-band>.dd-rich-x{padding:0 var(--gutter-page-sm)}}

/* ---------- supported-software tab (mirrors Product.jsx) ---------- */
.dd-soft{text-align:center;max-width:860px;margin:0 auto}
.dd-soft .dd-eyebrow{display:block;margin-bottom:var(--space-4)}
.dd-os-pills{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:center}
.dd-os-pills span{display:inline-flex;align-items:center;height:36px;padding:0 18px;border-radius:var(--radius-pill);border:1px solid var(--border-default);font:var(--type-body-sm);font-weight:var(--fw-medium);color:var(--text-strong)}
.dd-soft-note{font:var(--type-body);color:var(--text-muted);margin:var(--space-6) auto 0;max-width:560px}
.dd-soft-img{display:block;width:100%;max-width:640px;margin:var(--space-6) auto 0}

/* ---------- what's in the box tab (mirrors Product.jsx) ---------- */
.dd-box{max-width:860px;margin:0 auto}
.dd-box-rows{list-style:none;padding:0;margin:0;display:flex;flex-direction:column}
.dd-box-rows li{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding:var(--space-3) 0;border-bottom:1px solid var(--border-subtle);font:var(--type-body);color:var(--text-strong)}
.dd-box-rows .n{display:flex;align-items:center;gap:var(--space-3)}
.dd-box-rows .n svg{width:16px;height:16px;flex:none;color:var(--text-muted)}
.dd-box-rows .q{font:var(--type-spec);color:var(--text-muted)}
.dd-upsell{display:flex;align-items:center;gap:var(--space-4);max-width:560px;margin:var(--space-8) auto 0;padding:var(--space-4);border:1px solid var(--border-default);border-radius:var(--radius-card);background:var(--surface-subtle)}
.dd-upsell img{width:72px;height:72px;object-fit:cover;border-radius:var(--radius-sm);margin:0;flex:none}
.dd-upsell .txt{flex:1;text-align:left}
.dd-upsell .dd-eyebrow{color:var(--orange-600)}
.dd-upsell .nm{font:var(--type-body);font-weight:var(--fw-semibold);color:var(--text-strong);margin:2px 0}
.dd-upsell .pr{font:var(--type-price);font-size:var(--fs-body);color:var(--price-regular)}
.dd-upsell-btn{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 16px;border-radius:var(--radius-control);background:var(--ink-800);color:#fff;font:var(--type-button);font-size:var(--fs-caption);text-decoration:none;flex:none}
.dd-upsell-btn:hover{background:var(--ink-600);color:#fff}
.dd-upsell-btn svg{width:14px;height:14px}

/* stray default widget output (search / pages / archives) never belongs on the storefront */
#secondary,.widget-area,aside.sidebar,.woocommerce-sidebar{display:none!important}
@media(max-width:1100px){.dd-footer .cols{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:700px){.dd-footer .cols{grid-template-columns:1fr}}

/* ---------- PDP summary column ---------- */
.woocommerce div.product .summary>*{max-width:100%}
.woocommerce div.product .dd-stock{display:inline-flex;align-items:center;gap:7px;font:var(--type-body-sm);font-weight:var(--fw-medium);margin:var(--space-2) 0 0}
.dd-stock .dot{width:8px;height:8px;border-radius:var(--radius-pill);flex:none}
.dd-stock.is-in{color:var(--green-500)}.dd-stock.is-in .dot{background:var(--green-500)}
.dd-stock.is-low{color:var(--orange-600)}.dd-stock.is-low .dot{background:var(--orange-500)}
.dd-stock.is-out{color:var(--red-500)}.dd-stock.is-out .dot{background:var(--red-500)}
.woocommerce div.product .summary .dd-box-list,.woocommerce div.product .summary ul.dd-highlights{list-style:none;padding:0;margin:var(--space-6) 0 0;display:flex;flex-direction:column;gap:var(--space-3)}
.woocommerce div.product .summary .dd-box-list li{position:relative;padding-left:24px;font:var(--type-body-sm);color:var(--text-body);border:0}
.woocommerce div.product .summary .dd-box-list li::before{content:"";position:absolute;left:0;top:3px;width:15px;height:9px;border-left:2px solid var(--orange-500);border-bottom:2px solid var(--orange-500);transform:rotate(-45deg)}
.woocommerce div.product .dd-config-label{display:block;margin:var(--space-8) 0 var(--space-3)}
.woocommerce div.product form.cart{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin:var(--space-6) 0 0}
.woocommerce div.product form.cart .quantity{margin:0;display:inline-flex;align-items:center;height:52px;border:1px solid var(--border-default);border-radius:var(--radius-control);overflow:hidden}
.woocommerce div.product form.cart .quantity .qty{width:56px;height:50px;border:0;text-align:center;font:var(--type-body);font-weight:var(--fw-semibold);color:var(--text-strong);background:transparent;-moz-appearance:textfield}
.woocommerce div.product form.cart .quantity .qty::-webkit-outer-spin-button,.woocommerce div.product form.cart .quantity .qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.woocommerce div.product form.cart button.single_add_to_cart_button{flex:1 1 220px;height:52px;padding:0 26px;margin:0;display:inline-flex;align-items:center;justify-content:center;gap:var(--gap-inline)}
.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;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"><circle cx="8" cy="21" r="1"/><circle cx="19" cy="21" r="1"/><path 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"/></svg>') center/contain no-repeat;mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round"><circle cx="8" cy="21" r="1"/><circle cx="19" cy="21" r="1"/><path 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"/></svg>') center/contain no-repeat}
.dd-buy-now{flex:1 1 100%;display:inline-flex;align-items:center;justify-content:center;height:52px;margin-top:var(--space-1);border:1px solid var(--border-strong);border-radius:var(--radius-control);font:var(--type-button);font-size:var(--fs-body);color:var(--text-strong);text-decoration:none;transition:var(--transition-control)}
.dd-buy-now:hover{background:var(--ink-800);border-color:var(--ink-800);color:#fff;text-decoration:none}
.dd-trust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4);margin-top:var(--space-8);padding-top:var(--space-5);border-top:1px solid var(--border-subtle)}
.dd-trust span{display:flex;align-items:flex-start;gap:8px;font:var(--type-body-sm);color:var(--text-muted)}
.dd-trust svg{width:16px;height:16px;flex:none;margin-top:2px}
/* variant tiles */
.dd-variants{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.dd-variants a,.dd-variants span{display:inline-flex;align-items:center;justify-content:center;min-width:56px;height:40px;padding:0 14px;border-radius:var(--radius-control);font:var(--type-body-sm);font-weight:var(--fw-medium);color:var(--text-body);background:var(--surface-card);border:1px solid var(--border-default);text-decoration:none;cursor:pointer}
.dd-variants .is-on{border:2px solid var(--orange-500);color:var(--text-strong)}
.dd-variants .is-off{opacity:.35;cursor:not-allowed}
/* ---------- page banner (cart, checkout) ---------- */
.dd-page-banner{position:relative;min-height:260px;display:flex;align-items:center;background:var(--ink-800);overflow:hidden;margin-bottom:var(--space-10)}
.dd-page-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.dd-page-banner>.veil{position:absolute;inset:0;background:var(--scrim-left)}
.dd-page-banner .txt{position:relative;max-width:var(--container-content);width:100%;margin:0 auto;padding:0 var(--gutter-page)}
.dd-page-banner h1{font:var(--type-display);font-size:var(--fs-h1);color:#fff;letter-spacing:var(--ls-display);margin:var(--space-4) 0 0}
/* ---------- cart ---------- */
.dd-cart{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:var(--space-12);align-items:start;max-width:var(--container-content);margin:0 auto;padding:0 var(--gutter-page) var(--pad-band-y)}
.dd-cart-lines{border-top:1px solid var(--border-subtle)}
.dd-line{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:var(--space-4);align-items:center;padding:var(--space-5) 0;border-bottom:1px solid var(--border-subtle)}
.dd-line .thumb img{width:96px;height:96px;object-fit:contain;background:#fff;border-radius:var(--radius-sm);margin:0}
.dd-line .nm{font:var(--type-body);font-weight:var(--fw-semibold);color:var(--text-strong)}
.dd-line .nm a{color:var(--text-strong);text-decoration:none}
.dd-line .var{font:var(--type-body-sm);color:var(--text-muted);margin-top:4px}
.dd-line .var p{margin:0}
.dd-line .ctrl{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-3)}
.dd-line .quantity{display:inline-flex;align-items:center;height:36px;border:1px solid var(--border-default);border-radius:var(--radius-control);overflow:hidden}
.dd-line .quantity .qty{width:46px;height:34px;border:0;text-align:center;background:transparent;font:var(--type-body-sm);font-weight:var(--fw-semibold);color:var(--text-strong)}
.dd-remove{display:inline-flex;align-items:center;gap:5px;font:var(--type-body-sm);color:var(--text-muted);text-decoration:none}
.dd-remove svg{width:14px;height:14px}
.dd-remove:hover{color:var(--text-strong);text-decoration:none}
.dd-line .sum{font:var(--type-price);font-size:var(--fs-h4);color:var(--price-regular);text-align:right;white-space:nowrap}
.dd-coupon{display:flex;align-items:flex-end;gap:var(--space-3);max-width:420px;margin-top:var(--space-8)}
.dd-coupon label{display:block;flex:1;font:var(--type-body-sm);font-weight:var(--fw-medium);color:var(--text-strong)}
.dd-coupon input{width:100%;height:44px;margin-top:6px;padding:0 14px;font:var(--type-body);background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-control)}
.dd-btn-outline{height:44px;padding:0 20px;background:transparent;color:var(--text-strong);border:1px solid var(--border-strong);border-radius:var(--radius-control);font:var(--type-button);cursor:pointer}
.dd-btn-outline:hover{background:var(--ink-800);border-color:var(--ink-800);color:#fff}
.dd-cart-note{display:flex;align-items:flex-start;gap:10px;margin-top:var(--space-6);padding:var(--space-4);background:var(--info-050);border-left:2px solid var(--info-500);border-radius:var(--radius-control);font:var(--type-body-sm);color:var(--text-body)}
.dd-cart-note svg{width:18px;height:18px;flex:none;color:var(--info-500)}
.dd-hidden-update{position:absolute;left:-9999px}
.dd-summary{background:var(--surface-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-card);padding:var(--space-6)}
.dd-summary h3{font:var(--type-h4);color:var(--text-strong);margin:0 0 var(--space-4)}
.dd-summary .rows{display:flex;flex-direction:column;gap:var(--space-3)}
.dd-summary .rows>div{display:flex;justify-content:space-between;gap:var(--space-4);font:var(--type-body-sm);color:var(--text-body)}
.dd-summary .v,.dd-summary .v *{font-family:var(--font-mono);color:var(--text-strong)}
.dd-summary .total{display:flex;justify-content:space-between;align-items:baseline;margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--border-default);font:var(--type-h4);color:var(--text-strong)}
.dd-summary .total .v,.dd-summary .total .v *{font:var(--type-price);font-family:var(--font-display)}
.dd-btn.dd-full{width:100%;margin-top:var(--space-5)}
.dd-summary .fine{font:var(--type-body-sm);color:var(--text-muted);margin:var(--space-3) 0 0}
.dd-crossell{padding-top:0}
.woocommerce-cart .woocommerce{max-width:none;padding:0}
.woocommerce-cart .dd-crossell ul.products{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--product-grid-min),1fr));gap:var(--gap-grid);margin:0}
.woocommerce-cart .dd-crossell ul.products li.product{width:auto!important;margin:0!important;float:none!important}
@media(max-width:1000px){.dd-cart{grid-template-columns:1fr}.dd-trust{grid-template-columns:1fr}}

/* equal-height product tiles: shortcode grids too, and price/CTA pinned to the bottom */
.woocommerce ul.products{align-items:stretch}
.woocommerce ul.products li.product.dd-card{height:100%}
.dd-card-sub,.dd-card-spec{min-height:0}
.dd-card-body{justify-content:flex-start}
.dd-card-foot{flex-wrap:wrap;row-gap:var(--space-3)}
.woocommerce .dd-section ul.products,.woocommerce ul.products.columns-4,.woocommerce ul.products.columns-3{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--product-grid-min),1fr));gap:var(--gap-grid);margin:0}
.woocommerce .dd-section ul.products li.product,.woocommerce ul.products.columns-4 li.product,.woocommerce ul.products.columns-3 li.product{width:auto!important;margin:0!important;float:none!important;clear:none!important}
.woocommerce .dd-section ul.products::before,.woocommerce .dd-section ul.products::after,.woocommerce ul.products.columns-4::before,.woocommerce ul.products.columns-4::after{display:none}

/* ---------- PDP fixes: crumbs, config label, stepper, inline confirmation ---------- */
.woocommerce div.product .dd-crumbs{grid-column:1/-1;display:flex;align-items:center;gap:8px;margin:0 0 var(--space-6);font:var(--type-body-sm)}
.dd-crumbs.is-light a{color:var(--text-muted);text-decoration:none}
.dd-crumbs.is-light a:hover{color:var(--text-strong)}
.dd-crumbs.is-light span{color:var(--paper-400)}
.dd-crumbs.is-light .is-current{color:var(--text-strong)}
.woocommerce div.product .summary .dd-config-label,.woocommerce div.product .summary .dd-eyebrow.dd-config{display:block;margin:var(--space-8) 0 var(--space-3)}
.woocommerce div.product .summary .dd-variants{margin-bottom:0}
.woocommerce div.product .summary>.dd-eyebrow{display:block;margin:var(--space-8) 0 var(--space-3)}
.woocommerce div.product .summary .dd-box-list{margin-bottom:var(--space-2)}
/* quantity stepper */
.quantity{position:relative}
.dd-qty-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:100%;min-height:34px;padding:0;background:transparent;border:0;color:var(--text-strong);cursor:pointer}
.dd-qty-btn svg{width:16px;height:16px}
.dd-qty-btn:hover{color:var(--orange-600)}
.woocommerce div.product form.cart .quantity{width:auto}
.woocommerce div.product form.cart .quantity .qty{width:44px}
.dd-line .quantity .qty{width:40px}
.dd-line .dd-qty-btn{width:32px}
/* inline green confirmation */
.dd-added{display:flex;flex-direction:column;gap:2px;margin-top:var(--space-4);padding:var(--space-4);background:var(--green-050);border-left:2px solid var(--green-500);border-radius:var(--radius-control)}
.dd-added strong{font:var(--type-body-sm);font-weight:var(--fw-semibold);color:var(--text-strong)}
.dd-added span{font:var(--type-body-sm);color:var(--text-body)}
/* no Woo notice banners on the product page */
.single-product .woocommerce-message,.single-product .woocommerce-notices-wrapper{display:none}

/* PDP action row: quantity + add-to-cart on one line, flush left with the text column */
.woocommerce div.product form.cart{display:flex!important;flex-wrap:nowrap;align-items:stretch;gap:var(--space-3);margin:var(--space-6) 0 0!important;padding:0}
.woocommerce div.product form.cart::before,.woocommerce div.product form.cart::after{display:none!important}
.woocommerce div.product form.cart .quantity{flex:0 0 auto;margin:0!important;height:52px}
.woocommerce div.product form.cart button.single_add_to_cart_button{flex:1 1 auto;width:auto;height:52px;margin:0!important;float:none!important}
.woocommerce div.product .dd-buy-now{display:flex;width:100%;margin:var(--space-3) 0 0}
.woocommerce div.product .dd-check-list{list-style:none;padding:0;margin:var(--space-6) 0 0;display:flex;flex-direction:column;gap:var(--space-3)}
.woocommerce div.product .dd-check-list li{display:flex;align-items:flex-start;gap:10px;font:var(--type-body-sm);color:var(--text-body)}
.woocommerce div.product .dd-check-list svg{width:16px;height:16px;flex:none;margin-top:2px;color:var(--orange-500)}
.woocommerce div.product .dd-variants{margin:var(--space-8) 0 0}
.woocommerce div.product .dd-variants .dd-eyebrow{display:block;margin-bottom:var(--space-3)}
.woocommerce div.product .dd-variant-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.woocommerce div.product .dd-variant{min-width:56px;height:40px;padding:0 14px;background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-control);font:var(--type-body-sm);font-weight:var(--fw-medium);color:var(--text-body);cursor:pointer}
.woocommerce div.product .dd-variant.is-active{border:2px solid var(--orange-500);color:var(--text-strong)}

/* cart & checkout: hide the WP page title, let the banner span the full window */
.dd-page-title{display:none!important}
.woocommerce-cart .entry-title,.woocommerce-checkout .entry-title,.woocommerce-cart h1.page-title,.woocommerce-checkout h1.page-title{display:none!important}
.woocommerce-cart .dd-page,.woocommerce-checkout .dd-page{max-width:none;padding:0}
.woocommerce-cart .dd-page-banner,.woocommerce-checkout .dd-page-banner{width:100vw;max-width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;position:relative}

/* Gutenberg may wrap group children in .wp-block-group__inner-container — style by descendant, not child */
.dd-rich-band .wp-block-group__inner-container{width:100%;margin:0}
.dd-rich-band .dd-rich-h,.dd-rich-band .dd-rich-p,.dd-rich-band .dd-rich-x{max-width:860px;margin-left:auto;margin-right:auto;padding:0 var(--gutter-page);text-align:center;display:block}
.dd-rich-band h2{max-width:860px;margin:0 auto;padding:0 var(--gutter-page);text-align:center;font:var(--type-h1);letter-spacing:var(--ls-display)}
.dd-rich-band.is-dark h2,.dd-rich-band.is-dark .dd-rich-h{color:var(--orange-500)}
.dd-rich-band.is-light h2,.dd-rich-band.is-light .dd-rich-h{color:var(--orange-600)}
.dd-rich-band p{max-width:860px;margin:var(--space-4) auto 0;padding:0 var(--gutter-page);text-align:center;font:var(--type-body-lg)}
.dd-rich-band.is-dark p{color:rgba(255,255,255,.78)}
.dd-rich-band.is-light p{color:var(--text-body)}
.dd-rich-band figure{width:100%;max-width:none!important;margin:var(--space-10) 0 0;padding:0}
.dd-rich-band figure img{width:100%;max-width:none;height:auto;display:block;border-radius:0}
.dd-rich-band.is-hero figure,.dd-rich-band figure:first-child{margin-top:0}
@media(max-width:900px){.dd-rich-band .dd-rich-h,.dd-rich-band .dd-rich-p,.dd-rich-band .dd-rich-x,.dd-rich-band h2,.dd-rich-band p{padding:0 var(--gutter-page-sm)}}

/* ---------- info pages: B2B card, numbered bands, CTA band, page end spacing ---------- */
.dd-page-wrap{padding-bottom:var(--pad-band-y)}
.dd-page>*:last-child{margin-bottom:0}
.dd-b2b-card{display:grid;grid-template-columns:1.35fr 1fr;gap:0;align-items:stretch;background:var(--surface-subtle);border-radius:var(--radius-card);overflow:hidden;margin:var(--space-12) 0}
.dd-b2b-txt{padding:var(--space-8)}
.dd-b2b-txt .dd-eyebrow{color:var(--orange-600);margin:0 0 var(--space-3)}
.dd-b2b-txt h3{font:var(--type-h3);color:var(--text-strong);margin:0 0 var(--space-4)}
.dd-b2b-txt p{font:var(--type-body);color:var(--text-body);margin:0 0 var(--space-4)}
.dd-b2b-txt p:last-child{margin-bottom:0}
.dd-b2b-media{margin:0;min-height:280px}
.dd-b2b-media img{width:100%;height:100%;object-fit:cover;display:block}
.dd-num-band{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-12);align-items:center;margin:var(--space-16) 0}
.dd-num-band.is-right .dd-num-media{order:2}
.dd-num-media{margin:0;border-radius:var(--radius-media);overflow:hidden}
.dd-num-media img{width:100%;display:block;aspect-ratio:4/3;object-fit:cover}
.dd-num{display:block;font:var(--type-spec);font-size:var(--fs-caption);color:var(--orange-500);margin-bottom:var(--space-2)}
.dd-num-txt h2{font:var(--type-h2);color:var(--text-strong);letter-spacing:var(--ls-heading);margin:0 0 var(--space-4)}
.dd-num-txt p{font:var(--type-body);color:var(--text-body);margin:0 0 var(--space-3)}
.dd-cta-band{display:flex;align-items:center;justify-content:space-between;gap:var(--space-8);flex-wrap:wrap;background:var(--ink-800);border-radius:var(--radius-card);padding:var(--space-8);margin:var(--space-16) 0 0}
.dd-cta-band h3{font:var(--type-h3);color:#fff;margin:0 0 var(--space-2)}
.dd-cta-band p{font:var(--type-body);color:rgba(255,255,255,.76);margin:0}
.dd-cta-band .wp-block-buttons{margin:0}
.dd-page .wp-block-image.alignwide img,.dd-page .wp-block-image.alignfull img{width:100%;border-radius:var(--radius-media)}
@media(max-width:900px){.dd-b2b-card,.dd-num-band{grid-template-columns:1fr;gap:var(--space-6)}.dd-num-band.is-right .dd-num-media{order:0}.dd-b2b-media{min-height:220px}}

@media(max-width:900px){
.dd-b2b-card,.dd-num-band{grid-template-columns:1fr!important;gap:24px!important}
.dd-b2b-card>figure{min-height:220px!important}
.dd-num-band>figure,.dd-num-band>div{order:0!important}
}

/* ---------- video tutorials ---------- */
.dd-vid{max-width:var(--container-content);margin:0 auto}
.dd-vid-stage{background:#000;border-radius:var(--radius-media);overflow:hidden;aspect-ratio:16/9}
.dd-vid-stage video{width:100%;height:100%;display:block;object-fit:contain;background:#000}
.dd-vid-meta{display:flex;align-items:baseline;gap:var(--space-4);flex-wrap:wrap;margin:var(--space-6) 0 var(--space-8)}
.dd-vid-meta h2{font:var(--type-h3);color:var(--text-strong);margin:0;flex:1}
.dd-vid-meta #dd-vid-dur{font:var(--type-spec);color:var(--text-muted)}
.dd-vid-meta p{flex-basis:100%;font:var(--type-body);color:var(--text-muted);margin:var(--space-2) 0 0}
.dd-vid-rail{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-4)}
.dd-vid-thumb{display:flex;flex-direction:column;text-align:left;padding:0;background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-card);overflow:hidden;cursor:pointer;transition:var(--transition-card)}
.dd-vid-thumb.is-on{border:2px solid var(--orange-500)}
.dd-vid-thumb:hover{box-shadow:var(--shadow-card-hover)}
.dd-vid-thumb .shot{position:relative;display:block;aspect-ratio:16/9;background:var(--ink-800)}
.dd-vid-thumb .shot img{width:100%;height:100%;object-fit:cover}
.dd-vid-thumb .play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;text-shadow:0 2px 8px rgba(0,0,0,.5)}
.dd-vid-thumb.is-on .play{color:var(--orange-500)}
.dd-vid-thumb .len{position:absolute;right:8px;bottom:8px;font:var(--type-eyebrow);color:#fff;background:rgba(10,10,11,.7);border-radius:var(--radius-xs);padding:2px 6px}
.dd-vid-thumb .tt{display:block;font:var(--type-body-sm);font-weight:var(--fw-semibold);color:var(--text-strong);padding:var(--space-3) var(--space-4) 0}
.dd-vid-thumb .dd{display:block;font:var(--type-body-sm);color:var(--text-muted);padding:4px var(--space-4) var(--space-4)}
/* ---------- FAQ accordions ---------- */
.dd-faq .dd-acc{border:1px solid var(--border-subtle);border-radius:var(--radius-card);padding:0;margin:0 0 var(--space-2);background:var(--surface-card)}
.dd-faq .dd-acc[open]{border-color:var(--orange-500)}
.dd-faq .dd-acc>summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5);font:var(--type-body);color:var(--text-strong);cursor:pointer;list-style:none}
.dd-faq .dd-acc>summary::-webkit-details-marker{display:none}
.dd-faq .dd-acc>summary::after{content:"+";font:400 20px/1 var(--font-sans);color:var(--text-muted)}
.dd-faq .dd-acc[open]>summary::after{content:"–";color:var(--orange-500)}
.dd-faq .dd-acc-body{padding:0 var(--space-5) var(--space-5);font:var(--type-body);color:var(--text-body)}
.dd-faq .dd-acc-guide>summary{font-weight:var(--fw-semibold)}
@media(max-width:900px){.dd-page .dd-b2b-card,.dd-page .dd-num-band,.dd-page div[style*="grid-template-columns:minmax(0,1fr) minmax(0,1fr)"]{grid-template-columns:1fr!important;gap:24px!important}}

/* full-bleed page sections (banners, collage) break out of the 1240px container */
.dd-page .dd-bleed,.dd-page-banner{width:100vw!important;max-width:100vw!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important}
/* pages that end with a full-bleed section sit flush on the footer */
.dd-page-wrap:has(.dd-bleed:last-child){padding-bottom:0}
.dd-page .dd-bleed:last-child{margin-bottom:0}
/* product page: last rich band sits flush on the footer */
.single-product .woocommerce-tabs{margin-bottom:0}
.single-product .woocommerce-tabs .panel{padding-bottom:0;margin-bottom:0}
.single-product #tab-description>.dd-rich-band:last-child{margin-bottom:0}
.single-product div.product{margin-bottom:0!important;padding-bottom:0}
.single-product main.dd-container,.single-product .dd-band{padding-bottom:0}

/* legal / prose pages: centred 860px text column with equal side margins */
.dd-page>h1,.dd-page>h2,.dd-page>h3,.dd-page>h4,.dd-page>p,.dd-page>ul,.dd-page>ol,.dd-page>.wp-block-details{max-width:860px;margin-left:auto;margin-right:auto}
.dd-page>h2{margin-top:var(--space-10)}
.dd-faq{max-width:860px;margin-left:auto;margin-right:auto}

/* single product: kill every trailing gap between the last rich band and the footer */
.single-product .woocommerce-tabs .panel>*:last-child,
.single-product .woocommerce-tabs .panel>.dd-rich-band:last-child,
.single-product #tab-description>*:last-child{margin-bottom:0!important;padding-bottom:0}
.single-product .woocommerce-tabs .panel{margin:0!important;padding-bottom:0!important}
.single-product .woocommerce-tabs{padding-bottom:0!important;margin-bottom:0!important}
.single-product div.product{padding:var(--space-8) var(--gutter-page) 0!important;margin-bottom:0!important}
.single-product main,.single-product #main,.single-product .site-main,.single-product .dd-band,.single-product .dd-container{padding-bottom:0!important;margin-bottom:0!important}
.single-product .dd-footer{margin-top:0}

/* the trailing space stays, but inside the black band itself */
.single-product #tab-description>.dd-rich-band:last-child{padding-bottom:96px!important}
.single-product #tab-description>.dd-rich-band.is-hero:last-child{padding-bottom:0!important}

/* the gap under the rich content stays, but painted black so it reads as part of the last band */
.single-product .woocommerce-tabs .panel>*:last-child,
.single-product #tab-description>*:last-child{margin-bottom:0!important;padding-bottom:var(--space-16)!important}
.single-product .woocommerce-tabs #tab-description{background:#000}
