/* Displaypunt.nl — original navy/orange retail storefront, version 1.0 */
:root {
  --dp-navy: #082e69;
  --dp-blue: #0a4189;
  --dp-blue-light: #eff5fc;
  --dp-orange: #ff6900;
  --dp-orange-dark: #e85c00;
  --dp-ink: #142c4e;
  --dp-muted: #62718a;
  --dp-border: #dce5f1;
  --dp-white: #fff;
  --dp-cream: #f9fbfe;
  --dp-radius: 12px;
  --dp-shadow: 0 5px 19px rgba(12,41,81,.075);
  --dp-font: -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Arial,sans-serif;
}
*,*::before,*::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.dp-theme { margin:0; background:#fff; color:var(--dp-ink); font: 15px/1.55 var(--dp-font); -webkit-font-smoothing:antialiased; }
.dp-theme a { color:var(--dp-blue); text-decoration:none; transition:color .18s ease; }
.dp-theme a:hover { color:var(--dp-orange); }
.dp-theme button,.dp-theme input,.dp-theme select,.dp-theme textarea { font:inherit; }
.dp-theme button,.dp-theme summary { cursor:pointer; }
.dp-theme button:disabled { cursor:not-allowed; opacity:.65; }
.dp-theme img { max-width:100%; height:auto; }
.dp-theme h1,.dp-theme h2,.dp-theme h3,.dp-theme h4,.dp-theme p { margin-top:0; }
.dp-theme h1,.dp-theme h2,.dp-theme h3,.dp-theme h4 { letter-spacing:-.035em; line-height:1.18; color:var(--dp-navy); }
.dp-theme h1 { font-weight:820; }
.dp-theme h2,.dp-theme h3 { font-weight:780; }
.dp-container { width:min(100% - 48px, 1420px); margin-inline:auto; }
.dp-icon { width:21px; height:21px; display:inline-block; vertical-align:middle; flex-shrink:0; fill:none; stroke:currentColor; stroke-width:1.85; stroke-linecap:round; stroke-linejoin:round; }
.dp-theme :focus-visible { outline:3px solid #ff890d; outline-offset:3px; }
.dp-skip-link:focus { position:fixed; z-index:999; top:12px; left:12px; padding:12px; background:#fff; color:var(--dp-navy); clip:auto; width:auto; height:auto; }
.screen-reader-text { border:0; clip:rect(1px,1px,1px,1px); clip-path:inset(50%); height:1px; width:1px; margin:-1px; overflow:hidden; padding:0; position:absolute; word-wrap:normal!important; }
.dp-overline { display:block; color:var(--dp-orange); letter-spacing:.09em; font-size:.72rem; font-weight:800; text-transform:uppercase; margin-bottom:8px; }
.dp-button,.dp-theme .button,.dp-theme button.button,.dp-theme a.button,.dp-theme input.button,.dp-theme button[type=submit].button,.dp-theme .wp-element-button { display:inline-flex; align-items:center; justify-content:center; gap:9px; border:1px solid transparent; border-radius:7px; min-height:43px; padding:11px 19px; line-height:1.2; font-size:14px; font-weight:750; text-align:center; text-decoration:none; background:var(--dp-orange); color:#fff; cursor:pointer; transition:background .18s,transform .18s,box-shadow .18s; }
.dp-button:hover,.dp-theme .button:hover,.dp-theme button.button:hover,.dp-theme a.button:hover,.dp-theme .wp-element-button:hover { background:var(--dp-orange-dark); color:#fff; box-shadow:0 5px 14px rgba(250,99,0,.14); }
.dp-button:active,.dp-theme .button:active { transform:translateY(1px); }
.dp-button-ghost,.dp-button-outline { background:#fff; color:var(--dp-navy); border-color:#a7bdd8; }
.dp-button-ghost:hover,.dp-button-outline:hover { background:#f4f8ff; color:var(--dp-blue); box-shadow:none; }
.dp-button .dp-icon { width:17px; height:17px; }
.dp-topbar { background:linear-gradient(95deg,#f3f7fc,#e9f1fc); color:#082d65; border-bottom:1px solid #e2ebf7; }
.dp-topbar-inner { min-height:37px; display:flex; align-items:center; justify-content:space-evenly; gap:22px; font-size:12px; font-weight:640; }
.dp-topbar-inner span { display:inline-flex; gap:8px; align-items:center; white-space:nowrap; }
.dp-topbar-inner .dp-icon { width:18px; height:18px; color:var(--dp-blue); }
.dp-main-header { background:#fff; }
.dp-masthead { display:grid; grid-template-columns:minmax(225px,260px) minmax(0,1fr) max-content; grid-template-areas:"brand search actions"; align-items:center; column-gap:clamp(18px,2.2vw,30px); min-height:80px; }
/* The masthead has three explicit desktop areas, switching to a two-row mobile layout.
   The menu button is completely removed from desktop layout. */
/* The logo is a flex wordmark, not a bitmap of fixed intrinsic width.
   Custom WordPress logos retain their original aspect ratio. */
.dp-brand,.dp-mobile-brand { display:flex; min-width:0; max-width:100%; align-items:center; text-decoration:none; }
.dp-brand { grid-area:brand; justify-self:start; min-height:52px; }
.dp-default-logo { display:inline-flex; align-items:center; gap:9px; min-width:0; max-width:100%; white-space:nowrap; line-height:1; }
.dp-logo-symbol { display:block; width:41px; height:41px; flex:0 0 auto; object-fit:contain; }
.dp-logo-wordmark { display:inline-flex; align-items:baseline; min-width:0; font-size:26px; font-weight:830; letter-spacing:-.055em; color:#0b2f69; line-height:1; }
.dp-logo-domain { color:#ff6900; }
.dp-brand:hover .dp-logo-wordmark,.dp-mobile-brand:hover .dp-logo-wordmark { color:#0b2f69; }
.dp-brand .dp-logo-image,.dp-mobile-brand .dp-logo-image { display:block; width:auto; height:auto; max-width:min(260px,100%); max-height:52px; object-fit:contain; object-position:left center; }

.dp-search-form { grid-area:search; display:flex; width:100%; max-width:640px; height:47px; position:relative; justify-self:center; border:1px solid #bac9dc; border-radius:8px; background:white; }
.dp-search-form:focus-within { border-color:var(--dp-blue); box-shadow:0 0 0 3px rgba(8,75,157,.08); }
.dp-search-input { width:100%; flex:1; min-width:0; border:0!important; border-radius:8px 0 0 8px!important; box-shadow:none!important; padding:0 16px!important; height:100%!important; background:transparent!important; outline:none!important; font-size:13px!important; }
.dp-search-input::placeholder { color:#7d8798; }
.dp-search-input::-webkit-search-decoration,.dp-search-input::-webkit-search-cancel-button,.dp-search-input::-webkit-search-results-button,.dp-search-input::-webkit-search-results-decoration { -webkit-appearance:none; appearance:none; display:none; }
.dp-search-button { width:51px; flex:0 0 51px; border:0; color:#fff; background:var(--dp-blue); border-radius:0 6px 6px 0; display:grid; place-items:center; }
.dp-search-button .dp-icon { width:24px; height:24px; }
.dp-search-button:hover { background:var(--dp-navy); }
.dp-search-results { position:absolute; top:calc(100% + 9px); left:-1px; right:-1px; z-index:50; background:#fff; border:1px solid var(--dp-border); border-radius:10px; box-shadow:0 16px 36px rgba(4,36,88,.16); max-height:min(450px,60vh); overflow:auto; padding:7px; }
.dp-search-results[hidden] { display:none; }
.dp-suggest-item { display:grid; grid-template-columns:48px 1fr auto; gap:10px; align-items:center; padding:7px; border-radius:6px; color:var(--dp-navy)!important; font-size:13px; }
.dp-suggest-item:hover,.dp-suggest-item:focus { background:var(--dp-blue-light); }
.dp-suggest-item img { width:48px; height:48px; object-fit:contain; }
.dp-suggest-item strong { font-weight:750; line-height:1.35; }
.dp-suggest-item small { font-weight:800; color:var(--dp-orange); white-space:nowrap; }
.dp-suggest-all { display:block; padding:9px; border-top:1px solid var(--dp-border); margin-top:4px; font-weight:750; text-align:center; }
.dp-suggest-message { padding:16px; color:var(--dp-muted); text-align:center; font-size:13px; }
.dp-header-actions { grid-area:actions; display:flex; align-items:center; gap:20px; justify-content:flex-end; width:max-content; max-width:100%; }
.dp-header-action { display:flex; align-items:center; gap:8px; font-weight:690; color:var(--dp-navy)!important; white-space:nowrap; font-size:13px; }
.dp-header-action:hover { color:var(--dp-orange)!important; }
.dp-header-action .dp-icon { width:25px; height:25px; }
.dp-cart-link { position:relative; }
.dp-cart-count { position:absolute; left:15px; top:-7px; background:var(--dp-orange); color:#fff; border-radius:100%; min-width:19px; height:19px; padding:0 4px; display:grid; place-items:center; font-size:11px; font-weight:800; }
.dp-nav-bar { background:linear-gradient(90deg,#06316e,#0a468d); box-shadow:0 3px 11px rgba(7,42,95,.09); }
.dp-navbar { display:flex; align-items:stretch; gap:26px; min-height:47px; }
.dp-all-categories { position:relative; flex-shrink:0; }
.dp-all-categories > summary { display:flex; align-items:center; gap:10px; height:100%; list-style:none; font-size:13px; font-weight:750; color:#fff; white-space:nowrap; }
.dp-all-categories > summary::-webkit-details-marker { display:none; }
.dp-all-categories > summary .dp-icon { width:19px; }
.dp-all-categories > summary .dp-icon:last-child { width:14px; margin-left:3px; }
.dp-all-categories > ul { position:absolute; top:100%; left:0; width:265px; margin:0; padding:10px; list-style:none; background:white; border:1px solid var(--dp-border); border-radius:0 0 10px 10px; box-shadow:var(--dp-shadow); z-index:30; }
.dp-all-categories li a { display:block; padding:10px 11px; font-size:13px; color:var(--dp-ink); font-weight:600; border-radius:6px; }
.dp-all-categories li a:hover { background:var(--dp-blue-light); color:var(--dp-blue); }
.dp-primary-nav { flex:1; min-width:0; }
.dp-nav-links { height:100%; display:flex; align-items:stretch; gap:clamp(12px,1.8vw,30px); margin:0; padding:0; list-style:none; }
.dp-nav-links > li { position:relative; display:flex; align-items:center; }
.dp-nav-links li a { display:inline-flex; color:#fff; font-size:13px; font-weight:650; white-space:nowrap; height:100%; align-items:center; }
.dp-nav-links li a:hover { color:#f9c49c; }
.dp-nav-links .sub-menu { display:none; position:absolute; top:100%; left:0; min-width:230px; list-style:none; background:white; margin:0; padding:7px; border-radius:0 0 9px 9px; border:1px solid var(--dp-border); box-shadow:var(--dp-shadow); z-index:32; }
.dp-nav-links .sub-menu a { display:block; padding:8px 10px; color:var(--dp-navy); }
.dp-nav-links li:hover > .sub-menu,.dp-nav-links li:focus-within > .sub-menu { display:block; }
.dp-deal-link { align-self:center; display:inline-flex; gap:8px; align-items:center; padding:9px 13px; border-radius:6px; background:var(--dp-orange); color:white!important; font-size:12px; font-weight:750; white-space:nowrap; }
.dp-deal-link .dp-icon { width:16px; height:16px; }
.dp-deal-link:hover { background:var(--dp-orange-dark); }
.dp-mobile-menu-button,.dp-mobile-drawer,.dp-mobile-shade { display:none; }
.dp-icon-button { background:transparent; border:0; display:grid; place-items:center; width:40px; height:40px; color:var(--dp-navy); }
/* Hidden outside the mobile breakpoint: generic icon buttons must not create a fourth grid item. */
.dp-masthead > .dp-mobile-menu-button { display:none; grid-area:menu; }
.dp-home-main { padding:17px 0 45px; }
.dp-hero { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(210px,.9fr) minmax(200px,.68fr); align-items:center; gap:15px; position:relative; overflow:hidden; min-height:320px; padding:28px 29px; border-radius:13px; background:linear-gradient(110deg,#f6f9fd 0%,#eef4fb 53%,#f4f7fc 100%); }
.dp-hero::before { content:""; position:absolute; pointer-events:none; width:300px; height:490px; background:rgba(205,222,246,.36); transform:rotate(27deg); left:42%; top:-110px; border-radius:16px; }
.dp-hero-copy,.dp-hero-image,.dp-hero-feature { position:relative; z-index:1; }
.dp-hero h1 { margin:0 0 14px; font-size:clamp(35px,3.45vw,58px); letter-spacing:-.05em; line-height:1.04; }
.dp-hero h1 span { color:var(--dp-orange); }
.dp-hero-copy > p { font-size:clamp(14px,1.2vw,18px); line-height:1.44; color:#1d3457; margin:0 0 19px; max-width:510px; }
.dp-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
.dp-hero-actions .dp-button { padding:11px 17px; }
.dp-hero-checks { display:flex; gap:18px; flex-wrap:wrap; margin-top:22px; font-size:11.5px; font-weight:630; }
.dp-hero-checks span { display:flex; align-items:center; gap:4px; }
.dp-hero-checks .dp-icon { width:17px; height:17px; color:var(--dp-orange); }
.dp-hero-image { align-self:stretch; display:grid; place-items:center; }
.dp-hero-image img { object-fit:contain; max-height:315px; max-width:100%; filter:drop-shadow(0 15px 9px rgba(23,51,87,.12)); }
.dp-hero-feature { padding:8px 0; }
.dp-hero-feature h2 { font-size:clamp(19px,1.8vw,27px); margin:0 0 10px; }
.dp-hero-feature p { color:#475777; font-size:13.5px; line-height:1.45; margin-bottom:15px; }
.dp-hero-price { display:block; font-size:clamp(27px,2.8vw,39px); letter-spacing:-.045em; color:var(--dp-orange); line-height:1.1; }
.dp-hero-price ins { text-decoration:none; }
.dp-hero-price del { color:var(--dp-muted); font-size:.5em; font-weight:500; }
.dp-hero-feature .dp-unit-price { display:block; color:#354b66; font-size:13px; margin:2px 0 16px; }
.dp-home-categories { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-top:18px; }
.dp-category-tile { display:flex; align-items:center; gap:9px; background:#f0f5fb; padding:11px; border-radius:9px; min-height:94px; border:1px solid transparent; color:var(--dp-navy)!important; }
.dp-category-tile:hover { border-color:#bbd0e7; background:#eaf2fc; }
.dp-category-tile img { width:85px; height:70px; object-fit:contain; mix-blend-mode:multiply; flex-shrink:0; }
.dp-category-tile span { flex:1; min-width:0; }
.dp-category-tile strong { display:block; font-size:13px; line-height:1.3; }
.dp-category-tile small { display:block; color:#4b627f; font-size:11px; line-height:1.3; margin-top:4px; }
.dp-category-tile > .dp-icon { width:16px; height:16px; }
.dp-home-section { margin-top:26px; }
.dp-section-title { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:14px; }
.dp-section-title h2 { font-size:clamp(24px,2.2vw,32px); margin:0; }
.dp-section-title a { display:inline-flex; align-items:center; gap:8px; color:var(--dp-blue); font-size:13px; font-weight:720; }
.dp-section-title a .dp-icon { width:17px; }
.dp-theme ul.products,.dp-products { margin:0; padding:0; list-style:none; }
.dp-theme ul.products.dp-products-home { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:13px; }
.dp-theme .products .dp-product-card,.dp-theme ul.products li.product.dp-product-card { float:none!important; margin:0!important; padding:0!important; width:auto!important; min-width:0; border:1px solid var(--dp-border); border-radius:10px; box-shadow:0 2px 8px rgba(12,50,103,.035); display:flex; flex-direction:column; overflow:hidden; background:#fff; transition:transform .18s,box-shadow .18s,border-color .18s; }
.dp-theme ul.products li.product.dp-product-card:hover { transform:translateY(-2px); border-color:#c4d6ea; box-shadow:var(--dp-shadow); }
.dp-product-card-image { position:relative; aspect-ratio:1/1; background:linear-gradient(#fff,#fcfdff); padding:8px 10px 0; }
.dp-product-card-image a { display:flex; justify-content:center; align-items:center; height:100%; }
.dp-theme .products li.product.dp-product-card .dp-product-card-image img { height:100%!important; width:100%!important; display:block; object-fit:contain; margin:0!important; }
.dp-product-badge { position:absolute; top:8px; left:8px; color:#fff; background:var(--dp-orange); border-radius:5px; padding:5px 7px; font-size:10px; line-height:1.2; font-weight:760; z-index:2; }
.dp-badge-demo { background:#607997; }
.dp-product-card-body { display:flex; flex:1; flex-direction:column; padding:9px 12px 12px; }
.dp-theme .products li.product .dp-product-card-title { font-size:13px; line-height:1.31; color:var(--dp-navy); margin:0 0 10px; min-height:2.62em; letter-spacing:-.015em; font-weight:750; }
.dp-product-card-title a { color:inherit!important; }
.dp-product-card-title a:hover { color:var(--dp-orange)!important; }
.dp-card-price { margin-top:auto; line-height:1.15; font-size:22px; color:var(--dp-orange); font-weight:820; letter-spacing:-.03em; }
.dp-card-price .amount { color:var(--dp-orange); }
.dp-card-price del { font-size:13px; color:#8a98aa; font-weight:500; }
.dp-card-price ins { text-decoration:none; }
.dp-unit-price { display:inline-block; font-size:11.5px; color:#62748c; line-height:1.45; margin-top:4px; }
.dp-retail-summary { display:grid; gap:5px; margin-top:8px; padding:8px; border-radius:7px; background:#f2f7fd; border:1px solid #dce8f5; }
.dp-retail-summary > span { display:flex; align-items:baseline; justify-content:space-between; gap:7px; min-width:0; }
.dp-retail-summary > span > small { color:#526781; font-size:9.5px; line-height:1.25; }
.dp-retail-summary > span > strong { color:#173f73; font-size:11.5px; line-height:1.2; white-space:nowrap; }
.dp-stock-ok,.dp-stock-no { display:flex; align-items:center; gap:4px; margin:5px 0; font-size:10.5px; font-weight:700; color:#1b8542; }
.dp-stock-no { color:#aa4c13; }
.dp-stock-ok .dp-icon { width:13px; height:13px; }
.dp-product-card-actions { margin-top:9px; }
.dp-theme ul.products li.product .dp-product-card-actions a.button { width:100%; margin:0; background:var(--dp-orange); color:#fff; padding:10px 5px; font-size:12px; line-height:1.2; border-radius:6px; min-height:38px; font-weight:760; }
.dp-theme ul.products li.product .dp-product-card-actions a.button:hover { background:var(--dp-orange-dark); }
.dp-theme ul.products li.product .dp-product-card-actions .added_to_cart { display:block; text-align:center; font-size:11px; font-weight:700; margin-top:5px; }
.dp-trust-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-radius:10px; background:linear-gradient(90deg,#f2f6fb,#eaf2fc); padding:17px 10px; margin-top:22px; }
.dp-trust-strip > div { display:flex; align-items:center; justify-content:center; gap:12px; padding:3px 15px; min-width:0; border-right:1px solid #cbd8e8; }
.dp-trust-strip > div:last-child { border-right:0; }
.dp-trust-strip .dp-icon { width:36px; height:36px; color:var(--dp-blue); }
.dp-trust-strip strong { display:block; font-size:12.5px; line-height:1.25; color:var(--dp-navy); }
.dp-trust-strip small { display:block; color:#526782; font-size:10.5px; line-height:1.4; margin-top:4px; }
.dp-lifestyle-banner { display:grid; grid-template-columns:36% 42% 22%; overflow:hidden; min-height:180px; border-radius:10px; background:#e9f1fa; margin-top:18px; }
.dp-lifestyle-copy { background:linear-gradient(115deg,#083a82,#0556b3); color:#fff; padding:23px 26px; position:relative; }
.dp-lifestyle-copy::after { content:""; position:absolute; right:-28px; top:0; border-top:220px solid var(--dp-orange); border-right:28px solid transparent; z-index:1; }
.dp-lifestyle-copy .dp-overline { color:#ffbd86; }
.dp-lifestyle-copy h2 { font-size:30px; color:#fff; margin:0 0 7px; }
.dp-lifestyle-copy p { max-width:390px; font-size:13px; line-height:1.5; }
.dp-lifestyle-copy a { color:#fff; font-weight:720; font-size:12px; }
.dp-lifestyle-copy a .dp-icon { width:15px; }
.dp-lifestyle-photo { background:url(../img/toonbank-sfeer.webp) center center/cover no-repeat; }
.dp-lifestyle-for { display:flex; flex-direction:column; justify-content:center; gap:7px; padding:15px 20px; font-size:13px; font-weight:680; color:var(--dp-navy); }
.dp-lifestyle-for > strong { margin-bottom:2px; }
.dp-lifestyle-for > span { display:flex; align-items:center; gap:10px; }
.dp-lifestyle-for .dp-icon { color:var(--dp-orange); width:19px; }
.dp-how-section { display:flex; align-items:center; gap:30px; background:#f1f5fb; border-radius:10px; padding:18px 24px; margin-top:17px; }
.dp-how-section h2 { margin:0; font-size:24px; flex:0 0 150px; }
.dp-how-section > div { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; flex:1; }
.dp-step { display:grid; grid-template-columns:22px auto; grid-template-rows:auto auto; column-gap:9px; line-height:1.25; }
.dp-step b { grid-row:1/span 2; display:grid; place-items:center; width:22px; height:22px; border-radius:50%; background:var(--dp-orange); color:#fff; font-size:11px; }
.dp-step strong { font-size:12px; }
.dp-step small { font-size:11px; color:#62738c; margin-top:4px; }
.dp-home-blog { padding-top:8px; }
.dp-empty-products { display:flex; align-items:center; gap:32px; background:#f3f7fc; padding:25px; border-radius:10px; }
.dp-empty-products img { width:155px; height:155px; object-fit:contain; }
.dp-empty-products h3 { font-size:22px; margin-bottom:6px; }
.dp-empty-products p { margin-bottom:13px; }
.dp-breadcrumbs,.woocommerce .woocommerce-breadcrumb.dp-breadcrumbs { display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin:16px 0 17px; font-size:12px; color:#74829a; }
.dp-breadcrumbs a { color:var(--dp-blue); font-weight:610; }
.dp-breadcrumb-divider { color:#93a5ba; font-size:18px; }
.dp-archive-page,.dp-product-page,.dp-content-page,.dp-blog-index,.dp-blog-single,.dp-search-page { padding-bottom:55px; }
.dp-archive-hero { display:grid; grid-template-columns:60% 40%; overflow:hidden; min-height:190px; align-items:center; background:linear-gradient(110deg,#f2f7fd 0%,#e9f2fd 75%,#e8f4ff 100%); border-radius:12px; margin-bottom:23px; }
.dp-archive-hero > div { padding:24px 28px; position:relative; z-index:1; }
.dp-archive-hero h1 { font-size:clamp(30px,3.1vw,42px); margin:0 0 9px; }
.dp-archive-hero p { max-width:690px; margin:0; color:#4b5d78; }
.dp-archive-hero img { width:100%; height:195px; object-fit:cover; object-position:center; }
.dp-shop-layout { display:grid; grid-template-columns:246px minmax(0,1fr); gap:20px; align-items:start; }
.dp-filters { background:#f8fbff; border:1px solid var(--dp-border); padding:17px 16px; border-radius:11px; position:sticky; top:20px; box-shadow:0 2px 8px rgba(6,46,103,.025); }
.dp-filters-head { display:flex; justify-content:space-between; gap:8px; align-items:center; padding-bottom:13px; border-bottom:1px solid var(--dp-border); }
.dp-filters-head h2 { font-size:16px; margin:0; display:flex; align-items:center; gap:7px; }
.dp-filters-head .dp-icon { width:18px; }
.dp-filters-head a { font-size:11px; font-weight:650; }
.dp-filters fieldset { border:0; padding:15px 0 13px; margin:0; border-bottom:1px solid var(--dp-border); }
.dp-filters fieldset:last-of-type { border:0; }
.dp-filters legend { font-size:13px; font-weight:790; color:var(--dp-navy); padding:0; }
.dp-checkline { display:flex; align-items:center; gap:8px; font-size:12.5px; padding:3px 0; color:#354d70; cursor:pointer; }
.dp-checkline input { accent-color:var(--dp-orange); width:15px; height:15px; margin:0; }
.dp-filter-help { display:block; margin-top:7px; color:#63758d; font-size:10.5px; line-height:1.4; }
.dp-price-inputs { display:flex; gap:8px; margin-top:9px; }
.dp-price-inputs label { flex:1; min-width:0; font-size:11px; color:var(--dp-muted); }
.dp-price-inputs input { width:100%; height:34px; background:#fff; border:1px solid #b8cbe0; border-radius:6px; margin-top:5px; padding:4px 7px; font-size:12px; }
.dp-filter-submit { width:100%; }
.dp-filter-toggle { display:none; }
.dp-shop-toolbar { display:flex; align-items:center; justify-content:space-between; gap:15px; min-height:43px; margin-bottom:13px; }
.dp-shop-toolbar .woocommerce-result-count { margin:0!important; float:none!important; font-size:12px; color:#516782; }
.dp-shop-toolbar .woocommerce-ordering { float:none!important; margin:0!important; display:flex; align-items:center; }
.dp-shop-toolbar .orderby { height:39px; border:1px solid #b8c9df; border-radius:7px; color:var(--dp-ink); background:#fff; padding:0 8px; font-size:12px; max-width:250px; }
.dp-shop-products ul.products { display:grid!important; grid-template-columns:repeat(4,minmax(0,1fr)); gap:13px; }
.dp-shop-products ul.products::before,.dp-shop-products ul.products::after,
.dp-theme ul.products.dp-products-home::before,.dp-theme ul.products.dp-products-home::after { display:none!important; content:none!important; }
.dp-shop-products .dp-product-card-image { aspect-ratio:1/1; }
.dp-shop-products .dp-product-card-title { font-size:13.5px!important; }
.dp-archive-description { max-width:920px; margin:42px 0 10px; padding:25px; border:1px solid var(--dp-border); border-radius:10px; line-height:1.75; color:#52627a; }
.dp-archive-description h2 { font-size:23px; }
.dp-theme .woocommerce-pagination { margin:26px auto 10px; }
.dp-theme .woocommerce-pagination ul.page-numbers { display:flex!important; justify-content:center; border:0!important; gap:7px; }
.dp-theme .woocommerce-pagination ul.page-numbers li { border:0!important; }
.dp-theme .woocommerce-pagination .page-numbers a,.dp-theme .woocommerce-pagination .page-numbers span { width:38px; height:38px; display:grid!important; place-items:center; border:1px solid var(--dp-border); border-radius:7px; background:#fff; color:var(--dp-navy); font-weight:750; }
.dp-theme .woocommerce-pagination .page-numbers.current { background:var(--dp-orange)!important; border-color:var(--dp-orange); color:#fff!important; }
.dp-theme .woocommerce-notices-wrapper:empty { display:none; }
.dp-theme .woocommerce-message,.dp-theme .woocommerce-info { background:#eef6fe; color:var(--dp-navy); border-top-color:var(--dp-blue); border-radius:8px; }
.dp-theme .woocommerce-error { border-top-color:#c52929; border-radius:8px; }
.dp-single-layout { display:grid; grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr); align-items:start; gap:36px; margin-top:19px; }
.dp-single-gallery { min-width:0; }
.dp-single-gallery .woocommerce-product-gallery,.dp-theme.woocommerce div.product div.images { float:none!important; width:100%!important; margin:0!important; }
.dp-single-gallery .woocommerce-product-gallery__wrapper { margin:0; }
.dp-single-gallery .woocommerce-product-gallery__image { border:1px solid var(--dp-border); background:#fff; border-radius:11px; overflow:hidden; }
.dp-single-gallery .woocommerce-product-gallery__image a { display:block; }
.dp-single-gallery .woocommerce-product-gallery__image img { width:100%; height:auto; max-height:690px; object-fit:contain; }
.dp-single-gallery .flex-control-thumbs { display:flex; gap:12px; margin:12px 0!important; padding:0; }
.dp-single-gallery .flex-control-thumbs li { float:none!important; width:80px!important; border:1px solid var(--dp-border); border-radius:8px; overflow:hidden; }
.dp-single-gallery .flex-control-thumbs li img { padding:4px; }
.dp-single-gallery .woocommerce-product-gallery .woocommerce-product-gallery__trigger { top:15px; right:15px; }
.dp-single-summary { min-width:0; padding:12px 0; }
.dp-single-summary .product_title { color:var(--dp-navy); font-size:clamp(27px,2.6vw,39px); line-height:1.12; margin:0 0 14px; }
.dp-single-summary .woocommerce-product-rating { margin-bottom:12px!important; }
.dp-single-summary .woocommerce-product-rating a { font-size:12px; }
.dp-theme .star-rating { color:#f5a300; }
.dp-single-summary > .price,.dp-theme.woocommerce div.product .dp-single-summary p.price { font-size:clamp(29px,3vw,44px); color:var(--dp-orange); font-weight:820; line-height:1.2; margin:13px 0 0; }
.dp-single-summary .price ins { text-decoration:none; color:var(--dp-orange); }
.dp-single-summary .price del { color:#8b97aa; font-size:.55em; font-weight:500; }
.dp-single-unit { margin:4px 0 17px; color:#61728a; font-size:14px; }
.dp-single-unit .dp-unit-price { font-size:14px; }
.dp-single-summary .woocommerce-product-details__short-description { font-size:15px; line-height:1.65; color:#405773; margin:14px 0; }
.dp-profit-panel { margin:14px 0 16px; padding:16px; background:#f5f8fc; border:1px solid var(--dp-border); border-radius:12px; }
.dp-profit-panel h3 { margin:0 0 12px; font-size:18px; color:var(--dp-navy); }
.dp-profit-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px 16px; }
.dp-profit-grid > div { display:flex; flex-direction:column; gap:3px; padding-bottom:10px; border-bottom:1px solid #dbe5f1; }
.dp-profit-grid > div span { font-size:12px; color:#6b7b90; }
.dp-profit-grid > div strong { font-size:18px; color:var(--dp-navy); }
.dp-profit-note { margin:12px 0 0; font-size:12px; color:#61728a; line-height:1.55; }
.dp-single-summary form.cart { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:22px 0!important; }
.dp-single-summary .quantity { float:none!important; margin:0!important; }
.dp-theme .quantity input.qty { min-height:48px; width:71px!important; border:1px solid #c5d3e3; border-radius:7px; padding:5px; font-weight:770; color:var(--dp-navy); }
.dp-single-summary button.single_add_to_cart_button { min-height:48px!important; min-width:220px; flex:1; font-size:15px!important; }
.dp-single-summary form.variations_form { display:block; }
.dp-single-summary table.variations { margin:0 0 14px; }
.dp-single-summary table.variations td { padding:8px 0; }
.dp-single-summary table.variations select { padding:9px; border:1px solid var(--dp-border); border-radius:6px; min-width:180px; }
.dp-single-summary .single_variation_wrap .woocommerce-variation-price { margin:8px 0 12px; }
.dp-single-summary .single_variation_wrap .woocommerce-variation-add-to-cart { display:flex; align-items:center; gap:10px; }
.dp-single-summary .product_meta { font-size:12px; color:var(--dp-muted); padding-top:16px; margin-top:12px; border-top:1px solid var(--dp-border); }
.dp-single-summary .product_meta > span { display:block; margin:5px 0; }
.dp-single-summary .stock { color:#148144!important; font-weight:750; font-size:13px; }
.dp-product-microtrust { display:flex; flex-wrap:wrap; gap:12px; margin:11px 0 17px; color:#276642; font-size:12px; font-weight:690; }
.dp-product-microtrust span { display:flex; align-items:center; gap:5px; }
.dp-product-microtrust .dp-icon { width:16px; height:16px; }
.dp-demo-info { background:#fff3e6; border-left:3px solid var(--dp-orange); padding:9px 12px; font-size:12px; margin:10px 0; }
.dp-spec-strip { display:grid; grid-template-columns:repeat(3,1fr); margin:25px 0 28px; background:#f1f6fe; border-radius:10px; padding:17px; }
.dp-spec-strip > span { display:grid; grid-template-columns:40px 1fr; grid-template-rows:1fr 1fr; align-items:center; column-gap:10px; border-right:1px solid #c5d6e8; padding:4px 22px; }
.dp-spec-strip > span:last-child { border:0; }
.dp-spec-strip .dp-icon { grid-row:1/span 2; width:32px; height:32px; color:var(--dp-blue); }
.dp-spec-strip strong { align-self:end; font-size:13px; color:var(--dp-navy); }
.dp-spec-strip small { align-self:start; font-size:11px; color:#57708b; }
.dp-single-below { margin-top:25px; }
.dp-theme.woocommerce div.product .woocommerce-tabs { clear:both; }
.dp-single-below .woocommerce-tabs ul.tabs { border:0!important; padding:0!important; display:flex; flex-wrap:wrap; gap:4px; margin:0!important; }
.dp-single-below .woocommerce-tabs ul.tabs::before { display:none!important; }
.dp-single-below .woocommerce-tabs ul.tabs li { border:1px solid var(--dp-border)!important; background:#f0f4fa!important; border-radius:8px 8px 0 0!important; padding:0!important; margin:0!important; }
.dp-single-below .woocommerce-tabs ul.tabs li::after,.dp-single-below .woocommerce-tabs ul.tabs li::before { display:none!important; }
.dp-single-below .woocommerce-tabs ul.tabs li.active { background:var(--dp-blue)!important; border-color:var(--dp-blue)!important; }
.dp-single-below .woocommerce-tabs ul.tabs li a { padding:11px 17px!important; color:var(--dp-navy)!important; font-size:13px; }
.dp-single-below .woocommerce-tabs ul.tabs li.active a { color:white!important; }
.dp-single-below .woocommerce-tabs .panel { border:1px solid var(--dp-border); padding:22px; border-radius:0 10px 10px 10px; line-height:1.75; color:#405671; }
.dp-single-below .woocommerce-tabs .panel h2 { font-size:21px; }
.dp-single-below .related,.dp-single-below .upsells { clear:both; margin-top:32px; }
.dp-single-below .related > h2,.dp-single-below .upsells > h2 { font-size:26px; margin-bottom:16px; }
.dp-single-below .related ul.products,.dp-single-below .upsells ul.products { display:grid!important; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.dp-theme ul.products::before,.dp-theme ul.products::after { display:none!important; content:none!important; }
.dp-theme .woocommerce-product-gallery .onsale,.dp-theme .onsale { background:var(--dp-orange); border-radius:5px; min-height:0; min-width:0; font-size:11px; padding:5px 9px; line-height:1.2; }
.dp-content-page { max-width:1420px; min-height:500px; }
.dp-page-heading { margin:14px 0 24px; }
.dp-page-heading h1 { margin:0 0 8px; font-size:clamp(30px,3vw,40px); }
.dp-page-heading p { color:var(--dp-muted); margin:0; }
.dp-page-content:not(.dp-cart-page .dp-page-content):not(.dp-checkout-page .dp-page-content) { line-height:1.8; }
.dp-page-content a { text-decoration:underline; text-underline-offset:2px; }
.dp-page-content .button,.dp-page-content .wp-element-button { text-decoration:none; }
.dp-checkout-steps { display:flex; align-items:center; justify-content:center; gap:clamp(15px,5vw,75px); margin:24px 0 24px; }
.dp-checkout-steps span { color:#8390a5; font-size:12px; font-weight:760; display:flex; align-items:center; gap:8px; }
.dp-checkout-steps .dp-icon { width:18px; height:18px; }
.dp-checkout-steps .is-current { color:var(--dp-orange); }
.dp-checkout-steps .is-done { color:#16814a; }
.dp-cart-page .woocommerce { display:grid; grid-template-columns:minmax(0,1.75fr) minmax(280px,.85fr); align-items:start; gap:20px; }
.dp-cart-page .woocommerce-notices-wrapper,.dp-cart-page .woocommerce > p,.dp-cart-page .woocommerce > .woocommerce-info { grid-column:1/-1; }
.dp-cart-page .woocommerce-cart-form { grid-column:1; background:#fff; border:1px solid var(--dp-border); border-radius:12px; padding:16px 19px; box-shadow:var(--dp-shadow); min-width:0; }
.dp-theme .woocommerce table.shop_table { border:0; border-collapse:collapse; margin:0; }
.dp-theme .woocommerce table.shop_table thead { background:#f2f7fd; }
.dp-theme .woocommerce table.shop_table th { padding:15px 10px; color:var(--dp-navy); font-size:12px; font-weight:780; }
.dp-theme .woocommerce table.shop_table td { padding:15px 10px; border-color:var(--dp-border); font-size:13px; }
.dp-theme .woocommerce table.shop_table img { width:74px; max-width:74px; height:75px; object-fit:contain; }
.dp-theme .woocommerce .product-name a { font-weight:750; font-size:13px; color:var(--dp-navy); }
.dp-cart-page .woocommerce .cart-collaterals { grid-column:2; min-width:0; }
.dp-cart-page .woocommerce .cart-collaterals .cart_totals { width:100%; float:none; border:1px solid var(--dp-border); border-radius:12px; padding:20px; box-shadow:var(--dp-shadow); }
.dp-theme .cart_totals h2 { margin:0 0 14px; font-size:21px; }
.dp-cart-page .woocommerce .cart-collaterals .cart_totals .shop_table { margin-bottom:15px; }
.dp-cart-page .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout { padding:10px 0 0; }
.dp-cart-page .checkout-button { width:100%; min-height:48px; }
.dp-cart-page .coupon { display:flex; align-items:center; gap:8px; }
.dp-cart-page .coupon input.input-text { width:170px!important; min-height:41px; border:1px solid var(--dp-border); border-radius:6px; padding:9px; }
.dp-cart-page .actions button[name=update_cart] { background:var(--dp-blue); }
.dp-cart-page .actions button[name=update_cart]:hover { background:var(--dp-navy); }
.dp-shipping-progress { display:flex; align-items:flex-start; gap:11px; padding:14px 16px; background:#eff9f1; border:1px solid #cfe8d4; border-radius:10px; margin-bottom:16px; color:#17733c; }
.dp-shipping-progress .dp-icon { width:28px; height:28px; }
.dp-shipping-progress > div { flex:1; }
.dp-shipping-progress strong { font-size:12px; font-weight:750; }
.dp-shipping-progress small { display:block; margin-top:7px; color:#365f43; font-size:11px; line-height:1.45; }
.dp-progress-track { height:6px; background:#cfe8d4; border-radius:10px; overflow:hidden; margin-top:6px; }
.dp-progress-track span { height:100%; background:#279452; display:block; transition:width .2s; }
.dp-cart-page .wp-block-woocommerce-empty-cart-block { display:grid; gap:18px; }
.dp-cart-page .wc-block-cart__empty-cart__title,.dp-cart-page .wc-block-components-empty-cart__title { color:var(--dp-navy); font-size:30px; margin:0; }
.dp-cart-page .wc-block-components-product-name,.dp-cart-page .wc-block-grid__product-title { color:var(--dp-navy); font-weight:760; text-decoration:none; }
.dp-cart-page .wc-block-grid__product,.dp-cart-page .wc-block-product { text-align:left; }
.dp-cart-page .wc-block-grid__product-add-to-cart a,.dp-cart-page .wp-block-button__link { border-radius:8px!important; min-height:44px; display:inline-flex; align-items:center; justify-content:center; text-decoration:none; }
.dp-cart-page .wc-block-grid__product-price,.dp-cart-page .wc-block-product-price { color:var(--dp-orange-readable); font-weight:760; }
.dp-checkout-page .woocommerce > .woocommerce-notices-wrapper { width:100%; }
.dp-checkout-page form.checkout { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(320px,.7fr); gap:18px 24px; align-items:start; }
.dp-checkout-page form.checkout .col2-set { grid-column:1; grid-row:1/span 2; display:grid; gap:16px; min-width:0; }
.dp-checkout-page form.checkout .col2-set .col-1,.dp-checkout-page form.checkout .col2-set .col-2 { width:100%; float:none; border:1px solid var(--dp-border); background:#fff; border-radius:12px; padding:20px; box-shadow:var(--dp-shadow); }
.dp-checkout-page form.checkout .col2-set h3,.dp-checkout-page #order_review_heading { color:var(--dp-navy); font-size:21px; margin:0 0 17px; }
.dp-checkout-page form.checkout #order_review_heading { grid-column:2; grid-row:1; align-self:end; border:0; padding:0; margin:0!important; }
.dp-checkout-page form.checkout #order_review { grid-column:2; grid-row:2; min-width:0; border:1px solid var(--dp-border); background:#fff; border-radius:12px; padding:20px; margin-top:0; box-shadow:var(--dp-shadow); }
.dp-theme .woocommerce form .form-row { padding:4px 0; }
.dp-theme .woocommerce form .form-row label { font-size:12px; color:var(--dp-navy); font-weight:700; }
.dp-theme .woocommerce form .form-row .input-text,.dp-theme .woocommerce form .form-row select { padding:10px 12px; min-height:44px; background:#fff; border:1px solid #bacade; border-radius:6px; color:var(--dp-ink); }
.dp-theme .woocommerce .select2-container .select2-selection--single { height:44px; min-height:44px; padding:0 12px; background:#fff; border:1px solid #bacade; border-radius:6px; color:var(--dp-ink); display:flex; align-items:center; }
.dp-theme .select2-container .select2-selection--single .select2-selection__rendered { line-height:42px; padding-left:0; padding-right:28px; }
.dp-theme .select2-container .select2-selection--single .select2-selection__arrow { height:42px; }
.dp-theme .woocommerce form .form-row .required { color:var(--dp-orange); }
.dp-checkout-page #payment { background:#f2f6fc; border-radius:10px; }
.dp-checkout-page #payment ul.payment_methods { border-bottom-color:var(--dp-border); padding:14px; }
.dp-checkout-page #payment div.form-row { padding:15px; }
.dp-checkout-page #payment div.payment_box { background:#e1ebf7; font-size:12px; }
.dp-checkout-page #payment div.payment_box::before { border-bottom-color:#e1ebf7; }
.dp-checkout-page button#place_order { width:100%; float:none; min-height:50px; font-size:15px; }
.dp-account-page .woocommerce { display:block; }
.dp-theme.logged-in .dp-account-page .woocommerce { display:flex; gap:20px; align-items:flex-start; }
.dp-account-page .woocommerce-MyAccount-navigation { width:250px; flex-shrink:0; background:#f2f7fd; border:1px solid var(--dp-border); padding:15px; border-radius:10px; }
.dp-account-page .woocommerce-MyAccount-navigation ul { list-style:none; padding:0; margin:0; }
.dp-account-page .woocommerce-MyAccount-navigation li a { display:block; padding:10px; font-weight:700; }
.dp-account-page .woocommerce-MyAccount-content { flex:1; }
.dp-theme .wc-block-cart__submit-button,.dp-theme .wc-block-components-checkout-place-order-button { background:var(--dp-orange)!important; color:white!important; border-radius:7px!important; font-weight:730!important; }
.dp-theme .wc-block-components-text-input input,.dp-theme .wc-blocks-components-select__select { border-color:#bdcbdf!important; border-radius:6px!important; }
.dp-theme .wp-block-woocommerce-cart,.dp-theme .wp-block-woocommerce-checkout { max-width:1400px!important; }
.dp-blog-hero { display:grid; grid-template-columns:58% 42%; align-items:center; background:linear-gradient(100deg,#eff5fc,#e4f0ff); overflow:hidden; border-radius:11px; min-height:240px; margin-bottom:24px; }
.dp-blog-hero > div { padding:28px 34px; }
.dp-blog-hero h1 { font-size:clamp(37px,4vw,52px); margin:0 0 12px; }
.dp-blog-hero p { max-width:600px; font-size:16px; color:#435b7a; margin-bottom:0; }
.dp-blog-hero img { width:100%; height:250px; object-fit:cover; }
.dp-blog-categories { display:flex; flex-wrap:wrap; gap:10px; margin:20px 0; }
.dp-pill { display:inline-flex; align-items:center; border-radius:7px; color:#fff!important; background:var(--dp-orange); font-size:12px; font-weight:750; padding:7px 11px; }
.dp-pill-blue { background:#e8f2ff; color:var(--dp-blue)!important; }
.dp-pill:hover { filter:brightness(.97); }
.dp-blog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.dp-blog-card { background:#fff; border:1px solid var(--dp-border); border-radius:11px; overflow:hidden; display:flex; flex-direction:column; box-shadow:var(--dp-shadow); }
.dp-blog-card-image { display:block; height:auto; aspect-ratio:1.7; overflow:hidden; background:#e8eff9; }
.dp-blog-card-image img { width:100%; height:100%; object-fit:cover; transition:transform .28s ease; }
.dp-blog-card:hover .dp-blog-card-image img { transform:scale(1.025); }
.dp-blog-card-body { display:flex; flex-direction:column; flex:1; padding:16px; }
.dp-blog-card-body .dp-pill { align-self:start; font-size:10px; padding:5px 7px; }
.dp-blog-card-body h3 { font-size:20px; margin:9px 0 8px; line-height:1.21; }
.dp-blog-card-body h3 a { color:var(--dp-navy); }
.dp-blog-card-body > p { color:#5d6f85; font-size:13px; line-height:1.5; margin:0 0 17px; }
.dp-blog-card-meta { display:flex; justify-content:space-between; align-items:center; gap:7px; margin-top:auto; font-size:11.5px; }
.dp-blog-card-meta span { display:flex; gap:5px; align-items:center; color:#708196; }
.dp-blog-card-meta a { display:flex; gap:5px; align-items:center; color:var(--dp-orange); font-weight:750; }
.dp-blog-card-meta .dp-icon { width:14px; height:14px; }
.dp-pagination { display:flex; justify-content:center; margin:32px 0; }
.dp-pagination .nav-links { display:flex; gap:7px; align-items:center; }
.dp-pagination .page-numbers { min-width:38px; height:38px; display:grid; place-items:center; padding:4px 8px; border:1px solid var(--dp-border); border-radius:7px; }
.dp-pagination .page-numbers.current { background:var(--dp-orange); color:#fff; border-color:var(--dp-orange); }
.dp-post-archive { padding-top:1px; }
.dp-article { max-width:1220px; margin:0 auto; }
.dp-article-head { max-width:1100px; margin:17px auto 0; }
.dp-article-head h1 { font-size:clamp(32px,4vw,52px); max-width:960px; margin:15px 0; }
.dp-article-meta { display:flex; align-items:center; gap:8px; font-size:13px; color:#6e7e92; }
.dp-article-meta .dp-icon { width:17px; height:17px; }
.dp-article-featured { margin:26px 0 32px; border-radius:12px; overflow:hidden; background:#f1f6fa; }
.dp-article-featured img { width:100%; max-height:500px; object-fit:cover; display:block; }
.dp-article-layout { display:grid; grid-template-columns:minmax(0,1fr) 285px; gap:62px; }
.dp-article-body { font-size:16px; line-height:1.88; color:#354c68; }
.dp-article-body h2 { font-size:29px; margin:32px 0 12px; }
.dp-article-body h3 { font-size:23px; margin:25px 0 9px; }
.dp-article-body ul,.dp-article-body ol { padding-left:25px; }
.dp-article-body blockquote { border-left:4px solid var(--dp-orange); padding:9px 18px; margin:20px 0; background:var(--dp-blue-light); }
.dp-article-body img { border-radius:9px; }
.dp-article-aside { position:relative; }
.dp-article-aside-box { position:sticky; top:20px; padding:22px; background:#f0f5fc; border-radius:11px; border:1px solid var(--dp-border); }
.dp-article-aside-box > .dp-icon { color:var(--dp-blue); width:36px; height:36px; margin-bottom:10px; }
.dp-article-aside-box h2 { font-size:22px; }
.dp-article-aside-box p { font-size:13px; }
.dp-article-aside-box .dp-button { width:100%; font-size:12px; }
.dp-article-after { border-top:1px solid var(--dp-border); margin:34px 0 0; padding-top:15px; font-weight:700; }
.dp-article-after a { display:flex; gap:8px; align-items:center; }
.dp-article-after .dp-icon { width:16px; }
.dp-related-posts { margin-top:55px; }
.dp-search-page .dp-search-products { display:grid!important; grid-template-columns:repeat(5,minmax(0,1fr)); gap:16px; }
.dp-no-results { text-align:center; margin:45px auto 85px; max-width:480px; }
.dp-no-results > .dp-icon { width:49px; height:49px; color:var(--dp-blue); margin-bottom:10px; }
.dp-404 { color:#dce8f6; font-size:10rem; line-height:1; font-weight:900; letter-spacing:-.08em; }
.dp-not-found { min-height:520px; display:flex; align-items:center; justify-content:center; flex-direction:column; text-align:center; padding:40px 20px; }
.dp-not-found h1 { margin:12px 0; }
.dp-not-found p { max-width:480px; color:var(--dp-muted); }
.dp-site-footer { background:linear-gradient(105deg,#053574,#0a4185 54%,#06306d); color:#e7f2ff; padding:31px 0 18px; }
.dp-footer-grid { display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:42px; }
.dp-footer-brand { display:block; width:240px; }
.dp-footer-brand .dp-logo-image { width:100%; }
.dp-footer-about p { font-size:12px; line-height:1.6; max-width:310px; margin-top:12px; }
.dp-site-footer h3 { color:#fff; font-size:14px; margin:4px 0 11px; }
.dp-site-footer ul { padding:0; list-style:none; margin:0; }
.dp-site-footer li { margin:5px 0; font-size:12px; }
.dp-site-footer a { color:#e5effb; }
.dp-site-footer a:hover { color:#ffb27d; }
.dp-footer-bottom { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; margin-top:25px; padding-top:14px; border-top:1px solid rgba(255,255,255,.28); font-size:11px; gap:12px; }
.dp-footer-bottom span { display:flex; align-items:center; gap:8px; }
.dp-footer-bottom .dp-icon { width:17px; height:17px; }
/* Classic and Block WooCommerce forms both receive defaults. */
.dp-theme .woocommerce input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.dp-theme .woocommerce select,.dp-theme .woocommerce textarea { max-width:100%; }
.dp-theme .woocommerce .woocommerce-input-wrapper { width:100%; }
.dp-theme .woocommerce .form-row .select2-container { width:100%!important; }
.dp-theme .woocommerce ul#shipping_method li { font-size:12px; }
.dp-theme .woocommerce .woocommerce-form-login,.dp-theme .woocommerce .woocommerce-form-coupon { max-width:800px; border:1px solid var(--dp-border); border-radius:10px; }
.dp-theme .woocommerce .woocommerce-privacy-policy-text { font-size:12px; line-height:1.5; }
.dp-theme .wp-block-quote { border-left:4px solid var(--dp-orange); padding-left:18px; }

@media (max-width:1370px) {
 .dp-masthead { grid-template-columns:minmax(225px,240px) minmax(0,1fr) max-content; column-gap:20px; }
 .dp-logo-wordmark { font-size:25px; }
 .dp-navbar { gap:19px; }
 .dp-nav-links { gap:14px; }
 .dp-theme ul.products.dp-products-home { grid-template-columns:repeat(5,minmax(0,1fr)); }
 .dp-shop-products ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:1090px) {
 .dp-container { width:min(100% - 34px,1420px); }
 .dp-masthead { grid-template-columns:minmax(205px,225px) minmax(0,1fr) max-content; column-gap:14px; min-height:76px; }
 .dp-logo-wordmark { font-size:23px; }
 .dp-logo-symbol { width:38px; height:38px; }
 .dp-nav-links { gap:10px; }
 .dp-nav-links li a { font-size:11.5px; }
 .dp-navbar { gap:12px; }
 .dp-all-categories summary { font-size:12px; }
 .dp-deal-link { font-size:11px; padding:8px 9px; }
 .dp-header-actions .dp-account span,.dp-cart-text { display:none; }
 .dp-hero { grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); padding:24px; }
 .dp-hero-feature { grid-column:1/-1; display:none; }
 .dp-hero-image img { max-height:290px; }
 .dp-home-categories { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .dp-theme ul.products.dp-products-home { grid-template-columns:repeat(4,minmax(0,1fr)); }
 .dp-trust-strip .dp-icon { width:29px; height:29px; }
 .dp-trust-strip > div { padding:3px 10px; }
 .dp-shop-layout { grid-template-columns:215px minmax(0,1fr); gap:14px; }
 .dp-shop-products ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .dp-footer-grid { gap:25px; }
}
@media (max-width:1050px) {
 .dp-container { width:min(100% - 28px,1420px); }
 .dp-topbar-inner { justify-content:center; }
 .dp-topbar-inner span:not(:first-child) { display:none; }
 .dp-masthead { grid-template-columns:42px minmax(0,1fr) 52px; grid-template-rows:63px 47px; grid-template-areas:"menu brand actions" "search search search"; column-gap:9px; padding-bottom:10px; }
 .dp-masthead > .dp-mobile-menu-button { display:grid; }
 .dp-brand { justify-self:start; }
 .dp-logo-wordmark { font-size:24px; }
 .dp-logo-symbol { width:36px; height:36px; }
 .dp-brand .dp-logo-image { max-width:min(240px,100%); max-height:48px; }
 .dp-header-actions { gap:12px; }
 .dp-header-action .dp-icon { width:23px; height:23px; }
 .dp-header-actions .dp-account { display:none; }
 .dp-search-form { max-width:none; height:43px; }
 .dp-nav-bar { display:none; }
 .dp-mobile-shade { position:fixed; inset:0; background:rgba(4,20,42,.5); z-index:95; }
 .dp-mobile-drawer { display:flex; flex-direction:column; position:fixed; z-index:96; top:0; left:0; bottom:0; width:min(355px,85vw); background:var(--dp-navy); color:#fff; transform:translateX(-110%); visibility:hidden; pointer-events:none; transition:transform .22s; box-shadow:10px 0 30px rgba(6,26,64,.12); overflow:auto; }
 body.dp-menu-open { overflow:hidden; }
 body.dp-menu-open .dp-mobile-shade { display:block; }
 body.dp-menu-open .dp-mobile-drawer { transform:translateX(0); visibility:visible; pointer-events:auto; }
 .dp-mobile-drawer-head { display:flex; align-items:center; justify-content:space-between; gap:12px; background:#fff; padding:10px 15px; }
 .dp-mobile-drawer-head .dp-logo-symbol { width:37px; height:37px; }
 .dp-mobile-drawer-head .dp-logo-wordmark { font-size:23px; }
 .dp-mobile-drawer-head .dp-logo-image { max-width:min(230px,100%); max-height:46px; }
 .dp-mobile-drawer nav { padding:13px; }
 .dp-mobile-drawer nav > a,.dp-mobile-menu-links li a { display:flex; align-items:center; gap:12px; padding:11px 12px; border-radius:7px; color:#fff; font-size:13px; font-weight:700; }
 .dp-mobile-drawer nav > a:hover,.dp-mobile-menu-links li a:hover { background:#194c8e; color:#fff; }
 .dp-mobile-menu-links,.dp-mobile-menu-links .sub-menu { padding:0; margin:0; list-style:none; }
 .dp-mobile-menu-links .sub-menu { padding-left:15px; }
 .dp-home-main { padding-top:12px; }
 .dp-hero { grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); padding:20px; min-height:270px; gap:5px; }
 .dp-hero h1 { font-size:clamp(30px,5vw,43px); }
 .dp-hero-copy > p { font-size:14px; }
 .dp-hero-image img { max-height:260px; }
 .dp-hero-actions { gap:8px; }
 .dp-hero-actions .dp-button { min-height:42px; font-size:12px; padding:10px; }
 .dp-theme ul.products.dp-products-home { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .dp-trust-strip { grid-template-columns:repeat(2,minmax(0,1fr)); row-gap:15px; }
 .dp-trust-strip > div:nth-child(2) { border:0; }
 .dp-lifestyle-banner { grid-template-columns:55% 45%; }
 .dp-lifestyle-for { display:none; }
 .dp-how-section { display:block; }
 .dp-how-section h2 { margin-bottom:17px; }
 .dp-how-section > div { gap:8px; }
 .dp-blog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .dp-archive-hero { grid-template-columns:1fr 35%; }
 .dp-shop-layout { display:block; }
 .dp-filters { display:none; position:static; margin-bottom:14px; }
 .dp-filters.dp-filters-open { display:block; }
 .dp-filter-toggle { display:inline-flex; }
 .dp-shop-toolbar { flex-wrap:wrap; }
 .dp-shop-products ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .dp-single-layout { gap:19px; }
 .dp-single-summary .product_title { font-size:26px; }
 .dp-single-summary button.single_add_to_cart_button { min-width:160px; }
 .dp-cart-page .woocommerce { grid-template-columns:minmax(0,1fr); }
 .dp-cart-page .woocommerce-cart-form,.dp-cart-page .woocommerce .cart-collaterals { grid-column:1; }
 .dp-checkout-page form.checkout { grid-template-columns:1fr; }
 .dp-checkout-page form.checkout .col2-set { grid-column:1; grid-row:auto; }
 .dp-checkout-page form.checkout #order_review_heading,.dp-checkout-page form.checkout #order_review { grid-column:1; grid-row:auto; }
 .dp-checkout-page form.checkout #order_review { margin-top:0; }
 .dp-article-layout { grid-template-columns:1fr; }
 .dp-article-aside { display:none; }
 .dp-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:27px; }
}
@media (max-width:550px) {
 .dp-container { width:calc(100% - 24px); }
 .dp-topbar-inner { min-height:31px; font-size:10.5px; }
 .dp-masthead { grid-template-columns:36px minmax(0,1fr) 42px; grid-template-rows:55px 43px; }
 .dp-default-logo { gap:7px; }
 .dp-logo-symbol { width:33px; height:33px; }
 .dp-logo-wordmark { font-size:22px; }
 .dp-brand .dp-logo-image { max-width:100%; max-height:44px; }
 .dp-header-actions { justify-self:end; }
 .dp-search-input { font-size:12px!important; }
 .dp-hero { display:grid; grid-template-columns:1fr; padding:20px 18px; gap:10px; min-height:0; }
 .dp-hero::before { left:30%; }
 .dp-hero h1 { font-size:clamp(31px,7vw,42px); margin-bottom:10px; }
 .dp-hero-copy > p { font-size:14px; line-height:1.5; margin-bottom:13px; }
 .dp-hero-actions { display:flex; }
 .dp-hero-actions .dp-button { font-size:13px; padding:11px 14px; }
 .dp-hero-actions .dp-button-ghost { display:none; }
 .dp-hero-checks { gap:8px; font-size:10px; margin-top:13px; }
 .dp-hero-checks span:nth-child(2) { display:inline-flex; }
 .dp-hero-image img { max-height:240px; transform:none; width:auto; }
 .dp-home-categories { gap:9px; margin-top:12px; }
 .dp-category-tile { min-height:77px; padding:7px; gap:4px; }
 .dp-category-tile img { width:52px; height:61px; }
 .dp-category-tile strong { font-size:11.5px; }
 .dp-category-tile small { display:none; }
 .dp-category-tile > .dp-icon { width:14px; }
 .dp-home-section { margin-top:23px; }
 .dp-section-title h2 { font-size:24px; }
 .dp-section-title a { font-size:11px; }
 .dp-theme ul.products.dp-products-home,.dp-shop-products ul.products,.dp-search-page .dp-search-products { grid-template-columns:1fr!important; gap:12px; }
 .dp-theme .products .dp-product-card,.dp-theme ul.products li.product.dp-product-card { display:grid!important; grid-template-columns:112px minmax(0,1fr); min-height:250px; }
 .dp-product-card-body { padding:9px 10px 11px; }
 .dp-theme .products li.product .dp-product-card-title { font-size:13px; line-height:1.35; min-height:3.9em; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
 .dp-card-price { font-size:19px; }
 .dp-product-card-image { padding:8px 5px; aspect-ratio:auto!important; min-height:100%; border-right:1px solid var(--dp-border); }
 .dp-retail-summary > span { align-items:center; }
 .dp-retail-summary > span > small { font-size:9.5px; }
 .dp-retail-summary > span > strong { font-size:11px; }
 .dp-stock-ok,.dp-stock-no { margin-top:7px; }
 .dp-trust-strip { gap:8px; padding:13px 6px; }
 .dp-trust-strip > div { padding:3px 8px; gap:7px; }
 .dp-trust-strip .dp-icon { width:25px; height:25px; }
 .dp-trust-strip strong { font-size:11px; }
 .dp-trust-strip small { display:none; }
 .dp-lifestyle-banner { grid-template-columns:58% 42%; min-height:154px; }
 .dp-lifestyle-copy { padding:14px; }
 .dp-lifestyle-copy h2 { font-size:24px; }
 .dp-lifestyle-copy p { font-size:11px; }
 .dp-lifestyle-photo { background-position:40% center; }
 .dp-how-section { padding:14px; }
 .dp-how-section > div { grid-template-columns:1fr; gap:12px; }
 .dp-step { grid-template-columns:28px auto; }
 .dp-blog-grid { grid-template-columns:1fr; }
 .dp-archive-hero { grid-template-columns:1fr; min-height:0; }
 .dp-archive-hero > div { padding:15px 16px; }
 .dp-archive-hero img { display:none; }
 .dp-archive-hero h1 { font-size:27px; margin-bottom:5px; }
 .dp-archive-hero p { font-size:13px; line-height:1.45; }
 .dp-shop-toolbar { display:grid; grid-template-columns:1fr minmax(0,1.35fr); gap:8px; }
 .dp-shop-toolbar .dp-filter-toggle { width:100%; justify-content:center; }
 .dp-shop-toolbar .woocommerce-result-count { grid-column:1/-1; order:3; width:100%; }
 .dp-shop-toolbar .woocommerce-ordering,.dp-shop-toolbar .orderby { width:100%; max-width:none; }
 .dp-shop-products ul.products { margin-top:8px; }
 .dp-single-layout { grid-template-columns:1fr; gap:9px; }
 .dp-single-summary { padding-top:3px; }
 .dp-single-gallery .woocommerce-product-gallery__image img { max-height:480px; }
 .dp-single-summary .product_title { font-size:27px; }
 .dp-single-summary > .price { font-size:33px; }
 .dp-spec-strip { grid-template-columns:1fr; padding:10px 15px; }
 .dp-spec-strip > span { border-right:0; border-bottom:1px solid #c5d6e8; padding:10px; }
 .dp-spec-strip > span:last-child { border:0; }
 .dp-single-below .related ul.products,.dp-single-below .upsells ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .dp-checkout-steps { justify-content:space-between; gap:6px; }
 .dp-checkout-steps span { font-size:10px; gap:4px; }
 .dp-checkout-steps .dp-icon { width:15px; }
 .dp-theme .woocommerce table.shop_table.shop_table_responsive tr { border-bottom:1px solid var(--dp-border); }
 .dp-theme .woocommerce table.shop_table.shop_table_responsive td { padding:8px; }
 .dp-theme .woocommerce table.shop_table img { width:55px; height:55px; }
 .dp-cart-page .woocommerce-cart-form { padding:11px; }
 .dp-checkout-page .woocommerce form .form-row-first,.dp-checkout-page .woocommerce form .form-row-last { width:100%; float:none; }
 .dp-blog-hero { grid-template-columns:1fr; }
 .dp-blog-hero > div { padding:22px; }
 .dp-blog-hero img { height:130px; }
 .dp-article-head h1 { font-size:33px; }
 .dp-article-body { font-size:15px; }
 .dp-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:17px; }
 .dp-footer-grid > :first-child { grid-column:1/-1; }
 .dp-footer-brand { width:195px; }
 .dp-site-footer h3 { font-size:12.5px; }
 .dp-site-footer li { font-size:11px; }
 .dp-footer-bottom { font-size:10px; }
 .dp-empty-products { display:block; text-align:center; }
}
@media (prefers-reduced-motion:reduce) {
 html { scroll-behavior:auto; }
 *,*::before,*::after { animation-duration:.01ms!important; scroll-behavior:auto!important; transition-duration:.01ms!important; }
}
/* Accessible quantity stepper created as progressive enhancement in theme.js. */
.dp-theme .quantity.dp-qty-enhanced { display:inline-flex; align-items:stretch; min-height:44px; border:1px solid #c5d3e3; border-radius:7px; overflow:hidden; }
.dp-theme .quantity.dp-qty-enhanced input.qty { border:0!important; border-left:1px solid var(--dp-border)!important; border-right:1px solid var(--dp-border)!important; border-radius:0!important; min-height:44px; width:55px!important; appearance:textfield; -moz-appearance:textfield; }
.dp-theme .quantity.dp-qty-enhanced input.qty::-webkit-outer-spin-button,.dp-theme .quantity.dp-qty-enhanced input.qty::-webkit-inner-spin-button { -webkit-appearance:none; margin:0; }
.dp-qty-button { display:grid; place-items:center; background:#fff; border:0; color:var(--dp-navy); width:35px; padding:0; font-weight:800; }
.dp-qty-button:hover { background:#eef5fd; }
.dp-qty-button .dp-icon { width:15px; height:15px; }

/* 1.0.1 layout hardening: shared components, WC blocks and responsive pages. */
.dp-theme .dp-brand,.dp-theme .dp-search-form,.dp-theme .dp-header-actions,
.dp-theme .dp-hero-copy,.dp-theme .dp-single-summary { min-width:0; }
.dp-theme .dp-product-card-title { overflow-wrap:anywhere; }
.dp-theme .woocommerce-notices-wrapper { min-width:0; }
.dp-theme .dp-single-gallery .flex-control-thumbs {
  display:flex!important; gap:10px; max-width:100%; overflow-x:auto; overflow-y:hidden;
  scroll-snap-type:x proximity; scrollbar-width:thin; padding:0 0 8px;
}
.dp-theme .dp-single-gallery .flex-control-thumbs li { flex:0 0 76px; width:76px!important; scroll-snap-align:start; }
.dp-theme .woocommerce .woocommerce-product-gallery__image { max-width:100%; }
.dp-theme .woocommerce .woocommerce-variation-add-to-cart { flex-wrap:wrap; }
.dp-theme .woocommerce .woocommerce-variation-add-to-cart .quantity { flex-shrink:0; }
.dp-theme .woocommerce .woocommerce-product-details__short-description p { margin-bottom:12px; }
.dp-theme .dp-product-badge.dp-badge-sale { background:#d94e00; }
.dp-theme .dp-product-badge.dp-badge-demo { background:#526781; }
.dp-theme .dp-product-badge + .dp-product-badge { top:36px; }
.dp-article-body pre,.dp-page-content pre { max-width:100%; overflow-x:auto; }
.dp-article-body table,.dp-page-content table:not(.shop_table) { max-width:100%; display:block; overflow-x:auto; }
.dp-article-body figure,.dp-page-content figure { max-width:100%; margin-left:0; margin-right:0; }
.dp-theme .woocommerce form .form-row input[type=checkbox],.dp-theme .woocommerce form .form-row input[type=radio] { accent-color:var(--dp-orange); }
.dp-theme .woocommerce .woocommerce-MyAccount-content { min-width:0; }
.dp-theme .dp-qty-button { min-width:40px; }

/* Native WooCommerce Cart and Checkout Blocks should share the classic design language. */
.dp-cart-page .wp-block-woocommerce-cart,
.dp-checkout-page .wp-block-woocommerce-checkout { max-width:100%; color:var(--dp-ink); }
.dp-cart-page .wc-block-cart__main,
.dp-checkout-page .wc-block-checkout__main { min-width:0; }
.dp-cart-page .wc-block-cart-items,
.dp-cart-page .wc-block-cart__totals-title,
.dp-checkout-page .wc-block-components-order-summary,
.dp-checkout-page .wc-block-checkout__order-summary { color:var(--dp-ink); }
.dp-theme .wc-block-components-sidebar,
.dp-theme .wc-block-cart__sidebar,
.dp-theme .wc-block-checkout__sidebar { min-width:0; }
.dp-theme .wc-block-components-totals-wrapper,
.dp-theme .wc-block-components-order-summary,
.dp-theme .wc-block-components-checkout-step { border-color:var(--dp-border); }
.dp-theme .wc-block-components-text-input input,
.dp-theme .wc-block-components-combobox .wc-block-components-combobox-control input,
.dp-theme .wc-blocks-components-select__select { border:1px solid #bacade!important; border-radius:7px!important; }
.dp-theme .wc-block-components-button:not(.is-link):hover { filter:brightness(.95); }
.dp-theme .wc-block-components-button:disabled { cursor:not-allowed; opacity:.55; }
.dp-theme .wc-block-components-notice-banner { border-radius:8px; }

@media (max-width: 1250px) and (min-width: 921px) {
  .dp-navbar { gap:14px; }
  .dp-nav-links { gap:clamp(7px,1vw,12px); }
  .dp-nav-links li a { font-size:12px; }
  .dp-deal-link { padding:8px 9px; }
}
@media (max-width: 1100px) {
  .dp-single-below .related ul.products,.dp-single-below .upsells ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .dp-search-page .dp-search-products { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width: 920px) {
  .dp-account-page .woocommerce-MyAccount-navigation { width:100%; float:none; }
  .dp-theme.logged-in .dp-account-page .woocommerce { flex-direction:column; }
  .dp-account-page .woocommerce-MyAccount-navigation ul { display:flex; flex-wrap:wrap; gap:4px 10px; }
  .dp-account-page .woocommerce-MyAccount-content { width:100%; }
  .dp-cart-page .woocommerce-cart-form { max-width:100%; overflow-x:auto; }
  .dp-checkout-page form.checkout .col2-set { min-width:0; }
  .dp-checkout-page form.checkout #order_review_heading { margin-top:16px!important; }
}
@media (max-width: 790px) {
  .dp-single-layout { grid-template-columns:1fr; gap:14px; }
  .dp-spec-strip { grid-template-columns:1fr; gap:10px; }
  .dp-spec-strip > span { border-right:0; border-bottom:1px solid #c5d6e8; padding:0 0 10px; }
  .dp-spec-strip > span:last-child { border-bottom:0; padding-bottom:0; }
  .dp-theme .dp-single-gallery { max-width:100%; }
  .dp-theme .dp-single-summary { padding-top:4px; }
  .dp-theme .dp-filters { scroll-margin-top:12px; }
}
@media (max-width: 620px) {
  .dp-single-below .related ul.products,.dp-single-below .upsells ul.products,
  .dp-search-page .dp-search-products { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .dp-profit-grid { grid-template-columns:1fr; }
  .dp-theme .woocommerce .cart-collaterals,
  .dp-theme .woocommerce .cart_totals { min-width:0; }
  .dp-cart-page .woocommerce-cart-form { padding:10px 8px; }
  .dp-article-body h2 { font-size:25px; }
  .dp-article-body h3 { font-size:21px; }
}
@media (max-width: 380px) {
  .dp-masthead { grid-template-columns:36px minmax(0,1fr) 37px; gap:3px; }
  .dp-logo-symbol { width:29px; height:29px; }
  .dp-logo-wordmark { font-size:19px; letter-spacing:-.05em; }
  .dp-brand .dp-logo-image { max-height:40px; }
  .dp-home-categories { gap:7px; }
  .dp-category-tile img { width:43px; height:52px; }
  .dp-category-tile strong { font-size:11px; }
  .dp-category-tile > .dp-icon { display:none; }
  .dp-hero-actions .dp-button { width:100%; }
  .dp-theme .products li.product .dp-product-card-actions a.button { min-height:43px; }
  .dp-theme .products .dp-product-card,.dp-theme ul.products li.product.dp-product-card { grid-template-columns:100px minmax(0,1fr); }
  .dp-checkout-steps span { font-size:9px; }
}

/* Contrast-safe orange usage; original bright orange remains in the brand assets. */
:root { --dp-orange-interactive:#c74c00; --dp-orange-interactive-hover:#a93d00; --dp-orange-readable:#bc4700; }
.dp-theme a:hover { color:var(--dp-orange-readable); }
.dp-theme .dp-button:not(.dp-button-outline):not(.dp-button-ghost),
.dp-theme a.button,.dp-theme button.button,.dp-theme input.button,
.dp-theme .wp-element-button,.dp-theme .dp-deal-link,
.dp-theme .dp-pill:not(.dp-pill-blue),
.dp-theme .dp-product-badge,.dp-theme .dp-cart-count,
.dp-theme .dp-step b { background:var(--dp-orange-interactive); color:#fff; }
.dp-theme .dp-button:not(.dp-button-outline):not(.dp-button-ghost):hover,
.dp-theme a.button:hover,.dp-theme button.button:hover,.dp-theme input.button:hover,
.dp-theme .wp-element-button:hover,.dp-theme .dp-deal-link:hover { background:var(--dp-orange-interactive-hover); color:#fff; }
.dp-theme .dp-button-ghost,.dp-theme .dp-button-outline { background:#fff; color:var(--dp-navy); border-color:#a7bdd8; }
.dp-theme .dp-button-ghost:hover,.dp-theme .dp-button-outline:hover { background:#f4f8ff; color:var(--dp-blue); }
.dp-theme ul.products li.product .dp-product-card-actions a.button,
.dp-theme .wc-block-cart__submit-button,.dp-theme .wc-block-components-checkout-place-order-button {
  background:var(--dp-orange-interactive)!important; color:#fff!important;
}
.dp-theme ul.products li.product .dp-product-card-actions a.button:hover,
 .dp-theme .wc-block-cart__submit-button:hover,
 .dp-theme .wc-block-components-checkout-place-order-button:hover { background:var(--dp-orange-interactive-hover)!important; }
.dp-hero h1 span { color:var(--dp-orange-readable); }
.dp-theme .dp-card-price,.dp-theme .dp-card-price .amount,
.dp-theme .dp-hero-price,.dp-theme .dp-hero-price ins,
.dp-theme .dp-single-summary > .price,.dp-theme.woocommerce div.product .dp-single-summary p.price,
.dp-theme .dp-single-summary .price ins { color:var(--dp-orange-readable); }
.dp-theme .dp-overline,.dp-theme .dp-blog-card-meta a { color:var(--dp-orange-readable); }
.dp-theme .dp-product-badge.dp-badge-demo { background:#526781; }

/* Reserve a bounded grid cell for uploaded WordPress logos as well. */
.dp-theme .dp-brand { width:auto; max-width:100%; min-width:0; }
.dp-theme .dp-brand .dp-logo-image { min-width:0; }

/* Inclusive/exclusive VAT switch; both values remain present for accessibility. */
.dp-tax-toggle {
  display:flex; align-items:center; flex-wrap:wrap; gap:6px; margin:0 0 16px;
  color:var(--dp-muted); font-size:13px;
}
.dp-tax-toggle > span { margin-right:2px; font-weight:700; color:var(--dp-navy); }
.dp-tax-toggle button,.dp-tax-toggle a {
  min-height:40px; padding:8px 12px; border:1px solid #a7bdd8; border-radius:999px;
  background:#fff; color:var(--dp-navy); font:inherit; font-weight:750; cursor:pointer;
  text-decoration:none; text-align:center;
}
.dp-tax-toggle button[aria-pressed="true"],.dp-tax-toggle a[aria-pressed="true"] { background:var(--dp-blue); border-color:var(--dp-blue); color:#fff; }
.dp-dual-price { display:inline-flex; flex-direction:column; align-items:flex-start; }
.dp-dual-price small { font-size:.58em; font-weight:700; color:var(--dp-muted); white-space:nowrap; }
.dp-tax-excl .dp-price-incl,.dp-tax-incl .dp-price-excl { display:none!important; }

/* Long-form legal and privacy pages: readable, scannable and print-friendly. */
.dp-policy-page { max-width:940px; color:var(--dp-text); line-height:1.75; }
.dp-policy-page > h2 { margin:38px 0 12px; padding-top:4px; color:var(--dp-navy); font-size:clamp(21px,2.2vw,28px); }
.dp-policy-page > h2:first-of-type { margin-top:26px; }
.dp-policy-page p,.dp-policy-page li { max-width:78ch; }
.dp-policy-intro { padding:20px 22px; border-left:5px solid var(--dp-orange); border-radius:0 12px 12px 0; background:#fff7f0; font-size:17px; }
.dp-policy-toc { margin:26px 0 34px; padding:20px 22px; border:1px solid var(--dp-border); border-radius:14px; background:#f7faff; }
.dp-policy-toc strong { display:block; margin-bottom:8px; color:var(--dp-navy); font-size:17px; }
.dp-policy-toc ol { margin:0; padding-left:22px; columns:2; column-gap:36px; }
.dp-policy-toc li { break-inside:avoid; margin:5px 0; }
.dp-policy-toc a { font-weight:700; }
.dp-policy-callout { margin:18px 0 28px; padding:18px 20px; border:1px solid #bfd0e7; border-radius:12px; background:#f4f8fd; }
.dp-policy-callout p { margin:5px 0; }
.dp-policy-meta { margin-top:42px; padding-top:16px; border-top:1px solid var(--dp-border); color:var(--dp-muted); font-size:13px; }
@media (max-width:640px) { .dp-policy-toc ol { columns:1; } .dp-policy-intro,.dp-policy-toc,.dp-policy-callout { padding:16px; } }
@media print { .dp-site-header,.dp-site-footer,.dp-breadcrumbs { display:none!important; } .dp-policy-page { max-width:none; } .dp-policy-toc { break-inside:avoid; } }
@media (max-width: 480px) {
  .dp-tax-toggle { align-items:stretch; }
  .dp-tax-toggle > span { flex-basis:100%; }
  .dp-tax-toggle button,.dp-tax-toggle a { min-height:44px; flex:1 1 120px; display:flex; align-items:center; justify-content:center; }
}
