/*
Theme Name: vi-loan
Description: Child theme for Flatsome.
Author: UX Themes
Template: flatsome
Version: 5.8
*/

@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&family=Playfair+Display:wght@500;600;700&family=Dancing+Script:wght@400;600;700&display=swap");

:root {
  --dn-bg: #fbf9f4;
  --dn-soft: #f0eee9;
  --dn-surface: #ffffff;
  --dn-line: #d1c5b4;
  --dn-text: #1b1c19;
  --dn-muted: #4e4639;
  --dn-primary: #c5a059;
  --dn-gold: #c5a059;
  --dn-moss: #506354;
}

/* Contact page v3 layout. */
.dn-contact-hero-v3 .section-content > .row,
.dn-contact-process-v3 .section-content > .row,
.dn-contact-panel-v3 .section-content > .row,
.dn-contact-map-v3 .dn-contact-map-heading {
  max-width: 1400px !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

.dn-contact-hero-v3 {
  padding-top: 150px !important;
  padding-bottom: 78px !important;
}

.dn-contact-hero-v3 h1 {
  max-width: 760px;
  margin: 0 0 22px;
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 68px;
  font-weight: 600;
  line-height: 1.05;
  letter-spacing: 0;
}

.dn-contact-hero-copy .dn-lead {
  max-width: 690px;
}

.dn-contact-hero-visual-col > .col-inner {
  position: relative;
}

.dn-contact-hero-visual {
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 24px 64px rgba(27, 28, 25, .12);
}

.dn-contact-hero-visual .banner-bg .bg {
  filter: grayscale(12%);
  transform: scale(1.01);
}

.dn-contact-hero-note {
  top: auto !important;
  right: auto !important;
  bottom: 24px !important;
  left: 24px !important;
  transform: none !important;
  width: 260px !important;
  min-width: 240px;
  padding: 24px 26px !important;
  border-radius: 8px;
  background: var(--dn-primary);
  color: #fff;
  box-shadow: 0 18px 36px rgba(27, 28, 25, .16);
}

.dn-contact-hero-note h3 {
  margin: 0 0 8px;
  color: #fff;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 32px;
  line-height: 1.1;
  letter-spacing: 0;
}

.dn-contact-hero-note p {
  margin: 0;
  color: rgba(255, 255, 255, .82);
  font-size: 14px;
  line-height: 1.55;
}

.dn-contact-hero-v3 .button,
.dn-contact-form-v3 .wpcf7-submit,
.dn-contact-form-v3 input[type="submit"] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 0 28px !important;
  border-radius: 8px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.dn-contact-section-heading {
  max-width: 760px;
  margin: 0 auto 36px !important;
}

.dn-contact-section-heading h2,
.dn-contact-panel-v3 h2,
.dn-contact-map-v3 h2 {
  margin: 0 0 16px;
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 46px;
  font-weight: 600;
  line-height: 1.14;
  letter-spacing: 0;
}

.dn-contact-process-card,
.dn-contact-info-card-v3,
.dn-contact-form-v3 {
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 46px rgba(27,28,25,.06);
}

.dn-contact-process-card {
  min-height: 230px;
  padding: 32px 28px;
}

.dn-contact-process-card span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  margin-bottom: 20px;
  border-radius: 999px;
  background: var(--dn-primary);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
}

.dn-contact-process-card h3,
.dn-contact-info-card-v3 h2,
.dn-contact-form-v3 h2 {
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 600;
  line-height: 1.16;
  letter-spacing: 0;
}

.dn-contact-process-card h3 {
  margin: 0 0 12px;
  font-size: 30px;
}

.dn-contact-process-card p,
.dn-contact-info-card-v3 p,
.dn-contact-form-v3 > p,
.dn-contact-intro {
  color: var(--dn-muted);
  font-size: 15px;
  line-height: 1.72;
}

.dn-contact-info-card-v3,
.dn-contact-form-v3 {
  min-height: 100%;
  padding: 38px 34px;
}

.dn-contact-panel-v3 .section-content > .row {
  align-items: stretch !important;
}

.dn-contact-panel-v3 .section-content > .row > .col {
  display: flex !important;
}

.dn-contact-panel-v3 .col > .col-inner,
.dn-contact-info-card-v3,
.dn-contact-form-v3 {
  height: 100%;
}

.dn-contact-panel-v3 .col > .col-inner {
  display: flex;
  width: 100%;
}

.dn-contact-info-lead {
  margin-bottom: 26px;
}

.dn-contact-info-list {
  display: grid;
  gap: 14px;
  margin-top: 26px;
}

.dn-contact-info-list p {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr);
  gap: 18px;
  margin: 0;
  padding: 15px 0;
  border-top: 1px solid rgba(209, 197, 180, .65);
}

.dn-contact-info-list strong {
  color: var(--dn-text);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.dn-contact-info-list span {
  color: var(--dn-muted);
  font-size: 15px;
  line-height: 1.55;
}

.dn-contact-form-v3 .wpcf7 {
  margin-top: 24px;
}

.dn-contact-form-v3 .wpcf7 p {
  margin-bottom: 16px;
}

.dn-contact-form-v3 .wpcf7 label {
  display: block;
  color: var(--dn-text);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.5;
}

.dn-contact-form-v3 .wpcf7 input[type="text"],
.dn-contact-form-v3 .wpcf7 input[type="email"],
.dn-contact-form-v3 .wpcf7 input[type="tel"],
.dn-contact-form-v3 .wpcf7 input[type="url"],
.dn-contact-form-v3 .wpcf7 select,
.dn-contact-form-v3 .wpcf7 textarea {
  width: 100%;
  min-height: 46px;
  margin-top: 7px;
  border: 1px solid rgba(209, 197, 180, .95);
  border-radius: 6px;
  background: #fff;
  color: var(--dn-text);
  box-shadow: none;
  font-size: 15px;
}

.dn-contact-form-v3 .wpcf7 textarea {
  min-height: 132px;
  resize: vertical;
}

.dn-contact-form-v3 .wpcf7 input:focus,
.dn-contact-form-v3 .wpcf7 select:focus,
.dn-contact-form-v3 .wpcf7 textarea:focus {
  border-color: var(--dn-primary);
  box-shadow: 0 0 0 3px rgba(119,90,25,.1);
}

.dn-contact-form-v3 .wpcf7-submit,
.dn-contact-form-v3 input[type="submit"] {
  min-width: 180px !important;
  border: 1px solid var(--dn-primary) !important;
  background: var(--dn-primary) !important;
  color: #fff !important;
  font-size: 15px !important;
  opacity: 1 !important;
}

.dn-contact-form-v3 .wpcf7-submit:hover,
.dn-contact-form-v3 input[type="submit"]:hover {
  border-color: var(--dn-gold) !important;
  background: var(--dn-gold) !important;
  color: #fff !important;
}

.dn-contact-form-v3 .wpcf7-spinner {
  margin-left: 12px;
}

.dn-contact-map-v3 .dn-contact-map-heading {
  margin-bottom: 34px !important;
}

.dn-contact-map-v3 .dn-contact-map-full-row {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.dn-contact-map-v3 .dn-contact-map-full-row > .col {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.dn-contact-map-v3 .dn-contact-map-frame {
  width: 100%;
  min-height: 540px;
  margin-top: 0;
  border-radius: 0;
  background: #f0eee9;
  box-shadow: none;
}

.dn-contact-map-v3 .dn-contact-map-frame iframe {
  display: block;
  width: 100% !important;
  height: 540px !important;
}

@media (max-width: 849px) {
  .dn-contact-hero-v3 {
    padding-top: 92px !important;
    padding-bottom: 58px !important;
  }

  .dn-contact-process-v3,
  .dn-contact-panel-v3,
  .dn-contact-map-v3 {
    padding-top: 62px !important;
  }

  .dn-contact-hero-v3 h1 {
    font-size: 42px;
  }

  .dn-contact-section-heading h2,
  .dn-contact-panel-v3 h2,
  .dn-contact-map-v3 h2 {
    font-size: 34px;
  }

  .dn-contact-info-col {
    margin-bottom: 24px;
  }

  .dn-contact-info-card-v3,
  .dn-contact-form-v3,
  .dn-contact-process-card {
    padding: 26px 22px;
  }

  .dn-contact-info-list p {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .dn-contact-map-v3 .dn-contact-map-frame,
  .dn-contact-map-v3 .dn-contact-map-frame iframe {
    min-height: 380px;
    height: 380px !important;
  }
}

/* Final polish: news button hover states and section CTA alignment. */
.dn-news-hero-feature .button:hover,
.dn-news-main-story .button:hover,
.dn-news-grid-cards .button:hover,
.dn-news-topic-button.button:hover,
.dn-news-topic-button.button:focus {
  border-color: var(--dn-primary) !important;
  background: var(--dn-primary) !important;
  color: #fff !important;
  box-shadow: 0 10px 22px rgba(27, 28, 25, .08) !important;
}

.dn-news-hero-feature .button:hover span,
.dn-news-main-story .button:hover span,
.dn-news-grid-cards .button:hover span,
.dn-news-topic-button.button:hover span,
.dn-news-topic-button.button:focus span {
  color: #fff !important;
}

.dn-news-grid-action > .col-inner,
body.home .dn-products > .section-content > .row > .col.medium-4 > .col-inner {
  padding-top: 52px !important;
  text-align: right !important;
}

.dn-news-grid-action .button.is-link:hover,
.dn-news-grid-action .button.is-link:focus,
.dn-news-link-button.button:hover,
.dn-news-link-button.button:focus,
body.home .dn-products .button.is-link:hover,
body.home .dn-products .button.is-link:focus {
  background: transparent !important;
  color: var(--dn-primary) !important;
  box-shadow: none !important;
}

@media (max-width: 849px) {
  .dn-news-grid-action > .col-inner,
  body.home .dn-products > .section-content > .row > .col.medium-4 > .col-inner {
    padding-top: 0 !important;
    text-align: left !important;
  }
}

/* Contact page UX Builder layout. */
.dn-contact-hero-v2 .section-content > .row,
.dn-contact-main-v2 .section-content > .row,
.dn-contact-help-v2 .section-content > .row {
  max-width: 1400px !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

.dn-contact-hero-v2 {
  padding-top: 150px !important;
  padding-bottom: 76px !important;
}

.dn-contact-hero-copy h1 {
  max-width: 820px;
  margin: 0 0 22px;
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 66px;
  font-weight: 600;
  line-height: 1.05;
  letter-spacing: 0;
}

.dn-contact-quick-row.row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin: 36px 0 0 !important;
}

.dn-contact-quick-row.row > .col {
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
}

.dn-contact-quick-card,
.dn-contact-note-card,
.dn-contact-form-v2,
.dn-contact-help-card {
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 46px rgba(27,28,25,.06);
}

.dn-contact-quick-card {
  min-height: 170px;
  padding: 24px 22px;
}

.dn-contact-quick-card span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  margin-bottom: 16px;
  border-radius: 999px;
  background: var(--dn-primary);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
}

.dn-contact-quick-card h3,
.dn-contact-note-card h2,
.dn-contact-main-v2 h2,
.dn-contact-form-v2 h2,
.dn-contact-help-card h3 {
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 600;
  letter-spacing: 0;
}

.dn-contact-quick-card h3,
.dn-contact-help-card h3 {
  margin: 0 0 10px;
  font-size: 26px;
  line-height: 1.18;
}

.dn-contact-quick-card p,
.dn-contact-note-card p,
.dn-contact-intro,
.dn-contact-form-v2 > p,
.dn-contact-help-card p {
  color: var(--dn-muted);
  font-size: 15px;
  line-height: 1.72;
}

.dn-contact-note-card {
  padding: 36px 34px;
  background: #f0eee9;
}

.dn-contact-note-card h2,
.dn-contact-main-v2 h2,
.dn-contact-form-v2 h2 {
  margin: 0 0 18px;
  font-size: 42px;
  line-height: 1.15;
}

.dn-contact-map-frame {
  position: relative;
  overflow: hidden;
  min-height: 450px;
  margin-top: 30px;
  border-radius: 8px;
  background: #f0eee9;
  box-shadow: 0 18px 46px rgba(27,28,25,.06);
}

.dn-contact-map-frame iframe {
  display: block;
  width: 100% !important;
  height: 450px !important;
}

.dn-contact-form-v2 {
  padding: 36px 34px;
  background: #f0eee9;
}

.dn-contact-form-v2 .wpcf7 {
  margin-top: 22px;
}

.dn-contact-form-v2 .wpcf7 p {
  margin-bottom: 16px;
}

.dn-contact-form-v2 .wpcf7 label {
  display: block;
  color: var(--dn-text);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.5;
}

.dn-contact-form-v2 .wpcf7 input[type="text"],
.dn-contact-form-v2 .wpcf7 input[type="email"],
.dn-contact-form-v2 .wpcf7 input[type="tel"],
.dn-contact-form-v2 .wpcf7 input[type="url"],
.dn-contact-form-v2 .wpcf7 select,
.dn-contact-form-v2 .wpcf7 textarea {
  width: 100%;
  min-height: 46px;
  margin-top: 7px;
  border: 1px solid rgba(209, 197, 180, .95);
  border-radius: 6px;
  background: #fff;
  color: var(--dn-text);
  box-shadow: none;
  font-size: 15px;
}

.dn-contact-form-v2 .wpcf7 textarea {
  min-height: 132px;
  resize: vertical;
}

.dn-contact-form-v2 .wpcf7 input:focus,
.dn-contact-form-v2 .wpcf7 select:focus,
.dn-contact-form-v2 .wpcf7 textarea:focus {
  border-color: var(--dn-primary);
  box-shadow: 0 0 0 3px rgba(119,90,25,.1);
}

.dn-contact-form-v2 .wpcf7-submit,
.dn-contact-form-v2 input[type="submit"] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 180px !important;
  min-height: 48px !important;
  margin-top: 6px !important;
  padding: 0 30px !important;
  border: 1px solid var(--dn-primary) !important;
  border-radius: 8px !important;
  background: var(--dn-primary) !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  opacity: 1 !important;
}

.dn-contact-form-v2 .wpcf7-submit:hover,
.dn-contact-form-v2 input[type="submit"]:hover {
  background: var(--dn-gold) !important;
  border-color: var(--dn-gold) !important;
  color: #fff !important;
}

.dn-contact-form-v2 .wpcf7-spinner {
  margin-left: 12px;
}

.dn-contact-form-v2 .wpcf7-response-output {
  margin: 18px 0 0 !important;
  border-radius: 6px;
  font-size: 14px;
}

.dn-contact-help-card {
  min-height: 180px;
  padding: 30px 28px;
}

@media (max-width: 849px) {
  .dn-contact-hero-v2 {
    padding-top: 92px !important;
    padding-bottom: 58px !important;
  }

  .dn-contact-main-v2,
  .dn-contact-help-v2 {
    padding-top: 62px !important;
    padding-bottom: 66px !important;
  }

  .dn-contact-hero-copy h1 {
    font-size: 42px;
  }

  .dn-contact-quick-row.row {
    grid-template-columns: 1fr;
  }

  .dn-contact-hero-note {
    margin-top: 24px;
  }

  .dn-contact-note-card,
  .dn-contact-form-v2 {
    padding: 26px 22px;
  }

  .dn-contact-note-card h2,
  .dn-contact-main-v2 h2,
  .dn-contact-form-v2 h2 {
    font-size: 34px;
  }

  .dn-contact-map-frame,
  .dn-contact-map-frame iframe {
    min-height: 360px;
    height: 360px !important;
  }
}

.custom-product-page .dn-single-ux-hero .section-content > .row,
.custom-product-page .dn-single-ux-detail .section-content > .row,
.custom-product-page .dn-single-ux-products .section-content > .row {
  max-width: 1400px !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

.custom-product-page .dn-single-ux-hero {
  border-bottom: 1px solid rgba(209, 197, 180, .62);
  padding-top: 104px !important;
  padding-bottom: 56px !important;
}

.dn-single-gallery-col .col-inner {
  position: relative;
}

.dn-single-gallery-col .product-gallery-default,
.dn-single-gallery-col .woocommerce-product-gallery {
  border-radius: 8px;
  overflow: hidden;
  background: #f5f3ee;
}

.dn-single-gallery-col .product-gallery-default {
  max-width: 94%;
  margin: 0 auto;
}

.dn-single-gallery-col .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:first-child {
  display: flex !important;
  align-items: center;
  justify-content: center;
  height: clamp(500px, 64vh, 650px);
  overflow: hidden;
  background: #f5f3ee;
}

.dn-single-gallery-col .woocommerce-product-gallery__image.first,
.dn-single-gallery-col .woocommerce-product-gallery__image.is-selected {
  display: flex !important;
  align-items: center;
  justify-content: center;
  height: clamp(500px, 64vh, 650px) !important;
  overflow: hidden;
  background: #f5f3ee;
}

.dn-single-gallery-col .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:first-child a {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.dn-single-gallery-col .woocommerce-product-gallery__image.first a,
.dn-single-gallery-col .woocommerce-product-gallery__image.is-selected a {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100% !important;
  height: 100% !important;
}

.dn-single-gallery-col .woocommerce-product-gallery__image img,
.dn-single-gallery-col .wp-post-image {
  width: 100% !important;
  object-fit: cover;
}

.dn-single-gallery-col .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:first-child img {
  width: auto !important;
  max-width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center top;
}

.dn-single-gallery-col .woocommerce-product-gallery__image.first img,
.dn-single-gallery-col .woocommerce-product-gallery__image.is-selected img {
  width: auto !important;
  max-width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center top;
}

.dn-single-ux-summary {
  padding: 8px 0 8px 34px;
}

.dn-single-summary-col.dn-single-ux-summary {
  padding: 0 !important;
}

.dn-single-summary-col > .col-inner {
  padding-left: 34px;
}

.dn-single-ux-summary .product-breadcrumb-container {
  margin-bottom: 18px;
  font-size: 13px;
  color: #7f7667;
}

.dn-single-ux-summary .product-title,
.dn-single-ux-summary h1.product-title {
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(38px, 4vw, 66px);
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: 0;
  margin: 0 0 18px;
}

.dn-single-ux-summary .is-divider {
  width: 74px;
  height: 3px;
  margin: 0 0 24px;
  background: var(--dn-primary);
}

.dn-single-ux-summary .price,
.dn-single-ux-summary .amount {
  color: var(--dn-primary);
  font-size: 22px;
  font-weight: 800;
}

.dn-single-ux-summary .woocommerce-product-details__short-description,
.dn-single-ux-summary .dn-single-summary-note {
  max-width: 660px;
  color: var(--dn-muted);
  font-size: 16px;
  line-height: 1.75;
}

.dn-single-ux-summary .product_meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 24px 0 0;
  padding: 0;
  border: 0;
}

.dn-single-ux-summary .product_meta > span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 12px;
  border: 1px solid var(--dn-line);
  border-radius: 999px;
  background: rgba(255,255,255,.7);
  color: var(--dn-muted);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .04em;
}

.dn-single-ux-summary .product_meta .sku,
.dn-single-ux-summary .product_meta .posted_in a,
.dn-single-spec-card .product_meta .sku,
.dn-single-spec-card .product_meta .posted_in a {
  margin-left: 4px;
}

.dn-single-ux-summary .product_meta .damynghe-legacy-specs {
  display: flex;
  flex: 0 0 100%;
  flex-wrap: wrap;
  gap: 8px 16px;
  color: var(--dn-muted);
  font-size: 14px;
  line-height: 1.5;
}

.dn-single-spec-card .product_meta .damynghe-legacy-specs {
  display: grid;
  gap: 8px;
}

.dn-single-ux-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.dn-single-ux-actions.row {
  display: flex !important;
  flex-wrap: wrap;
  gap: 12px;
  margin: 30px 0 0 !important;
}

.dn-single-ux-actions.row > .dn-single-action-col {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
  padding: 0 !important;
}

.dn-single-ux-actions .button,
.dn-single-side-card .button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 0 26px !important;
  border-radius: 8px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  letter-spacing: .02em !important;
  text-transform: none !important;
}

.dn-single-ux-actions .button.primary,
.dn-single-side-card .button.primary {
  background: var(--dn-primary) !important;
  border-color: var(--dn-primary) !important;
  color: #fff !important;
}

.dn-single-ux-actions .button.is-outline,
.dn-single-side-card .button.is-outline {
  background: transparent !important;
  border-color: var(--dn-line) !important;
  color: var(--dn-muted) !important;
}

.dn-single-trust-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin-top: 34px;
  max-width: 690px;
}

.dn-single-trust-row.row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 34px 0 0 !important;
  max-width: 690px;
}

.dn-single-trust-row.row > .dn-single-trust-col {
  width: auto !important;
  max-width: none !important;
  padding: 0 !important;
}

.dn-single-trust-row span {
  min-height: 72px;
  padding: 15px 14px;
  border: 1px solid rgba(209, 197, 180, .82);
  border-radius: 8px;
  background: #fff;
  color: var(--dn-muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.dn-single-trust-item {
  display: flex;
  align-items: center;
  min-height: 72px;
  margin: 0 !important;
  padding: 15px 14px;
  border: 1px solid rgba(209, 197, 180, .82);
  border-radius: 8px;
  background: #fff;
  color: var(--dn-muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.dn-single-ux-detail {
  color: var(--dn-text);
}

.dn-single-detail-main {
  min-height: 100%;
  padding: 40px 42px 46px;
  border: 1px solid rgba(209, 197, 180, .72);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 44px rgba(27, 28, 25, .045);
}

.dn-single-detail-main > .col-inner {
  min-height: 100%;
  padding: 40px 42px 46px !important;
  border: 1px solid rgba(209, 197, 180, .72);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 44px rgba(27, 28, 25, .045);
}

.dn-single-detail-main.dn-single-detail-col {
  padding: 0 15px !important;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.dn-single-section-kicker,
.dn-single-side-kicker {
  margin: 0 0 12px !important;
  color: var(--dn-primary) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}

.dn-single-detail-kicker,
.dn-single-side-kicker-text {
  margin: 0 0 12px !important;
  color: var(--dn-primary) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}

.dn-single-detail-title,
.dn-single-side-title {
  margin: 0 0 18px !important;
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(28px, 3vw, 44px);
  font-weight: 600;
  line-height: 1.16;
  letter-spacing: 0;
}

.dn-single-side-title {
  font-size: 26px;
  line-height: 1.2;
}

.dn-single-side-copy,
.dn-single-process-line {
  color: var(--dn-muted);
  font-size: 14px;
  line-height: 1.65;
}

.dn-single-process-line {
  position: relative;
  margin: 0 0 10px !important;
  padding-left: 18px;
}

.dn-single-process-line::before {
  content: "";
  position: absolute;
  left: 0;
  top: .7em;
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: var(--dn-gold);
}

.dn-single-detail-main h2,
.dn-single-related-heading h2 {
  margin: 0 0 24px;
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(30px, 3vw, 44px);
  font-weight: 600;
  line-height: 1.16;
  letter-spacing: 0;
}

.dn-single-detail-main h3,
.dn-single-detail-main h4 {
  margin-top: 30px;
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  letter-spacing: 0;
}

.dn-single-detail-main p,
.dn-single-detail-main li {
  color: var(--dn-muted);
  font-size: 16px;
  line-height: 1.78;
}

.dn-single-detail-main ul,
.dn-single-detail-main ol {
  margin-left: 20px;
}

.dn-single-detail-sidebar .col-inner {
  position: sticky;
  top: 100px;
}

.dn-single-side-card {
  margin-bottom: 18px;
  padding: 26px 24px;
  border: 1px solid rgba(209, 197, 180, .82);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(27, 28, 25, .04);
}

.dn-single-sidebar-stack {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.dn-single-detail-sidebar .dn-single-side-card {
  margin-bottom: 18px !important;
  padding: 0 !important;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.dn-single-detail-sidebar .dn-single-side-card > .col-inner {
  padding: 26px 24px !important;
  border: 1px solid rgba(209, 197, 180, .82);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(27, 28, 25, .04);
}

.dn-single-side-card h3 {
  margin: 0 0 12px;
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 26px;
  line-height: 1.2;
  letter-spacing: 0;
}

.dn-single-side-card p,
.dn-single-side-card li,
.dn-single-side-card .product_meta {
  color: var(--dn-muted);
  font-size: 14px;
  line-height: 1.65;
}

.dn-single-consult-card {
  background: var(--dn-primary);
  border-color: var(--dn-primary);
  color: #fff;
}

.dn-single-detail-sidebar .dn-single-consult-card > .col-inner {
  background: var(--dn-primary);
  border-color: var(--dn-primary);
  color: #fff;
}

.dn-single-consult-card h3,
.dn-single-consult-card p,
.dn-single-consult-card .dn-single-side-kicker,
.dn-single-consult-card .dn-single-side-kicker-text,
.dn-single-consult-card .dn-single-side-title {
  color: #fff !important;
}

.dn-single-consult-card p,
.dn-single-consult-card .dn-single-side-copy {
  color: rgba(255,255,255,.82) !important;
}

.dn-single-consult-card .button.primary {
  background: #fff !important;
  border-color: #fff !important;
  color: var(--dn-primary) !important;
}

.dn-single-side-list {
  margin: 18px 0 22px;
  padding: 0;
  list-style: none;
}

.dn-single-side-list li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 0 0 11px;
}

.dn-single-side-list li::before {
  content: "";
  flex: 0 0 7px;
  width: 7px;
  height: 7px;
  margin-top: 8px;
  border-radius: 999px;
  background: var(--dn-gold);
}

.dn-single-spec-card .product_meta {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  border: 0;
}

.dn-single-spec-card .product_meta > span {
  display: block;
  padding: 11px 0;
  border-bottom: 1px solid rgba(209, 197, 180, .66);
  font-weight: 700;
}

.dn-single-related-card .related.products > h2 {
  display: none;
}

.dn-single-related-card .products {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px !important;
  margin: 14px 0 0 !important;
}

.dn-single-related-card .dn-single-sidebar-products {
  margin: 10px -7.5px 0 !important;
}

.dn-single-related-card .dn-single-sidebar-products > .product-small {
  padding: 7.5px !important;
}

.dn-single-related-card .dn-single-sidebar-products > .product-small > .col-inner {
  height: 100%;
}

.dn-single-related-card .product-small,
.dn-single-related-card .products > .product {
  width: auto !important;
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.dn-single-related-card .product-small .box {
  height: 100%;
  overflow: hidden;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  background: #fff;
}

.dn-single-related-card .box-image {
  aspect-ratio: 1 / 1.15;
  background: #f5f3ee;
}

.dn-single-related-card .box-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}

.dn-single-related-card .box-text {
  padding: 11px 10px 12px !important;
  text-align: left !important;
}

.dn-single-related-card .category,
.dn-single-related-card .price-wrapper,
.dn-single-related-card .image-tools,
.dn-single-related-card .quick-view {
  display: none !important;
}

.dn-single-related-card .product-title,
.dn-single-related-card .product-title a {
  display: -webkit-box;
  min-height: 38px;
  overflow: hidden;
  color: var(--dn-text);
  font-size: 13px !important;
  font-weight: 700;
  line-height: 1.45 !important;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.dn-single-ux-products .dn-single-related-heading {
  max-width: 760px;
  margin: 0 auto 34px !important;
  text-align: center;
}

.dn-single-ux-products .product-small .box {
  height: 100%;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}

.dn-single-ux-products .box-image {
  aspect-ratio: 3 / 4;
  background: #f5f3ee;
}

.dn-single-ux-products .box-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}

.dn-single-ux-products .box-text {
  min-height: 138px;
  padding: 18px !important;
  text-align: left !important;
}

.dn-single-ux-products .product-title,
.dn-single-ux-products .product-title a {
  min-height: 45px;
  color: var(--dn-text);
  font-size: 16px !important;
  font-weight: 700;
  line-height: 1.42 !important;
}

.dn-single-ux-products .price,
.dn-single-ux-products .amount {
  color: var(--dn-primary);
  font-size: 15px;
  font-weight: 800;
}

.dn-single-ux-products .image-tools,
.dn-single-ux-products .quick-view {
  display: none !important;
}

@media (max-width: 1099px) {
  .dn-single-ux-summary {
    padding-left: 16px;
  }

  .dn-single-trust-row {
    grid-template-columns: 1fr;
  }

  .dn-single-related-card .products {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 849px) {
  .custom-product-page .dn-single-ux-hero {
    padding-top: 96px !important;
    padding-bottom: 58px !important;
  }

  .custom-product-page .dn-single-ux-detail,
  .custom-product-page .dn-single-ux-products {
    padding-top: 62px !important;
    padding-bottom: 68px !important;
  }

  .dn-single-ux-summary {
    padding: 26px 0 0;
  }

  .dn-single-ux-actions,
  .dn-single-ux-actions .button {
    width: 100%;
  }

  .dn-single-detail-main {
    padding: 28px 22px 32px;
  }

  .dn-single-detail-sidebar .col-inner {
    position: relative;
    top: auto;
  }

  .dn-single-related-card .products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 549px) {
  .custom-product-page .dn-single-ux-hero .section-content > .row,
  .custom-product-page .dn-single-ux-detail .section-content > .row,
  .custom-product-page .dn-single-ux-products .section-content > .row {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .dn-single-related-card .products {
    grid-template-columns: 1fr;
  }
}

/* News archive and single blog reading experience. */
.dn-news-hero-v2 .section-content > .row,
.dn-news-topics-v2 .section-content > .row,
.dn-news-featured-v2 .section-content > .row,
.dn-news-grid-v2 .section-content > .row,
.dn-news-guide-v2 .section-content > .row,
.dn-news-cta-v2 .section-content > .row,
.dn-blog-after-post-block .section-content > .row {
  max-width: 1400px !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

.dn-news-hero-copy h1 {
  max-width: 760px;
  margin: 0 0 22px;
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 66px;
  font-weight: 600;
  line-height: 1.04;
  letter-spacing: 0;
}

.dn-news-hero-actions.row {
  display: flex !important;
  gap: 12px;
  margin: 30px 0 0 !important;
}

.dn-news-hero-actions > .col {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
  padding: 0 !important;
}

.dn-news-hero-actions .button,
.dn-news-cta-v2 .button,
.dn-blog-after-post-block .button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 0 28px !important;
  border-radius: 8px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  text-transform: none !important;
  letter-spacing: .02em !important;
  white-space: nowrap !important;
}

.dn-news-hero-v2 {
  padding-top: 118px !important;
  padding-bottom: 58px !important;
}

.dn-news-hero-actions .button {
  min-width: 184px !important;
}

.dn-news-hero-actions .button span {
  white-space: nowrap !important;
}

.dn-news-topic-label {
  margin: 0 !important;
  color: var(--dn-primary);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .14em;
  line-height: 36px;
  text-transform: uppercase;
}

.dn-news-topic-buttons .col-inner {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  justify-content: flex-end;
}

.dn-news-topic-button.button {
  min-height: 34px !important;
  margin: 0 !important;
  padding: 0 14px !important;
  border-color: var(--dn-line) !important;
  background: #fff !important;
  color: var(--dn-primary) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: .06em !important;
}

.dn-news-section-heading {
  max-width: 820px;
  margin: 0 auto 38px !important;
}

.dn-news-section-heading h2,
.dn-news-grid-heading h2,
.dn-news-guide-card h3,
.dn-news-cta-v2 h2,
.dn-blog-after-copy h2 {
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  letter-spacing: 0;
}

.dn-news-section-heading h2,
.dn-news-grid-heading h2,
.dn-news-cta-v2 h2,
.dn-blog-after-copy h2 {
  margin: 0;
  font-size: 44px;
  font-weight: 600;
  line-height: 1.14;
}

.dn-news-hero-feature .post-item,
.dn-news-main-story .post-item,
.dn-news-grid-cards .post-item,
.dn-news-side-list .post-item,
.dn-blog-after-list .post-item {
  padding-bottom: 18px !important;
}

.dn-news-hero-feature .box-blog-post,
.dn-news-main-story .box-blog-post,
.dn-news-grid-cards .box-blog-post,
.dn-news-side-list .box-blog-post,
.dn-blog-after-list .box-blog-post {
  height: 100%;
  overflow: hidden;
  border: 0;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 46px rgba(27,28,25,.06);
  transition: transform .25s ease, box-shadow .25s ease;
}

.dn-news-hero-feature .box-blog-post:hover,
.dn-news-main-story .box-blog-post:hover,
.dn-news-grid-cards .box-blog-post:hover,
.dn-news-side-list .box-blog-post:hover,
.dn-blog-after-list .box-blog-post:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 54px rgba(27,28,25,.085);
}

.dn-news-hero-feature .box-image,
.dn-news-main-story .box-image,
.dn-news-grid-cards .box-image,
.dn-news-side-list .box-image,
.dn-blog-after-list .box-image {
  background: #f5f3ee;
}

.dn-news-hero-feature .box-image img,
.dn-news-main-story .box-image img,
.dn-news-grid-cards .box-image img,
.dn-news-side-list .box-image img,
.dn-blog-after-list .box-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}

.dn-news-hero-feature .box-text,
.dn-news-main-story .box-text,
.dn-news-grid-cards .box-text,
.dn-news-side-list .box-text,
.dn-blog-after-list .box-text {
  padding: 22px !important;
  text-align: left !important;
}

.dn-news-hero-feature .box-text-inner,
.dn-news-main-story .box-text-inner,
.dn-news-grid-cards .box-text-inner,
.dn-news-side-list .box-text-inner,
.dn-blog-after-list .box-text-inner,
.dn-blog-sidebar-posts .box-text-inner {
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
}

.dn-news-hero-feature .box-text {
  padding: 24px !important;
}

.dn-news-hero-feature .box-blog-post {
  max-width: 640px;
  margin-left: auto;
}

.dn-news-hero-feature .post-title,
.dn-news-main-story .post-title,
.dn-news-grid-cards .post-title,
.dn-news-side-list .post-title,
.dn-blog-after-list .post-title,
.dn-news-hero-feature .post-title a,
.dn-news-main-story .post-title a,
.dn-news-grid-cards .post-title a,
.dn-news-side-list .post-title a,
.dn-blog-after-list .post-title a {
  color: var(--dn-text) !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-weight: 600 !important;
  line-height: 1.24 !important;
  letter-spacing: 0 !important;
}

.dn-news-hero-feature .post-title,
.dn-news-hero-feature .post-title a,
.dn-news-main-story .post-title,
.dn-news-main-story .post-title a {
  font-size: 26px !important;
}

.dn-news-grid-cards .post-title,
.dn-news-grid-cards .post-title a {
  min-height: 62px;
  font-size: 24px !important;
}

.dn-news-side-list .post-title,
.dn-news-side-list .post-title a,
.dn-blog-after-list .post-title,
.dn-blog-after-list .post-title a {
  font-size: 20px !important;
  text-align: left !important;
}

.dn-news-hero-feature .from_the_blog_excerpt,
.dn-news-main-story .from_the_blog_excerpt,
.dn-news-grid-cards .from_the_blog_excerpt,
.dn-news-side-list .from_the_blog_excerpt,
.dn-blog-after-list .from_the_blog_excerpt {
  color: var(--dn-muted) !important;
  font-size: 14px !important;
  line-height: 1.72 !important;
}

.dn-news-hero-feature .is-divider,
.dn-news-main-story .is-divider,
.dn-news-grid-cards .is-divider,
.dn-news-side-list .is-divider,
.dn-blog-after-list .is-divider,
.dn-news-hero-feature .badge,
.dn-news-main-story .badge,
.dn-news-grid-cards .badge,
.dn-news-side-list .badge,
.dn-blog-after-list .badge {
  display: none !important;
}

.dn-news-hero-feature .cat-label,
.dn-news-main-story .cat-label,
.dn-news-grid-cards .cat-label {
  display: inline-flex !important;
  align-items: center;
  min-height: 28px;
  margin: 0 0 12px;
  padding: 0 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.86);
  color: var(--dn-primary) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .08em !important;
}

.dn-news-hero-feature .button,
.dn-news-main-story .button,
.dn-news-grid-cards .button {
  min-height: 36px !important;
  margin: 12px 0 0 !important;
  padding: 0 16px !important;
  border-color: var(--dn-line) !important;
  border-radius: 999px !important;
  color: var(--dn-primary) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  text-transform: none !important;
}

.dn-news-side-list .box-blog-post,
.dn-blog-after-list .box-blog-post {
  box-shadow: 0 12px 34px rgba(27,28,25,.045);
}

.dn-news-side-list .post-item,
.dn-blog-after-list .post-item {
  padding-bottom: 14px !important;
}

.dn-news-grid-action .button.is-link,
.dn-news-link-button.button {
  min-height: auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--dn-primary) !important;
  font-weight: 800 !important;
  text-transform: none !important;
}

.dn-news-link-button.button::after {
  content: "\2192";
  margin-left: 8px;
}

.dn-news-guide-card {
  min-height: 240px;
  padding: 30px 28px;
  border: 1px solid rgba(209, 197, 180, .78);
  border-radius: 8px;
  background: #fff;
}

.dn-news-guide-card h3 {
  margin: 0 0 14px;
  font-size: 28px;
  line-height: 1.2;
}

.dn-news-guide-card p:last-child,
.dn-news-cta-v2 p,
.dn-blog-after-copy p:last-child {
  color: var(--dn-muted);
  font-size: 15px;
  line-height: 1.72;
}

.dn-news-cta-v2 h2,
.dn-news-cta-v2 p {
  color: #fff;
}

.dn-news-cta-v2 p {
  color: rgba(255,255,255,.82);
}

.single-post .blog-wrapper {
  background: var(--dn-bg);
  padding: 0 0 80px;
}

.single-post .blog-wrapper > .row,
.single-post .blog-wrapper .row.align-center {
  max-width: 1400px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

.single-post .article-inner {
  background: transparent;
  box-shadow: none;
}

.single-post .entry-header {
  padding-top: 116px !important;
}

.single-post .entry-header-text {
  max-width: 100%;
  margin: 0 0 34px !important;
  text-align: left !important;
}

.single-post .entry-category {
  margin: 0 0 16px;
}

.single-post .entry-category a {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 12px;
  border: 1px solid var(--dn-line);
  border-radius: 999px;
  color: var(--dn-primary);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .1em;
}

.single-post h1.entry-title {
  max-width: 900px;
  margin: 0 0 18px;
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 52px !important;
  font-weight: 600;
  line-height: 1.12 !important;
  letter-spacing: 0;
  text-transform: none;
}

.single-post .entry-divider {
  width: 76px;
  height: 3px;
  margin: 0 0 20px;
  background: var(--dn-primary);
}

.single-post .entry-meta {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  width: auto;
  margin: 6px 0 0;
  color: #7f7667;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
  text-transform: none;
}

.single-post .entry-meta .posted-on {
  display: inline-flex;
  align-items: center;
  gap: 0;
  min-height: 36px;
  padding: 0 14px;
  border: 1px solid rgba(197, 160, 89, .46);
  border-radius: 999px;
  background: rgba(255,255,255,.72);
  box-shadow: 0 10px 24px rgba(27,28,25,.035);
}

.single-post .entry-meta .posted-on a {
  display: inline-flex;
  align-items: center;
  margin-left: 9px;
  padding-left: 10px;
  border-left: 1px solid rgba(197, 160, 89, .36);
  color: var(--dn-primary) !important;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1;
  text-transform: none;
}

.single-post .entry-meta .byline {
  display: none !important;
}

.single-post .entry-meta a,
.single-post .entry-meta time {
  color: inherit !important;
}

.single-post .entry-image {
  max-height: 520px;
  max-width: 100%;
  margin: 0;
  overflow: hidden;
  border-radius: 8px;
  background: #f5f3ee;
  box-shadow: 0 22px 58px rgba(27,28,25,.08);
}

.single-post .entry-image img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-height: 520px;
  object-fit: cover;
}

.single-post .entry-image .badge,
.single-post .badge.post-date {
  display: none !important;
}

body.single-post .entry-header {
  padding-top: 116px !important;
}

body.single-post h1.entry-title {
  font-size: 52px !important;
  line-height: 1.12 !important;
}

body.single-post .badge.post-date {
  display: none !important;
}

.single-post .entry-content.single-page {
  max-width: 100%;
  margin: 0;
  padding: 50px 0 18px;
  color: var(--dn-text);
  font-size: 17px;
  line-height: 1.84;
}

.single-post .entry-content.single-page p,
.single-post .entry-content.single-page li {
  color: var(--dn-muted);
  font-size: 17px;
  line-height: 1.84;
}

.single-post .entry-content.single-page h2,
.single-post .entry-content.single-page h3,
.single-post .entry-content.single-page h4 {
  margin-top: 42px;
  margin-bottom: 18px;
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  letter-spacing: 0;
}

.single-post .entry-content.single-page h2 {
  font-size: 38px;
  line-height: 1.18;
}

.single-post .entry-content.single-page h3 {
  font-size: 30px;
  line-height: 1.22;
}

.single-post .entry-content.single-page img {
  border-radius: 8px;
}

.single-post .blog-share {
  margin-top: 42px;
}

.single-post .blog-share .is-divider {
  background: var(--dn-line);
}

.single-post .entry-meta.text-left,
.single-post footer.entry-meta,
.single-post .entry-author {
  display: none !important;
}

.single-post .navigation-post,
.single-post .nav-below {
  max-width: 100%;
  margin: 36px 0 0;
}

.single-post .post-sidebar {
  padding-top: 116px;
}

.single-post .post-sidebar #secondary {
  border-left: 0;
  padding-left: 6px;
}

.single-post .post-sidebar #secondary,
.single-post .post-sidebar .widget_block {
  box-sizing: border-box;
  width: 100%;
}

.single-post .post-sidebar .widget_block > * {
  box-sizing: border-box;
  max-width: 100%;
}

.single-post .post-sidebar .widget_block > p {
  display: none;
}

.single-post .post-sidebar .widget {
  margin-bottom: 0;
}

.single-post .post-sidebar .widget_block > .is-divider,
.single-post .post-sidebar .widget_block > .widget-title {
  display: none;
}

.dn-blog-sidebar-card,
.dn-blog-sidebar-posts {
  box-sizing: border-box;
  width: 100% !important;
  max-width: 100% !important;
  margin-bottom: 22px !important;
  padding: 24px 22px !important;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 16px 42px rgba(27,28,25,.06);
}

.dn-blog-sidebar-consult {
  background: #f0eee9;
}

.dn-blog-sidebar-card h3,
.dn-blog-sidebar-heading h3 {
  margin: 0 0 12px;
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 26px;
  font-weight: 600;
  line-height: 1.18;
  letter-spacing: 0;
}

.dn-blog-sidebar-card p {
  margin-bottom: 12px;
  color: var(--dn-muted);
  font-size: 14px;
  line-height: 1.72;
}

.dn-blog-sidebar-card .button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px !important;
  margin-top: 6px !important;
  padding: 0 18px !important;
  border-radius: 8px !important;
  line-height: 1 !important;
  text-transform: none !important;
}

.dn-blog-sidebar-heading {
  box-sizing: border-box;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 12px !important;
}

.dn-blog-sidebar-posts {
  display: block !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding: 18px !important;
}

.dn-blog-sidebar-posts > .col {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.dn-blog-sidebar-posts .post-item {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 0 14px !important;
  margin-bottom: 14px !important;
  border-bottom: 1px solid rgba(209, 197, 180, .55);
}

.dn-blog-sidebar-posts .post-item > .col-inner {
  width: 100% !important;
}

.dn-blog-sidebar-posts .post-item:last-child {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
  border-bottom: 0;
}

.dn-blog-sidebar-posts .box-blog-post {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.dn-blog-sidebar-posts .box-image {
  border-radius: 6px;
  background: #f5f3ee;
}

.dn-blog-sidebar-posts .box-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}

.dn-blog-sidebar-posts .box-text {
  padding: 0 0 0 14px !important;
  text-align: left !important;
}

.dn-blog-sidebar-posts .post-title,
.dn-blog-sidebar-posts .post-title a {
  color: var(--dn-text) !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.24 !important;
  letter-spacing: 0 !important;
}

.dn-blog-sidebar-posts .is-divider,
.dn-blog-sidebar-posts .badge {
  display: none !important;
}

.dn-blog-sidebar-posts .post-meta {
  color: #7f7667 !important;
  font-size: 12px !important;
}

.dn-blog-after-post-block {
  margin-top: 36px;
  border-top: 1px solid rgba(209, 197, 180, .72);
  border-bottom: 1px solid rgba(209, 197, 180, .72);
}

.dn-blog-after-copy h2 {
  margin-bottom: 16px;
}

.dn-blog-after-list .row {
  align-items: stretch;
}

.dn-blog-after-list-col .col-inner {
  padding-left: 22px;
}

.dn-blog-after-list .post-item {
  padding-bottom: 20px !important;
}

.dn-blog-after-list .box-blog-post {
  min-height: 100%;
}

.dn-blog-after-list .box-text {
  padding: 18px !important;
}

.dn-blog-after-list .post-title,
.dn-blog-after-list .post-title a {
  min-height: 48px;
  font-size: 19px !important;
  line-height: 1.22 !important;
}

.dn-blog-after-list .from_the_blog_excerpt {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.single-post #comments,
.single-post .comments-area,
.single-post .comment-respond {
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
}

.single-post #comments {
  margin-top: 52px;
  padding: 34px;
  border: 1px solid rgba(209, 197, 180, .72);
  border-radius: 8px;
  background: #f0eee9;
}

.single-post .comment-respond {
  margin-top: 0;
}

.single-post .comment-reply-title {
  margin-bottom: 18px;
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 30px;
  font-weight: 600;
  letter-spacing: 0;
}

.single-post #comments label {
  color: var(--dn-text);
  font-size: 14px;
  font-weight: 800;
}

.single-post #comments input[type="text"],
.single-post #comments input[type="email"],
.single-post #comments input[type="url"],
.single-post #comments textarea {
  border: 1px solid rgba(209, 197, 180, .95);
  border-radius: 4px;
  background: #fff;
  box-shadow: none;
}

.single-post #comments input[type="submit"] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 46px !important;
  padding: 0 28px !important;
  border-radius: 8px !important;
  background: var(--dn-primary) !important;
  color: #fff !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}

@media (max-width: 849px) {
  .dn-news-hero-v2 {
    padding-top: 84px !important;
    padding-bottom: 58px !important;
  }

  .dn-news-hero-copy h1 {
    font-size: 46px;
  }

  .dn-news-section-heading h2,
  .dn-news-grid-heading h2,
  .dn-news-cta-v2 h2,
  .dn-blog-after-copy h2 {
    font-size: 34px;
  }

  .dn-news-hero-actions.row,
  .dn-news-hero-actions .button,
  .dn-news-topic-buttons .col-inner {
    width: 100%;
  }

  .dn-news-hero-actions.row > .col {
    width: 100% !important;
  }

  .dn-news-topic-buttons .col-inner {
    justify-content: flex-start;
  }

  .dn-news-hero-feature-col {
    margin-top: 28px;
  }

  .dn-news-featured-v2,
  .dn-news-grid-v2,
  .dn-news-guide-v2,
  .dn-news-cta-v2 {
    padding-top: 62px !important;
    padding-bottom: 66px !important;
  }

  .dn-news-grid-action {
    text-align: left !important;
    margin-bottom: 22px;
  }

  .single-post .entry-header,
  body.single-post .entry-header {
    padding-top: 88px !important;
  }

  .single-post h1.entry-title,
  body.single-post h1.entry-title {
    font-size: 36px !important;
  }

  .single-post .entry-header-text,
  .single-post .entry-content.single-page,
  .single-post .navigation-post,
  .single-post .nav-below {
    padding-left: 18px;
    padding-right: 18px;
  }

  .single-post .blog-wrapper > .row,
  .single-post .blog-wrapper .row.align-center {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .single-post .post-sidebar {
    padding: 28px 18px 0;
  }

  .single-post .post-sidebar #secondary {
    padding-left: 0;
  }

  .single-post .entry-image {
    border-radius: 0;
    max-height: 380px;
  }

  .single-post .entry-image img {
    max-height: 380px;
  }

  .single-post .entry-content.single-page h2 {
    font-size: 30px;
  }

  .dn-blog-after-list-col .col-inner {
    padding-left: 0;
  }

  .single-post #comments {
    margin-left: 18px;
    margin-right: 18px;
    padding: 24px 18px;
  }
}

@media (max-width: 549px) {
  .header-main .header-button-1 .button {
    width: 76px !important;
    min-width: 76px !important;
    max-width: 76px !important;
    min-height: 44px !important;
    padding: 0 6px !important;
    font-size: 10.5px !important;
    line-height: 1.08 !important;
    white-space: normal !important;
  }

  .header-main .header-button-1 .button span {
    display: block;
    white-space: normal !important;
  }
}

/* Final refinement: scoped secondary buttons and admin-bar search safety. */
.dn-contact-hero-v3 .button.is-outline,
.dn-contact-hero-v3 a.button.is-outline,
.dn-news-hero-v2 .button.is-outline,
.dn-news-hero-v2 a.button.is-outline,
.dn-blog-sidebar-contact .button.is-outline,
.dn-blog-sidebar-contact a.button.is-outline {
  background: transparent !important;
  border: 1px solid var(--dn-line) !important;
  color: var(--dn-muted) !important;
  box-shadow: none !important;
}

.dn-contact-hero-v3 .button.is-outline:hover,
.dn-contact-hero-v3 a.button.is-outline:hover,
.dn-news-hero-v2 .button.is-outline:hover,
.dn-news-hero-v2 a.button.is-outline:hover,
.dn-blog-sidebar-contact .button.is-outline:hover,
.dn-blog-sidebar-contact a.button.is-outline:hover {
  background: var(--dn-soft) !important;
  border-color: var(--dn-line) !important;
  color: var(--dn-text) !important;
}

#wpadminbar #adminbarsearch .adminbar-button,
#wpadminbar #adminbarsearch input[type="submit"] {
  position: absolute !important;
  right: -999em !important;
  display: block !important;
  width: 1px !important;
  min-width: 0 !important;
  max-width: 1px !important;
  height: 1px !important;
  min-height: 0 !important;
  max-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: transparent !important;
  box-shadow: none !important;
  opacity: 0 !important;
}

#wpadminbar #adminbarsearch .adminbar-input {
  min-height: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

@media (max-width: 849px) {
  .dn-contact-hero-visual-col {
    margin-top: 28px;
  }

  .dn-contact-hero-visual {
    height: 360px !important;
  }

  .dn-contact-hero-note {
    position: relative !important;
    left: auto !important;
    bottom: auto !important;
    width: auto !important;
    min-width: 0;
    margin: -34px 18px 0 !important;
    transform: none !important;
  }
}

/* Mobile polish for contact/news hero and crowded header CTA. */
@media (max-width: 849px) {
  .dn-contact-hero-v3 .section-content > .row,
  .dn-news-hero-v2 .section-content > .row {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .dn-contact-hero-v3 h1 {
    max-width: 100% !important;
    font-size: 36px !important;
    line-height: 1.12 !important;
  }

  .dn-news-hero-copy h1 {
    max-width: 100% !important;
    font-size: 38px !important;
    line-height: 1.12 !important;
  }

  .dn-contact-hero-v3 .dn-lead,
  .dn-news-hero-v2 .dn-lead {
    max-width: 100% !important;
    font-size: 16px !important;
    line-height: 1.72 !important;
  }

  .dn-contact-hero-visual {
    height: 340px !important;
  }

  .dn-contact-hero-note {
    position: absolute !important;
    top: auto !important;
    right: 18px !important;
    bottom: 18px !important;
    left: 18px !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    transform: none !important;
  }

  .dn-contact-hero-note h3 {
    font-size: 28px !important;
  }

  .dn-news-hero-actions.row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    width: 100% !important;
    margin: 28px 0 0 !important;
  }

  .dn-news-hero-actions.row > .col,
  .dn-news-hero-actions > .col {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
  }

  .dn-news-hero-actions .button {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }
}

@media (max-width: 549px) {
  .header-main .header-button-1 {
    display: none !important;
  }

  .dn-contact-hero-copy,
  .dn-news-hero-copy,
  .dn-contact-hero-copy > .col-inner,
  .dn-news-hero-copy > .col-inner,
  .dn-contact-hero-copy .ux-text,
  .dn-news-hero-copy .ux-text,
  .dn-contact-hero-v3 h1,
  .dn-contact-hero-v3 .dn-lead,
  .dn-news-hero-copy h1,
  .dn-news-hero-v2 .dn-lead {
    width: calc(100vw - 76px) !important;
    max-width: calc(100vw - 76px) !important;
    box-sizing: border-box !important;
  }

  .dn-contact-hero-v3 .button {
    display: flex !important;
    width: min(100%, 240px) !important;
    max-width: calc(100vw - 76px) !important;
    margin: 0 0 14px !important;
  }

  .dn-news-hero-actions.row {
    width: calc(100vw - 76px) !important;
    max-width: calc(100vw - 76px) !important;
  }

  .dn-news-hero-actions .button {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}

/* Product category archive redesign. */
body.tax-product_cat {
  background: var(--dn-bg);
}

.tax-product_cat .dn-section .section-content > .row,
.tax-product_cat .dn-products-hero-v2 .section-content > .row,
.tax-product_cat .dn-product-cats-v2 .section-content > .row {
  max-width: 1400px !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

.tax-product_cat .dn-products-hero-v2 {
  padding-top: 128px !important;
  padding-bottom: 78px !important;
  overflow: hidden;
}

.tax-product_cat .dn-products-hero-copy h1 {
  max-width: 820px;
  margin: 0 0 22px;
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(44px, 5vw, 76px);
  font-weight: 700;
  line-height: 1.06;
  letter-spacing: 0;
}

.tax-product_cat .dn-products-hero-copy .dn-lead {
  max-width: 760px;
  margin-bottom: 26px;
  color: var(--dn-muted);
  font-size: 18px;
  line-height: 1.65;
}

.tax-product_cat .dn-eyebrow {
  margin: 0 0 16px;
  color: var(--dn-primary);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.tax-product_cat .dn-products-quick-links {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 16px;
}

.tax-product_cat .dn-products-quick-links .button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 30px !important;
  margin: 0 !important;
  padding: 0 12px !important;
  border-color: var(--dn-line) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.62) !important;
  color: var(--dn-primary) !important;
  box-shadow: none !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: .06em !important;
  text-transform: none !important;
}

.tax-product_cat .dn-products-hero-image {
  overflow: hidden;
  border-radius: 14px;
  box-shadow: 0 24px 64px rgba(27,28,25,.12);
}

.tax-product_cat .dn-products-hero-image .banner-bg .bg {
  background-position: center center !important;
}

.tax-product_cat .dn-products-hero-image .dn-products-hero-stat,
.tax-product_cat .dn-products-hero-stat {
  top: auto !important;
  right: auto !important;
  bottom: 12px !important;
  left: 24px !important;
  width: 260px !important;
  padding: 24px 26px !important;
  border-radius: 8px;
  background: var(--dn-primary);
  color: #fff;
  box-shadow: 0 18px 36px rgba(27,28,25,.14);
  transform: none !important;
}

.tax-product_cat .dn-products-hero-stat h3 {
  margin: 0 0 8px;
  color: #fff;
  font-size: 46px;
  line-height: 1;
}

.tax-product_cat .dn-products-hero-stat p {
  margin: 0;
  color: rgba(255,255,255,.82);
  font-size: 14px;
  line-height: 1.5;
}

.tax-product_cat .dn-product-cats-v2 {
  overflow: hidden;
}

.tax-product_cat .dn-product-cats-head {
  margin-bottom: 28px;
}

.tax-product_cat .dn-product-cats-head h2 {
  margin: 0;
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(32px, 3.2vw, 52px);
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: 0;
}

.tax-product_cat .dn-product-cats-ux .row {
  align-items: stretch;
}

.tax-product_cat .dn-cat-ux-col {
  padding-left: 7px !important;
  padding-right: 7px !important;
  padding-bottom: 14px !important;
}

.tax-product_cat .dn-cat-ux-banner {
  overflow: hidden;
  border-radius: 8px;
  background: #1b1c19;
}

.tax-product_cat .dn-cat-ux-banner .banner-bg .bg {
  filter: grayscale(18%);
  transition: transform .55s ease, filter .35s ease;
}

.tax-product_cat .dn-cat-ux-banner:hover .banner-bg .bg {
  transform: scale(1.05);
  filter: grayscale(0);
}

.tax-product_cat .dn-cat-ux-banner .dn-cat-ux-text {
  top: auto !important;
  right: auto !important;
  bottom: 22px !important;
  left: 50% !important;
  width: 88% !important;
  text-align: center !important;
  transform: translateX(-50%) !important;
}

.tax-product_cat .dn-cat-ux-text h3 {
  display: block !important;
  max-width: 100% !important;
  margin: 0 auto 8px !important;
  color: #fff;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 23px !important;
  font-weight: 600;
  line-height: 1.12 !important;
  letter-spacing: 0;
  text-align: center !important;
  text-shadow: 0 2px 14px rgba(0,0,0,.28);
}

.tax-product_cat .dn-cat-ux-text .dn-cat-count {
  display: block !important;
  margin: 0 auto !important;
  color: rgba(255,255,255,.82);
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: .1em;
  text-align: center !important;
  text-transform: uppercase;
}

.dn-product-slider-v2 .flickity-prev-next-button {
  box-sizing: border-box !important;
  width: 34px !important;
  min-width: 34px !important;
  max-width: 34px !important;
  height: 58px !important;
  min-height: 58px !important;
  padding: 0 !important;
  margin: 0 !important;
  top: 50% !important;
  border: 1px solid var(--dn-line) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.94) !important;
  color: var(--dn-primary) !important;
  box-shadow: 0 12px 26px rgba(27,28,25,.08) !important;
  opacity: 1 !important;
  transform: translateY(-50%) !important;
}

.dn-product-slider-v2 .flickity-prev-next-button.previous {
  left: 22px !important;
  right: auto !important;
}

.dn-product-slider-v2 .flickity-prev-next-button.next {
  left: auto !important;
  right: 22px !important;
}

.dn-product-slider-v2 .flickity-prev-next-button svg {
  width: 12px !important;
  height: 12px !important;
  padding: 0 !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
}

.dn-product-slider-v2 .flickity-prev-next-button:hover {
  border-color: var(--dn-primary) !important;
  background: var(--dn-primary) !important;
  color: #fff !important;
}

.tax-product_cat .custom-category-header {
  background: var(--dn-bg);
}

.tax-product_cat .dn-cat-archive-hero,
.tax-product_cat .dn-cat-archive-footer {
  overflow: hidden;
}

.tax-product_cat .dn-cat-archive-hero {
  padding-top: 96px !important;
  padding-bottom: 54px !important;
}

.tax-product_cat .dn-cat-archive-hero .section-content > .row,
.tax-product_cat .dn-cat-archive-groups .section-content > .row,
.tax-product_cat .dn-cat-archive-footer .section-content > .row,
.tax-product_cat .category-page-title .page-title-inner,
.tax-product_cat .category-page-row {
  max-width: 1400px !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

.tax-product_cat .dn-cat-hero-copy h1 {
  max-width: 820px;
  margin: 0 0 22px;
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(38px, 4.4vw, 58px);
  font-weight: 600;
  line-height: 1.06;
  letter-spacing: 0;
}

.tax-product_cat .dn-cat-eyebrow {
  margin: 0 0 14px;
  color: var(--dn-primary);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.tax-product_cat .dn-cat-lead,
.tax-product_cat .dn-cat-archive-footer p {
  max-width: 720px;
  color: var(--dn-muted);
  font-size: 15px;
  line-height: 1.72;
}

.tax-product_cat .dn-cat-hero-actions.row,
.tax-product_cat .dn-cat-hero-facts.row {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.tax-product_cat .dn-cat-hero-actions.row {
  gap: 12px;
  margin-top: 22px !important;
}

.tax-product_cat .dn-cat-hero-actions.row > .col,
.tax-product_cat .dn-cat-hero-facts.row > .col {
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-bottom: 0 !important;
}

.tax-product_cat .dn-cat-hero-actions .button,
.tax-product_cat .dn-cat-archive-footer .button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  margin: 0 10px 10px 0 !important;
  padding: 0 24px !important;
  border-radius: 8px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.tax-product_cat .dn-cat-hero-actions .button.primary,
.tax-product_cat .dn-cat-archive-footer .button.primary {
  border-color: var(--dn-primary) !important;
  background: var(--dn-primary) !important;
  color: #fff !important;
}

.tax-product_cat .dn-cat-hero-actions .button.is-outline,
.tax-product_cat .dn-cat-archive-footer .button.is-outline {
  border-color: var(--dn-line) !important;
  background: transparent !important;
  color: var(--dn-muted) !important;
}

.tax-product_cat .dn-cat-hero-facts.row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  max-width: 760px;
  margin-top: 22px !important;
}

.tax-product_cat .dn-cat-hero-facts.row > .col {
  width: auto !important;
  max-width: none !important;
}

.tax-product_cat .dn-cat-fact {
  min-height: 92px;
  padding: 17px 16px;
  border: 1px solid rgba(209, 197, 180, .78);
  border-radius: 8px;
  background: rgba(255,255,255,.64);
}

.tax-product_cat .dn-cat-fact p {
  margin: 0;
}

.tax-product_cat .dn-cat-fact strong,
.tax-product_cat .dn-cat-fact span {
  display: block;
}

.tax-product_cat .dn-cat-fact strong {
  margin-bottom: 6px;
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 23px;
  font-weight: 600;
  line-height: 1.1;
}

.tax-product_cat .dn-cat-fact span {
  color: var(--dn-muted);
  font-size: 13px;
  line-height: 1.45;
}

.tax-product_cat .dn-product-search {
  width: min(100%, 720px);
  height: 62px !important;
  margin: 0 0 18px;
  display: flex !important;
  align-items: stretch !important;
  overflow: hidden;
  border: 1px solid var(--dn-line);
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 16px 42px rgba(27,28,25,.05);
}

.tax-product_cat .dn-product-search input[type="search"] {
  flex: 1;
  min-width: 0;
  height: 60px !important;
  margin: 0 !important;
  padding: 0 18px !important;
  border: 0 !important;
  background: #fff !important;
  box-shadow: none !important;
  color: var(--dn-text);
  font-size: 15px;
  line-height: 60px !important;
}

.tax-product_cat .dn-product-search button {
  min-width: 132px !important;
  height: 62px !important;
  min-height: 62px !important;
  margin: 0 !important;
  padding: 0 24px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: var(--dn-primary) !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  white-space: nowrap;
}

.tax-product_cat .dn-cat-hero-visual-col > .col-inner {
  position: relative;
}

.tax-product_cat .dn-cat-hero-image {
  overflow: hidden;
  border-radius: 8px;
  background: #f5f3ee;
  box-shadow: 0 26px 70px rgba(27,28,25,.12);
}

.tax-product_cat .dn-cat-hero-image img {
  display: block;
  width: 100% !important;
  height: clamp(420px, 58vh, 560px) !important;
  object-fit: cover;
  object-position: center top;
}

.tax-product_cat .dn-cat-hero-note {
  position: absolute;
  left: 24px;
  bottom: 24px;
  width: 260px;
  padding: 24px 24px 22px;
  border-radius: 8px;
  background: var(--dn-primary);
  color: #fff;
  box-shadow: 0 18px 36px rgba(27,28,25,.16);
}

.tax-product_cat .dn-cat-hero-note h3 {
  margin: 0 0 8px;
  color: #fff;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 30px;
  font-weight: 600;
  line-height: 1.12;
  letter-spacing: 0;
}

.tax-product_cat .dn-cat-hero-note p {
  margin: 0;
  color: rgba(255,255,255,.82);
  font-size: 14px;
  line-height: 1.58;
}

.tax-product_cat .category-page-title {
  border-top: 1px solid rgba(209,197,180,.64);
  border-bottom: 1px solid rgba(209,197,180,.64);
  background: rgba(255,255,255,.72);
}

.tax-product_cat .category-page-title .page-title-inner {
  min-height: 72px;
}

.tax-product_cat .category-page-title .breadcrumbs {
  color: #7f7667;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .05em;
}

.tax-product_cat .category-filtering {
  margin-left: 16px;
}

.tax-product_cat .category-filtering a,
.tax-product_cat .category-filtering button {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 34px !important;
  padding: 0 12px !important;
  border: 1px solid var(--dn-line) !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: var(--dn-primary) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}

.tax-product_cat .woocommerce-result-count {
  margin: 0 14px 0 0;
  color: var(--dn-muted);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.4;
}

.tax-product_cat .woocommerce-ordering {
  margin: 0;
}

.tax-product_cat .woocommerce-ordering select {
  min-height: 40px;
  margin: 0;
  padding: 0 34px 0 14px;
  border: 1px solid var(--dn-line);
  border-radius: 8px;
  background-color: #fff;
  color: var(--dn-text);
  box-shadow: none;
  font-size: 13px;
  font-weight: 700;
}

.tax-product_cat .category-page-row {
  padding-top: 46px !important;
  padding-bottom: 34px !important;
}

.tax-product_cat .category-page-row > .col {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.tax-product_cat .products.row {
  margin-left: -12px !important;
  margin-right: -12px !important;
  align-items: stretch;
}

.tax-product_cat .products.row > .product-small {
  display: flex !important;
  align-items: stretch !important;
  padding: 0 12px 24px !important;
}

.tax-product_cat .product-small > .col-inner {
  display: flex !important;
  width: 100%;
  height: 100%;
}

.tax-product_cat .product-small .box {
  display: flex !important;
  flex-direction: column !important;
  width: 100%;
  min-height: 100%;
  overflow: hidden;
  border: 1px solid rgba(209,197,180,.7);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.tax-product_cat .product-small .box:hover {
  transform: translateY(-2px);
  border-color: rgba(197,160,89,.95);
  box-shadow: 0 18px 44px rgba(27,28,25,.08);
}

.tax-product_cat .product-small .box-image {
  flex: 0 0 auto;
  aspect-ratio: 3 / 4;
  background: #f5f3ee;
}

.tax-product_cat .product-small .image-cover,
.tax-product_cat .product-small .box-image a {
  height: 100% !important;
  padding-top: 0 !important;
}

.tax-product_cat .product-small .box-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  object-position: center top;
}

.tax-product_cat .product-small .image-tools,
.tax-product_cat .product-small .quick-view {
  display: none !important;
}

.tax-product_cat .products .product-small .image-tools,
.tax-product_cat .products .product-small .quick-view,
.tax-product_cat .products .product-small .show-on-hover:not(.back-image) {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.tax-product_cat .product-small .box-text {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 144px;
  padding: 20px 18px 18px !important;
  text-align: left !important;
}

.tax-product_cat .product-small .category,
.tax-product_cat .product-small .product-cat {
  min-height: 16px;
  margin: 0 0 8px;
  color: #7f7667;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.3;
  letter-spacing: .08em;
  text-transform: uppercase;
  opacity: 1;
}

.tax-product_cat .product-small .product-title {
  min-height: 46px;
  margin: 0 0 8px;
}

.tax-product_cat .product-small .product-title a {
  display: -webkit-box !important;
  min-height: 46px;
  overflow: hidden;
  color: var(--dn-text);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.42;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.tax-product_cat .product-small .price-wrapper {
  margin-top: auto;
}

.tax-product_cat .product-small .price,
.tax-product_cat .product-small .amount,
.tax-product_cat .product-small .damynghe-contact-price {
  color: var(--dn-primary);
  font-size: 15px;
  font-weight: 800;
}

.tax-product_cat .woocommerce-pagination {
  margin-top: 18px;
}

.tax-product_cat .woocommerce-pagination .container {
  max-width: 1400px;
}

.tax-product_cat ul.page-numbers {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 0 auto !important;
  padding: 0 !important;
  list-style: none;
}

.tax-product_cat ul.page-numbers li {
  margin: 0 !important;
}

.tax-product_cat ul.page-numbers .page-number {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 36px;
  padding: 0 10px;
  border: 1px solid var(--dn-line);
  border-radius: 999px;
  background: #fff;
  color: var(--dn-primary);
  box-shadow: 0 8px 18px rgba(27,28,25,.04);
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
}

.tax-product_cat ul.page-numbers .page-number.current,
.tax-product_cat ul.page-numbers .page-number:hover {
  border-color: var(--dn-primary);
  background: var(--dn-primary);
  color: #fff;
}

.tax-product_cat .shop-container + hr,
.tax-product_cat .category-page-row hr {
  display: none;
}

.tax-product_cat .dn-cat-archive-footer h2 {
  max-width: 760px;
  margin: 0 0 18px;
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(34px, 3.4vw, 48px);
  font-weight: 600;
  line-height: 1.14;
  letter-spacing: 0;
}

.tax-product_cat .dn-cat-footer-actions {
  text-align: right;
}

.tax-product_cat .dn-cat-archive-groups {
  border-top: 1px solid rgba(209, 197, 180, .56);
}

.tax-product_cat .dn-cat-groups-heading {
  margin-bottom: 18px !important;
}

.tax-product_cat .dn-cat-groups-heading h2 {
  max-width: 720px;
  margin: 0;
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(32px, 3vw, 44px);
  font-weight: 600;
  line-height: 1.14;
  letter-spacing: 0;
}

.tax-product_cat .dn-cat-groups-action {
  text-align: right;
}

.tax-product_cat .dn-cat-groups-action .button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 0 20px !important;
  border-color: var(--dn-line) !important;
  border-radius: 8px !important;
  background: #fff !important;
  color: var(--dn-primary) !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-transform: none !important;
}

.tax-product_cat .dn-cat-group-grid {
  align-items: stretch;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.tax-product_cat .dn-cat-group-grid > .col {
  display: flex;
  padding-left: 10px !important;
  padding-right: 10px !important;
  padding-bottom: 20px !important;
}

.tax-product_cat .dn-cat-group-grid > .col > .col-inner {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 100%;
  padding: 24px 22px 22px;
  border: 1px solid rgba(209, 197, 180, .78);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(27, 28, 25, .045);
  transition: transform .24s ease, border-color .24s ease, box-shadow .24s ease;
}

.tax-product_cat .dn-cat-group-grid > .col > .col-inner:hover {
  transform: translateY(-2px);
  border-color: rgba(197, 160, 89, .95);
  box-shadow: 0 18px 44px rgba(27, 28, 25, .075);
}

.tax-product_cat .dn-cat-group-card {
  margin-bottom: 20px;
}

.tax-product_cat .dn-cat-group-card p {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  margin: 0 0 18px;
  border-radius: 50%;
  background: var(--dn-soft);
  color: var(--dn-primary);
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
}

.tax-product_cat .dn-cat-group-card h3 {
  min-height: 58px;
  margin: 0 0 12px;
  color: var(--dn-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 25px;
  font-weight: 600;
  line-height: 1.16;
  letter-spacing: 0;
}

.tax-product_cat .dn-cat-group-card span {
  display: block;
  color: var(--dn-muted);
  font-size: 14px;
  line-height: 1.64;
}

.tax-product_cat .dn-cat-group-grid .button.is-link {
  min-height: auto !important;
  margin: auto 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--dn-primary) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  text-transform: none !important;
}

.tax-product_cat .dn-cat-group-grid .button.is-link::after {
  content: "\2192";
  margin-left: 8px;
}

@media (max-width: 1099px) {
  .tax-product_cat .dn-cat-archive-hero {
    padding-top: 86px !important;
    padding-bottom: 54px !important;
  }

  .tax-product_cat .dn-cat-hero-facts.row {
    grid-template-columns: 1fr;
  }

  .tax-product_cat .dn-cat-hero-image img {
    height: 480px !important;
  }
}

@media (max-width: 849px) {
  .tax-product_cat .dn-products-hero-v2 {
    padding-top: 112px !important;
    padding-bottom: 62px !important;
  }

  .tax-product_cat .dn-products-hero-v2 .section-content > .row,
  .tax-product_cat .dn-product-cats-v2 .section-content > .row {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .tax-product_cat .dn-products-hero-copy h1 {
    font-size: 44px;
    line-height: 1.08;
  }

  .tax-product_cat .dn-products-hero-copy .dn-lead {
    font-size: 16px;
    line-height: 1.72;
  }

  .tax-product_cat .dn-products-hero-image {
    height: auto !important;
    padding-top: 420px !important;
    margin-top: 24px;
  }

  .tax-product_cat .dn-products-hero-image .dn-products-hero-stat,
  .tax-product_cat .dn-products-hero-stat {
    position: absolute !important;
    top: auto !important;
    right: 18px !important;
    bottom: 18px !important;
    left: 18px !important;
    width: auto !important;
    margin: 0 !important;
  }

  .tax-product_cat .dn-cat-ux-col {
    flex-basis: 50% !important;
    max-width: 50% !important;
  }

  .tax-product_cat .dn-cat-ux-banner {
    height: auto !important;
    padding-top: 220px !important;
  }

  .tax-product_cat .dn-cat-ux-banner .dn-cat-ux-text {
    bottom: 18px !important;
  }

  .tax-product_cat .dn-cat-ux-text h3 {
    font-size: 20px !important;
  }

  .tax-product_cat .dn-cat-archive-hero {
    padding-top: 80px !important;
    padding-bottom: 48px !important;
  }

  .tax-product_cat .dn-cat-archive-hero .section-content > .row,
  .tax-product_cat .dn-cat-archive-groups .section-content > .row,
  .tax-product_cat .dn-cat-archive-footer .section-content > .row,
  .tax-product_cat .category-page-title .page-title-inner,
  .tax-product_cat .category-page-row {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .tax-product_cat .dn-cat-hero-row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .tax-product_cat .dn-cat-hero-row > .col {
    flex-basis: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
  }

  .tax-product_cat .dn-cat-hero-copy > .col-inner {
    padding-bottom: 0 !important;
  }

  .tax-product_cat .dn-cat-hero-copy h1 {
    font-size: 36px;
  }

  .tax-product_cat .dn-product-search {
    display: block !important;
    height: auto !important;
  }

  .tax-product_cat .dn-product-search input[type="search"],
  .tax-product_cat .dn-product-search button {
    width: 100%;
    height: 54px !important;
    min-height: 54px !important;
    line-height: 54px !important;
  }

  .tax-product_cat .dn-product-search button {
    min-width: 0 !important;
  }

  .tax-product_cat .dn-cat-hero-actions.row {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 10px;
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 18px !important;
    margin-bottom: 0 !important;
  }

  body.tax-product_cat .dn-cat-hero-facts.row,
  body.tax-product_cat .dn-cat-hero-facts.row > .col,
  body.tax-product_cat .dn-cat-hero-facts.row .col-inner,
  body.tax-product_cat .dn-cat-hero-facts.row .text {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  .tax-product_cat .dn-cat-hero-actions.row > .col,
  .tax-product_cat .dn-cat-hero-actions .button {
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    box-sizing: border-box;
  }

  .tax-product_cat .dn-cat-hero-actions.row,
  .tax-product_cat .dn-cat-hero-actions.row > .col,
  .tax-product_cat .dn-cat-hero-actions.row > .col > .col-inner {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  .tax-product_cat .dn-cat-hero-visual-col {
    margin-top: 18px !important;
    padding-top: 0 !important;
  }

  .tax-product_cat .dn-cat-hero-image img {
    height: 360px !important;
  }

  .tax-product_cat .dn-cat-hero-note {
    left: 18px;
    right: 18px;
    bottom: 18px;
    width: auto;
  }

  .tax-product_cat .category-page-title .page-title-inner {
    display: block;
    padding-top: 16px;
    padding-bottom: 16px;
  }

  .tax-product_cat .dn-cat-archive-groups {
    padding-bottom: 34px !important;
  }

  .tax-product_cat .dn-cat-groups-action {
    margin-top: 16px;
    text-align: left;
  }

  .tax-product_cat .dn-cat-groups-action .button {
    width: 100%;
  }

  .tax-product_cat .dn-cat-group-grid {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .tax-product_cat .dn-cat-group-grid > .col {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .tax-product_cat .dn-cat-group-card h3 {
    min-height: 0;
    font-size: 24px;
  }

  .tax-product_cat .category-page-title .flex-col {
    width: 100%;
    max-width: 100%;
    text-align: left !important;
  }

  .tax-product_cat .woocommerce-result-count,
  .tax-product_cat .woocommerce-ordering {
    margin-top: 12px;
  }

  .tax-product_cat .woocommerce-ordering select {
    width: 100%;
  }

  .tax-product_cat .products.row {
    margin-left: -7px !important;
    margin-right: -7px !important;
  }

  .tax-product_cat .products.row > .product-small {
    padding: 0 7px 14px !important;
  }

  .tax-product_cat .product-small .box-text {
    min-height: 136px;
    padding: 16px 14px 15px !important;
  }

  .tax-product_cat .product-small .product-title,
  .tax-product_cat .product-small .product-title a {
    min-height: 44px;
  }

  .tax-product_cat .dn-cat-archive-footer {
    padding-top: 56px !important;
    padding-bottom: 60px !important;
  }

  .tax-product_cat .dn-cat-footer-actions {
    text-align: left;
  }
}

/* Contact hero floating note: match homepage/product overlap on desktop, keep it tidy on mobile. */
body.page-id-3878 .dn-contact-hero-visual {
  overflow: visible !important;
  border-radius: 14px !important;
}

body.page-id-3878 .dn-contact-hero-visual .banner-bg {
  overflow: hidden !important;
  border-radius: 14px !important;
}

body.page-id-3878 .dn-contact-hero-visual .banner-bg .bg {
  border-radius: 14px !important;
}

body.page-id-3878 .dn-contact-hero-visual .dn-contact-hero-note,
body.page-id-3878 .dn-contact-hero-note {
  top: auto !important;
  right: auto !important;
  bottom: -28px !important;
  left: -22px !important;
  width: 260px !important;
  min-width: 0 !important;
  margin: 0 !important;
  transform: none !important;
}

/* Product slider fallback: prevent vertical stacking and tall blank gaps if Flickity initializes late. */
body.page-id-3926 .dn-product-slider-v2 .row-slider:not(.flickity-enabled) {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

body.page-id-3926 .dn-product-slider-v2 .row-slider:not(.flickity-enabled) > .product-small {
  display: flex !important;
  flex: 0 0 25% !important;
  width: 25% !important;
  max-width: 25% !important;
  padding: 0 10px 18px !important;
}

body.page-id-3926 .dn-product-slider-v2 .row-slider:not(.flickity-enabled) > .product-small:nth-child(n+5) {
  display: none !important;
}

body.page-id-3926 .dn-product-slider-v2 .product-small > .col-inner,
body.page-id-3926 .dn-paged-products-v2 .product-small > .col-inner {
  display: flex !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
}

body.page-id-3926 .dn-product-slider-v2 .product-small .box,
body.page-id-3926 .dn-paged-products-v2 .product-small .box {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
}

body.page-id-3926 .dn-product-slider-v2 .product-small .box-image,
body.page-id-3926 .dn-paged-products-v2 .product-small .box-image {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 3 / 4 !important;
}

body.page-id-3926 .dn-product-slider-v2 .product-small .box-image .image-fade_in_back,
body.page-id-3926 .dn-product-slider-v2 .product-small .box-image a,
body.page-id-3926 .dn-product-slider-v2 .product-small .box-image img,
body.page-id-3926 .dn-paged-products-v2 .product-small .box-image .image-fade_in_back,
body.page-id-3926 .dn-paged-products-v2 .product-small .box-image a,
body.page-id-3926 .dn-paged-products-v2 .product-small .box-image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

body.page-id-3926 .dn-product-slider-v2 .box-text,
body.page-id-3926 .dn-paged-products-v2 .box-text {
  flex: 0 0 auto !important;
  min-height: 142px !important;
  height: auto !important;
}

@media (max-width: 849px) {
  body.page-id-3878 .dn-contact-hero-visual {
    overflow: hidden !important;
  }

  body.page-id-3878 .dn-contact-hero-visual .dn-contact-hero-note,
  body.page-id-3878 .dn-contact-hero-note {
    position: absolute !important;
    top: auto !important;
    right: 18px !important;
    bottom: 18px !important;
    left: 18px !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    transform: none !important;
  }

  body.page-id-3878 .dn-contact-hero-note h3 {
    font-size: 30px !important;
  }

  body.page-id-3926 .dn-product-slider-v2 .row-slider:not(.flickity-enabled) > .product-small {
    flex-basis: 50% !important;
    width: 50% !important;
    max-width: 50% !important;
  }

  body.page-id-3926 .dn-product-slider-v2 .row-slider:not(.flickity-enabled) > .product-small:nth-child(n+3) {
    display: none !important;
  }
}
/* News CTA/button final overrides: keep hover color and title alignment consistent. */
.dn-news-hero-v2 .button.is-outline:hover,
.dn-news-hero-v2 a.button.is-outline:hover,
.dn-news-hero-feature .button:hover,
.dn-news-main-story .button:hover,
.dn-news-grid-cards .button:hover,
.dn-news-topic-button.button:hover,
.dn-news-topic-button.button:focus {
  border-color: var(--dn-primary) !important;
  background: var(--dn-primary) !important;
  background-color: var(--dn-primary) !important;
  color: #fff !important;
  box-shadow: 0 10px 22px rgba(27, 28, 25, .08) !important;
}

.dn-news-hero-v2 .button.is-outline:hover span,
.dn-news-hero-v2 a.button.is-outline:hover span,
.dn-news-hero-feature .button:hover span,
.dn-news-main-story .button:hover span,
.dn-news-grid-cards .button:hover span,
.dn-news-topic-button.button:hover span,
.dn-news-topic-button.button:focus span {
  color: #fff !important;
}

.dn-news-grid-action > .col-inner,
body.home .dn-products > .section-content > .row > .col.medium-4 > .col-inner {
  padding-top: 52px !important;
  text-align: right !important;
}

.dn-news-grid-action .button.is-link,
.dn-news-link-button.button,
body.home .dn-products .button.is-link,
body.home .dn-products a.button.is-link {
  background: transparent !important;
  color: var(--dn-primary) !important;
  box-shadow: none !important;
}

.dn-news-grid-action .button.is-link:hover,
.dn-news-grid-action .button.is-link:focus,
.dn-news-link-button.button:hover,
.dn-news-link-button.button:focus,
body.home .dn-products .button.is-link:hover,
body.home .dn-products .button.is-link:focus,
body.home .dn-products a.button.is-link:hover,
body.home .dn-products a.button.is-link:focus {
  background: transparent !important;
  color: var(--dn-primary) !important;
  box-shadow: none !important;
}

@media (max-width: 849px) {
  .dn-news-grid-action > .col-inner,
  body.home .dn-products > .section-content > .row > .col.medium-4 > .col-inner {
    padding-top: 0 !important;
    text-align: left !important;
  }
}
/* News category label final color overrides: remove moss/green hover. */
.dn-news-hero-feature .cat-label,
.dn-news-main-story .cat-label,
.dn-news-grid-cards .cat-label {
  border: 1px solid rgba(197, 160, 89, .34) !important;
  background: rgba(197, 160, 89, .1) !important;
  background-color: rgba(197, 160, 89, .1) !important;
  color: var(--dn-primary) !important;
  opacity: 1 !important;
  box-shadow: none !important;
  text-decoration: none !important;
}

.dn-news-hero-feature .cat-label:hover,
.dn-news-hero-feature .cat-label:focus,
.dn-news-main-story .cat-label:hover,
.dn-news-main-story .cat-label:focus,
.dn-news-grid-cards .cat-label:hover,
.dn-news-grid-cards .cat-label:focus,
.dn-news-hero-feature .post-item:hover .cat-label,
.dn-news-main-story .post-item:hover .cat-label,
.dn-news-grid-cards .post-item:hover .cat-label,
.dn-news-hero-feature .box-blog-post:hover .cat-label,
.dn-news-main-story .box-blog-post:hover .cat-label,
.dn-news-grid-cards .box-blog-post:hover .cat-label {
  border-color: var(--dn-primary) !important;
  background: var(--dn-primary) !important;
  background-color: var(--dn-primary) !important;
  color: #fff !important;
  opacity: 1 !important;
}
