/* WordPress-specific layer on top of tokens.css + site.css (shared with the static build).
   Maps WordPress, Hello Elementor, WooCommerce and Elementor markup onto the design. */

/* ---------- Menus (wp_nav_menu outputs ul/li) ---------- */
.main-nav .dt-menu{display:flex;align-items:center;gap:30px;margin:0;padding:0;list-style:none}
.main-nav .dt-menu li{margin:0}
.main-nav .current-menu-item > a,.main-nav .current-menu-ancestor > a{border-bottom-color:var(--gold-500)}
.mobile-nav .dt-menu-mobile{margin:0;padding:0;list-style:none}
.mobile-nav .dt-menu-mobile a{display:flex;align-items:center;justify-content:space-between;min-height:56px;border-bottom:1px solid var(--line-1);font:500 18px/1 var(--font-display);color:var(--gold-300)}
.mobile-nav .menu-cart{margin-top:20px;height:50px}
.dt-header .cart-count[hidden]{display:none !important}
/* Footer bottom bar: copyright + policy links (links appear once each policy page is published). */
.dt-footer .footer-legal{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px}
.dt-footer .footer-legal-links{display:flex;flex-wrap:wrap;gap:8px 20px}
.dt-footer .footer-legal-links a{font:400 13px/1.4 var(--font-body);color:var(--fg-2)}
.dt-footer .footer-legal-links a:hover{color:var(--gold-300)}

/* ---------- Hello Elementor page shell ---------- */
/* Hello boxes .site-header/.site-footer to 1140px with flex + padding; the design runs them full width. */
body.dt-site .site-header.dt-header{display:block;max-width:none;width:100%;margin:0;padding:0;position:sticky;top:0}
body.dt-site .site-footer.dt-footer{display:block;max-width:none;width:100%;margin:0;padding:0}
body.admin-bar .site-header.dt-header{top:32px}
@media (max-width:782px){body.admin-bar .site-header.dt-header{top:46px}}
body.dt-site:not([class*="elementor-page-"]) .site-main{width:100%;max-width:var(--container);margin:0 auto;padding:40px var(--gutter) clamp(80px,10vw,120px)}
body.dt-site .page-header{padding:0;margin:0 0 28px}
body.dt-site .page-header .entry-title{font:500 clamp(34px,4.4vw,48px)/1.1 var(--font-display);background:var(--gold-gradient);-webkit-background-clip:text;background-clip:text;color:transparent}
body.dt-site .page-content p,body.dt-site .page-content li{margin:0 0 1em;font:400 16px/1.65 var(--font-body);color:var(--fg-2)}
body.dt-site .page-content h2,body.dt-site .page-content h3{margin:1.6em 0 .6em;font-family:var(--font-display);font-weight:500;color:var(--gold-300)}
body.dt-site .site-main .alignwide,body.dt-site .site-main .alignfull{max-width:100%;margin-left:0;margin-right:0}
body.dt-wide .site-main{max-width:none !important;padding:0 !important}
/* Hello underlines links inside .page-content; the storefront pages use none. */
body.dt-wide .page-content a{text-decoration:none}
body.dt-break .page-content > .breaks-page{margin:0}

/* Hello's reset makes every select 100% wide; the filter pills size to their label. */
.dt-site .filters .filter-select{width:auto}

/* ---------- WooCommerce: product grid + card ---------- */
.dt-site ul.products[class]{display:flex;flex-wrap:wrap;gap:var(--grid-gap);margin:36px 0 0;padding:0;list-style:none}
.dt-site ul.products[class]::before,.dt-site ul.products[class]::after{display:none}
.dt-site ul.products[class] li.product.product{float:none;clear:none;margin:0;padding:0;width:calc((100% - 3 * var(--grid-gap)) / 4);display:flex;flex-direction:column;border-radius:var(--radius-lg);border:1px solid var(--line-2);background:var(--surface-card);box-shadow:var(--shadow-card);overflow:hidden;text-align:left}
@media (max-width:1179px){.dt-site ul.products[class] li.product.product{width:calc((100% - 2 * var(--grid-gap)) / 3)}}
@media (max-width:859px){.dt-site ul.products[class] li.product.product{width:calc((100% - var(--grid-gap)) / 2)}}
@media (max-width:519px){.dt-site ul.products[class] li.product.product{width:100%}}
.dt-site ul.products li.product .woocommerce-loop-product__link{flex:1;display:flex;flex-direction:column;color:inherit}
.dt-site ul.products li.product .card-media img{width:100%;height:auto;margin:0;aspect-ratio:3/4;object-fit:cover;background:var(--ink-300);border-radius:var(--radius-md);box-shadow:none}
.dt-site ul.products li.product.is-boxed .card-media img{object-fit:contain;background:#fff}
.dt-site ul.products li.product .card-title{margin:0;padding:0 14px;font:500 16px/1.4 var(--font-display);color:var(--gold-300);text-wrap:pretty}
.dt-site ul.products li.product .card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 14px 16px}
.dt-site ul.products[class] li.product .price{margin:0;font:600 20px/1 var(--font-display);color:var(--gold-100)}
.dt-site ul.products li.product .price del{opacity:.5;font-size:14px}
.dt-site ul.products li.product .price ins{text-decoration:none}
.dt-site ul.products[class] li.product .button.add-btn,.dt-site ul.products[class] li.product .add-btn{display:inline-flex;align-items:center;margin:0;height:38px;padding:0 16px;border-radius:var(--radius-pill);border:0;background:var(--gold-500);color:var(--gold-ink);font:600 13px/1 var(--font-body);white-space:nowrap}
.dt-site ul.products[class] li.product .button.add-btn:hover{background:var(--gold-500);filter:brightness(1.1);color:var(--gold-ink)}
.dt-site ul.products[class] li.product .add-btn:disabled{background:var(--gold-700);cursor:not-allowed;filter:none}
.dt-site ul.products li.product .button.loading{opacity:.7}
.dt-site ul.products li.product .button.loading::after,.dt-site ul.products li.product .button.added::after{display:none}
.dt-site ul.products li.product .added_to_cart{display:none}
.dt-site .woocommerce-products-header{margin:0;padding:0}
.dt-site .woocommerce-pagination{margin-top:40px}
.dt-site .woocommerce-pagination ul.page-numbers{display:flex;gap:8px;border:0}
.dt-site .woocommerce-pagination ul.page-numbers li{border:0}
.dt-site .woocommerce-pagination .page-numbers a,.dt-site .woocommerce-pagination .page-numbers span{min-width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-pill);border:1px solid var(--line-3);color:var(--gold-300);font:500 14px/1 var(--font-mono)}
.dt-site .woocommerce-pagination .page-numbers .current{background:var(--gold-500);border-color:var(--gold-500);color:var(--gold-ink)}

/* ---------- WooCommerce: notices, buttons, forms (single product, classic cart/checkout, account) ---------- */
.dt-site .woocommerce-message,.dt-site .woocommerce-info,.dt-site .woocommerce-error{background:var(--ink-200);color:var(--fg-1);border-top-color:var(--gold-500);border-radius:var(--radius-md)}
.dt-site .woocommerce-error{border-top-color:var(--live)}
body.dt-site a.button,body.dt-site button.button,body.dt-site input.button,body.dt-site #respond input#submit{border-radius:var(--radius-pill);background:var(--gold-500);color:var(--gold-ink);font:600 15px/1 var(--font-body);padding:15px 24px}
body.dt-site a.button:hover,body.dt-site button.button:hover{background:var(--gold-400);color:var(--gold-ink)}
/* WooCommerce's purple primary (.alt) buttons, e.g. "Add to cart" on product pages. */
body.dt-site a.button.alt,body.dt-site button.button.alt,body.dt-site input.button.alt{border-radius:var(--radius-pill);background:var(--gold-500);color:var(--gold-ink);font:600 15px/1 var(--font-body);padding:15px 24px;box-shadow:var(--shadow-gold-glow)}
body.dt-site a.button.alt:hover,body.dt-site button.button.alt:hover,body.dt-site input.button.alt:hover{background:var(--gold-400);color:var(--gold-ink)}
body.dt-site button.button.alt.disabled,body.dt-site button.button.alt:disabled,body.dt-site button.button.alt.disabled:hover{background:var(--gold-700);color:var(--gold-ink);opacity:1}
body.dt-site button.button:disabled,body.dt-site button.button:disabled[disabled]{background:var(--gold-700);color:var(--gold-ink)}
body.dt-site form .form-row label{font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--fg-2)}
body.dt-site form .form-row .input-text,body.dt-site form .form-row select,body.dt-site .quantity .qty{height:46px;padding:0 16px;border-radius:var(--radius-md);border:1px solid var(--line-2);background:var(--ink-300);color:var(--gold-100)}
body.dt-site table.shop_table{border-color:var(--line-2);border-radius:var(--radius-lg);background:var(--surface-card);color:var(--fg-2)}
body.dt-site table.shop_table td,body.dt-site table.shop_table th{border-color:var(--line-1)}
body.dt-site table.shop_table a{color:var(--gold-300)}

/* Single product */
.dt-product-page .product .product_title{font:500 clamp(28px,3.6vw,40px)/1.15 var(--font-display);background:var(--gold-gradient);-webkit-background-clip:text;background-clip:text;color:transparent}
.dt-product-page .product .summary .price{font:600 28px/1 var(--font-display);color:var(--gold-100)}
.dt-product-page .product .woocommerce-product-details__short-description,.dt-product-page .product .woocommerce-Tabs-panel{color:var(--fg-2)}
.dt-product-page .product .woocommerce-product-gallery img{border-radius:var(--radius-lg);background:var(--ink-300)}
.dt-product-page .product .woocommerce-product-gallery .card-art{max-width:420px}
.dt-product-page .woocommerce-tabs ul.tabs li{background:var(--ink-200);border-color:var(--line-2)}
.dt-product-page .woocommerce-tabs ul.tabs li a{color:var(--gold-300)}
.dt-product-page .related > h2{font:500 28px/1.2 var(--font-display);color:var(--gold-300)}
.dt-product-page .summary.entry-summary{position:static;width:48%;display:block;border:0;background:none;box-shadow:none;overflow:visible}
@media (max-width:768px){.dt-product-page .summary.entry-summary{width:100%}}

/* Cart / Checkout blocks (WooCommerce 8.3+ default) */
.dt-site .wp-block-woocommerce-cart,.dt-site .wp-block-woocommerce-checkout{color:var(--fg-2)}
.dt-site .wc-block-components-product-name{font:500 16px/1.4 var(--font-display);color:var(--gold-300)}
.dt-site .wc-block-components-product-price,.dt-site .wc-block-components-totals-item__value,.dt-site .wc-block-formatted-money-amount{color:var(--gold-100)}
.dt-site .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{font:600 22px/1 var(--font-display)}
.dt-site .wc-block-components-title,.dt-site .wc-block-cart__totals-title,.dt-site .wc-block-components-checkout-step__title{font:var(--type-eyebrow);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--gold-400)}
.dt-site .wc-block-components-text-input input,.dt-site .wc-block-components-combobox .wc-block-components-combobox-control input,.dt-site .wc-blocks-components-select select,.dt-site .wc-block-components-textarea{background:var(--ink-300);border:1px solid var(--line-2);border-radius:var(--radius-md);color:var(--gold-100)}
.dt-site .wc-block-components-text-input label,.dt-site .wc-blocks-components-select label{color:var(--fg-3)}
.dt-site .wc-block-components-button:not(.is-link){min-height:46px;border-radius:var(--radius-pill);background:var(--gold-500);color:var(--gold-ink);font:600 15px/1 var(--font-body);box-shadow:var(--shadow-gold-glow)}
.dt-site .wc-block-components-button:not(.is-link):hover{background:var(--gold-400)}
.dt-site .wc-block-components-quantity-selector{border-color:var(--line-2);border-radius:var(--radius-pill)}
.dt-site .wc-block-components-quantity-selector input,.dt-site .wc-block-components-quantity-selector button{color:var(--gold-100);background:transparent}
.dt-site .wc-block-cart-items,.dt-site .wc-block-components-sidebar .wc-block-components-panel,.dt-site .wc-block-components-totals-wrapper{border-color:var(--line-1)}
.dt-site .wc-block-cart-item__remove-link{color:var(--fg-2)}
.dt-site .wc-block-components-radio-control__option,.dt-site .wc-block-components-checkbox label{color:var(--fg-1)}
/* Block form controls ship light-theme colours with high specificity; !important keeps this layer short. */
.dt-site .wc-block-components-text-input input,.dt-site .wc-block-components-textarea{background-color:var(--ink-300) !important;border-color:var(--line-2) !important;color:var(--gold-100) !important;border-radius:var(--radius-md) !important}
.dt-site .wc-block-components-text-input input:focus,.dt-site .wc-block-components-textarea:focus{border-color:var(--gold-500) !important;box-shadow:none !important}
.dt-site .wc-blocks-components-select .wc-blocks-components-select__container{background:var(--ink-300) !important;border-color:var(--line-2) !important;border-radius:var(--radius-md) !important}
.dt-site .wc-blocks-components-select .wc-blocks-components-select__select{background:transparent !important;border:0 !important;color:var(--gold-100) !important}
.dt-site .wc-blocks-components-select .wc-blocks-components-select__label{color:var(--fg-3) !important}
.dt-site .wc-blocks-components-select .wc-blocks-components-select__expand{fill:var(--gold-400)}
.dt-site .wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"],.dt-site .wc-block-components-radio-control .wc-block-components-radio-control__input{background-color:var(--ink-300) !important;border-color:var(--line-3) !important}
.dt-site .wc-block-components-checkbox .wc-block-components-checkbox__mark{fill:var(--gold-400)}
.dt-site .wc-block-components-radio-control .wc-block-components-radio-control__input:checked::before{background:var(--gold-400) !important}
.dt-site .wc-block-components-notice-banner{background-color:var(--ink-200) !important;border-color:var(--gold-line) !important;color:var(--fg-1) !important}
.dt-site .wc-block-components-notice-banner.is-error{border-color:var(--live-line) !important}
.dt-site .wc-block-components-notice-banner > svg{background-color:var(--gold-500) !important;fill:var(--gold-ink) !important}
.dt-site .wc-block-components-order-summary-item__total-price,.dt-site .wc-block-components-formatted-money-amount{color:var(--gold-100)}
.dt-site .wc-block-components-order-summary-item__quantity{background:var(--gold-500);border-color:var(--gold-500);color:var(--gold-ink);box-shadow:none}

/* ---------- Elementor widgets (classes set in elementor/home.json) ---------- */
.elementor-widget.dt-hero-title .elementor-heading-title{font:900 clamp(48px,7vw,80px)/1.1 var(--font-hero);letter-spacing:.02em;background:var(--hero-gradient);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 8px 18px rgba(0,0,0,.55))}
.elementor-widget.dt-hero-sub,.elementor-widget.dt-hero-sub p{margin:0;max-width:460px;font:400 clamp(17px,1.6vw,19px)/1.55 var(--font-body);color:var(--gold-300)}
.elementor-widget.dt-gold-text .elementor-heading-title{font:500 clamp(28px,3vw,34px)/1.15 var(--font-display);background:var(--gold-gradient);-webkit-background-clip:text;background-clip:text;color:transparent}
.elementor-widget.dt-body,.elementor-widget.dt-body p{margin:0;max-width:480px;font:400 16px/1.6 var(--font-body);color:var(--fg-2)}
.elementor-widget.dt-btn .elementor-button{display:inline-flex;align-items:center;justify-content:center;height:46px;padding:0 24px;border-radius:var(--radius-pill);border:1px solid transparent;background:var(--gold-500);color:var(--gold-ink);font:600 15px/1 var(--font-body);box-shadow:var(--shadow-gold-glow);transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}
.elementor-widget.dt-btn .elementor-button:hover{background:var(--gold-400);color:var(--gold-ink)}
.elementor-widget.dt-btn-lg .elementor-button{height:52px;padding:0 30px;font-size:16px}
.elementor-widget.dt-btn-outline .elementor-button{background:transparent;border-color:var(--gold-line);color:var(--gold-300);box-shadow:none}
.elementor-widget.dt-btn-outline .elementor-button:hover{background:transparent;border-color:var(--gold-400);color:var(--gold-100)}
.elementor-widget.dt-btn-ghost .elementor-button{height:40px;padding:0 18px;background:transparent;border-color:var(--line-3);color:var(--gold-300);font:500 14px/1 var(--font-body);box-shadow:none}
.elementor-widget.dt-btn-ghost .elementor-button:hover{background:transparent;border-color:var(--gold-line);color:var(--gold-300)}
.elementor-widget.dt-rule .elementor-divider{padding:0}
.elementor-widget.dt-products ul.products[class]{margin-top:32px}
.e-con.dt-breaks-panel{background-image:radial-gradient(40% 80% at 0% 100%,rgba(201,162,75,0.10),transparent 70%),radial-gradient(40% 70% at 90% 0%,rgba(60,140,160,0.12),transparent 70%)}
/* FAQ: Elementor Toggle widget (all questions start closed); Accordion markup kept for older imports. */
.elementor-widget.dt-faq .elementor-accordion,.elementor-widget.dt-faq .elementor-toggle{border-top:1px solid var(--line-2)}
.elementor-widget.dt-faq .elementor-accordion-item,.elementor-widget.dt-faq .elementor-toggle-item{border:0;border-bottom:1px solid var(--line-2)}
.elementor-widget.dt-faq .elementor-tab-title{display:flex;align-items:center;flex-direction:row-reverse;justify-content:space-between;gap:20px;margin:0;padding:22px 0;border:0}
.elementor-widget.dt-faq .elementor-tab-title a{font:500 18px/1.4 var(--font-display);color:var(--gold-300)}
.elementor-widget.dt-faq .elementor-accordion-icon,.elementor-widget.dt-faq .elementor-toggle-icon{width:auto;color:var(--gold-500);fill:var(--gold-500)}
.elementor-widget.dt-faq .elementor-accordion-icon svg,.elementor-widget.dt-faq .elementor-toggle-icon svg{fill:var(--gold-500);width:16px}
.elementor-widget.dt-faq .elementor-tab-content{padding:0 40px 24px 0;border:0;font:400 16px/1.65 var(--font-body);color:var(--fg-2)}
.elementor-widget.dt-faq .elementor-tab-content p{margin:0}
