/*
Theme Name: LP PEPTIDE
Theme URI: https://rtpeptideau.com/
Author: LP PEPTIDE
Description: A custom WordPress and WooCommerce theme for LP PEPTIDE, featuring a warm research-inspired palette, responsive layouts and a clean, shadow-free design.
Version: 1.1.06
Requires at least: 6.4
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: rt-peptide
Tags: e-commerce, custom-logo, custom-menu, featured-images, full-width-template
*/

/* Role colors use space-separated OKLCH channels, for oklch(var(--primary-700)). */
:root {
  --font-body: "Inter", Arial, sans-serif;
  --font-heading: "Playfair Display", Georgia, serif;
  --font-label: "Inter", Arial, sans-serif;
  --font-size-xs: .75rem;
  --font-size-sm: .875rem;
  --font-size-base: 1rem;
  --font-size-lg: 1.125rem;
  --font-size-xl: 1.25rem;
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --line-height-body: 1.65;
  --line-height-heading: 1.2;
  --radius-sm: 4px;
  --radius-control: 6px;
  --radius-md: 6px;
  --radius-card: 8px;
  --radius-lg: 8px;
  --radius-full: 9999px;
  --container-width: none;
  --container-wide: none;
  --container-padding: 24px;
  --section-spacing: 80px;
  --section-spacing-mobile: 48px;
  --transition-fast: 150ms ease;
  --transition-base: 250ms ease;
  --transition-slow: 400ms ease;
  /* Background: warm white to deep cream brown */
  --background-50: 0.992 0.006 85;
  --background-100: 0.978 0.011 82;
  --background-200: 0.950 0.017 79;
  --background-300: 0.910 0.023 76;
  --background-400: 0.850 0.029 73;
  --background-500: 0.770 0.034 70;
  --background-600: 0.680 0.038 67;
  --background-700: 0.580 0.040 64;
  --background-800: 0.480 0.041 61;
  --background-900: 0.380 0.040 58;
  --background-950: 0.280 0.037 55;
  /* Primary: warm terracotta, never blue/purple */
  --primary-50: 0.978 0.014 55;
  --primary-100: 0.950 0.028 54;
  --primary-200: 0.900 0.050 52;
  --primary-300: 0.830 0.077 49;
  --primary-400: 0.740 0.105 46;
  --primary-500: 0.630 0.125 43;
  --primary-600: 0.540 0.118 41;
  --primary-700: 0.455 0.102 40;
  --primary-800: 0.375 0.080 39;
  --primary-900: 0.305 0.057 38;
  --primary-950: 0.235 0.039 37;
  /* Accent: orange-red */
  --accent-50: 0.978 0.015 50;
  --accent-100: 0.950 0.040 46;
  --accent-200: 0.905 0.077 42;
  --accent-300: 0.850 0.120 39;
  --accent-400: 0.775 0.165 36;
  --accent-500: 0.680 0.195 34;
  --accent-600: 0.590 0.190 32;
  --accent-700: 0.495 0.165 30;
  --accent-800: 0.405 0.130 28;
  --accent-900: 0.330 0.095 26;
  --accent-950: 0.240 0.065 24;
  /* Secondary: warm gold */
  --secondary-50: 0.985 0.015 94;
  --secondary-100: 0.960 0.038 92;
  --secondary-200: 0.925 0.070 90;
  --secondary-300: 0.875 0.105 88;
  --secondary-400: 0.820 0.135 86;
  --secondary-500: 0.755 0.155 84;
  --secondary-600: 0.675 0.145 82;
  --secondary-700: 0.570 0.125 80;
  --secondary-800: 0.460 0.100 78;
  --secondary-900: 0.365 0.077 76;
  --secondary-950: 0.270 0.053 74;
  /* Foreground: warm brown; footer uses dark brown, not black/gray */
  --foreground-50: 0.985 0.009 85;
  --foreground-100: 0.955 0.015 80;
  --foreground-200: 0.905 0.023 75;
  --foreground-300: 0.825 0.032 70;
  --foreground-400: 0.720 0.040 65;
  --foreground-500: 0.615 0.047 60;
  --foreground-600: 0.510 0.052 57;
  --foreground-700: 0.420 0.055 54;
  --foreground-800: 0.345 0.052 51;
  --foreground-900: 0.285 0.048 48;
  --foreground-950: 0.230 0.045 45;
  --color-background: oklch(var(--background-50));
  --color-surface: oklch(var(--background-100));
  --color-surface-alt: oklch(var(--background-200));
  --color-border: oklch(var(--background-300));
  --color-text: oklch(var(--foreground-900));
  --color-heading: oklch(var(--foreground-950));
  --color-muted: oklch(var(--foreground-600));
  --color-primary: oklch(var(--primary-700));
  --color-primary-hover: oklch(var(--primary-800));
  --color-primary-light: oklch(var(--primary-100));
  --color-accent: oklch(var(--accent-600));
  --color-accent-light: oklch(var(--accent-100));
  --color-secondary: oklch(var(--secondary-500));
  --color-secondary-light: oklch(var(--secondary-100));
  --color-footer: oklch(var(--foreground-950));
  --color-footer-text: oklch(var(--foreground-100));
  --color-footer-muted: oklch(var(--foreground-300));
  --color-on-primary: oklch(var(--background-50));
  --color-focus: oklch(var(--primary-500));
  color-scheme: light;
}
*,*::before,*::after{box-sizing:border-box;box-shadow:none!important;text-shadow:none!important}
html{margin:0;padding:0;font-size:16px;scroll-behavior:smooth;scroll-padding-top:90px;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;padding:0;min-width:320px;font:400 16px/1.65 var(--font-body);color:var(--color-text);background:var(--color-background);-webkit-font-smoothing:antialiased}
body,button,input,select,textarea{font-family:var(--font-body)}
main,header,footer,nav,aside,section,article{display:block;min-width:0}
h1,h2,h3,h4,h5,h6{margin:0 0 .75em;font-family:var(--font-heading);font-weight:700;line-height:1.2;color:var(--color-heading);overflow-wrap:break-word}
h1{font-size:clamp(2rem,3.5vw,3rem);letter-spacing:-.035em}
h2{font-size:clamp(1.75rem,2.8vw,2.5rem);letter-spacing:-.025em}
h3{font-size:clamp(1.4rem,2vw,1.875rem)}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}
p{margin:0 0 1.25em;line-height:var(--line-height-body)}
small,.small-text,.text-small{font-size:var(--font-size-sm)}strong,b{font-weight:700}
blockquote{margin:1.5rem 0;padding:1rem 1.25rem;border-left:3px solid var(--color-primary);border-radius:0 var(--radius-card) var(--radius-card) 0;background:var(--color-surface-alt)}
blockquote p:last-child{margin-bottom:0}
code,pre,kbd,samp{font-family:Consolas,"Liberation Mono",monospace;font-size:.875em}
pre{max-width:100%;overflow-x:auto;padding:1rem;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface)}
mark,::selection{color:var(--color-heading);background:oklch(var(--secondary-200))}
a{color:var(--color-primary);text-decoration:none;text-underline-offset:3px;transition:color var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast)}
a:hover{color:var(--color-primary-hover)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}
img,picture,video,canvas,svg{max-width:100%}img,video,canvas{height:auto}img{display:block}figure{margin:0}figcaption{margin-top:.5rem;font-size:var(--font-size-sm);color:var(--color-muted)}iframe{max-width:100%;border:0}
ul,ol{margin:0 0 1.5rem;padding-left:1.5rem}li{margin-bottom:.35rem}hr{height:1px;margin:2rem 0;border:0;background:var(--color-border)}
button,input[type="button"],input[type="submit"],input[type="reset"],.button,.wp-element-button,.wp-block-button__link,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;padding:.75rem 1.5rem;border:1px solid transparent;border-radius:var(--radius-control);font:600 14px/1.3 var(--font-label);text-align:center;text-decoration:none;color:var(--color-on-primary);background:var(--color-primary);cursor:pointer;transition:background-color var(--transition-base),border-color var(--transition-base),color var(--transition-base),transform var(--transition-base)}
button:hover,input[type="button"]:hover,input[type="submit"]:hover,.button:hover,.wp-element-button:hover,.wp-block-button__link:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{color:var(--color-on-primary);background:var(--color-primary-hover);border-color:var(--color-primary-hover)}
button:disabled,.button.disabled,input:disabled{opacity:.55;cursor:not-allowed;transform:none}
.button-outline,.btn-outline,.is-style-outline>.wp-block-button__link{color:var(--color-primary);background:transparent;border-color:var(--color-primary)}
.button-outline:hover,.btn-outline:hover,.is-style-outline>.wp-block-button__link:hover{color:var(--color-on-primary);background:var(--color-primary)}
.button-text,.btn-text{min-height:auto;padding:.25rem 0;color:var(--color-primary);background:transparent;border-color:transparent}
input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="range"]):not([type="file"]),select,textarea{width:100%;max-width:100%;min-height:44px;padding:.75rem .9rem;border:1px solid var(--color-border);border-radius:var(--radius-control);font:400 14px/1.5 var(--font-body);color:var(--color-text);background:var(--color-background)}
textarea{min-height:140px;resize:vertical}input::placeholder,textarea::placeholder{color:var(--color-muted);opacity:.85}
input[type="checkbox"],input[type="radio"]{accent-color:var(--color-primary)}input[type="range"],progress{accent-color:var(--color-primary)}
label{display:inline-block;margin-bottom:.4rem;font-size:14px;font-weight:500;color:var(--color-text)}
fieldset{min-width:0;margin:0 0 1.5rem;padding:1.25rem;border:1px solid var(--color-border);border-radius:var(--radius-card)}
legend{padding:0 .5rem;font-size:14px;font-weight:600}
table{width:100%;margin-bottom:1.5rem;border-collapse:collapse;font-size:14px}th,td{padding:.875rem 1rem;border-bottom:1px solid var(--color-border);text-align:left;vertical-align:middle}th{font-weight:600;color:var(--color-heading);background:var(--color-surface)}
.site-container,.rt-container{width:100%;max-width:var(--container-width);margin-inline:auto;padding-inline:var(--container-padding)}
.rt-container-wide{width:100%;max-width:var(--container-wide);margin-inline:auto;padding-inline:var(--container-padding)}
.rt-section{padding-block:var(--section-spacing)}.rt-card,.is-style-rt-card{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface)}
.rt-pill{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.375rem .8rem;border-radius:var(--radius-full);font-size:12px;font-weight:600;color:oklch(var(--primary-800));background:oklch(var(--primary-100))}
.rt-badge-sale{color:oklch(var(--accent-800));background:oklch(var(--accent-100))}.rt-badge-gold{color:oklch(var(--secondary-900));background:oklch(var(--secondary-100))}
.alignleft{float:left;margin:0 1.5rem 1rem 0}.alignright{float:right;margin:0 0 1rem 1.5rem}.aligncenter{display:block;margin-inline:auto}.alignwide{max-width:var(--container-wide);margin-inline:auto}.alignfull{width:100%;max-width:none}
.wp-caption{max-width:100%}.wp-caption-text,.gallery-caption{margin-top:.5rem;font-size:14px;text-align:center;color:var(--color-muted)}.sticky{position:relative}.bypostauthor{font-weight:inherit}.entry-content,.wp-block-post-content{overflow-wrap:break-word}.entry-content::after{display:table;clear:both;content:""}
.screen-reader-text,.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.screen-reader-text:focus,.visually-hidden:focus{position:absolute!important;z-index:100000;width:auto!important;height:auto!important;padding:.75rem 1rem!important;margin:0!important;overflow:visible!important;clip:auto!important;clip-path:none!important;white-space:normal!important;color:var(--color-on-primary);background:var(--color-primary);border-radius:var(--radius-control)}
.site-footer,#colophon{color:var(--color-footer-text);background:var(--color-footer)}
.site-footer h1,.site-footer h2,.site-footer h3,.site-footer h4,.site-footer h5,.site-footer h6{color:oklch(var(--background-50))}
.site-footer p,.site-footer li{color:var(--color-footer-text)}.site-footer a{color:oklch(var(--secondary-200))}.site-footer a:hover{color:oklch(var(--secondary-100))}
.site-footer hr{background:oklch(var(--foreground-700)/.55)}
.hide-scrollbar,.scrollbar-hide{scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar,.scrollbar-hide::-webkit-scrollbar{display:none}
.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}
.rounded-card{border-radius:var(--radius-card)}.rounded-control{border-radius:var(--radius-control)}.rounded-full{border-radius:var(--radius-full)}
.newsletter-verify-field{position:absolute!important;left:-9999px;width:1px;height:1px;padding:0;margin:0;overflow:hidden;opacity:0;pointer-events:none}
@media(max-width:1023px){:root{--container-padding:20px;--section-spacing:64px}}
@media(max-width:767px){:root{--container-padding:16px;--section-spacing:48px}html{scroll-padding-top:72px}body{font-size:15px}h1{font-size:clamp(1.875rem,7vw,2.5rem)}h2{font-size:clamp(1.5rem,5.5vw,2rem)}h3{font-size:1.375rem}.rt-section{padding-block:var(--section-spacing-mobile)}.alignleft,.alignright{float:none;display:block;margin:0 0 1.25rem}th,td{padding:.75rem}}
@media(max-width:479px){:root{--container-padding:14px}blockquote{padding:.875rem 1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Retired promotion compatibility: suppress cached legacy shop banner markup. */
.rt-shop-gift-promo { display: none !important; }

/* ==========================================================
   WIDE / FLUID LAYOUT — v1.0.22
   Full browser width with consistent side breathing room.
   Text-only descriptions stay readable; purchase grids expand.
   ========================================================== */
:root { --rt-site-gutter: clamp(16px, 2.2vw, 48px); }
.site-container, .rt-container, .rt-container-wide,
.rt-page__container, .rt-index__container {
  width:100%; max-width:none; padding-inline:var(--rt-site-gutter);
}
.rt-footer-container { max-width:none; padding-inline:var(--rt-site-gutter); }
.rt-home .rt-h-container { max-width:none; padding-inline:var(--rt-site-gutter); }
.rt-shop .rt-shop-container { max-width:none; padding-inline:var(--rt-site-gutter); }
/* Product detail intentionally retains a readable Readdy-width two-column layout. */
.rt-checkout .rt-checkout__wrap { max-width:none; }
@media (max-width:767px) {
  :root { --rt-site-gutter:16px; }
}
@media (max-width:420px) {
  :root { --rt-site-gutter:12px; }
}
/* Prevent the horizontally scrollable mobile category row from widening the page. */
@media (max-width: 767px) {
  .rt-shop .rt-shop-filters {
    width: 100%;
    margin-right: 0;
    padding-right: 0;
  }
}

/* v1.0.25: make the WooCommerce catalog use the viewport rather than a prior fixed-width wrapper. */
body.post-type-archive-product #page,body.tax-product_cat #page,body.woocommerce-shop #page{width:100%;max-width:none}
body.post-type-archive-product main.rt-shop,body.tax-product_cat main.rt-shop,body.woocommerce-shop main.rt-shop{display:block;width:100%;max-width:none}
body.post-type-archive-product .rt-shop-container,body.tax-product_cat .rt-shop-container,body.woocommerce-shop .rt-shop-container{width:100%;max-width:none}
.rt-shop-gift-promo,.rt-shop-free-gift,.rt-shop-gift-banner{display:none!important}

/* v1.0.27 — catalog viewport fix; the shop must not inherit legacy fixed-width wrappers. */
body.rt-peptide-theme #page{width:100%;max-width:none;margin:0 auto}
body.rt-peptide-theme main.rt-shop{width:100%;max-width:none;margin-inline:0}
body.rt-peptide-theme main.rt-shop>.rt-shop-container{width:100%;max-width:none;margin-inline:0;padding-inline:clamp(16px,2vw,44px)}
@media(max-width:767px){body.rt-peptide-theme main.rt-shop>.rt-shop-container{padding-inline:16px}}
@media(max-width:359px){body.rt-peptide-theme main.rt-shop>.rt-shop-container{padding-inline:12px}}


/* Hide WooCommerce add-to-cart success notices */
.woocommerce-notices-wrapper .woocommerce-message{display:none !important;}

/* Shared homepage and shop/category variation picker (warm palette, no shadows). */
.rt-h-quick-modal[hidden],.rt-h-quick-modal [hidden]{display:none!important}
.rt-h-quick-modal{position:fixed;inset:0;z-index:240;display:flex;align-items:center;justify-content:center;padding:18px}
.rt-h-quick-scrim{position:absolute;inset:0;width:100%;height:100%;min-height:0;padding:0;border:0;border-radius:0;background:oklch(var(--foreground-950)/.55);cursor:default}
.rt-h-quick-dialog{position:relative;z-index:1;display:flex;flex-direction:column;width:min(100%,650px);max-height:min(91dvh,850px);overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-background);color:var(--color-text)}
.rt-h-quick-header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:22px 24px 16px;border-bottom:1px solid var(--color-border)}
.rt-h-quick-kicker{font-size:11px;font-weight:800;color:var(--color-primary);letter-spacing:.1em}
.rt-h-quick-header h2{margin:6px 0 0;font:700 clamp(23px,3vw,29px)/1.2 var(--font-heading);color:var(--color-heading)}
.rt-h-quick-close{display:flex;flex:none;align-items:center;justify-content:center;width:38px;height:38px;min-height:38px;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);color:var(--color-heading);font-size:24px;line-height:1}
.rt-h-quick-close:hover{background:var(--color-surface-alt);color:var(--color-primary)}
.rt-h-quick-body{overflow-y:auto;overscroll-behavior:contain;min-height:0;padding:20px 24px 24px}
.rt-h-quick-status,.rt-h-quick-empty{margin:0;padding:24px 0;color:var(--color-muted);font-size:14px}
.rt-h-quick-subheading{margin:0 0 13px;color:var(--color-heading);font:700 15px/1.4 var(--font-body)}
.rt-h-quick-list{display:flex;flex-direction:column;gap:8px}
.rt-h-quick-row{display:flex;align-items:center;gap:12px;margin:0;padding:11px;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);cursor:pointer}
.rt-h-quick-row:hover,.rt-h-quick-row.is-selected{border-color:var(--color-primary);background:var(--color-primary-light)}
.rt-h-quick-row:has(input:disabled){opacity:.58;cursor:not-allowed}
.rt-h-quick-row input[type=radio]{flex:0 0 auto;width:18px;height:18px;margin:0;accent-color:var(--color-primary)}
.rt-h-quick-row-image{flex:0 0 48px;width:48px;height:48px;border-radius:var(--radius-control);object-fit:contain;background:var(--color-background)}
.rt-h-quick-row-meta{display:flex;flex:1;flex-direction:column;gap:3px;min-width:0}
.rt-h-quick-row-sku{font-size:10px;font-weight:600;overflow-wrap:anywhere;color:var(--color-muted)}
.rt-h-quick-row-name{font-size:14px;font-weight:700;overflow-wrap:anywhere;color:var(--color-heading)}
.rt-h-quick-row-price{flex:0 0 auto;font-size:14px;font-weight:800;white-space:nowrap;color:var(--color-primary)}
.rt-h-quick-unavailable{font-size:11px;color:var(--color-accent)}
.rt-h-quick-field{margin:0 0 14px}
.rt-h-quick-field label{display:block;margin:0 0 7px;font-weight:700}
.rt-h-quick-field select{width:100%;background:var(--color-background)}
.rt-h-quick-selection{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;padding:14px 16px;border:1px solid var(--color-border);border-radius:var(--radius-card)}
.rt-h-quick-selection span{font-size:11px;font-weight:800;letter-spacing:.045em;color:var(--color-muted)}
.rt-h-quick-selection strong{font-size:19px;text-align:right;color:var(--color-primary)}
.rt-h-quick-actions{display:flex;align-items:flex-end;gap:12px;margin-top:14px}
.rt-h-quick-qty-wrap{flex:0 0 96px}
.rt-h-quick-qty-wrap label{display:block;margin-bottom:5px;font-size:12px}
.rt-h-quick-qty-wrap input{min-height:46px;text-align:center}
.rt-h-quick-submit{flex:1;min-width:0;min-height:46px;padding:11px 16px;border-radius:var(--radius-control);background:var(--color-primary);color:var(--color-on-primary);font-size:14px;font-weight:800}
.rt-h-quick-submit:hover:not(:disabled){background:var(--color-primary-hover)}
.rt-h-quick-product-link{display:inline-block;margin-top:14px;font-size:13px;font-weight:600;color:var(--color-primary)}
.rt-h-quick-error{margin:12px 0 0;padding:10px 12px;border:1px solid oklch(var(--accent-300));border-radius:var(--radius-control);color:oklch(var(--accent-800));background:oklch(var(--accent-50));font-size:13px}
@media(max-width:600px){.rt-h-quick-modal{padding:12px}.rt-h-quick-dialog{max-height:91dvh}.rt-h-quick-header{padding:18px 17px 13px}.rt-h-quick-body{padding:16px 17px 18px}.rt-h-quick-row{gap:8px;padding:9px}.rt-h-quick-row-image{flex-basis:42px;width:42px;height:42px}.rt-h-quick-row-name{font-size:13px}.rt-h-quick-row-price{font-size:13px}.rt-h-quick-selection strong{font-size:17px}}

/* Live product suggestions for shop, navigation, and searchform.php. */
form[data-rt-product-search]{position:relative}
.rt-product-suggestions{position:absolute;top:calc(100% + 7px);left:0;right:0;z-index:1000;max-height:min(380px,65vh);overflow-y:auto;padding:5px;background:var(--color-background);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:none!important;list-style:none;margin:0}
.rt-product-suggestions[hidden]{display:none!important}
/* v1.1.02: compact search suggestion prices (already-discounted active amounts). */
.rt-product-suggestions__item{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:center;min-height:74px;padding:9px 10px;color:var(--color-text);text-decoration:none;border-radius:var(--radius-control)}
.rt-product-suggestions__item:hover,.rt-product-suggestions__item.is-active{background:var(--color-surface-alt);color:var(--color-heading)}
.rt-product-suggestions__item img{width:48px;height:48px;object-fit:contain;border-radius:var(--radius-sm);background:var(--color-surface)}
.rt-product-suggestions__item>span{min-width:0}
.rt-product-suggestions__title{display:block;font-size:13px;font-weight:700;line-height:1.35;overflow-wrap:break-word}
.rt-product-suggestions__sku{display:block;font-size:11px;line-height:1.35;color:var(--color-muted);margin-top:1px}
.rt-product-suggestions__price{display:flex;align-items:center;gap:7px;flex-wrap:wrap;min-width:0;margin-top:5px;line-height:1.4}
.rt-product-suggestions__badge{display:inline-block;flex-shrink:0;border-radius:5px;padding:2px 6px;background:#fff0e9;color:#9a3f25;font-size:11px;font-weight:750;white-space:nowrap}
.rt-product-suggestions__amount{font-size:13px;font-weight:750;color:var(--color-primary);overflow-wrap:anywhere}
.rt-product-suggestions__hint{display:block;margin:2px;padding:10px 12px;font-size:12px;color:var(--color-muted)}
@media(max-width:479px){.rt-product-suggestions__item{grid-template-columns:42px minmax(0,1fr);gap:9px;padding:9px 7px;min-height:69px}.rt-product-suggestions__item img{width:42px;height:42px}.rt-product-suggestions__amount{font-size:12px}}

/* Keep the shop search input free of platform-blue native clear icons. */
.rt-shop #rt-shop-search-field::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}

/* v1.0.47 — Remove WooCommerce's large notice banners and floating notices.
   Server-side stock, cart and payment validation remains enabled.
   Checkout and Cart retain inline messages so a failed payment is actionable. */
body.rt-peptide-theme:not(.woocommerce-checkout):not(.woocommerce-cart) .woocommerce-message,
body.rt-peptide-theme:not(.woocommerce-checkout):not(.woocommerce-cart) .woocommerce-error,
body.rt-peptide-theme:not(.woocommerce-checkout):not(.woocommerce-cart) .woocommerce-info,
body.rt-peptide-theme:not(.woocommerce-checkout):not(.woocommerce-cart) .rt-shop-notice-region,
body.rt-peptide-theme:not(.woocommerce-checkout):not(.woocommerce-cart) .rt-home-notices,
body.rt-peptide-theme:not(.woocommerce-checkout):not(.woocommerce-cart) .woocommerce-notices-wrapper,
body.rt-peptide-theme .rt-woo-toast-stack,
body.rt-peptide-theme .rt-woo-toast {
    display: none !important;
}


/* Persistent green WhatsApp shortcut: starts in global header on every template (v1.0.54). */
html body a#rt-global-whatsapp.rt-whatsapp-float {
  position: fixed !important;
  z-index: 180; /* above normal page content; below cart drawer and modal */
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  transform: none !important;
  inset: auto calc(22px + env(safe-area-inset-right, 0px)) calc(22px + env(safe-area-inset-bottom, 0px)) auto;
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  min-width: 64px;
  min-height: 64px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #25D366;
  color: #fff;
  box-shadow: none !important;
  text-shadow: none !important;
  line-height: 1;
  text-decoration: none;
  cursor: pointer;
  transition: background-color var(--transition-fast);
}
html body a#rt-global-whatsapp.rt-whatsapp-float svg {
  display: block;
  flex: 0 0 auto;
  width: 34px;
  height: 34px;
  fill: currentColor;
}
html body a#rt-global-whatsapp.rt-whatsapp-float:hover {
  background: #1DB954;
  color: #fff;
}
html body a#rt-global-whatsapp.rt-whatsapp-float:focus-visible {
  outline: 3px solid #137f40;
  outline-offset: 4px;
}
@media (max-width: 767px) {
  html body a#rt-global-whatsapp.rt-whatsapp-float {
    right: calc(16px + env(safe-area-inset-right, 0px));
    bottom: calc(18px + env(safe-area-inset-bottom, 0px));
    width: 56px;
    height: 56px;
    min-width: 56px;
    min-height: 56px;
  }
  html body a#rt-global-whatsapp.rt-whatsapp-float svg { width: 30px; height: 30px; }
}
@media (prefers-reduced-motion: reduce) {
  html body a#rt-global-whatsapp.rt-whatsapp-float { transition: none; }
}


/* Discount labels are derived from WooCommerce regular/sale price data. */
.rt-sale-percent-badge {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:none;
  vertical-align:middle;
  margin-right:6px;
  padding:4px 7px;
  border-radius:var(--radius-sm);
  color:oklch(var(--background-50));
  background:oklch(var(--accent-600));
  font:800 10px/1.25 var(--font-label);
  letter-spacing:.01em;
  white-space:nowrap;
  text-decoration:none;
  box-shadow:none;
}
.rt-h-product-price .rt-sale-percent-badge,
.rt-shop-price .rt-sale-percent-badge,
.rt-product-related-price .rt-sale-percent-badge { margin-right:6px; }
.rt-p-variant-sale-line {display:inline-flex;align-items:center;justify-content:flex-end;gap:5px;white-space:nowrap;}
.rt-p-variant-sale-line .rt-sale-percent-badge { margin-right:0;padding:3px 5px;font-size:9px; }
.rt-p-selected-value .rt-sale-percent-badge {margin-right:9px;font-size:11px;vertical-align:middle;}
.rt-h-quick-row-price {display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:5px;white-space:normal;text-align:right;}
.rt-h-quick-row-price .rt-sale-percent-badge,
.rt-h-quick-selection strong .rt-sale-percent-badge {margin-right:0;padding:3px 6px;font-size:9px;}
@media(max-width:479px){
  .rt-sale-percent-badge{padding:3px 5px;font-size:9px;}
  .rt-p-variant-sale-line{gap:3px;}
  .rt-p-variant-sale-line .rt-sale-percent-badge{font-size:8px;padding:3px 4px;}
  .rt-p-selected-value .rt-sale-percent-badge{font-size:9px;margin-right:5px;}
}


/* Readdy screenshot-matched first-order 5% popup. No shadows. */
.rt-coupon-popup[hidden]{display:none!important}
html body .rt-coupon-popup{position:fixed;inset:0;z-index:9000;display:grid;place-items:center;padding:16px;isolation:isolate}
.rt-coupon-backdrop{position:absolute;inset:0;background:rgba(20,18,22,.68)}
.rt-coupon-dialog{position:relative;z-index:1;width:100%;max-width:385px;max-height:min(90dvh,760px);overflow-y:auto;border:0;border-radius:16px;background:#fff;color:#373036;box-shadow:none!important;outline:none}
.rt-coupon-close{position:absolute;top:12px;right:12px;z-index:5;display:grid;place-items:center;width:34px;height:34px;min-width:34px;min-height:34px;padding:0;border:0;border-radius:50%;background:#fff;color:#615661;font-size:23px;line-height:1;cursor:pointer}
.rt-coupon-close::before{content:"";position:absolute;inset:-13px;border-radius:50%;background:rgba(255,255,255,.15);pointer-events:none}
.rt-coupon-hero{position:relative;overflow:hidden;min-height:164px;padding:30px 18px 23px;text-align:center;background:linear-gradient(130deg,#be0646 0%,#d02257 51%,#e9a400 100%);color:#fff}
.rt-coupon-hero:before,.rt-coupon-hero:after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.rt-coupon-hero:before{bottom:-60px;left:-28px;width:118px;height:118px;background:rgba(255,194,108,.24)}
.rt-coupon-hero:after{top:-48px;right:-20px;width:92px;height:92px;background:rgba(255,255,255,.10)}
.rt-coupon-eyebrow{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;margin:0 0 14px;padding:5px 13px;border-radius:9999px;background:rgba(255,255,255,.23);color:#fff;font-size:11px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}
.rt-coupon-hero h2{position:relative;margin:0 0 5px!important;color:#fff!important;font:700 32px/1.15 var(--font-heading)}
.rt-coupon-hero h2 strong{font-size:50px;font-weight:700}
.rt-coupon-hero p{position:relative;margin:0!important;color:#fff;font-size:12px;font-weight:600}
.rt-coupon-content{padding:21px 24px 17px;text-align:center}
.rt-coupon-content>p:first-child{margin:0 0 17px;font-size:14px;line-height:1.5;color:#666}
.rt-coupon-content>p:first-child strong{color:#222}
.rt-coupon-code-row{display:flex;gap:8px;align-items:stretch;min-width:0}
.rt-coupon-code{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;flex:1;padding:11px 13px;border:2px dashed #ff9fbd;border-radius:11px;background:#fff0f4;color:#9d0040}
.rt-coupon-code strong{font-family:ui-monospace,Consolas,monospace;letter-spacing:.05em;font-size:15px;overflow-wrap:anywhere}
.rt-coupon-code>span{font-size:21px;color:#e92770}
html body .rt-coupon-copy{flex:0 0 68px;min-width:68px;min-height:48px;padding:9px 12px;border:0;border-radius:12px;background:#ca1a53;color:#fff;font-size:14px;font-weight:800}
html body .rt-coupon-copy:hover{background:#a80f43;color:#fff}
.rt-coupon-copy-status{min-height:9px;margin:0 0 5px!important;font-size:11px;color:#866576}
html body a.rt-coupon-shop{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:48px;margin:0;border:0;border-radius:10px;background:#eb100a;color:#fff;font-size:14px;font-weight:800;text-decoration:none}
html body a.rt-coupon-shop:hover{background:#ca100b;color:#fff}
html body .rt-coupon-decline{display:block;width:auto;min-height:30px;margin:5px auto 0;padding:4px 9px;border:0;background:transparent;color:#b7b7b7;font-size:12px;font-weight:500}
html body .rt-coupon-decline:hover{background:transparent;color:#555}
html body.rt-coupon-is-open{overflow:hidden}
@media(max-width:479px){.rt-coupon-dialog{max-width:385px}.rt-coupon-content{padding:20px 22px 14px}.rt-coupon-hero{padding:27px 14px 21px}.rt-coupon-code strong{font-size:14px}}
@media(prefers-reduced-motion:reduce){.rt-coupon-popup *{transition:none!important}}


/* v1.0.60: native WooCommerce clear-cart confirmation, styled for LP PEPTIDE. */
.rt-cart-clear-modal[hidden]{display:none!important}
html body .rt-cart-clear-modal{position:fixed;inset:0;z-index:9500;display:grid;place-items:center;padding:18px;isolation:isolate}
.rt-cart-clear-overlay{position:absolute;inset:0;background:rgba(21,13,9,.58);backdrop-filter:blur(3px)}
.rt-cart-clear-dialog{position:relative;z-index:1;width:min(100%,420px);padding:32px 30px 27px;border:1px solid #f0ded0;border-radius:20px;background:#fffdfa;color:#321f17;text-align:center;box-shadow:0 18px 65px rgba(33,20,12,.21);outline:none}
.rt-cart-clear-symbol{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 16px;border:1px solid #f4d7ca;border-radius:50%;background:#fff1e9;color:#a7452a;font-size:28px}
.rt-cart-clear-dialog h2{margin:0 0 10px;color:#35231c;font:700 clamp(21px,4vw,25px)/1.25 var(--font-body);letter-spacing:-.035em}
.rt-cart-clear-dialog p{max-width:310px;margin:0 auto 24px;color:#806b60;font:400 14px/1.65 var(--font-body)}
.rt-cart-clear-buttons{display:flex;align-items:stretch;gap:11px}
html body .rt-cart-clear-buttons button{display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:1;min-width:0;min-height:48px;margin:0;padding:10px 12px;border-radius:11px;font:700 13px/1.3 var(--font-body);cursor:pointer;transition:background .15s ease,border-color .15s ease}
html body .rt-cart-clear-cancel{border:1px solid #dfcdc0;background:#fffdfa;color:#5e4031}
html body .rt-cart-clear-cancel:hover{background:#f8efe8;border-color:#ccae9b}
html body .rt-cart-clear-confirm{border:1px solid #914027;background:#914027;color:#fff}
html body .rt-cart-clear-confirm:hover{background:#77321e;border-color:#77321e}
.rt-cart-clear-buttons button:focus-visible{outline:3px solid #eab987;outline-offset:3px}
@media(max-width:400px){.rt-cart-clear-dialog{padding:29px 20px 21px}.rt-cart-clear-buttons{gap:8px}.rt-cart-clear-dialog p{font-size:13px}}
@media(prefers-reduced-motion:reduce){.rt-cart-clear-modal *{transition:none!important}}


/* First-order welcome offer: unobtrusive re-open control on the left.
   The WhatsApp contact control stays on the opposite edge. */
.rt-coupon-reopen[hidden]{display:none!important}
html body .rt-coupon-reopen{
  position:fixed;
  left:calc(22px + env(safe-area-inset-left, 0px));
  bottom:calc(22px + env(safe-area-inset-bottom, 0px));
  z-index:500;
  display:inline-flex;
  box-sizing:border-box;
  align-items:center;
  justify-content:center;
  gap:7px;
  height:64px;
  min-height:64px;
  max-width:calc(100vw - 116px);
  padding:0 18px;
  border:1px solid #a95b37;
  border-radius:999px;
  background:#8a4028;
  color:white;
  font:800 12px/1.2 var(--font-body);
  letter-spacing:.025em;
  white-space:nowrap;
  box-shadow:0 5px 18px rgba(54,25,13,.16);
  cursor:pointer;
}
html body .rt-coupon-reopen:hover{background:#6e3020;color:white}
.rt-coupon-reopen-small{font-weight:500;color:#fff0dc}
.rt-coupon-reopen:focus-visible{outline:3px solid #e9ae7a;outline-offset:3px}
@media(max-width:767px){
  html body .rt-coupon-reopen{
    left:calc(16px + env(safe-area-inset-left, 0px));
    bottom:calc(18px + env(safe-area-inset-bottom, 0px));
    height:56px;
    min-height:56px;
    max-width:calc(100vw - 104px);
    padding:0 14px;
    font-size:12px;
  }
  .rt-coupon-reopen-small{display:none}
}


/* v1.0.61: inline clear-cart confirmation row inside the cart drawer. */
.rt-cart-inline-confirm[hidden]{display:none!important}
html body .rt-cart-inline-confirm{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px 10px;border-bottom:1px solid #eee4dc;background:#fff}
.rt-cart-inline-confirm-text{color:#7b7780;font:700 14px/1.2 var(--font-body);letter-spacing:-.01em}
.rt-cart-inline-confirm-actions{display:flex;align-items:center;gap:10px;flex-wrap:nowrap}
html body .rt-cart-inline-confirm-actions button{display:inline-flex;align-items:center;justify-content:center;min-width:78px;min-height:38px;padding:0 16px;border:0;border-radius:999px;font:700 14px/1 var(--font-body);cursor:pointer;transition:background .18s ease,color .18s ease,opacity .18s ease}
html body .rt-cart-inline-confirm-clear{background:#ff5a54;color:#fff;box-shadow:none}
html body .rt-cart-inline-confirm-clear:hover{background:#f14843;color:#fff}
html body .rt-cart-inline-confirm-cancel{background:#f0f0f3;color:#6c6a74}
html body .rt-cart-inline-confirm-cancel:hover{background:#e5e5ea;color:#56545d}
.rt-cart-inline-confirm-actions button:focus-visible{outline:3px solid #ffc9a8;outline-offset:2px}
html body .rt-cart-drawer.is-clear-confirming .rt-cart-clear{opacity:.65}
@media(max-width:479px){html body .rt-cart-inline-confirm{padding:10px 16px 9px;gap:10px}.rt-cart-inline-confirm-text{font-size:13px}html body .rt-cart-inline-confirm-actions button{min-width:72px;min-height:36px;padding:0 14px;font-size:13px}}

/* v1.0.62: checkout-only shell. The actual checkout content, gateway and
   existing in-page LP PEPTIDE branding/back link remain unchanged. */
body.rt-clean-checkout .rt-checkout-shell{min-height:100vh}


/* v1.0.65: reduce visual noise on checkout by hiding the floating coupon reopen chip. */
body.rt-clean-checkout .rt-coupon-reopen{display:none!important}

/* v1.0.84: responsive tap surfaces without adding animation to page navigation. */
.rt-peptide-theme a, .rt-peptide-theme button, .rt-peptide-theme input[type=submit] { touch-action:manipulation; }

/* v1.0.90: hide legacy COA attachment-name bars on product pages. */
.rt-product-coa-panel .rt-coa-document-top{display:none!important}


/* v1.0.95: an in-flow way back to the original purchase form on smaller screens.
   Does not overlap the coupon or WhatsApp floating shortcuts. */
.rt-mobile-return-buy{display:none}
@media(max-width:767px){
  .rt-product-buy{scroll-margin-top:100px}
  .rt-mobile-return-buy{display:flex;align-items:center;justify-content:center;gap:9px;min-height:48px;margin:18px 0 4px;padding:12px 16px;border:1px solid var(--color-primary);border-radius:12px;background:var(--color-primary);color:var(--color-on-primary);font:700 14px/1.35 var(--font-body);text-decoration:none;transition:background .16s ease}
  .rt-mobile-return-buy:hover,.rt-mobile-return-buy:focus{background:var(--color-primary-hover);color:var(--color-on-primary)}
  .rt-mobile-return-buy:focus-visible{outline:3px solid #d59e74;outline-offset:3px}
  .rt-product-ajax-notice{margin-top:10px;padding:10px 12px;border:1px solid #dba9a9;border-radius:10px;background:#fff5f5;color:#8b2929;font-size:13px;line-height:1.45}
}
.rt-product-ajax-notice[hidden]{display:none!important}
