/* DTFShop shared standards: existing Poppins and blue/neutral visual language. */
:root{--dtf-ui-font:"Poppins",sans-serif;--dtf-ui-content:1240px;--dtf-ui-copy:820px;--dtf-ui-gutter:24px;--dtf-ui-gap-xs:8px;--dtf-ui-gap-sm:12px;--dtf-ui-gap:16px;--dtf-ui-gap-lg:24px;--dtf-ui-gap-xl:32px;--dtf-ui-section:48px;--dtf-ui-button-radius:10px;--dtf-ui-card-radius:14px;--dtf-ui-focus:#0866d9;--dtf-ui-muted:#475569;--dtf-ui-border:#dbe3ee}
html body.dtf-ui-consistent{font-family:var(--dtf-ui-font)!important;text-rendering:optimizeLegibility}
html body.dtf-ui-consistent :where(input,select,textarea,button){font-family:inherit}
/* Shared outer bounds; full-bleed backgrounds and the responsive header grid stay intact. */
html body.dtf-ui-consistent:not(.woocommerce-checkout) #main>.container,
html body.dtf-ui-consistent .dtf-about-container,
html body.dtf-ui-consistent #footer>.container{max-width:var(--dtf-ui-content)!important;width:calc(100% - (var(--dtf-ui-gutter)*2))!important;margin-inline:auto!important;box-sizing:border-box!important}
html body.dtf-ui-consistent:not(.woocommerce-checkout) #main>.container>.main-content-wrap{margin-inline:0!important}
html body.dtf-ui-consistent:not(.woocommerce-checkout) #main>.container>.main-content-wrap>.main-content{min-width:0;max-width:100%;box-sizing:border-box}
html body.home.dtf-ui-consistent #main>.elementor>.elementor-section>.elementor-container{max-width:var(--dtf-ui-content)!important;width:calc(100% - (var(--dtf-ui-gutter)*2))!important;margin-inline:auto!important}
/* Ordinary section headings share a role. Hero and campaign headings retain their designs. */
html body.dtf-ui-consistent .dtf-about-section h2,
html body.dtf-ui-consistent .dtf-story-grid h2,
html body.dtf-ui-consistent .dtf-founder-card h2,
html body.dtf-ui-consistent .dtf-process h2,
html body.dtf-ui-consistent .dtf-reviews h2,
html body.dtf-ui-consistent .dtf-blog-section-head-v5 h2,
html body.dtf-ui-consistent .dtf-blog-latest-heading-v5 h2,
html body.dtf-ui-consistent .dtf-cart-complete-setup h2,
html body.dtf-ui-consistent .dtf-ui-title{font-size:clamp(24px,2.2vw,32px)!important;line-height:1.3!important;font-weight:700!important;letter-spacing:-.025em!important;margin:0 0 16px!important;overflow-wrap:break-word}
html body.dtf-ui-consistent .dtf-about-section p,
html body.dtf-ui-consistent .dtf-story-grid p,
html body.dtf-ui-consistent .dtf-founder-card p,
html body.dtf-ui-consistent .dtffaq-pro-page p{font-size:16px!important;line-height:1.75!important}
html body.dtf-ui-consistent .dtf-sb61-content{min-width:0}
html body.dtf-ui-consistent .dtf-sb61-content p,
html body.dtf-ui-consistent .dtf-sb61-content li{font-size:18px!important;line-height:1.8!important;overflow-wrap:break-word}
html body.dtf-ui-consistent .dtf-sb61-content p{margin-block:0 1.2em!important}
html body.dtf-ui-consistent .dtf-sb61-content h2{font-size:clamp(24px,2vw,30px)!important;font-weight:700!important;line-height:1.35!important}
html body.dtf-ui-consistent .woocommerce-product-details__short-description p{font-size:15px!important;line-height:1.7!important}
html body.single-product.dtf-ui-consistent .summary>.product_title{font-weight:700!important;line-height:1.35!important;overflow-wrap:break-word}
/* Consistent product-card media without cropping the supplied product photographs. */
html body.dtf-ui-consistent ul.products li.product .product-image>a>img{aspect-ratio:1/1!important;object-fit:contain!important;width:100%!important;height:auto!important;max-width:100%!important;background:#fff}
html body.dtf-ui-consistent ul.products li.product .product-details :is(h2,h3,.woocommerce-loop-product__title){font-size:15px!important;line-height:1.45!important;font-weight:600!important;overflow-wrap:break-word}
html body.dtf-ui-consistent ul.products li.product .price{line-height:1.5!important}
html body.dtf-ui-consistent .price .amount{white-space:nowrap}
html body.dtf-ui-consistent ul.products li.product .price del{opacity:1!important;color:var(--dtf-ui-muted)!important}
/* Controls: reliable touch area and legible text; icon fonts remain untouched. */
html body.dtf-ui-consistent #main :is(a.button,button.button,input.button,.single_add_to_cart_button),
html body.dtf-ui-consistent .dtf-hero-actions-final .dtf-hero-btn-final,
html body.dtf-ui-consistent .dtf-blog-search-v5 button{min-height:44px!important;font-weight:700!important;line-height:1.4!important;border-radius:var(--dtf-ui-button-radius)!important;box-sizing:border-box!important}
html body.dtf-ui-consistent #main :is(a.button,button.button){white-space:normal!important}
html body.dtf-ui-consistent :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--dtf-ui-focus)!important;outline-offset:3px!important}
html body.dtf-ui-consistent :is(input.input-text,textarea,select){max-width:100%;box-sizing:border-box}
html body.dtf-ui-consistent :is(.dtf-search-lite-result,.dtf-search-lite-item,.dtf-about-v1,.dtf-blog-shell-v5,.dtffaq-pro-page){min-width:0}
/* Findings from the visitor accessibility baseline, using existing palette shades. */
html body.dtf-ui-consistent .dtf-hero-btn-primary-final{background:#0866d9!important;color:#fff!important}
html body.dtf-ui-consistent .dtf-cat-v2-count,
html body.dtf-ui-consistent .dtf-price-tag{color:#334155!important}
html body.dtf-ui-consistent ul.products :is(.onhot,.onsale){color:#fff!important;background:#b42318!important;opacity:1!important}
html body.dtf-ui-consistent [data-dtf-empty-heading]{display:none!important}
@media(max-width:991px){:root{--dtf-ui-gutter:20px;--dtf-ui-section:40px}}
@media(max-width:767px){
:root{--dtf-ui-gutter:16px;--dtf-ui-section:32px}
html body.dtf-ui-consistent .dtf-sb61-content :is(p,li){font-size:16px!important;line-height:1.75!important}
html body.dtf-ui-consistent #main :is(input.input-text,textarea,select){font-size:16px!important;min-height:44px!important}
html body.dtf-ui-consistent .quantity :is(.minus,.plus){min-width:36px!important;min-height:44px!important}
html body.dtf-ui-consistent ul.products li.product .product-details :is(h2,h3,.woocommerce-loop-product__title){font-size:14px!important;line-height:1.45!important}
html body.dtf-ui-consistent #main :is(a.button,button.button){font-size:13px!important}
html body.dtf-ui-consistent .dtf-about-section p{font-size:16px!important}
}
@media(prefers-reduced-motion:reduce){html body.dtf-ui-consistent{scroll-behavior:auto!important}html body.dtf-ui-consistent .dtf-hero-slider-final *{animation:none!important;transition:none!important}}
/* Shared card treatment for comparable content roles, preserving hero panels. */
html body.dtf-ui-consistent :is(.dtf-card,.dtf-cart-suggest-card,.dtf-ppbb-card,.dtf-dash-offer,.dtf-mini-product){border-radius:var(--dtf-ui-card-radius)!important}
html body.dtf-ui-consistent ul.products li.product .product-inner{border-radius:var(--dtf-ui-card-radius)!important}
html body.dtf-ui-consistent .dtf-about-section+.dtf-about-section{margin-top:var(--dtf-ui-section)!important}
html body.dtf-ui-consistent :is(.owl-prev,.owl-next){min-width:44px!important;min-height:44px!important}

body.dtf-ui-consistent h1:empty,body.dtf-ui-consistent h2:empty,body.dtf-ui-consistent h3:empty{display:none!important}

/* Porto carousel cards use product-col/product-content rather than shop's product/details markup. */
html body.dtf-ui-consistent #main .product-inner .product-image .labels :is(.onhot,.onsale){color:#fff!important;background:#b42318!important;opacity:1!important}
html body.dtf-ui-consistent .product-inner .price del,
html body.dtf-ui-consistent .product-inner .price del :is(.amount,bdi){color:#475569!important;opacity:1!important}
html body.dtf-ui-consistent .product-inner :is(.product-content,.product-details) :is(h2,h3,.woocommerce-loop-product__title){font-size:15px!important;line-height:1.45!important;font-weight:600!important;overflow-wrap:break-word}
html body.dtf-ui-consistent .product-inner :is(.add_to_cart_button,.button){min-height:44px!important;box-sizing:border-box!important}
html body.dtf-ui-consistent :is(.dtf-updated-kicker,.dtf-ti-badge),
html body.dtf-ui-consistent .dtf-blog-manual-heading .dtf-blog-heading-copy>span{color:#0866b3!important}
@media(max-width:767px){html body.dtf-ui-consistent .product-inner :is(.product-content,.product-details) :is(h2,h3,.woocommerce-loop-product__title){font-size:14px!important}}

/* Keep first content stable; customers can explicitly play/pause the existing carousel. */
html body.dtf-ui-consistent .dtf-hero-dots-final{bottom:8px!important;gap:4px!important}
html body.dtf-ui-consistent .dtf-hero-dots-final button{width:32px!important;height:44px!important;min-height:44px!important;background:transparent!important;display:flex!important;align-items:center;justify-content:center}
html body.dtf-ui-consistent .dtf-hero-dots-final button:not(.dtf-hero-playback)::before{content:"";display:block;width:9px;height:9px;border-radius:999px;background:#64748b}
html body.dtf-ui-consistent .dtf-hero-dots-final button[aria-current=true]::before{width:24px;background:#0866d9}
html body.dtf-ui-consistent .dtf-hero-dots-final button.dtf-hero-playback{width:60px!important;color:#075ba8!important;font-size:12px!important;font-weight:700!important;border:1px solid #cbd5e1!important;border-radius:10px!important;background:#fff!important}
