/*
Theme Name: Tmeds Beauty
Author: Hassaan Tahir
Description: Lightweight standalone WooCommerce block theme with one shared storefront design system.
Version: 0.8.5
Requires at least: 6.6
Requires PHP: 7.4
Text Domain: tmeds-beauty
License: GPL-2.0-or-later
*/

/* Shared foundation: change tokens here, rather than adding page overrides. */
:root {
 --tm-font: -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
 --tm-ink:#292329; --tm-muted:#6e6269; --tm-accent:#d70a70; --tm-panel:#fcfaf7;
 --tm-border:#e7dfe2; --tm-blush:#fff2f6; --tm-radius:6px;
 --tm-body:17px; --tm-small:15px; --tm-label:13px; --tm-gap:24px; --tm-sidebar:3fr; --tm-main:9fr; --tm-control:50px;
}
*{box-sizing:border-box}
body{margin:0;font:400 var(--tm-body)/1.65 var(--tm-font);color:var(--tm-ink)}
img{max-width:100%;height:auto}
a{text-underline-offset:4px}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--tm-accent);outline-offset:3px}
:where(button,input,select,textarea){font:inherit}
:where(h1,h2,h3,h4){line-height:1.3}
.wp-site-blocks>header,.wp-site-blocks>footer,.wp-site-blocks>main{margin-block:0}
.tm-eyebrow{font:600 var(--tm-label)/1.6 var(--tm-font);letter-spacing:.13em;text-transform:uppercase;color:var(--tm-accent)}
.tm-text-link{font-weight:600;text-decoration:none}
.tm-page,.tm-page-shell,.tm-product-detail{width:100%;max-width:1240px!important;margin:auto;padding:36px 28px 64px}
.tm-page-shell>.woocommerce{width:100%!important;max-width:none!important;margin-inline:0!important}
.tm-page-intro{padding-bottom:24px;margin-bottom:32px;border-bottom:1px solid var(--tm-border)}
.tm-page-intro h1{font:400 var(--tm-page-title,34px)/1.25 Georgia,serif;margin:12px 0}
.tm-page-lead{margin:0;color:var(--tm-muted);max-width:760px;font-size:18px}
.tm-page-shell h2,.tm-product-detail .related>h2{font:600 24px/1.4 var(--tm-font)}
.tm-page-shell h3{font:600 21px/1.4 var(--tm-font)}

/* One card treatment, one scroll container, one heading row. */
.tm-card,.tm-tree-panel,.tm-help-sidebar,.tm-info-card,.tm-contact-form,.tm-account-welcome,
.tm-account-shortcuts>a,.woocommerce-MyAccount-navigation,#customer_login>.col-1,#customer_login>.col-2,
.tm-cart-layout .cart_totals,.tm-checkout-summary,.tm-checkout-layout #customer_details>.col-1,
.tm-checkout-layout #customer_details>.col-2,.tm-product-main>.product>.woocommerce-tabs,
.tm-product-main>.product>.woocommerce-product-gallery,.tm-empty-state,.woocommerce-Address,
.woocommerce-address-fields,.woocommerce-EditAccountForm{
 border:1px solid var(--tm-border);border-radius:var(--tm-radius);background:var(--tm-panel);padding:24px;min-width:0;
}
.tm-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}
.tm-section-heading h2{margin:0}
.tm-table-scroll{position:relative;display:block;max-width:100%;width:100%;overflow-x:auto;min-width:0}
.woocommerce table.shop_table{border:1px solid var(--tm-border);border-radius:var(--tm-radius);border-collapse:separate;font:inherit;margin:0}
.woocommerce table.shop_table :is(th,td){padding:14px 12px;border-top-color:var(--tm-border)}
.woocommerce table.shop_table thead{background:var(--tm-panel)}
.woocommerce table.shop_table th{font-weight:600}
.woocommerce:not(body){font:inherit}
.woocommerce :is(p,li,label,td,th){font-family:inherit}
.woocommerce .woocommerce-breadcrumb{font:400 var(--tm-small)/1.6 var(--tm-font);color:var(--tm-muted);margin:0}
.woocommerce .woocommerce-breadcrumb a{color:inherit}
.woocommerce .woocommerce-notices-wrapper:empty{display:none}
.woocommerce :is(.woocommerce-message,.woocommerce-info,.woocommerce-error){font:inherit;border-radius:var(--tm-radius)}
.woocommerce-info{border-top-color:var(--tm-accent)}
.woocommerce-info:before{color:var(--tm-accent)}

/* Shared inputs/buttons, including Select2/SelectWoo wherever a plugin uses them. */
.woocommerce :is(input.input-text,input[type=tel],input[type=email],input[type=password],select,textarea),
.tm-live-search .search-field,.tm-contact-form .wpforms-field :is(input,select,textarea){
 font:400 var(--tm-body)/1.4 var(--tm-font);min-height:var(--tm-control);padding:12px;
 border:1px solid var(--tm-border);border-radius:4px;background:#fff;color:var(--tm-ink);max-width:100%;
}
.woocommerce select{height:var(--tm-control);line-height:normal;padding-right:32px}
.woocommerce textarea{min-height:120px}
.woocommerce .form-row{margin-bottom:20px}
.woocommerce label{font:inherit;color:var(--tm-ink)}
.woocommerce .quantity .qty{width:74px;min-width:64px;min-height:var(--tm-control);padding:10px}
.woocommerce :is(a.button,button.button,input.button),.woocommerce #respond input#submit,
.tm-live-search button,.tm-contact-form button.wpforms-submit{
 background:var(--tm-accent);color:#fff;border:0;border-radius:4px;padding:14px 20px;font:600 16px/1.4 var(--tm-font);min-height:var(--tm-control);
}
.woocommerce :is(a.button,button.button):hover{background:#b4085d;color:white}
.woocommerce button.button:disabled{opacity:.5}
.select2-container{font:400 var(--tm-body)/1.4 var(--tm-font);vertical-align:middle;max-width:100%;margin:0}
.select2-container .select2-selection--single{
 display:flex!important;align-items:center;font:400 var(--tm-body)/1.4 var(--tm-font);height:var(--tm-control)!important;min-height:var(--tm-control);
 padding:0!important;border:1px solid var(--tm-border);border-radius:4px;background:#fff;position:relative;
}
.select2-container .select2-selection--single .select2-selection__rendered{
 height:auto!important;font:inherit;line-height:1.4!important;padding:0 32px 0 12px!important;margin:0;min-width:0;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--tm-ink);
}
.select2-container .select2-selection--single .select2-selection__arrow{height:20px;top:50%;transform:translateY(-50%);right:8px}
.select2-container .select2-selection__clear{position:absolute;right:28px;top:50%;transform:translateY(-50%);line-height:1}

/* OTP country adapter: the plugin inherits input height into the text span. */
.xoo-ml-has-cc{display:flex;flex-wrap:nowrap;align-items:flex-start;gap:10px}
.xoo-ml-has-cc .xoo-ml-phone-cc{margin:0;align-self:flex-start;max-width:125px}
.xoo-ml-phone-cc+.select2.select2-container{flex:0 0 125px;min-width:125px;width:125px!important;height:var(--tm-control)!important}
.xoo-ml-phone-cc+.select2 .selection{display:flex;align-items:center;height:100%}
.xoo-ml-phone-cc+.select2 .select2-selection{width:100%;border-radius:4px}
.xoo-ml-has-cc .xoo-ml-regphin{min-width:0;flex:1}
.xoo-ml-regphin input{width:100%;min-height:var(--tm-control)}

/* Header/footer use the same readable small text scale. */
.tm-header{position:relative;z-index:40;padding:12px 28px;background:white;border-bottom:1px solid var(--tm-border)}
.tm-header-row{min-height:56px;gap:24px}
.tm-logo{line-height:1}
.tm-logo a{display:inline-block;text-decoration:none}
.tm-logo-image{display:block;width:var(--tm-logo-width,165px);height:52px;object-fit:contain;object-position:left center}
.tm-logo-text{font:700 32px/1 var(--tm-font);color:var(--tm-accent)}
.tm-search{flex:1;min-width:220px;max-width:440px}
.tm-header .wp-block-navigation{font:600 16px/1.5 var(--tm-font)}
.tm-header .wp-block-navigation__container{gap:20px}
.tm-live-search{position:relative;z-index:30}
.tm-live-search form{margin:0}
.tm-live-search .dgwt-wcas-search-wrapp{max-width:none;min-width:0;width:100%}
.tm-live-search .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input{height:var(--tm-control);font:400 16px var(--tm-font);border:1px solid var(--tm-border);border-radius:4px}
.tm-live-search .woocommerce-product-search{display:flex;gap:6px}
.tm-live-search .search-field{flex:1;min-width:0}
.tm-footer{padding:48px 28px 24px}
.tm-footer :is(h1,h2,h3,h4,.wp-block-heading){font:600 var(--tm-footer-title,20px)/1.4 var(--tm-font);font-size:var(--tm-footer-title,20px)!important;margin:0 0 18px}
.tm-footer p,.tm-footer .wp-block-navigation{font:400 var(--tm-footer-text,16px)/1.8 var(--tm-font);color:var(--tm-muted)}
.tm-footer .wp-block-navigation__container{gap:12px}
.tm-footer .wp-block-column:first-child p{max-width:330px}
.tm-footer hr{border-color:var(--tm-border)}

/* Homepage: shared editorial bands, artwork with editable text above it. */
.tm-hero{padding:76px 28px 80px;min-height:580px;background:linear-gradient(90deg,#fff5f9d1,#fff5f973 42%,#fff5f900 70%),url('assets/hero.webp') center/cover}
.tm-hero-copy>h1{max-width:610px;font-size:clamp(44px,5.2vw,70px);letter-spacing:-.045em;margin:20px 0 24px}
.tm-hero-copy>p:not(.tm-eyebrow){max-width:520px;font-size:22px;line-height:1.6;color:var(--tm-muted)}
.tm-hero .wp-block-buttons{margin-top:32px}
.tm-section{width:100%;max-width:1240px!important;padding:64px 28px}
.tm-section>*{max-width:100%!important}
.tm-section>h2{font-size:clamp(30px,4vw,42px);letter-spacing:-.035em;margin:12px 0 32px}
.tm-category{padding:32px;border-radius:var(--tm-radius);background-position:center;background-size:cover;min-height:340px}
.tm-category-skin{background-image:linear-gradient(90deg,#f1f4e8f2,#f1f4e8b3 44%,#f1f4e800 76%),url('assets/skincare.webp')}
.tm-category-makeup{background-image:linear-gradient(90deg,#ffebf0f5,#ffebf0c7 44%,#ffebf000 78%),url('assets/makeup.webp')}
.tm-category h3{font-size:32px;max-width:260px}
.tm-category>p:not(.tm-eyebrow){max-width:240px;color:var(--tm-muted)}
.tm-category .wp-block-button__link{background:#ffffffcf;font-size:16px;padding:12px 16px}
.wp-block-button.is-style-outline .wp-block-button__link{color:var(--tm-ink);border:1px solid #b9aab2}
.tm-editorial,.tm-health-callout{padding:64px 28px;background:var(--tm-panel);text-align:center}
.tm-editorial h2,.tm-health-callout h2{font:400 clamp(30px,4vw,40px)/1.25 Georgia,serif;margin:16px 0}
.tm-editorial p,.tm-health-callout p{font:inherit}
.tm-health-callout .wp-block-buttons{justify-content:center}
.tm-health-callout>p:last-child>a{display:inline-block;background:var(--tm-accent);color:white;padding:14px 22px;border-radius:4px;text-decoration:none;font-weight:600}
.tm-product-grid,.tm-section .woocommerce{width:100%}
.tm-collection-note,.tm-editor-note{padding:24px;border:1px dashed var(--tm-border);background:var(--tm-panel)}
.tm-collection-promo{padding:32px;background:var(--tm-blush);border-radius:var(--tm-radius);margin-bottom:32px}

/* Catalogue and category navigation. */
.tm-catalogue-main{padding-inline:28px}
.tm-catalogue{max-width:1240px;margin:auto;padding:34px 0 64px}
.tm-catalogue-header{padding-bottom:20px;border-bottom:1px solid var(--tm-border);margin-bottom:24px}
.tm-catalogue-title-row,.tm-content-band{display:flex;align-items:center;justify-content:space-between;gap:20px}
.tm-catalogue-title-row h1{font:600 28px/1.35 var(--tm-font);margin:0}
.tm-catalogue-header .term-description{color:var(--tm-muted);max-width:800px}
.tm-catalogue-columns,.tm-product-columns,.tm-information-layout{display:grid;grid-template-columns:minmax(var(--tm-sidebar-min,220px),var(--tm-sidebar)) minmax(0,var(--tm-main));gap:var(--tm-gap);align-items:start}
.tm-catalogue-results,.tm-product-main,.tm-category-sidebar{min-width:0;width:100%}
.tm-category-sidebar,.tm-help-sidebar{position:sticky;top:24px}
.tm-tree-panel{padding:16px}
.tm-tree-panel>summary{list-style:none;cursor:pointer;font-weight:600;font-size:18px;padding-bottom:14px;border-bottom:1px solid var(--tm-border)}
.tm-tree-panel>nav{padding-top:10px;max-height:calc(100vh - 200px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#b77494 #f0e6eb;scrollbar-gutter:stable;overscroll-behavior:contain}
.tm-tree-panel>nav::-webkit-scrollbar{width:8px}
.tm-tree-panel>nav::-webkit-scrollbar-track{background:#f0e6eb;border-radius:12px}
.tm-tree-panel>nav::-webkit-scrollbar-thumb{background:#b77494;border:2px solid #f0e6eb;border-radius:12px}
.tm-tree-panel>nav::-webkit-scrollbar-thumb:hover{background:#92516e}
@media(forced-colors:active){.tm-tree-panel>nav{scrollbar-color:auto}}
.tm-category-tree-list{list-style:none;margin:0!important;padding:0!important}
.tm-category-tree-list .tm-category-tree-list{padding-left:10px!important;margin-left:5px!important;border-left:1px solid var(--tm-border)}
.tm-category-tree-list>li{margin:0;padding:0}
.tm-category-tree-list a,.tm-tree-all{display:block;padding:10px 6px;border-radius:4px;font:400 var(--tm-small)/1.5 var(--tm-font);text-decoration:none;color:var(--tm-muted);overflow-wrap:anywhere}
.tm-tree-all{font-weight:600;color:var(--tm-ink)}
.tm-category-tree-list a:hover,.tm-tree-all:hover{background:#f3e6ec;color:var(--tm-accent)}
.tm-category-tree-list a[aria-current=page]{background:#f9e0ec;color:var(--tm-accent);font-weight:600}
.tm-category-branch>summary{display:flex;gap:4px;align-items:center;list-style:none;cursor:pointer}
.tm-category-branch>summary>a{flex:1;min-width:0}
.tm-category-branch>summary:after{content:'+';flex:0 0 16px;text-align:center;color:var(--tm-muted)}
.tm-category-branch[open]>summary:after{content:'−'}
:is(.tm-tree-panel,.tm-category-branch)>summary::-webkit-details-marker{display:none}
.tm-catalogue-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.tm-catalogue-toolbar .woocommerce-notices-wrapper{flex-basis:100%}
.tm-catalogue-toolbar :is(.woocommerce-result-count,.woocommerce-ordering){float:none;margin:0;font:inherit;color:var(--tm-muted)}
.tm-category-tabs{display:flex;gap:10px;overflow-x:auto;padding-block:10px}
.tm-category-tab{padding:10px 16px;background:var(--tm-panel);border:1px solid var(--tm-border);border-radius:24px;white-space:nowrap;text-decoration:none}

.tm-catalogue-results,.tm-product-main{--tm-card-columns:3}

/* A single product-card system for homepage, catalogue and related products. */
.woocommerce ul.products{display:grid;grid-template-columns:repeat(var(--tm-card-columns,4),minmax(0,1fr));gap:var(--tm-gap);padding:0;margin:0;list-style:none;clear:both}
.woocommerce ul.products:before,.woocommerce ul.products:after{display:none;content:none}
.woocommerce ul.products li.product{
 float:none;width:auto!important;margin:0!important;clear:none!important;display:flex;flex-direction:column;min-width:0;position:relative;
 --tm-card-pad:16px;padding:var(--tm-card-pad);border:1px solid var(--tm-border);border-radius:var(--tm-radius);background:var(--tm-panel);text-align:left;
}
.woocommerce ul.products li.product .tm-product-image{display:block;background:white;border-radius:var(--tm-radius) var(--tm-radius) 0 0;margin:calc(-1 * var(--tm-card-pad)) calc(-1 * var(--tm-card-pad)) 18px;padding:var(--tm-card-pad);width:calc(100% + 2 * var(--tm-card-pad))}
.woocommerce ul.products li.product .tm-product-image img{margin:0;background:white}
.tm-card-actions{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:10px;margin-top:18px}
.woocommerce ul.products li.product .tm-card-actions .price{margin:0;min-width:0;overflow-wrap:anywhere}
.woocommerce ul.products li.product .tm-card-actions .tm-icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;width:44px;min-height:44px;height:44px;padding:10px;margin:0;border-radius:50%}
.tm-icon-button svg{width:23px;height:23px;pointer-events:none}
.tm-card-actions .tm-view-bag::after{display:none}
.woocommerce ul.products li.product .woocommerce-LoopProduct-link{display:flex;flex-direction:column;flex:1;min-width:0;color:var(--tm-ink);text-decoration:none}
.woocommerce ul.products li.product a img{display:block;width:100%;height:200px;object-fit:contain;margin:0 0 18px;padding:6px}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font:500 17px/1.5 var(--tm-font);color:var(--tm-ink);padding:0;margin:0 0 16px;min-height:4.5em;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.woocommerce ul.products li.product .price{font:600 17px/1.6 var(--tm-font);color:var(--tm-accent);margin:auto 0 0}
.woocommerce .price del{font-size:var(--tm-small);color:var(--tm-muted);opacity:1;margin-right:6px}
.woocommerce .price ins{text-decoration:none;background:none}
.woocommerce ul.products li.product>.button{align-self:flex-start;margin-top:18px;font-size:var(--tm-small);padding:12px 16px}
.woocommerce span.onsale{background:var(--tm-ink);color:white;border:0;border-radius:4px;min-height:0;min-width:0;padding:5px 9px;font:600 var(--tm-label)/1.5 var(--tm-font)}
.woocommerce ul.products li.product .onsale{position:absolute;z-index:2;top:12px;right:12px;left:auto;margin:0}
.tm-product-grid ul.products.columns-1{grid-template-columns:1fr}
.tm-product-grid ul.products.columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.tm-product-grid ul.products.columns-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.tm-catalogue-pagination{padding-top:38px}
.woocommerce nav.woocommerce-pagination ul{display:inline-flex;flex-wrap:wrap;justify-content:center;gap:8px;border:0;margin:0;padding:0}
.woocommerce nav.woocommerce-pagination ul li{float:none;border:0;margin:0;padding:0}
.woocommerce nav.woocommerce-pagination ul li :is(a,span){display:flex;align-items:center;justify-content:center;min-width:46px;min-height:46px;padding:10px 14px;border:1px solid var(--tm-border);border-radius:4px;background:white;color:var(--tm-ink);font:500 16px var(--tm-font)}
.woocommerce nav.woocommerce-pagination ul li span.current,.woocommerce nav.woocommerce-pagination ul li a:hover{background:var(--tm-accent);color:white;border-color:var(--tm-accent)}

/* Product layout; WooCommerce owns price, stock, cart and gallery behaviour. */
.tm-content-band{padding:18px 20px;background:var(--tm-panel);border:1px solid var(--tm-border);border-radius:var(--tm-radius);margin-bottom:24px}
.tm-content-band>span{font-weight:600;white-space:nowrap}
.tm-product-main>.product{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--tm-gap);position:relative}
.tm-product-main>.product:before,.tm-product-main>.product:after{display:none;content:none}
.tm-product-main>.product>.woocommerce-product-gallery{grid-column:1;grid-row:1;float:none!important;width:100%!important;margin:0!important;align-self:start;padding:18px;background:white}
.tm-product-main .woocommerce-product-gallery img{max-height:520px;object-fit:contain}
.tm-product-main .woocommerce-product-gallery .flex-control-thumbs img{max-height:100px}
.tm-product-main>div.product>div.summary{grid-column:2;grid-row:1;float:none;width:100%;margin:0;min-width:0;overflow-wrap:anywhere}
.tm-product-detail div.product .product_title{font:600 var(--tm-product-title,30px)/1.4 var(--tm-font);margin:0 0 22px}
.tm-product-detail div.product .summary p.price{font:600 28px/1.5 var(--tm-font);color:var(--tm-accent);margin:0 0 24px}
.tm-product-detail .summary .price del{font-size:18px}
.tm-product-detail .woocommerce-product-details__short-description{font:inherit;color:var(--tm-muted);margin-bottom:24px}
.tm-product-detail .stock{font-size:var(--tm-small);font-weight:600}
.tm-product-detail form.cart{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:24px 0!important;padding:20px 0;border-block:1px solid var(--tm-border)}
.tm-product-detail form.cart :is(.variations,.single_variation_wrap){width:100%;margin:0}
.tm-product-detail .woocommerce-variation-add-to-cart{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.tm-product-detail .product_meta{display:flex;flex-wrap:wrap;gap:6px 16px;font:400 var(--tm-small)/1.8 var(--tm-font);color:var(--tm-muted)}
.tm-product-main>.product>.woocommerce-tabs{grid-column:1/-1;grid-row:2;margin:0;clear:both}
.tm-product-detail div.product .woocommerce-tabs ul.tabs{padding:0;margin:0 0 24px}
.tm-product-detail div.product .woocommerce-tabs ul.tabs li{border:0;border-radius:0;background:none;padding:0 0 12px;margin:0 22px 0 0}
.tm-product-detail div.product .woocommerce-tabs ul.tabs li:before,.tm-product-detail div.product .woocommerce-tabs ul.tabs li:after{display:none}
.tm-product-detail div.product .woocommerce-tabs ul.tabs li.active{border-bottom:2px solid var(--tm-accent)}
.tm-product-detail div.product .woocommerce-tabs ul.tabs li a{font:600 17px/1.5 var(--tm-font);color:var(--tm-muted)}
.tm-product-detail div.product .woocommerce-tabs ul.tabs li.active a{color:var(--tm-accent)}
.tm-product-detail .woocommerce-tabs .panel{font:inherit;margin:0}
.tm-product-detail .woocommerce-tabs .panel h2{font:600 24px/1.4 var(--tm-font)}
/* Reflow imported fixed-width description wrappers; saved wording stays unchanged. */
.tm-product-detail #tab-description{display:block;width:100%;max-width:none;min-width:0}
.tm-product-detail #tab-description :is(p,div){width:auto!important;max-width:100%!important;float:none!important;column-count:auto!important}
.tm-product-detail #tab-description :is(.elementor-container,.elementor-column,.elementor-widget-wrap,.wp-block-columns,.wp-block-column){display:block!important;width:100%!important;max-width:none!important;flex-basis:auto!important;margin-inline:0!important}
.tm-product-detail #tab-description table{width:100%!important;max-width:100%;table-layout:auto}
.tm-product-detail #tab-description :is(td,th){width:auto!important;max-width:none}
.tm-product-detail #tab-description :is(iframe,video,img){max-width:100%}
.tm-product-main>.product>:is(.related,.upsells){grid-column:1/-1;width:100%;margin:16px 0 0}
.tm-product-detail .product>.onsale{z-index:5;top:16px;left:16px;right:auto}
.tm-product-share{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:24px;font-size:var(--tm-small)}
.tm-product-share a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;color:var(--tm-muted);border:1px solid var(--tm-border);border-radius:50%;text-decoration:none;background:var(--tm-panel)}
.tm-product-share a:hover{color:var(--tm-accent);border-color:var(--tm-accent)}
.tm-product-share svg{width:21px;height:21px;fill:currentColor}
.tm-product-main .sharedaddy{display:none}

/* Native WooCommerce grid adapters; clearfix pseudo-elements are not grid cells. */
.tm-cart-layout>.woocommerce:before,.tm-cart-layout>.woocommerce:after,
.tm-account-layout>.woocommerce:before,.tm-account-layout>.woocommerce:after,
#customer_login:before,#customer_login:after,.tm-checkout-layout form.checkout:before,.tm-checkout-layout form.checkout:after{display:none!important;content:none!important}
.tm-cart-layout>.woocommerce{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);gap:28px;align-items:start}
.tm-cart-layout>.woocommerce>*{min-width:0;margin-block-start:0}
.tm-cart-layout>.woocommerce>:not(.woocommerce-cart-form):not(.cart-collaterals){grid-column:1/-1}
.tm-cart-layout .woocommerce-cart-form{grid-column:1;margin:0;width:100%}
.tm-cart-layout .cart-collaterals{grid-column:2;align-self:start;width:100%;float:none;display:flex;flex-direction:column;gap:24px}
.tm-cart-layout .cart-collaterals .cart_totals{float:none;width:100%;order:-1;margin:0}
.tm-cart-layout .cart_totals h2{margin:0 0 20px}
.tm-cart-layout .cart_totals table.shop_table{border:0;background:transparent}
.tm-cart-layout .cart_totals table :is(th,td){padding:12px 0;vertical-align:top;overflow-wrap:anywhere}
.tm-cart-layout .cart_totals table th{width:30%;padding-right:12px}
.tm-cart-layout .wc-proceed-to-checkout{padding:20px 0 0}
.tm-cart-layout .wc-proceed-to-checkout a.checkout-button{display:block;margin:0;width:100%;font-size:17px;text-align:center}
.tm-cart-layout .product-thumbnail img{width:64px;max-height:80px;object-fit:contain}
.tm-cart-layout .product-name a{color:var(--tm-ink);text-decoration:none;font-weight:500}
.tm-cart-layout .coupon{display:flex;gap:8px;flex-wrap:wrap}
.tm-cart-layout .coupon .input-text{width:150px!important}
.tm-cart-layout .cart-collaterals .cross-sells{width:100%;float:none}
.tm-cart-layout :is(.woocommerce-shipping-destination,.shipping-calculator-button){font-size:var(--tm-small);line-height:1.7}

.tm-checkout-layout form.checkout{display:grid;grid-template-columns:minmax(0,7fr) minmax(320px,5fr);gap:30px;align-items:start}
.tm-checkout-layout #customer_details{grid-column:1;grid-row:1;width:100%;min-width:0}
.tm-checkout-layout #customer_details>.col-1,.tm-checkout-layout #customer_details>.col-2{float:none;width:100%;margin:0 0 24px}
.tm-checkout-layout #customer_details h3{margin-top:0}
.tm-checkout-layout #ship-to-different-address{font:600 18px/1.5 var(--tm-font)}
.tm-checkout-summary{grid-column:2;grid-row:1;position:sticky;top:24px;min-width:0}
.tm-checkout-layout #order_review_heading{font:600 24px/1.4 var(--tm-font);margin:0 0 20px;width:100%;float:none}
.tm-checkout-layout #order_review{width:100%;float:none}
.tm-checkout-layout table.woocommerce-checkout-review-order-table{border:0;table-layout:fixed;width:100%}
.tm-checkout-layout table.woocommerce-checkout-review-order-table :is(th,td){padding:14px 7px;vertical-align:top;overflow-wrap:anywhere}
.tm-checkout-layout #payment{background:transparent;margin-top:20px;border-top:1px solid var(--tm-border)}
.tm-checkout-layout #payment ul.payment_methods{padding:20px 0;border:0}
.tm-checkout-layout #payment ul.payment_methods li{padding:16px;background:white;border:1px solid var(--tm-border);border-radius:4px;margin-bottom:12px;font:inherit}
.tm-checkout-layout #payment div.payment_box{background:var(--tm-panel);font-size:var(--tm-small);line-height:1.7}
.tm-checkout-layout #payment div.payment_box:before{border-bottom-color:var(--tm-panel)}
.tm-checkout-layout #payment div.form-row{padding:0}
.tm-checkout-layout :is(.woocommerce-privacy-policy-text,.woocommerce-terms-and-conditions-wrapper){font-size:var(--tm-small);line-height:1.8}
.tm-checkout-layout #place_order{float:none;width:100%;margin-top:20px;font-size:18px}
.tm-prescription-card{grid-column:1/-1;margin:32px 0 0;clear:both;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:32px;align-items:start}
.tm-prescription-card h2{margin:12px 0}
.tm-upload-intro p{margin:0;color:var(--tm-muted);font-size:var(--tm-small)}
.tm-upload-icon{display:inline-flex;padding:12px;border-radius:16px;background:#f8e6ef;color:var(--tm-accent)}
.tm-upload-icon svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.6}
.tm-upload-zone{padding:24px;border:2px dashed #d4b7c5;border-radius:var(--tm-radius);background:white;min-width:0;transition:border-color .15s,background .15s}
.tm-upload-zone.is-dragging{border-color:var(--tm-accent);background:var(--tm-blush)}
.tm-upload-zone table{width:auto;max-width:100%;border:0;margin:0;font:inherit}
.tm-upload-zone :is(table,tbody,tr,td){display:block}
.tm-upload-zone td{padding:6px 0;font:inherit}
.tm-upload-zone tr:has(input[type=button]){display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.tm-upload-zone tr:has(input[type=button]) td{display:inline-block;width:auto}
.tm-upload-zone :is(input[type=button],input[type=file]){font:inherit;max-width:100%}
.tm-upload-zone input[type=button]{background:var(--tm-accent);color:white;border:0;border-radius:4px;min-height:var(--tm-control);padding:12px 20px;font-weight:600;cursor:pointer}
.tm-upload-zone label{font-weight:600}
.tm-upload-zone a{overflow-wrap:anywhere}
.tm-prescription-whatsapp{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid #b8d2c2;border-radius:4px;color:#22613e;background:#f3faf5;text-decoration:none;font-weight:600;margin-top:10px}
.tm-prescription-whatsapp svg,.tm-social-links svg{width:21px;height:21px;flex-shrink:0}
.tm-social-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.tm-social-links a{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid var(--tm-border);border-radius:50%;color:var(--tm-ink)}
.tm-social-links a:hover{color:var(--tm-accent);border-color:var(--tm-accent)}
.tm-footer-links p{margin-bottom:8px}
.tm-upload-zone img{max-width:100px;max-height:100px;object-fit:contain;border-radius:4px}
.tm-upload-zone :is(.tm-drop-hint,.tm-upload-types,.tm-upload-status){font-size:var(--tm-small);margin:12px 0 0;color:var(--tm-muted)}
.tm-upload-zone .tm-upload-status:empty{display:none}

/* Account/login retain native endpoints and authentication. */
.tm-account-layout>.woocommerce:has(.woocommerce-MyAccount-navigation){display:grid;grid-template-columns:minmax(var(--tm-sidebar-min,220px),var(--tm-sidebar)) minmax(0,var(--tm-main));gap:var(--tm-gap);align-items:start}
.tm-account-layout>.woocommerce:has(.woocommerce-MyAccount-navigation)>:not(.woocommerce-MyAccount-navigation):not(.woocommerce-MyAccount-content){grid-column:1/-1}
.tm-account-layout .woocommerce-MyAccount-navigation{grid-column:1;float:none;width:100%;margin:0;padding:12px;overflow:hidden}
.tm-account-layout .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;max-width:100%}
.tm-account-layout .woocommerce-MyAccount-navigation li{margin:0;padding:0;border:0}
.tm-account-layout .woocommerce-MyAccount-navigation li a{display:block;padding:11px 12px;border-radius:4px;font:500 var(--tm-small)/1.5 var(--tm-font);color:var(--tm-ink);text-decoration:none!important}
.woocommerce-MyAccount-navigation .is-active a{background:var(--tm-accent);color:white}
.tm-account-layout .woocommerce-MyAccount-content{grid-column:2;float:none;width:100%;min-width:0;margin:0;overflow:hidden}
.tm-account-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:28px}
.tm-account-overview .tm-eyebrow{font-size:var(--tm-label);letter-spacing:.08em}
.tm-account-welcome{margin:0;overflow-wrap:anywhere}
.tm-account-welcome h2{font:600 23px/1.4 var(--tm-font);margin:12px 0}
.tm-account-welcome p:last-child{margin-bottom:0;color:var(--tm-muted);font-size:var(--tm-small)}
.tm-account-shortcuts{display:contents}
.tm-account-shortcuts>a{display:flex;flex-direction:column;gap:14px;text-decoration:none;color:var(--tm-ink);overflow-wrap:anywhere}
.tm-account-shortcuts strong{font:600 23px/1.4 var(--tm-font)}
.tm-account-shortcuts>a>span:last-child{font-size:var(--tm-small);color:var(--tm-muted)}
.tm-recent-orders{width:100%;max-width:none}
.tm-recent-orders table{width:100%;min-width:590px;background:var(--tm-panel)}
.tm-order-status{display:inline-block;border-radius:20px;background:var(--tm-blush);padding:5px 10px;color:var(--tm-accent);font-size:var(--tm-small)}
.tm-account-layout #customer_login{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start;float:none;width:100%;max-width:none}
.tm-account-layout #customer_login>.col-1,.tm-account-layout #customer_login>.col-2{float:none;width:100%;max-width:none;margin:0}
.tm-account-layout .woocommerce :is(form.login,form.register){padding:0;border:0;margin:24px 0 0}
.woocommerce-Address address{font-style:normal;font:inherit}
.woocommerce fieldset{border:1px solid var(--tm-border);border-radius:var(--tm-radius);padding:20px;margin-block:24px}

/* Contact/policy layouts use the same cards and text scale. */
.tm-contact-grid,.tm-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:36px}
.tm-info-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:30px}
.tm-info-card{overflow-wrap:anywhere}
.tm-info-card h2{margin:18px 0 12px}
.tm-card-number{font-size:var(--tm-small);color:var(--tm-accent)}
.tm-contact-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:32px;padding:32px;background:var(--tm-panel);border-radius:var(--tm-radius)}
.tm-contact-form{background:white}
.tm-contact-form .wpforms-container{margin:0}
.tm-contact-form .wpforms-field :is(input,textarea,select){width:100%;max-width:100%}
.tm-help-sidebar h2{margin-top:0;font-size:22px}
.tm-help-links{display:flex;flex-direction:column;gap:6px}
.tm-help-links a{padding:9px 0;font-size:16px;color:var(--tm-muted);text-decoration:none}
.tm-help-links a[aria-current=page]{color:var(--tm-accent);font-weight:600}
.tm-policy-body{min-width:0;overflow-wrap:anywhere;text-align:justify;hyphens:auto;line-height:1.85}
.tm-policy-body :is(p,li,span,div){font-family:var(--tm-font)!important;font-size:var(--tm-body)!important;text-align:justify!important;line-height:1.85!important}
.tm-policy-body :is(h1,h2,h3,h4){text-align:left}
.tm-policy-body li{margin-bottom:12px}
.tm-policy-body :is(.elementor-container,.elementor-column,.elementor-widget-wrap){width:auto!important;max-width:none!important;margin:0!important;padding:0!important}
.tm-about-banner{min-height:380px;background:linear-gradient(90deg,#fff6f9f2,#fff6f9bf 50%,transparent 82%),url('assets/hero.webp') center/cover;border-radius:var(--tm-radius);padding:44px}
.tm-about-banner>div{max-width:520px}
.tm-about-banner h2{font:400 42px/1.2 Georgia,serif}

/* Responsive rules live together; text remains readable rather than shrinking. */
@media(max-width:1100px){
 .tm-search{order:3;flex-basis:100%;max-width:none}
 .tm-header .wp-block-navigation{margin-left:auto}
 .woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}
 .tm-account-overview,.tm-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .tm-account-overview :is(.tm-account-welcome,.tm-account-shortcuts>a){padding:20px}
}
@media(max-width:800px){
 .tm-catalogue-columns,.tm-product-columns,.tm-information-layout,.tm-contact-body,
 .tm-cart-layout>.woocommerce,.tm-checkout-layout form.checkout,.tm-account-layout>.woocommerce:has(.woocommerce-MyAccount-navigation){grid-template-columns:minmax(0,1fr)}
 .tm-category-sidebar,.tm-help-sidebar,.tm-checkout-summary{position:static}
 .tm-tree-panel>summary{display:flex;align-items:center;justify-content:space-between;border:0;padding:0}
 .tm-tree-panel>summary:after{content:'+'}
 .tm-tree-panel[open]>summary:after{content:'−'}
 .tm-tree-panel>nav{max-height:360px}
 .tm-cart-layout .woocommerce-cart-form,.tm-cart-layout .cart-collaterals,
 .tm-account-layout .woocommerce-MyAccount-navigation,.tm-account-layout .woocommerce-MyAccount-content{grid-column:1}
 .tm-checkout-layout .tm-checkout-summary{grid-column:1;grid-row:2}
 .tm-account-layout #customer_login{grid-template-columns:minmax(0,1fr)}
 .tm-account-layout .woocommerce-MyAccount-navigation ul{display:flex;gap:6px;overflow-x:auto}
 .tm-account-layout .woocommerce-MyAccount-navigation li{flex:0 0 auto}
 .tm-help-links{flex-direction:row;flex-wrap:wrap;gap:8px 18px}
 .tm-catalogue-title-row,.tm-content-band{align-items:flex-start;flex-direction:column;gap:10px}
}
@media(max-width:600px){
 :root{--tm-body:16px;--tm-small:15px;--tm-gap:16px}
 .tm-header{padding:10px 20px}
 .tm-header-row{gap:14px}
 .tm-logo-image{width:min(var(--tm-logo-width,165px),145px);height:48px}
 .tm-search{min-width:0}
 .tm-header .wp-block-navigation__responsive-container.is-menu-open{padding:28px}
 .tm-page,.tm-page-shell,.tm-product-detail{padding:28px 20px 44px}
 .tm-page-intro h1{font-size:30px}
 .tm-page-lead{font-size:17px}
 .tm-catalogue-main{padding-inline:20px}
 .tm-section{padding:44px 20px}
 .tm-footer{padding:40px 22px 22px}
 .tm-editorial,.tm-health-callout{padding:48px 22px}
 .tm-hero{background-image:linear-gradient(180deg,#fff4f8 0%,#fff4f8e6 35%,#fff4f800 65%),url('assets/hero.webp');background-size:cover,auto 290px;background-position:center,right bottom;background-repeat:no-repeat;padding:40px 22px 270px;min-height:0}
 .tm-hero-copy>h1{font-size:44px;max-width:100%}
 .tm-hero-copy>p:not(.tm-eyebrow){font-size:19px}
 .tm-category{padding:24px;min-height:330px}
 .tm-category h3{font-size:28px;max-width:210px}
 .tm-category>p:not(.tm-eyebrow){max-width:200px}
 .woocommerce ul.products,.tm-product-grid ul.products.columns-3{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .woocommerce ul.products li.product{--tm-card-pad:12px;padding:var(--tm-card-pad)}
 .woocommerce ul.products li.product a img{height:165px}
 .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:16px}
 .woocommerce ul.products li.product .price{font-size:16px}
 .woocommerce ul.products li.product .tm-card-actions{gap:6px}
 .woocommerce ul.products li.product .tm-card-actions .price{display:contents;font-size:15px;overflow-wrap:normal}
 .tm-card-actions .price>del{grid-column:1/-1;margin:0;white-space:nowrap}
 .tm-card-actions .price>:is(ins,.woocommerce-Price-amount){grid-column:1;grid-row:2;font-size:15px;white-space:nowrap}
 .woocommerce ul.products li.product .tm-card-actions .tm-icon-button{grid-column:2;grid-row:2}

 .woocommerce ul.products li.product>.button{padding:11px 13px;font-size:15px}
 .tm-product-main>.product{grid-template-columns:minmax(0,1fr)}
 .tm-product-main>div.product>div.summary{grid-column:1;grid-row:2}
 .tm-product-main>.product>.woocommerce-tabs{grid-column:1;grid-row:3;padding:20px}
 .tm-product-detail div.product .product_title{font-size:min(var(--tm-product-title,30px),27px)}
 .tm-product-detail div.product .woocommerce-tabs ul.tabs li{margin-right:14px}
 .tm-product-detail div.product .woocommerce-tabs ul.tabs li a{font-size:16px}
 .tm-contact-grid,.tm-info-grid{grid-template-columns:1fr}
 .tm-prescription-card{grid-template-columns:minmax(0,1fr);gap:20px}.tm-upload-zone{padding:18px}
 .tm-contact-body{padding:22px}
 .tm-about-banner{padding:28px}
}
@media(max-width:420px){.tm-account-overview{grid-template-columns:1fr}.woocommerce ul.products li.product a img{height:145px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* Page editor content beneath the About introduction. */
.tm-about-content{padding-block:0 48px}.tm-about-content .wp-block-post-content{font-size:var(--tm-body);line-height:1.7}

/* Shared editorial sections: native blocks use the same spacing, cards and type. */
.tm-about-content .tm-section{margin-block:44px;padding:0}.tm-grid{display:grid;gap:24px}.tm-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}.tm-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}.tm-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center}
:is(.tm-grid,.tm-split)>.wp-block-group{margin:0;min-width:0}
.tm-about-layout{padding-bottom:0}.tm-about-content{padding-inline:28px}.tm-about-content .wp-block-post-content{max-width:none}.tm-about-content h2{font:400 clamp(26px,2.4vw,36px)/1.2 Georgia,serif;margin:0 0 20px}.tm-about-content p{color:var(--tm-muted)}
.tm-about-hero{gap:0;background:var(--tm-panel);border:1px solid var(--tm-border);border-radius:var(--tm-radius);overflow:hidden}.tm-about-hero-text{padding:42px}.tm-about-content .tm-about-hero h2{font-size:clamp(34px,3.4vw,50px)}.tm-about-hero-art{height:100%;min-height:440px}.tm-about-hero-art figure{margin:0;height:100%}.tm-about-hero-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:72% center}
.tm-about-content .tm-eyebrow{color:var(--tm-accent);font-size:var(--tm-small);letter-spacing:.12em}.tm-about-origin{padding-block:16px;align-items:start}.tm-section-intro h2{max-width:420px}.tm-section-copy p:first-child{margin-top:0}
.tm-value-card,.tm-step-card,.tm-care-card{padding:28px}.tm-about-content :is(.tm-value-card,.tm-step-card) h2{font:600 23px/1.3 var(--tm-font)}.tm-about-content .tm-number{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;background:#fff2f6;color:var(--tm-accent);border-radius:50%;font-weight:600;margin:0 0 22px}
.tm-media-card{border:1px solid var(--tm-border);border-radius:var(--tm-radius);overflow:hidden;background:var(--tm-panel)}.tm-media-card figure{margin:0;aspect-ratio:1.8;overflow:hidden}.tm-media-card img{display:block;width:100%;height:100%;object-fit:cover}.tm-media-card-body{padding:28px}.tm-media-card-body h2{margin-bottom:12px}
.tm-about-content .tm-health-story{padding:32px 40px;background:#f0f2e9}.tm-care-card-pink{background:#fff2f6}.tm-about-content .tm-text-link a{color:var(--tm-accent);font-weight:600;text-decoration:none}.tm-about-content .tm-text-link a:hover{text-decoration:underline}
/* One shared progress indicator for user-triggered requests. */
.tm-progress{position:fixed;inset:0 0 auto;height:3px;z-index:100001;overflow:hidden;background:#fbe2ee}.tm-progress::after{content:'';display:block;width:40%;height:100%;background:var(--tm-accent);animation:tm-progress 1.15s ease-in-out infinite}.admin-bar .tm-progress{top:32px}
.tm-feedback{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:100001;display:flex;align-items:center;gap:12px;max-width:calc(100vw - 32px);padding:14px 20px;border:1px solid var(--tm-border);border-radius:var(--tm-radius);background:#fff;box-shadow:0 6px 28px #29232920;color:var(--tm-ink);font-size:16px}.tm-feedback[hidden],.tm-progress[hidden]{display:none}.tm-feedback[data-state=error]{border-color:var(--tm-accent)}
.tm-feedback[data-state=busy]::before,.tm-icon-button.tm-is-busy::before{content:'';width:18px;height:18px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:tm-spin .75s linear infinite;flex-shrink:0}.tm-icon-button.tm-is-busy{cursor:progress}.tm-icon-button.tm-is-busy>svg{display:none}.woocommerce ul.products li.product .tm-icon-button.tm-is-busy::after{display:none}
@keyframes tm-spin{to{transform:rotate(360deg)}}@keyframes tm-progress{0%{transform:translateX(-100%)}100%{transform:translateX(350%)}}
@media(max-width:800px){.tm-split{grid-template-columns:1fr;gap:24px}.tm-grid-three{grid-template-columns:1fr}.tm-about-hero{gap:0}.tm-about-hero-art{min-height:0;aspect-ratio:1.6}.tm-about-hero-text{padding:28px}.tm-about-content .tm-health-story{padding:28px}}
@media(max-width:600px){.tm-about-content{padding-inline:20px}.tm-about-content .tm-section{margin-block:32px}.tm-grid-two{grid-template-columns:1fr}.tm-value-card,.tm-step-card,.tm-care-card,.tm-media-card-body{padding:24px}.tm-about-content .tm-about-hero h2{font-size:36px}.admin-bar .tm-progress{top:46px}.tm-feedback{bottom:16px;width:max-content}}
@media(prefers-reduced-motion:reduce){.tm-progress::after{animation:none;width:100%}.tm-feedback[data-state=busy]::before,.tm-icon-button.tm-is-busy::before{animation:none;border-style:dotted}}
