/* =========================================================
   Displays Trend: inner pages (teal card style)
   Palette: #006466 #065A60 #0B525B #144552 #1B3A4B
   ========================================================= */
:root {
  --in-grad: linear-gradient(120deg, #1B3A4B 0%, #0B525B 55%, #006466 100%);
  --in-leaf: 40px 14px 40px 14px;
  --in-leaf-m: 30px 10px 30px 10px;
  --in-leaf-s: 22px 8px 22px 8px;
  --in-ink: #1B3A4B; --in-teal: #006466; --in-teal-2: #065A60; --in-muted: #5A7480; --in-line: #DCE7E8; --in-mist: #F1F6F6; --in-mint: #7FC4C2;
}

/* ---------- logo ---------- */
.bw-brand { display: inline-flex; align-items: center; gap: 12px; text-decoration: none !important; line-height: 1; }
.bw-brand .dt-mark { flex: none; display: block; filter: drop-shadow(0 8px 16px rgba(0,0,0,.18)); }
.bw-brand-word { font: 800 23px/1 "Nunito Sans", sans-serif; letter-spacing: -.3px; color: #fff; white-space: nowrap; }
.bw-brand-word b { font-weight: 600; color: var(--in-mint); margin-left: 5px; }
.bw-brand:hover .bw-brand-word b { color: #fff; }
@media (max-width: 767px) { .bw-brand { gap: 10px; } .bw-brand .dt-mark { width: 34px; height: 34px; } .bw-brand-word { font-size: 19px; } }

/* ---------- page container (theme-rendered pages) ---------- */
body.dt-store main.site-main { max-width: 1500px !important; width: calc(100% - 30px) !important; margin: 0 auto !important; padding: 12px 0 100px !important; box-sizing: border-box; }
@media (max-width: 1024px) { body.dt-store main.site-main { width: calc(100% - 48px) !important; padding-bottom: 72px !important; } }
@media (max-width: 767px) { body.dt-store main.site-main { width: calc(100% - 36px) !important; padding-bottom: 56px !important; } }
body.dt-store main.site-main > .page-header { position: relative; overflow: hidden; background: var(--in-grad); border-radius: var(--in-leaf); padding: 56px 64px; margin: 0 0 28px; box-shadow: 0 30px 60px -42px rgba(27,58,75,.65); }\nbody.dt-store main.site-main > .page-header .entry-title { color: #fff !important; font: 800 clamp(32px, 4.4vw, 56px)/1.05 "Nunito Sans", sans-serif !important; letter-spacing: -.035em !important; margin: 0 !important; }\n@media (max-width: 767px) { body.dt-store main.site-main > .page-header { padding: 36px 24px; border-radius: var(--in-leaf-m); } }

/* ---------- breadcrumbs ---------- */
body.dt-store .woocommerce-breadcrumb, .dt-arch-crumbs, .dt-crumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 8px 0 18px !important; padding: 0 !important; font: 600 13px/1.4 "Nunito Sans", sans-serif; color: var(--in-muted) !important; }
body.dt-store .woocommerce-breadcrumb a, .dt-arch-crumbs a, .dt-crumbs a { color: var(--in-ink) !important; }
body.dt-store .woocommerce-breadcrumb a:hover, .dt-arch-crumbs a:hover, .dt-crumbs a:hover { color: var(--in-teal) !important; }
.dt-crumbs span, .dt-arch-crumbs span { opacity: .5; }
.dt-crumbs b, .dt-arch-crumbs b { color: var(--in-muted); font-weight: 600; max-width: 60ch; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* ---------- shared hero card ---------- */
body.dt-store .woocommerce-products-header,
body.dt-store .dt-arch-hero,
body.dt-store .dt-404,
body.dt-store .dt-card-hero,
body.dt-store .dt-page-head,
body.dt-store .dt-auth-brand {
  position: relative; overflow: hidden; isolation: isolate;
  background: var(--in-grad) !important; border-radius: var(--in-leaf) !important;
  box-shadow: 0 30px 60px -42px rgba(27,58,75,.65);
}
body.dt-store .woocommerce-products-header::after, body.dt-store .dt-arch-hero::after, body.dt-store .dt-404::after, body.dt-store .dt-card-hero::after, body.dt-store .dt-page-head::after, body.dt-store .dt-auth-brand::after {
  content: ""; position: absolute; z-index: -1; right: -110px; top: -110px; left: auto; bottom: auto; margin: 0; width: 380px; height: 380px; border-radius: 50%; border: 1px solid rgba(127,196,194,.22); background: none; animation: none;
}
body.dt-store .woocommerce-products-header::before, body.dt-store .dt-arch-hero::before, body.dt-store .dt-404::before, body.dt-store .dt-card-hero::before, body.dt-store .dt-page-head::before, body.dt-store .dt-auth-brand::before {
  content: ""; position: absolute; z-index: -1; right: 8%; bottom: -160px; left: auto; top: auto; width: 320px; height: 320px; border-radius: 50%; background: radial-gradient(circle, rgba(127,196,194,.22) 0, rgba(127,196,194,0) 70%); border: 0; animation: none;
}
body.dt-store .woocommerce-products-header { padding: 64px 64px 56px !important; margin: 0 0 28px !important; min-height: 260px; display: flex; flex-direction: column; justify-content: flex-end; box-sizing: border-box; }
body.dt-store .woocommerce-products-header__title.page-title, body.dt-store .dt-arch-hero h1, body.dt-store .dt-card-hero h1, body.dt-store .dt-page-head h1, body.dt-store .dt-auth-brand h1 { color: #fff !important; font: 800 clamp(34px, 4.6vw, 60px)/1.04 "Nunito Sans", sans-serif !important; letter-spacing: -.035em !important; margin: 0 !important; }
body.dt-store .woocommerce-products-header .term-description, body.dt-store .woocommerce-products-header .page-description, body.dt-store .dt-arch-hero p, body.dt-store .dt-card-hero p, body.dt-store .dt-page-head p, body.dt-store .dt-auth-brand p { color: rgba(255,255,255,.74) !important; font-size: 16.5px; line-height: 1.65; max-width: 60ch; }
body.dt-store .dt-arch-hero { padding: 64px 64px 56px !important; margin-bottom: 26px !important; min-height: 260px; box-sizing: border-box; }
.dt-arch-type { color: var(--in-mint) !important; }
.dt-arch-type::before { background: var(--in-mint) !important; box-shadow: 0 0 0 4px rgba(127,196,194,.22); }
.dt-arch-count { background: rgba(255,255,255,.1) !important; border: 1px solid rgba(255,255,255,.14); }
.dt-arch-search { box-shadow: 0 18px 40px -22px rgba(0,0,0,.45); }
body.dt-store .dt-arch-search button { background: var(--in-teal) !important; }
body.dt-store .dt-arch-search button:hover { background: var(--in-ink) !important; }

/* cart / checkout / thank-you header */
body.dt-store .dt-page-head { padding: 48px 56px !important; margin: 0 0 30px !important; align-items: center !important; }
.dt-page-head .dt-steps { background: rgba(255,255,255,.1) !important; border: 1px solid rgba(255,255,255,.14); }
.dt-page-head .dt-steps li { color: rgba(255,255,255,.65) !important; }
.dt-page-head .dt-steps li.is-done { color: #fff !important; }
.dt-page-head .dt-steps li.is-active { background: #fff !important; color: var(--in-ink) !important; }
.dt-page-head .dt-steps li .dt-step-n { background: rgba(255,255,255,.14); color: #fff; }
.dt-page-head .dt-steps li.is-active .dt-step-n, .dt-page-head .dt-steps li.is-done .dt-step-n { background: var(--in-teal) !important; color: #fff !important; }

/* ---------- shop toolbar ---------- */
.dt-toolbar { background: #fff; border-radius: var(--in-leaf-s); padding: 12px 14px 12px 22px; margin: 0 0 26px !important; box-shadow: 0 16px 36px -30px rgba(27,58,75,.45); display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; }
.dt-toolbar .woocommerce-result-count { margin: 0 !important; color: var(--in-muted); font: 600 14px/1.4 "Nunito Sans", sans-serif; }
.dt-toolbar .woocommerce-ordering { margin: 0 !important; }
body.dt-store .dt-toolbar select.orderby { height: 44px; border-radius: 999px !important; border: 1px solid var(--in-line) !important; background-color: var(--in-mist) !important; color: var(--in-ink) !important; padding: 0 40px 0 18px !important; font: 600 14px "Nunito Sans", sans-serif; }

/* ---------- product cards (everywhere) ---------- */
body.dt-store ul.products { gap: 26px !important; }
body.dt-store ul.products li.product { background: #fff !important; border: 0 !important; border-radius: 28px 10px 28px 10px !important; padding: 16px 16px 20px !important; box-shadow: 0 18px 40px -32px rgba(27,58,75,.45) !important; transform: none !important; transition: box-shadow .25s ease !important; }
body.dt-store ul.products li.product:hover { box-shadow: 0 28px 54px -30px rgba(27,58,75,.55) !important; }
body.dt-store ul.products li.product .dt-pc-media { background: #fff !important; border-radius: 18px !important; }
body.dt-store ul.products li.product .dt-pc-media img { padding: 8% !important; }
body.dt-store ul.products li.product .hhc-supplier-label, body.dt-store ul.products li.product .dt-loop-cat { display: none !important; }
body.dt-store ul.products li.product .woocommerce-loop-product__title { font: 600 14.5px/1.4 "Nunito Sans", sans-serif !important; color: var(--in-ink) !important; text-transform: none !important; letter-spacing: 0 !important; margin: 8px 0 6px !important; min-height: 2.8em; }
body.dt-store ul.products li.product .dt-stars-fill { color: var(--in-teal) !important; }
body.dt-store ul.products li.product .price, body.dt-store ul.products li.product .price .amount { color: var(--in-teal) !important; font: 800 15.5px/1.3 "Nunito Sans", sans-serif !important; }
body.dt-store ul.products li.product .price del, body.dt-store ul.products li.product .price del .amount { color: #8AA0A8 !important; font-weight: 500 !important; font-size: 13px !important; }
body.dt-store ul.products li.product .dt-badge { background: var(--in-teal) !important; color: #fff !important; border-radius: 999px !important; }
body.dt-store ul.products li.product .dt-pc-actions .button { background: var(--in-teal) !important; color: #fff !important; border-radius: 999px !important; text-transform: none !important; }
body.dt-store ul.products li.product .dt-pc-actions .button:hover { background: var(--in-ink) !important; }
body.dt-store ul.products li.product .dt-pc-tools a, body.dt-store ul.products li.product .dt-pc-tools button { color: var(--in-ink); }

/* section heads under pages */
.dt-arch-shop { margin-top: 70px; }
.dt-arch-shop-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 24px; }
body.dt-store .dt-arch-shop-head h2, body.dt-store .related.products > h2, body.dt-store .up-sells > h2, body.dt-store .dt-empty-suggest h2 { color: var(--in-ink) !important; font: 700 28px/1.25 "Nunito Sans", sans-serif !important; letter-spacing: -.01em !important; }
.dt-arch-shop-head .dt-link-arrow { color: #fff !important; background: var(--in-teal); padding: 11px 20px; border-radius: 999px; font: 700 13px/1 "Nunito Sans", sans-serif; text-transform: uppercase; letter-spacing: .5px; }
.dt-arch-shop-head .dt-link-arrow:hover { background: var(--in-ink); }
.dt-arch-empty { background: #fff; border-radius: var(--in-leaf-m); padding: 44px; text-align: center; }
.dt-arch-empty h2 { color: var(--in-ink); }

/* ---------- single product ---------- */
body.dt-store.single-product .woocommerce-product-gallery { border-radius: var(--in-leaf) !important; box-shadow: 0 24px 50px -40px rgba(27,58,75,.5); }
body.dt-store.single-product .woocommerce-product-gallery__image img { background: #fff !important; }
body.dt-store.single-product .woocommerce-product-gallery .flex-control-thumbs img.flex-active, body.dt-store.single-product .woocommerce-product-gallery .flex-control-thumbs img:hover { border-color: var(--in-teal) !important; }
body.dt-store.single-product .woocommerce-product-gallery__trigger { background: var(--in-ink) !important; color: #fff !important; }
body.dt-store.single-product .summary { background: #fff; border-radius: var(--in-leaf); padding: 40px 40px 34px !important; box-sizing: border-box; box-shadow: 0 24px 50px -40px rgba(27,58,75,.5); }
body.dt-store.single-product .dt-sp-cats a { display: inline-block; padding: 7px 13px; margin: 0 6px 6px 0; border-radius: 999px; background: var(--in-mist); color: var(--in-teal) !important; font: 700 11.5px/1 "Nunito Sans", sans-serif; text-transform: uppercase; letter-spacing: .8px; }
body.dt-store.single-product h1.product_title { color: var(--in-ink) !important; font: 800 clamp(26px, 2.6vw, 36px)/1.2 "Nunito Sans", sans-serif !important; letter-spacing: -.02em !important; margin: 10px 0 12px !important; }
body.dt-store.single-product .summary .price, body.dt-store.single-product .summary .price .amount { color: var(--in-teal) !important; font-weight: 800 !important; }
body.dt-store.single-product .summary .price del, body.dt-store.single-product .summary .price del .amount { color: #8AA0A8 !important; font-weight: 500 !important; }
html body.dt-store.single-product .summary form.cart { background: var(--in-mist) !important; border: 0 !important; border-radius: var(--in-leaf-s) !important; }
html body.dt-store.single-product .summary form.cart .single_add_to_cart_button { background: var(--in-teal) !important; border-color: var(--in-teal) !important; color: #fff !important; }
html body.dt-store.single-product .summary form.cart .single_add_to_cart_button:hover { background: var(--in-teal-2) !important; border-color: var(--in-teal-2) !important; }
html body.dt-store.single-product .summary form.cart .dt-buy-now { background: var(--in-ink) !important; border-color: var(--in-ink) !important; color: #fff !important; }
html body.dt-store.single-product .summary form.cart .dt-buy-now:hover { background: #144552 !important; border-color: #144552 !important; }
body.dt-store.single-product .summary .quantity input.qty { border-radius: 999px !important; border-color: var(--in-line) !important; color: var(--in-ink) !important; }
body.dt-store.single-product .dt-trust li { background: var(--in-mist) !important; border-radius: var(--in-leaf-s) !important; }
body.dt-store.single-product .dt-trust .dt-ico { background: #fff !important; color: var(--in-teal) !important; }
body.dt-store.single-product .woocommerce-tabs { border-radius: var(--in-leaf) !important; box-shadow: 0 24px 50px -40px rgba(27,58,75,.5); }
body.dt-store.single-product .woocommerce-tabs ul.tabs li a { color: var(--in-muted) !important; }
body.dt-store.single-product .woocommerce-tabs ul.tabs li.active a { color: var(--in-ink) !important; }
body.dt-store.single-product .woocommerce-tabs ul.tabs li.active { border-bottom-color: var(--in-teal) !important; }
body.dt-store.single-product .woocommerce-tabs ul.tabs li.active::after, body.dt-store.single-product .woocommerce-tabs ul.tabs li.active a::after { background: var(--in-teal) !important; }
body.dt-store.single-product .related.products, body.dt-store.single-product .up-sells { margin-top: 70px !important; }
@media (max-width: 767px) { body.dt-store.single-product .summary { padding: 26px 20px !important; border-radius: var(--in-leaf-m); } }

/* ---------- cart / checkout / account ---------- */
body.dt-store .dt-empty-cart { background: #fff; border-radius: var(--in-leaf); padding: 56px 32px; box-shadow: 0 24px 50px -40px rgba(27,58,75,.5); }
body.dt-store .dt-empty-cart h2 { color: var(--in-ink) !important; }
body.dt-store .dt-empty-ico { background: var(--in-mist) !important; color: var(--in-teal) !important; }
body.dt-store .woocommerce a.button, body.dt-store .woocommerce button.button, body.dt-store .woocommerce input.button, body.dt-store a.dt-btn-dark, body.dt-store .dt-btn-dark { background: var(--in-teal) !important; border-color: var(--in-teal) !important; color: #fff !important; }
body.dt-store .woocommerce a.button:hover, body.dt-store .woocommerce button.button:hover, body.dt-store a.dt-btn-dark:hover { background: var(--in-ink) !important; border-color: var(--in-ink) !important; }
body.dt-store.woocommerce-cart .wc-proceed-to-checkout a.checkout-button, body.dt-store.woocommerce-checkout #payment #place_order { background: var(--in-teal) !important; border-color: var(--in-teal) !important; color: #fff !important; }
body.dt-store.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover, body.dt-store.woocommerce-checkout #payment #place_order:hover { background: var(--in-ink) !important; border-color: var(--in-ink) !important; }
body.dt-store .woocommerce input.input-text:focus, body.dt-store .woocommerce textarea:focus, body.dt-store .woocommerce select:focus { border-color: var(--in-teal) !important; box-shadow: 0 0 0 3px rgba(0,100,102,.12) !important; }
body.dt-store .dt-auth-brand { color: rgba(255,255,255,.75); }
body.dt-store .dt-auth-brand li .dt-ico { background: rgba(127,196,194,.16) !important; color: var(--in-mint) !important; }
body.dt-store .dt-auth-tabs button.is-active, body.dt-store .dt-auth-tabs .is-active { background: var(--in-ink) !important; color: #fff !important; }
body.dt-store.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a, body.dt-store.woocommerce-account .woocommerce-MyAccount-navigation a:hover { background: var(--in-teal) !important; color: #fff !important; }
body.dt-store .dt-trustline li .dt-ico { color: var(--in-teal) !important; }

/* ---------- policies ---------- */
.dt-pol-tabs { background: rgba(255,255,255,.1) !important; border: 1px solid rgba(255,255,255,.14); }
.dt-pol-tabs a.is-current { background: #fff !important; color: var(--in-ink) !important; }
.dt-pol-toc, .dt-pol-body { background: #fff !important; border-radius: var(--in-leaf-m) !important; box-shadow: 0 20px 44px -38px rgba(27,58,75,.5); }
.dt-pol-body h2 { color: var(--in-ink) !important; }
.dt-pol-toc a:hover, .dt-pol-toc a.is-active { color: var(--in-teal) !important; }
.dt-pol-body a { color: var(--in-teal) !important; }
.dt-pol-help { background: var(--in-grad) !important; border-radius: var(--in-leaf) !important; color: rgba(255,255,255,.75); }
.dt-pol-help h2, .dt-pol-help h3 { color: #fff !important; }
.dt-pol-help .dt-arch-type { color: var(--in-mint) !important; }
.dt-pol-help a.dt-btn, .dt-pol-help .dt-btn { background: #fff !important; color: var(--in-ink) !important; border-color: #fff !important; }

/* ---------- 404 ---------- */
body.dt-store .dt-404 { padding: 80px 24px 72px !important; }
.dt-404-num { color: transparent !important; -webkit-text-stroke: 2px rgba(255,255,255,.9); font-weight: 800 !important; }
.dt-404-num span { color: var(--in-mint) !important; -webkit-text-stroke: 0; animation: none !important; }
body.dt-store .dt-404 h1 { color: #fff !important; }
.dt-404 a.dt-btn-dark { background: #fff !important; color: var(--in-ink) !important; border-color: #fff !important; border-radius: 999px !important; }
.dt-404 a.dt-btn-dark:hover { background: var(--in-mint) !important; border-color: var(--in-mint) !important; }
.dt-404 a.dt-btn-outline-dark { background: transparent !important; color: #fff !important; border: 1px solid rgba(255,255,255,.55) !important; border-radius: 999px !important; height: 52px; padding: 0 26px; display: inline-flex; align-items: center; }
.dt-404 a.dt-btn-outline-dark:hover { background: #fff !important; color: var(--in-ink) !important; }

/* ---------- single post ---------- */
.dt-card-hero { padding: 64px 64px 56px; margin-bottom: 26px; }
.dt-single-hero h1 { max-width: 20ch; }
.dt-single-cats { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 20px; }
.dt-chip { display: inline-block; padding: 8px 14px; border-radius: 999px; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18); color: #fff !important; font: 700 12px/1 "Nunito Sans", sans-serif; letter-spacing: .8px; text-transform: uppercase; }
.dt-chip.is-light { background: var(--in-mist); border-color: var(--in-line); color: var(--in-teal) !important; text-transform: none; letter-spacing: 0; }
.dt-single-lead { margin: 18px 0 0 !important; font-size: 18px !important; }
.dt-single-meta { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }
.dt-single-meta span { padding: 8px 14px; border-radius: 999px; background: rgba(255,255,255,.08); color: rgba(255,255,255,.85); font: 600 13px/1 "Nunito Sans", sans-serif; }
.dt-single-media { margin: 0 0 26px; border-radius: var(--in-leaf); overflow: hidden; }
.dt-single-media img { width: 100%; height: auto; max-height: 620px; object-fit: cover; display: block; }
.dt-single-layout { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 26px; align-items: start; }
.dt-single-body { background: #fff; border-radius: var(--in-leaf); padding: 56px 64px; color: #3D5560; font-size: 17px; line-height: 1.8; box-shadow: 0 24px 50px -40px rgba(27,58,75,.5); }
.dt-single-body h2, .dt-single-body h3, .dt-single-body h4 { color: var(--in-ink); letter-spacing: -.01em; margin: 1.6em 0 .6em; }
.dt-single-body a { color: var(--in-teal); text-decoration: underline; text-underline-offset: 3px; }
.dt-single-body img { border-radius: var(--in-leaf-s); }
.dt-single-body blockquote { margin: 1.6em 0; padding: 22px 28px; border-left: 4px solid var(--in-teal); background: var(--in-mist); border-radius: 0 18px 18px 0; color: var(--in-ink); }
.dt-single-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 36px; padding-top: 26px; border-top: 1px solid var(--in-line); }
.dt-single-side { position: sticky; top: 130px; display: grid; gap: 18px; }
.dt-side-card { background: #fff; border-radius: var(--in-leaf-m); padding: 28px; box-shadow: 0 20px 44px -38px rgba(27,58,75,.5); }
.dt-side-card h3 { margin: 0 0 14px; color: var(--in-ink); font: 700 17px/1.3 "Nunito Sans", sans-serif; }
.dt-side-card.is-dark { background: var(--in-grad); color: rgba(255,255,255,.75); }
.dt-side-card.is-dark h3 { color: #fff; }
.dt-side-card.is-dark p { margin: 0 0 20px; font-size: 14.5px; line-height: 1.6; }
.dt-side-btn { display: inline-block; padding: 13px 22px; border-radius: 6px; background: #fff; color: var(--in-ink) !important; font: 700 13px/1 "Nunito Sans", sans-serif; text-transform: uppercase; letter-spacing: .6px; }
.dt-side-btn:hover { background: var(--in-mint); }
.dt-share { display: flex; flex-wrap: wrap; gap: 8px; }
.dt-share a { padding: 10px 16px; border-radius: 999px; background: var(--in-mist); color: var(--in-ink) !important; font: 700 13px/1 "Nunito Sans", sans-serif; }
.dt-share a:hover { background: var(--in-teal); color: #fff !important; }
.dt-post-nav { display: grid; grid-template-columns: 1fr 1fr; gap: 26px; margin-top: 26px; }
.dt-post-nav a { display: block; background: #fff; border-radius: var(--in-leaf-m); padding: 26px 30px; box-shadow: 0 20px 44px -38px rgba(27,58,75,.5); }
.dt-post-nav a.is-next { text-align: right; grid-column: 2; }
.dt-post-nav small { display: block; color: var(--in-muted); font: 700 12px/1 "Nunito Sans", sans-serif; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 10px; }
.dt-post-nav b { color: var(--in-ink); font: 700 17px/1.4 "Nunito Sans", sans-serif; }
.dt-post-nav a:hover b { color: var(--in-teal); }
.dt-single-comments { margin-top: 26px; background: #fff; border-radius: var(--in-leaf); padding: 44px 56px; }
@media (max-width: 1024px) {
  .dt-single-layout { grid-template-columns: 1fr; }
  .dt-single-side { position: static; grid-template-columns: 1fr 1fr; }
  .dt-single-body { padding: 40px; }
}

/* ---------- mobile hero sizes ---------- */
@media (max-width: 767px) {
  body.dt-store .woocommerce-products-header, body.dt-store .dt-arch-hero, body.dt-store .dt-card-hero { padding: 40px 24px 32px !important; min-height: 0; border-radius: var(--in-leaf-m) !important; }
  body.dt-store .dt-page-head { padding: 32px 22px !important; border-radius: var(--in-leaf-m) !important; }
  body.dt-store .dt-404 { padding: 56px 20px 48px !important; border-radius: var(--in-leaf-m) !important; }
  .dt-single-body { padding: 28px 22px; font-size: 16px; }
  .dt-single-side { grid-template-columns: 1fr; }
  .dt-post-nav { grid-template-columns: 1fr; }
  .dt-post-nav a.is-next { grid-column: auto; }
  .dt-single-comments { padding: 28px 22px; }
}

/* ---------- old TZ variables -> teal (covers any leftover TechOze pieces) ---------- */
html:root { --tz-pink: #006466; --tz-navy: #1B3A4B; --tz-navy-2: #1B3A4B; --tz-ink: #1B3A4B; --tz-grey: #F1F6F6; }

/* ---------- reviews section (product pages etc.) ---------- */
body.dt-store .dt-rv-section { background: var(--in-grad) !important; background-image: var(--in-grad) !important; border-radius: var(--in-leaf) !important; box-shadow: 0 30px 60px -42px rgba(27,58,75,.65); }
body.dt-store .dt-rv-section::before { content: ""; position: absolute; right: -110px; top: -110px; width: 380px; height: 380px; border-radius: 50%; border: 1px solid rgba(127,196,194,.22); pointer-events: none; background: none; }
.dt-rv-section .dt-rv-eyebrow { color: var(--in-mint) !important; }
.dt-rv-section .dt-rv-summary { background: rgba(255,255,255,.08) !important; border-color: rgba(255,255,255,.16) !important; border-radius: 22px 8px 22px 8px !important; }
.dt-rv-section .dt-rv-summary .dt-stars-fill, .dt-rv-section .dt-rv-summary .dt-stars span { color: var(--in-mint) !important; }
.dt-store .dt-rv-section .dt-rv-nav button:hover { background: #fff !important; border-color: #fff !important; color: var(--in-ink) !important; }
.dt-rv-section .dt-rv-dots button.is-active { background: #fff !important; }
.dt-rv-section .dt-rv-card { border-radius: 28px 10px 28px 10px !important; }
.dt-rv-section .dt-rv-card:hover { box-shadow: 0 34px 60px -30px rgba(0,0,0,.45) !important; }
.dt-rv-section .dt-rv-card .dt-stars-fill { color: var(--in-teal) !important; }
.dt-rv-section .dt-rv-quote { background: var(--in-mist) !important; color: var(--in-teal) !important; }
.dt-rv-section .dt-rv-card blockquote { color: var(--in-ink) !important; }
.dt-rv-section .dt-rv-card figcaption { border-top-color: var(--in-line) !important; }
.dt-rv-section .dt-rv-avatar { background: linear-gradient(135deg, var(--in-teal), var(--in-ink)) !important; box-shadow: 0 8px 18px -8px rgba(0,100,102,.6) !important; }
.dt-rv-section .dt-rv-product { background: var(--in-mist) !important; }
.dt-rv-section .dt-rv-product:hover { background: #E3F0F0 !important; }
.dt-store .dt-rv-section a.dt-rv-cta { background: #fff !important; color: var(--in-ink) !important; }
.dt-store .dt-rv-section a.dt-rv-cta:hover { background: var(--in-mint) !important; }
@media (max-width: 767px) { body.dt-store .dt-rv-section { border-radius: var(--in-leaf-m) !important; } }

/* ---------- about / contact ---------- */
.bwp-crumbs { font: 600 13px/1.4 "Nunito Sans", sans-serif; color: rgba(255,255,255,.6); display: flex; gap: 8px; margin-bottom: 18px; }
.bwp-crumbs a { color: #fff !important; }
.bwp-crumbs span { opacity: .5; }
.bwp-hero { position: relative; overflow: hidden; box-shadow: 0 30px 60px -42px rgba(27,58,75,.65); }
.bwp-hero::before { content: ""; position: absolute; right: -110px; top: -110px; width: 380px; height: 380px; border-radius: 50%; border: 1px solid rgba(127,196,194,.22); pointer-events: none; }
.bwp-hero::after { content: ""; position: absolute; left: 40%; bottom: -170px; width: 340px; height: 340px; border-radius: 50%; background: radial-gradient(circle, rgba(127,196,194,.2) 0, rgba(127,196,194,0) 70%); pointer-events: none; }
.bwp-hero > * { position: relative; z-index: 1; }
.bwp-card { box-shadow: 0 20px 44px -38px rgba(27,58,75,.5); }
.bwp-ico { width: 50px; height: 50px; border-radius: 16px 6px 16px 6px; display: grid; place-items: center; background: var(--in-mist); color: var(--in-teal); }
.bwp-link { color: var(--in-teal) !important; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.bwp-form input[type=text], .bwp-form input[type=email], .bwp-form input[type=tel], .bwp-form textarea, .bwp-form select { width: 100%; border-radius: 14px !important; border: 1px solid var(--in-line) !important; background: var(--in-mist) !important; color: var(--in-ink) !important; padding: 14px 18px !important; font: 500 15px "Nunito Sans", sans-serif; box-sizing: border-box; }
.bwp-form input:focus, .bwp-form textarea:focus { background: #fff !important; border-color: var(--in-teal) !important; box-shadow: 0 0 0 3px rgba(0,100,102,.12) !important; outline: 0; }
.bwp-form label { color: var(--in-ink); font: 700 13.5px/1.4 "Nunito Sans", sans-serif; }
.bwp-form button, .bwp-form input[type=submit] { background: var(--in-teal) !important; border: 0 !important; color: #fff !important; border-radius: 6px !important; padding: 15px 28px !important; font: 700 13px/1 "Nunito Sans", sans-serif !important; text-transform: uppercase; letter-spacing: .6px; cursor: pointer; }
.bwp-form button:hover, .bwp-form input[type=submit]:hover { background: var(--in-ink) !important; }

/* =========================================================
   Plainer finish: flat colour, no decorative effects,
   borders instead of glows, calmer type.
   ========================================================= */
html:root { --bw-card-grad: #1B3A4B; --in-grad: #1B3A4B; }

/* flat fills */
body .dt-header-wrap .bw-hdr, body #dt-footer .bw-foot, body .bw-hero.tz-slider, body.dt-store .woocommerce-products-header, body.dt-store .dt-arch-hero, body.dt-store .dt-404, body.dt-store .dt-card-hero, body.dt-store .dt-page-head, body.dt-store .dt-auth-brand, body.dt-store .dt-rv-section, .bwp-hero, .dt-pol-help, .dt-side-card.is-dark, body.dt-store main.site-main > .page-header { background: #1B3A4B !important; background-image: none !important; }
.bw-cta { background: #006466 !important; background-image: none !important; }

/* no glows, rings, orbit circles, giant ghost text */
.bw-hero::before, .bwp-hero::before, .bwp-hero::after,
body.dt-store .woocommerce-products-header::before, body.dt-store .woocommerce-products-header::after,
body.dt-store .dt-arch-hero::before, body.dt-store .dt-arch-hero::after,
body.dt-store .dt-404::before, body.dt-store .dt-404::after,
body.dt-store .dt-card-hero::before, body.dt-store .dt-card-hero::after,
body.dt-store .dt-page-head::before, body.dt-store .dt-page-head::after,
body.dt-store .dt-auth-brand::before, body.dt-store .dt-auth-brand::after,
body.dt-store .dt-rv-section::before, body.dt-store .dt-rv-section::after { content: none !important; display: none !important; }
.bw-hero-word-w, .bw-float-w, .bw-hero-pay, .bw-eyebrow, .dt-rv-quote, .dt-rv-eyebrow:empty { display: none !important; }

/* shadows -> hairline borders */
body .dt-header-wrap .bw-hdr, body .bw-hero.tz-slider, body.dt-store .woocommerce-products-header, body.dt-store .dt-arch-hero, body.dt-store .dt-404, body.dt-store .dt-card-hero, body.dt-store .dt-page-head, body.dt-store .dt-rv-section, .bwp-hero, body.dt-store main.site-main > .page-header { box-shadow: none !important; }
.bw-step, .bwp-card, .bw-spot, .bw-promo:not(.is-dark), .dt-side-card:not(.is-dark), .dt-post-nav a, .dt-single-body, .dt-pol-toc, .dt-pol-body, .dt-arch-empty, .dt-toolbar,
body.dt-store .dt-empty-cart, body.dt-store.single-product .summary, body.dt-store.single-product .woocommerce-product-gallery, body.dt-store.single-product .woocommerce-tabs { box-shadow: none !important; border: 1px solid #DCE7E8 !important; }
.bw-card { box-shadow: 0 1px 0 #DCE7E8, 0 12px 30px -24px rgba(27,58,75,.35) !important; border: 1px solid #DCE7E8; }

/* product cards: simple, even corners, no lift */
body.dt-store ul.products li.product, body.dt-store .bw-tabs ul.products li.product { border-radius: 16px !important; box-shadow: none !important; border: 1px solid #DCE7E8 !important; transform: none !important; }
body.dt-store ul.products li.product:hover, body.dt-store .bw-tabs ul.products li.product:hover { border-color: #006466 !important; box-shadow: none !important; }
body.dt-store ul.products li.product .dt-pc-media { border-radius: 10px !important; }
.dt-rv-section .dt-rv-card { border-radius: 16px !important; box-shadow: none !important; }
.dt-rv-section .dt-rv-card:hover { transform: none !important; box-shadow: none !important; }

/* category tiles: real colour, no grey-to-colour trick */
.bw-cat-img img, .bw-cat:hover .bw-cat-img img { filter: none !important; }
.bw-cat:hover .bw-cat-img img { transform: none !important; }

/* hero */
.bw-hero-img img { box-shadow: none !important; }
.bw-hero-title .elementor-heading-title { text-shadow: none !important; }
.bw-hero-from .tz-from { display: block; margin-top: 18px; color: rgba(255,255,255,.7); font: 600 15px/1.4 "Nunito Sans", sans-serif; }
.bw-hero-from .tz-from b, .bw-hero-from .tz-from .amount { color: #fff; font-size: 22px; font-weight: 800; }

/* buttons: sentence case, no arrows */
.bw-btn .elementskit-btn > i, .bw-btn .elementskit-btn > svg, .bw-btn .elementskit-btn .ekit-btn-icon { display: none !important; }
.dt-arch-shop-head .dt-link-arrow, .dt-side-btn { text-transform: none !important; letter-spacing: 0 !important; font-size: 14px !important; }

/* steps: plain numbers */
.bw-step-num .elementor-heading-title { -webkit-text-stroke: 0 !important; color: #006466 !important; font-size: 30px !important; }

/* 404: solid number */
.dt-404-num { color: #fff !important; -webkit-text-stroke: 0 !important; }

/* hero labels inside page cards */
.dt-arch-type::before { box-shadow: none !important; }

/* restore the teal gradient on header, hero, page heroes, CTA and footer */
html:root { --bw-card-grad: linear-gradient(120deg, #1B3A4B 0%, #0B525B 55%, #006466 100%); --in-grad: linear-gradient(120deg, #1B3A4B 0%, #0B525B 55%, #006466 100%); }
html body .dt-header-wrap .bw-hdr, html body #dt-footer .bw-foot, html body .bw-hero.tz-slider, html body.dt-store .woocommerce-products-header, html body.dt-store .dt-arch-hero, html body.dt-store .dt-404, html body.dt-store .dt-card-hero, html body.dt-store .dt-page-head, html body.dt-store .dt-auth-brand, html body.dt-store .dt-rv-section, html body .bwp-hero, html body .dt-pol-help, html body .dt-side-card.is-dark, html body.dt-store main.site-main > .page-header, html body .bw-cta { background: #1B3A4B linear-gradient(120deg, #1B3A4B 0%, #0B525B 55%, #006466 100%) !important; }
