/* Shared utilities only. Each theme has its own composition and visual rules below. */
body.td-store{background:#fff}.ds-section{margin-block:34px}.ds-kicker{font:600 12px/1.5 Arial,sans-serif;letter-spacing:1.6px;text-transform:uppercase;margin:0 0 10px;color:var(--td-accent)}.ds-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:19px}.ds-section-heading h2{font:31px/1.15 Georgia,serif;font-weight:400;letter-spacing:-.7px;margin:0}.ds-section-heading .ds-kicker{margin-bottom:6px}.ds-text-link{display:inline-flex;align-items:center;gap:9px;font-size:12px;color:var(--td-accent);text-decoration:none;white-space:nowrap}.ds-text-link:hover{text-decoration:underline;text-underline-offset:4px}.ds-text-link svg{width:16px}.ds-button{display:inline-flex;align-items:center;justify-content:center;gap:16px;border:1px solid var(--td-accent);background:var(--td-accent);color:white;padding:12px 20px;min-height:42px;text-decoration:none;font:600 12px/1.4 Arial,sans-serif!important;letter-spacing:.5px;text-transform:uppercase;cursor:pointer}.ds-button svg{width:18px}.ds-button:hover{filter:brightness(.92)}.ds-outline{background:transparent;color:var(--td-ink);border-color:#a9a59b}.ds-small{padding:8px 13px;min-height:32px;font-size:12px!important}.ds-button-row{display:flex;gap:12px;flex-wrap:wrap}.ds-search{display:flex;min-width:0;align-items:stretch}.ds-search input{min-width:0;flex:1;border:1px solid #d7d5ce;padding:11px 14px;width:100%;font-size:12px}.ds-search button{background:var(--td-accent);color:#fff;border:0;padding:8px 12px}.ds-search button svg{width:20px}.ds-search-inline{flex:1;max-width:420px}.ds-product-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:13px}.ds-product-grid .product-card{min-width:0}.ds-product-grid .product-img{width:100%;aspect-ratio:1;object-fit:contain}.ds-product-grid .product-card__name,.ds-product-grid .product-title{font-size:12px;line-height:1.4}.ds-product-grid .product-card__cart-btn{font-size:12px}.ds-newsletter-form{min-width:0}.ds-email-row{display:flex;gap:0}.ds-email-row input{min-width:0;flex:1;width:100%;background:#fff;border:1px solid #d8d4cb;padding:12px;font:12px Arial,sans-serif}.ds-email-row button{border:1px solid var(--td-accent);background:var(--td-accent);color:#fff;padding:12px 20px;font-size:12px!important;text-transform:uppercase;font-weight:700;white-space:nowrap}.ds-consent{display:flex;align-items:flex-start;gap:7px;font:12px/1.5 Arial,sans-serif;margin-top:10px;color:inherit}.ds-consent input{width:13px;height:13px;flex-shrink:0;margin-top:1px}.ds-consent a{color:inherit}.ds-form-status{font:12px/1.5 Arial,sans-serif;margin:8px 0 0}.ds-footer{border-top:1px solid #e9e4dc}.ds-footer h2{font:600 12px/1.4 Arial,sans-serif;text-transform:uppercase;letter-spacing:.7px;margin:0 0 15px}.ds-footer p{font-size:12px;line-height:1.7;color:#6a665f}.ds-footer a:not(.td-brand){display:block;text-decoration:none;color:inherit;font-size:12px;margin:5px 0}.ds-footer a:hover{text-decoration:underline}.ds-footer .td-brand{margin-bottom:12px}.ds-legal{border-top:1px solid #e3ded5;display:flex;justify-content:space-between;gap:20px;padding-block:17px;font-size:12px;color:#777267}.ds-install-note{font-size:12px}.ds-install-note a{color:var(--td-accent)}
@media(max-width:1100px){.ds-product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.ds-section-heading h2{font-size:28px}.ds-search-inline{max-width:300px}}
@media(max-width:680px){.ds-section{margin-block:27px}.ds-section-heading{gap:15px;margin-bottom:15px}.ds-section-heading h2{font-size:25px}.ds-kicker{font-size:12px;letter-spacing:1.2px}.ds-text-link{font-size:12px;white-space:normal;text-align:right;gap:5px}.ds-text-link svg{width:14px}.ds-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px}.ds-button{padding:11px 15px;gap:10px;font-size:12px!important}.ds-button-row{gap:9px}.ds-email-row button{padding-inline:13px;font-size:12px!important}.ds-consent{font-size:12px;flex-wrap:wrap}.ds-legal{display:block;font-size:12px;padding-block:15px}.ds-legal span{display:block;margin-block:5px}.td-nav.is-open{display:flex;z-index:50}.td-nav a{padding-block:11px}.ds-search-inline input{font-size:12px}.ds-footer .td-wordmark{font-size:23px}.ds-footer h2{margin-bottom:10px}}
/* Keep native purchase actions visible and place them beneath card information. */
.ds-product-grid .product-card{position:relative;padding-bottom:48px}.ds-product-grid .product-card__image-wrap{position:static}.ds-product-grid .product-card__cart-overlay{position:absolute!important;left:10px;right:10px;bottom:10px;top:auto;opacity:1!important;visibility:visible!important;transform:none!important;z-index:2}.ds-product-grid .product-card__cart-btn{min-height:31px;display:flex;align-items:center;justify-content:center;text-align:center;padding:7px 5px;font-size:12px;line-height:1.2}.ds-product-grid .product-title{white-space:normal;overflow:hidden;text-overflow:clip;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;min-height:31px;line-height:1.4}.td-photo.ds-cropped{position:relative;display:block;overflow:hidden}.td-photo.ds-cropped img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover}.ds-product-grid .product-hover-actions{top:9px;right:9px}

/* Dedicated panoramic photos always preserve their intrinsic proportions. */
.td-photo.ds-hero-photo>img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover!important;object-position:center center}
@media(min-width:981px){.td-store .v-hero,.td-store .p-hero,.td-store .e-hero,.td-store .h-hero{min-height:max(405px,31.25vw)}}
@media(max-width:980px){.td-photo.ds-hero-photo>img{object-position:75% center}}
.td-velora .tc-shop__banner-title,.td-everloom .tc-shop__banner-title{font-family:Georgia,serif;font-weight:400;letter-spacing:-.6px}
.td-peakform .tc-shop__banner-title{font-family:Arial,sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:-1px}
.td-pawhaven .tc-shop__banner-title{font-family:Georgia,serif;font-weight:700}

/* Native product actions use the same palette as the homepage calls to action. */
body.td-store{--ds-action-bg:var(--td-accent);--ds-action-ink:#fff}
body.td-peakform{--ds-action-bg:#d2e637;--ds-action-ink:#102127}
body.td-everloom{--ds-action-bg:#af786d;--ds-action-ink:#fff}
body.td-store :is(.tc-pdp__add-btn,.tc-pdp__bundle-btn,.tc-pdp__stocknotify-btn,.tc-pdp__tab-btn--active,.tc-pdp .tc-btn--primary,.tce-sticky-bar__btn){background:var(--ds-action-bg);border-color:var(--ds-action-bg);color:var(--ds-action-ink)}
body.td-store :is(.tc-pdp__add-btn,.tc-pdp__bundle-btn,.tc-pdp__stocknotify-btn,.tc-pdp .tc-btn--primary,.tce-sticky-bar__btn):hover:not(:disabled){background:var(--ds-action-bg);border-color:var(--ds-action-bg);color:var(--ds-action-ink);filter:brightness(.92)}
body.td-store :is(.tc-pdp__wish-btn,.tc-pdp__compare-btn,.tc-pdp__tab-btn:not(.tc-pdp__tab-btn--active)){color:var(--td-accent);border-color:var(--td-accent)}
body.td-store :is(.tc-pdp__wish-btn,.tc-pdp__compare-btn,.tc-pdp__tab-btn:not(.tc-pdp__tab-btn--active)):hover{background:var(--td-soft);color:var(--td-accent);border-color:var(--td-accent)}
body.td-store :is(.tc-pdp__wish-btn.tc-wishlist-toggle--active,.tc-pdp__compare-btn.tc-compare-toggle--active){background:var(--td-soft);border-color:var(--td-accent);color:var(--td-accent)}
/* Readable controls and native labels; icons keep their independent size. */
body.td-store :is(.product-card__cart-btn,.product-card__list-cart-btn,.tc-ribbon,.product-card__sku,.product-card__body-stock,.product-card__stock-badge,.tc-pdp__tiers-title,.tc-pdp__tier-qty,.tc-pdp__tier-save,.tc-pdp__tag-chip){font-size:12px}
body.td-store .ds-product-grid .product-title{min-height:34px}
body.td-store .ds-product-grid .product-card{padding-bottom:53px}
body.td-store .ds-product-grid .product-card__cart-btn{font-size:12px;min-height:34px}
/* Only legal, consent and explicitly identified demo notes use smaller text. */
body.td-store .ds-legal,body.td-store .ds-legal span,body.td-store .ds-consent,body.td-store .ds-consent a,body.td-store .e-personalizer small,body.td-store .e-quote-grid small,body.td-store .h-delivery-action>small{font-size:10px;line-height:1.6}
/* Header navigation needs more room now that its labels are readable. */
@media(min-width:1051px){body.td-peakform .p-header-row{gap:20px}body.td-peakform .p-header .td-nav{gap:20px}body.td-peakform .p-header .ds-search-inline{max-width:220px}}

@media(max-width:680px){body.td-peakform .p-goal-grid>a{min-width:0;width:100%;aspect-ratio:auto;min-height:170px}}

.v-announcement{text-align:center;background:#6a7059;color:#fff;font-size:12px;letter-spacing:1px;padding:7px 12px}.v-announcement span{margin-inline:16px}.v-header-row{display:flex;align-items:center;gap:34px;min-height:84px}.v-header .td-wordmark{font-size:28px}.v-header .td-nav{gap:22px}.v-header .td-nav a{font-size:12px}.v-header .td-actions{gap:11px}.v-hero{position:relative;overflow:hidden;background:#f2eee6;min-height:430px}.v-hero>.td-photo{position:absolute;inset:0;width:100%;height:100%}.v-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#f6f3ed 0%,#f6f3edf5 25%,#f6f3ed77 43%,transparent 60%);pointer-events:none}.v-hero>.td-wrap{position:relative;z-index:1}.v-hero-copy{padding-block:49px 24px;max-width:470px}.v-hero h1{font:53px/1.03 Georgia,serif;letter-spacing:-1.8px;font-weight:400;margin:14px 0 20px;max-width:440px}.v-hero h1 em{color:#ad766c;font-weight:400}.v-hero-copy>p:not(.ds-kicker){font-size:13px;line-height:1.65;max-width:330px;margin-bottom:23px;color:#625f55}.v-hero-values{display:flex;gap:21px;font-size:12px;margin-top:30px;color:#68675e}.v-hero-values span{display:flex;gap:6px;align-items:center}.v-hero-values svg{width:17px;height:20px}.v-concerns{margin-top:25px}.v-concerns .ds-section-heading h2{font:600 12px Arial,sans-serif;letter-spacing:.5px;text-transform:uppercase}.v-concern-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.v-concern-grid>a{text-decoration:none;color:inherit;text-align:center;background:#faf8f4;border-radius:7px;overflow:hidden;padding-bottom:11px}.v-concern-grid .td-photo{aspect-ratio:1.6}.v-concern-grid strong{display:block;font-size:12px;letter-spacing:.3px;text-transform:uppercase;margin:9px 0 1px}.v-concern-grid a>span:last-child{font-size:12px;color:#777269}.v-routine-ribbon{display:grid;grid-template-columns:1fr 1.5fr;gap:40px;align-items:center;background:#f6f0eb;border:1px solid #efe8e0;border-radius:6px;padding:23px 32px}.v-routine-ribbon h2{font:26px/1.1 Georgia,serif;letter-spacing:-.6px;margin:0 0 16px}.v-routine-photos{display:flex;align-items:center;gap:12px}.v-routine-photos>a{flex:1;min-width:0;color:#625f55;text-decoration:none;text-align:center;font-size:12px}.v-routine-photos .td-photo{aspect-ratio:.8;mix-blend-mode:multiply}.v-routine-photos .v-plus{font:18px Georgia,serif;color:#99948a}.v-essentials .ds-section-heading h2{font-size:28px}.v-finder{display:grid;grid-template-columns:1fr 1fr;background:#f7f5ef;gap:0}.v-finder-image{position:relative;min-height:440px;overflow:hidden}.v-finder-image img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:26% center}.v-finder-image>span{position:absolute;bottom:28px;left:30px;font:32px/1.12 Georgia,serif;color:white;text-shadow:0 2px 20px #0008}.v-finder-image:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#1d271d66);pointer-events:none}.v-finder-image>span{z-index:1}.v-finder-form{padding:39px 45px}.v-finder h2{font:35px/1.1 Georgia,serif;letter-spacing:-.8px;margin:0 0 13px}.v-finder-form>p:not(.ds-kicker){font-size:12px;color:#6e6a61}.v-finder fieldset{border:0;padding:0;margin:20px 0}.v-finder fieldset label{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #dedbd1;font-size:12px;cursor:pointer}.v-finder fieldset label svg{margin-left:auto;width:15px}.v-finder input{accent-color:#686f55}.v-finder-result{margin-top:16px;padding:15px;background:#e7e9de;font-size:12px}.v-finder-result strong,.v-finder-result a{display:block;margin-top:4px;color:#4c5540}.v-ingredients{background:#eaece1;padding:26px 0;margin-block:34px}.v-ingredients .ds-section-heading h2{font-size:25px}.v-ingredient-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:20px}.v-ingredient-grid a{display:flex;align-items:center;gap:10px;text-decoration:none;color:#444a38}.v-ingredient-grid svg{width:33px;height:36px;stroke-width:1}.v-ingredient-grid strong{display:block;font-size:12px;text-transform:uppercase}.v-ingredient-grid small{font-size:12px;color:#717764}.td-journal{padding-top:0;border-top:0}.td-journal-card{background:#faf8f5}.v-story{display:grid;grid-template-columns:.85fr 1.15fr;min-height:270px;background:#f6f1eb;margin-bottom:37px}.v-story>div{padding:34px 48px}.v-story h2{font:39px/1.08 Georgia,serif;font-weight:400;letter-spacing:-1px;margin:0 0 18px}.v-story h2 em{color:#ae786b}.v-story p:not(.ds-kicker){font-size:12px;line-height:1.8;max-width:330px;color:#6b665e}.v-story img{width:100%;height:100%;max-height:340px;object-fit:cover;object-position:center 38%}.v-signup{background:#f3e9e2;padding:24px 0}.v-signup-inner{display:grid;grid-template-columns:40px 1fr 1.1fr;gap:28px;align-items:center}.v-signup-inner>svg{width:38px;height:38px;stroke-width:1}.v-signup h2{font:27px Georgia,serif;letter-spacing:-.6px;margin:0 0 6px}.v-signup p:not(.ds-kicker){font-size:12px;margin:0;color:#766e63}.v-footer{background:#fcfaf6}.v-footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr 1.1fr;gap:35px;padding-block:38px}.v-footer .td-wordmark{font-size:24px}.v-footer-promises{display:grid;grid-template-columns:25px 1fr;gap:15px 12px;border-left:1px solid #e2ddd4;padding-left:25px}.v-footer-promises svg{width:25px;height:25px;color:#7e806d}.v-footer-promises p{margin:0;font-size:12px}.v-footer-promises strong{display:block;color:#4f5144;font-size:12px;text-transform:uppercase;letter-spacing:.4px}
@media(max-width:1100px){.v-header-row{gap:20px}.v-header .td-nav{gap:15px}.v-header .td-nav a{font-size:12px}.v-hero h1{font-size:48px}.v-routine-ribbon{gap:20px;padding:22px}.v-finder-form{padding:30px}.v-ingredient-grid{grid-template-columns:repeat(3,1fr);gap:20px}.v-footer-grid{grid-template-columns:1.2fr 1fr 1fr 1fr;gap:24px}.v-footer-promises{display:none}}
@media(max-width:800px){.v-header .td-nav{gap:10px}.v-header .td-nav a{font-size:12px}.v-header .td-wordmark{font-size:23px}.v-header .td-actions{gap:5px}.v-header-row{gap:12px}}
@media(max-width:680px){.v-announcement{font-size:12px;letter-spacing:.4px}.v-announcement span{margin-inline:5px}.v-header-row{min-height:76px;justify-content:space-between}.v-header .td-nav{display:none}.v-header .td-nav.is-open{display:flex;gap:0}.v-header .td-nav a{font-size:12px}.v-hero{min-height:0;display:flex;flex-direction:column}.v-hero>.td-photo{position:relative;order:2;aspect-ratio:2.65;height:auto}.v-hero:after{display:none}.v-hero>.td-wrap{order:1;width:calc(100% - 42px)}.v-hero-copy{padding:32px 0 22px;max-width:100%}.v-hero h1{font-size:40px;max-width:350px;margin-top:10px}.v-hero-copy>p:not(.ds-kicker){font-size:12px}.v-hero-values{font-size:12px;gap:11px;margin-top:22px}.v-hero-values svg{width:14px}.v-concern-grid{grid-template-columns:repeat(3,1fr);gap:10px}.v-concern-grid .td-photo{aspect-ratio:1.1}.v-concern-grid strong{font-size:12px}.v-concern-grid a>span:last-child{font-size:12px}.v-routine-ribbon{display:block;padding:20px}.v-routine-ribbon h2{font-size:25px}.v-routine-photos{margin-top:12px;gap:7px}.v-routine-photos .td-photo{aspect-ratio:.9}.v-finder{grid-template-columns:1fr}.v-finder-image{min-height:230px}.v-finder-image>span{font-size:29px;left:24px;bottom:22px}.v-finder-form{padding:26px}.v-finder h2{font-size:31px}.v-ingredients{padding-block:23px;margin-block:26px}.v-ingredients .ds-section-heading h2{font-size:23px}.v-ingredient-grid{grid-template-columns:repeat(2,1fr);gap:20px 14px}.v-ingredient-grid strong{font-size:12px}.v-ingredient-grid small{font-size:12px}.v-ingredient-grid svg{width:26px}.v-story{display:flex;flex-direction:column}.v-story>div{padding:27px}.v-story h2{font-size:34px}.v-story img{max-height:230px;order:-1;aspect-ratio:1.7}.v-signup-inner{grid-template-columns:1fr;gap:18px}.v-signup-inner>svg{display:none}.v-signup h2{font-size:26px}.v-footer-grid{grid-template-columns:1fr 1fr;gap:24px;padding-block:30px}.v-footer-grid>div:first-child{grid-column:1/3}.v-footer .td-wordmark{font-size:24px}}
