/* =========================================================
   Skin Beaute on WordPress: the pieces WordPress and WooCommerce add, in the site's own tokens.
   Loaded after site.css (and home.css on the home and shop pages). Checkout, My Account and
   order pages follow the approved screen designs (growth/designs/).
   ========================================================= */

/* ---------- small differences from the static markup ---------- */
a.chip,a.icon-btn,a.add{text-decoration:none}
a.chip{display:inline-flex;align-items:center}
form.search{margin:0}
.sb-notices:empty{display:none}
.sb-notices{padding-top:12px}
.sb-notices:has(> :not(:empty)){padding-bottom:4px}
#checkoutBtn.disabled{opacity:.45;pointer-events:none;transform:none}
.qty .qty-in{width:34px;min-width:0;border:0;background:transparent;text-align:center;font:600 15px/1 var(--font-body);color:var(--ink);padding:0;-moz-appearance:textfield;appearance:textfield}
.qty .qty-in::-webkit-outer-spin-button,.qty .qty-in::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.pdp-buy{margin-bottom:0}
.pdp-long p{margin-top:8px;font-size:15px;line-height:1.5}
.pdp-long p:first-child{margin-top:0}
.pdp-loading{padding:80px 20px;text-align:center;color:var(--charcoal)}
.product-card[hidden],.show-more[hidden]{display:none}

/* ---------- a product's own page: the same sheet, laid out as a page ---------- */
.pdp-page{position:relative}
.pdp-static{animation:none;overflow:visible}
.pdp-static .pdp-close{display:none}
.pdp-static .pdp-info h2{padding-right:0}
@media (min-width:700px){
  .pdp-page{padding:28px 20px 40px}
  .pdp-static{border-radius:var(--r);border:var(--line);overflow:hidden}
  .pdp-page .pdp-bar{display:none}
}
.pdp-page .pdp-bar{position:sticky}

/* ---------- shop and category pages ---------- */
.shop-archive-head{padding:8px 0 0}
.botanical-home .shop-archive-head{padding:8px 0 0}
.shop-archive-head .crumbs{color:var(--charcoal)}
.shop-archive-desc{margin-top:4px;max-width:60ch;font-size:16px}
.shop-archive-head + .shop{padding-top:16px}
.botanical-home .shop-archive-head + .shop{padding-top:16px}

/* ---------- guide content written in the editor ---------- */
.prose .wp-block-heading{text-wrap:balance}
.prose ul.rows li{font-size:16px;line-height:1.55;display:flex;gap:12px}
.prose ul.rows li::before{content:"";flex:none;width:7px;height:7px;margin-top:.65em;border-radius:50%;background:var(--magenta)}
.prose .rows strong{color:var(--ink);font-weight:600}
.prose .faq{margin-top:16px}
.prose .faq > h2{margin:0}
.prose .faq details p{margin:0;padding:0 16px 16px;font-size:16px;line-height:1.6}
.prose .faq details summary{font-family:var(--font-head)}
.prose .take{margin-top:44px;background:var(--blush);border:var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:22px 20px 20px}
.prose .take .kicker{margin:0}
.prose .take p + p{margin-top:8px;font-family:var(--font-accent);font-size:26px;line-height:1.25;font-weight:700;color:var(--ink)}
.prose > h2 + .faq{margin-top:16px}
.prose figure{margin:24px 0}
.prose img{border-radius:var(--r-sm)}
.prose .wp-block-table table{width:100%;border-collapse:collapse;font-size:15px}
.prose .wp-block-table td,.prose .wp-block-table th{border:1px solid var(--rule);padding:10px 12px;text-align:left}
.prose ol:not(.rows){list-style:decimal;padding-left:22px;margin-top:16px;font-size:17px;line-height:1.75}
.prose ul:not(.rows){list-style:disc;padding-left:22px;margin-top:16px;font-size:17px;line-height:1.75}
.prose blockquote{margin:24px 0;padding:4px 0 4px 18px;border-left:3px solid var(--magenta);font-family:var(--font-accent);font-size:22px;color:var(--ink)}
@media (min-width:700px){
  .prose .take{padding:30px 32px 28px}
  .prose .take p + p{font-size:30px}
  .prose .faq details p{padding-inline:22px}
}
.page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 12px;border:var(--line);border-radius:999px;background:var(--paper);font-family:var(--font-head);font-weight:600;color:var(--ink);margin:4px}
.page-numbers.current{background:var(--ink);color:var(--cream)}
.navigation.pagination{margin-top:24px;text-align:center}

/* ---------- WooCommerce notices ---------- */
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-notice{background:var(--paper)!important;border:var(--line)!important;border-left:6px solid var(--pine)!important;border-radius:var(--r-sm)!important;color:var(--ink)!important;padding:14px 16px 14px 20px!important;margin:0 0 16px!important;font-size:15px;line-height:1.5;list-style:none}
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{display:none!important}
.woocommerce-error{border-left-color:var(--magenta-text)!important}
.woocommerce-info{border-left-color:var(--copper)!important}
.woocommerce-message .button,.woocommerce-info .button,.woocommerce-error .button{float:none!important;margin:0 0 8px 0!important;display:inline-flex!important;margin-right:12px!important}
.woocommerce-store-notice{background:var(--ink);color:var(--cream)}

/* ---------- WooCommerce buttons and fields ---------- */
.woocommerce .button,.woocommerce button.button,.woocommerce a.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce button.button.alt,.woocommerce a.button.alt,.woocommerce input.button.alt,#place_order,.woocommerce-form-login .button,.wc-block-components-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 24px;border-radius:999px;border:var(--line);background:var(--pine);color:#fff;font-family:var(--font-head);font-weight:600;font-size:16px;line-height:1.1;text-align:center;box-shadow:3px 3px 0 var(--ink);transition:transform .15s ease,box-shadow .15s ease;cursor:pointer;text-decoration:none}
.woocommerce .button:hover,.woocommerce button.button:hover,.woocommerce a.button:hover,.woocommerce input.button:hover,.woocommerce button.button.alt:hover,#place_order:hover{background:var(--pine);color:#fff;transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--ink)}
.woocommerce .button:disabled,.woocommerce button.button:disabled,.woocommerce button.button:disabled[disabled]{opacity:.45;padding:0 24px;color:#fff;background:var(--pine)}
.woocommerce a.button.wc-forward,.woocommerce .woocommerce-MyAccount-content .button,.woocommerce .woocommerce-orders-table__cell-order-actions .button,.woocommerce .order-again .button,.woocommerce .coupon .button,.woocommerce .button.add_to_cart_button,.woocommerce .woocommerce-mini-cart__buttons .button:not(.checkout),.woocommerce .return-to-shop .button,.woocommerce-MyAccount-content .edit{background:var(--paper);color:var(--ink)}
.woocommerce a.button.wc-forward:hover,.woocommerce .woocommerce-MyAccount-content .button:hover,.woocommerce .coupon .button:hover{background:var(--sand);color:var(--ink)}
.woocommerce form .form-row{margin-bottom:14px;padding:0}
.woocommerce form .form-row label{font-family:var(--font-head);font-size:14px;font-weight:600;color:var(--ink);line-height:1.6}
.woocommerce form .form-row label .optional{font-weight:500;color:var(--charcoal)}
.woocommerce form .form-row .required{color:var(--magenta-text);text-decoration:none}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.woocommerce-page form .form-row input.input-text,.woocommerce-EditAccountForm input,.woocommerce-ResetPassword input,.woocommerce-form-login input.input-text,.woocommerce .quantity .qty,.comment-form input,.comment-form textarea,.wc-block-components-text-input input{width:100%;min-height:48px;border:1.5px solid var(--ink);border-radius:var(--r-sm);background:var(--paper);color:var(--ink);font:500 16px/1.2 var(--font-body);padding:0 14px;box-shadow:none}
.woocommerce form .form-row textarea,.comment-form textarea{min-height:110px;padding:12px 14px;line-height:1.5}
.woocommerce form .form-row input.input-text::placeholder{color:#8a8686}
.woocommerce form .form-row input.input-text:focus-visible,.woocommerce form .form-row textarea:focus-visible,.woocommerce form .form-row select:focus-visible{outline:3px solid var(--pine);outline-offset:1px}
.woocommerce form .form-row.woocommerce-invalid .select2-container,.woocommerce form .form-row.woocommerce-invalid input.input-text,.woocommerce form .form-row.woocommerce-invalid select{border-color:var(--magenta-text)}
.woocommerce form .form-row.woocommerce-validated .select2-container,.woocommerce form .form-row.woocommerce-validated input.input-text,.woocommerce form .form-row.woocommerce-validated select{border-color:var(--pine)}
.select2-container--default .select2-selection--single{height:48px;border:1.5px solid var(--ink);border-radius:var(--r-sm);background:var(--paper)}
.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:46px;padding-left:14px;color:var(--ink);font-weight:500}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:46px;right:8px}
.select2-dropdown{border:1.5px solid var(--ink);border-radius:var(--r-sm);overflow:hidden}
.select2-container--default .select2-results__option--highlighted[aria-selected]{background:var(--pine)}
.woocommerce form .form-row .input-checkbox{width:20px;height:20px;accent-color:var(--pine);margin:0 10px 0 0;vertical-align:middle}
.woocommerce form .form-row.checkbox-row label,.woocommerce-form__label-for-checkbox{display:flex;gap:10px;align-items:flex-start;font-weight:500;font-family:var(--font-body);min-height:44px;padding-top:4px;cursor:pointer}
.woocommerce-form__label-for-checkbox input{width:20px;height:20px;accent-color:var(--pine);flex:none;margin-top:2px}
.woocommerce-privacy-policy-text,.woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p{font-size:13.5px;line-height:1.5}
.woocommerce-privacy-policy-text a,.woocommerce-terms-and-conditions-checkbox-text a,.small-print a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.woocommerce .col2-set .col-1,.woocommerce .col2-set .col-2,.woocommerce-page .col2-set .col-1,.woocommerce-page .col2-set .col-2{float:none;width:100%}

/* ---------- boxes: every WooCommerce panel is a white card ---------- */
.wc-card,.woocommerce-checkout #customer_details > div,.woocommerce-checkout #order_review,.woocommerce-cart .woocommerce-cart-form,.woocommerce-cart .cart_totals,.woocommerce-account .woocommerce-MyAccount-content,.woocommerce-order,.woocommerce-order-received .woocommerce-order,.woocommerce-form-login,.woocommerce-form-register,.woocommerce-ResetPassword,.woocommerce-order-details,.woocommerce-customer-details,.woocommerce-cart .cart-empty-wrap{background:var(--paper);border:var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:18px}
.woocommerce-checkout #customer_details > div + div{margin-top:18px}
.woocommerce h2,.woocommerce h3{font-family:var(--font-head);font-size:18px;font-weight:700;color:var(--ink);margin:0 0 14px;letter-spacing:0}
.woocommerce-order-details__title,.woocommerce-column__title,.woocommerce-customer-details h2{margin-top:0}
.woocommerce-checkout #customer_details h3,#order_review_heading{display:flex;align-items:center;gap:10px}
form.checkout{counter-reset:step}
form.checkout:not([data-sb-steps]) #customer_details h3::before,form.checkout:not([data-sb-steps]) #order_review_heading::before{counter-increment:step;content:counter(step);flex:none;width:28px;height:28px;border-radius:50%;background:var(--ink);color:var(--cream);font-size:14px;display:inline-flex;align-items:center;justify-content:center}
#ship-to-different-address{font-family:var(--font-body);font-size:15px;font-weight:500}
#ship-to-different-address label{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer}
#ship-to-different-address input{width:20px;height:20px;accent-color:var(--pine);margin:0}

/* ---------- checkout layout: form left, sticky summary right on laptops ---------- */
.wc-grid{padding-top:26px;padding-bottom:56px}
.post-hero-slim{padding-bottom:30px}
.post-hero-slim .crumbs{display:none}
form.checkout{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
#order_review_heading{margin:0}
.woocommerce-checkout #order_review{padding:18px}
@media (min-width:900px){
  form.checkout{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);align-items:start;gap:28px}
  form.checkout #customer_details{grid-column:1}
  form.checkout #order_review_heading,form.checkout #order_review{grid-column:2}
  form.checkout #order_review{position:sticky;top:calc(var(--header-h) + 16px)}
  form.checkout #order_review_heading{margin-bottom:-6px}
}
.woocommerce table.shop_table{border:0;border-collapse:collapse;margin:0;font-size:15px;border-radius:0}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{border:0;border-bottom:1px solid var(--rule);padding:12px 8px;vertical-align:middle;color:var(--charcoal)}
.woocommerce table.shop_table th{font-family:var(--font-head);font-size:13px;font-weight:600;color:var(--ink);text-transform:none}
.woocommerce table.shop_table td.product-name{color:var(--ink);font-weight:600}
.woocommerce table.shop_table td.product-name .product-quantity{font-weight:500;color:var(--charcoal)}
.woocommerce table.shop_table tfoot th,.woocommerce table.shop_table tfoot td{border-bottom:0;padding-top:10px}
.woocommerce table.shop_table tfoot tr.order-total th,.woocommerce table.shop_table tfoot tr.order-total td,.woocommerce .cart_totals tr.order-total th,.woocommerce .cart_totals tr.order-total td{font-family:var(--font-head);font-size:18px;font-weight:700;color:var(--ink);border-top:1.5px solid var(--ink);padding-top:12px}
.woocommerce .cart_totals table.shop_table th{width:auto}
.woocommerce-Price-amount{font-weight:600;color:var(--ink);white-space:nowrap}
tr.sb-free-row td{padding:0 0 6px!important;border:0!important}
tr.sb-free-row .free-note{display:block;margin:0}
.woocommerce ul#shipping_method li{display:flex;gap:10px;align-items:flex-start;padding:10px 0 0;margin:0}
.woocommerce ul#shipping_method li input{width:20px;height:20px;accent-color:var(--pine);margin:2px 0 0;flex:none}
.woocommerce ul#shipping_method li label{font-weight:500;color:var(--ink);line-height:1.4;display:block}
.woocommerce ul#shipping_method li label .woocommerce-Price-amount{margin-left:4px}
.woocommerce-shipping-destination{font-size:13.5px}
.woocommerce .cart-collaterals .cart_totals{float:none;width:100%}
.woocommerce-cart .woocommerce-cart-form{margin-bottom:18px}
.woocommerce-cart table.cart img{width:64px;height:64px;object-fit:contain;background:var(--sand);border-radius:10px;padding:4px;border:1px solid var(--ink)}
.woocommerce-cart table.cart .product-remove a.remove{width:36px;height:36px;line-height:34px;color:var(--ink)!important;border:1px solid var(--ink);font-size:20px;font-weight:400}
.woocommerce-cart table.cart .product-remove a.remove:hover{background:var(--ink);color:var(--cream)!important}
.woocommerce .quantity{display:inline-flex;align-items:center;border:var(--line);border-radius:999px;background:var(--paper);overflow:hidden}
.woocommerce .quantity .qty{width:72px;min-height:42px;border:0;text-align:center;font-weight:600;border-radius:0}
.woocommerce-cart table.cart td.actions .coupon{display:flex;gap:8px;flex-wrap:wrap}
.woocommerce-cart table.cart td.actions .coupon .input-text{width:170px!important;min-height:44px;border:1.5px solid var(--ink)!important;border-radius:var(--r-sm);padding:0 12px!important;font-size:15px}
.woocommerce-cart table.cart td.actions > .button{margin-top:10px}
@media (max-width:768px){
  .woocommerce table.shop_table_responsive tr td{display:flex;justify-content:space-between;gap:12px;text-align:right}
  .woocommerce table.shop_table_responsive tr td::before{text-align:left;font-family:var(--font-head);color:var(--ink)}
  .woocommerce table.shop_table_responsive tr td.product-remove,.woocommerce table.shop_table_responsive tr td.product-thumbnail{display:block;text-align:left}
  .woocommerce-cart table.cart td.actions{display:block}
  .woocommerce-cart table.cart td.actions .coupon .input-text{width:100%!important}
}
.woocommerce-cart .cart-empty-wrap{text-align:center;padding:40px 20px}
.woocommerce-cart .cart-empty{margin:0 0 16px;font-family:var(--font-head);font-weight:600;color:var(--ink)}
.woocommerce .return-to-shop{text-align:center}

/* ---------- payment methods as choice cards ---------- */
.woocommerce-checkout #payment{background:transparent;border-radius:0}
.woocommerce-checkout #payment ul.payment_methods{border:0;padding:0;margin:0 0 12px}
.woocommerce-checkout #payment ul.payment_methods li{display:block;border:1.5px solid var(--ink);border-radius:var(--r-sm);padding:14px;background:var(--paper);margin:0 0 10px;line-height:1.4}
.woocommerce-checkout #payment ul.payment_methods li:has(input:checked){background:var(--mint);box-shadow:3px 3px 0 var(--ink)}
.woocommerce-checkout #payment ul.payment_methods li input[type=radio]{width:20px;height:20px;accent-color:var(--pine);margin:2px 10px 0 0;vertical-align:top}
.woocommerce-checkout #payment ul.payment_methods li label{display:inline;font-family:var(--font-head);font-size:15px;font-weight:700;color:var(--ink);cursor:pointer}
.woocommerce-checkout #payment ul.payment_methods li label img{max-height:22px;vertical-align:middle;margin-left:6px}
.woocommerce-checkout #payment div.payment_box{background:transparent;color:var(--charcoal);font-size:13.5px;margin:6px 0 0 30px;padding:0;line-height:1.5}
.woocommerce-checkout #payment div.payment_box::before{display:none}
.woocommerce-checkout #payment div.payment_box p:last-child{margin:0}
.woocommerce-checkout #payment div.place-order{padding:0;margin-top:14px}
#place_order{width:100%;float:none}
.trust-list{display:grid;gap:6px;margin:14px 0 0;padding:0;list-style:none;font-size:13.5px}
.trust-list li{display:flex;gap:8px;align-items:center}
.trust-list svg{width:16px;height:16px;flex:none;color:var(--pine)}
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{margin-bottom:12px!important}
.woocommerce-checkout .checkout_coupon{border:var(--line);border-radius:var(--r);padding:18px;margin-bottom:18px;background:var(--paper)}
.woocommerce-checkout .checkout_coupon .form-row{display:inline-block;width:auto;margin:0 8px 0 0}

/* ---------- My Account ---------- */
.woocommerce-account .woocommerce-MyAccount-navigation{float:none;width:100%;margin-bottom:18px}
.woocommerce-account .woocommerce-MyAccount-navigation ul{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin:0 calc(var(--gutter) * -1);padding:2px var(--gutter)}
.woocommerce-account .woocommerce-MyAccount-navigation ul::-webkit-scrollbar{display:none}
.woocommerce-account .woocommerce-MyAccount-navigation li{flex:none}
.woocommerce-account .woocommerce-MyAccount-navigation a{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:var(--line);border-radius:999px;background:var(--paper);font-family:var(--font-head);font-size:14px;font-weight:600;color:var(--ink)}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{background:var(--ink);color:var(--cream)}
.woocommerce-account .woocommerce-MyAccount-content{float:none;width:100%}
.woocommerce-account .woocommerce-MyAccount-content p{margin-bottom:12px;font-size:15px}
.woocommerce-account .woocommerce-MyAccount-content mark{background:var(--sand);color:var(--ink);padding:0 4px;border-radius:4px}
.woocommerce-account .addresses .title h2,.woocommerce-account .addresses .title .edit{display:inline-block}
.woocommerce-account .woocommerce-Address{background:var(--cream);border:1px solid var(--rule);border-radius:var(--r-sm);padding:14px 16px;margin-bottom:14px}
.woocommerce-account address{font-style:normal;font-size:14.5px;line-height:1.6}
.woocommerce-account .woocommerce-orders-table__cell-order-status{font-weight:600;color:var(--ink)}
.woocommerce .woocommerce-customer-details--phone,.woocommerce .woocommerce-customer-details--email{margin:6px 0 0;font-size:14.5px}
.woocommerce-order .woocommerce-notice--success{font-family:var(--font-display);font-size:clamp(1.4rem,5vw,1.9rem);font-weight:800;color:var(--ink)!important;border:0!important;background:transparent!important;padding:0!important;margin:0 0 14px!important}
.woocommerce ul.order_details{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px;padding:0}
.woocommerce ul.order_details li{border:1px solid var(--rule);border-radius:var(--r-sm);padding:10px 12px;margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--charcoal);float:none}
.woocommerce ul.order_details li strong{display:block;font-size:15px;text-transform:none;letter-spacing:0;color:var(--ink);margin-top:3px}
.woocommerce-order-details,.woocommerce-customer-details{margin-top:18px}
.woocommerce-customer-details .col2-set{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
@media (min-width:700px){ .woocommerce-customer-details .col2-set{grid-template-columns:repeat(2,minmax(0,1fr))} }
.woocommerce-form-login,.woocommerce-form-register,.woocommerce-ResetPassword{max-width:520px;margin:0 auto;border-radius:var(--r)!important;border:var(--line)!important}
.u-columns.col2-set#customer_login{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
@media (min-width:900px){ .u-columns.col2-set#customer_login{grid-template-columns:repeat(2,minmax(0,1fr))} .u-columns.col2-set#customer_login .woocommerce-form{max-width:none} }
/* Sign in / Create account tabs (logged-out My account) */
.sb-auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;max-width:520px;margin:0 auto 16px;padding:4px;border:var(--line);border-radius:999px;background:#fff}
.sb-auth-tabs a{display:flex;align-items:center;justify-content:center;min-height:44px;border-radius:999px;font-weight:700;font-size:15px;color:var(--charcoal);text-decoration:none}
.sb-auth-tabs a[aria-current="page"]{background:var(--ink);color:#fff}
.sb-auth-tabs a:focus-visible{outline:2px solid var(--pine);outline-offset:2px}
.sb-auth-tabs ~ #customer_login{grid-template-columns:minmax(0,1fr)!important;max-width:520px;margin:0 auto}
.sb-auth-tabs ~ #customer_login h2{display:none}
.sb-auth-tabs ~ #customer_login .woocommerce-form{margin-top:0}
.woocommerce-form-register .woocommerce-privacy-policy-text{margin-bottom:16px}
.sb-auth-tabs[data-tab="login"] ~ #customer_login .u-column2,.sb-auth-tabs[data-tab="register"] ~ #customer_login .u-column1{display:none}
.sb-auth-lead{margin:0 0 14px!important;font-size:15px;line-height:1.55;color:var(--charcoal)}
.sb-auth-switch{margin:16px 0 0!important;padding-top:14px;border-top:1px solid var(--rule);font-size:14.5px;text-align:center}
.sb-auth-switch a{color:var(--pine);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.woocommerce-LostPassword{font-size:14px}
.woocommerce-LostPassword a,.woocommerce-MyAccount-content a:not(.button){color:var(--pine);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.woocommerce-password-strength{font-size:13px;border-radius:6px;padding:6px 10px}
.woocommerce-password-hint{font-size:13px}
.wc-content > .woocommerce > p:first-child{margin-bottom:14px}

/* ---------- product reviews (WooCommerce's template inside our accordion) ---------- */
.pdp-acc .woocommerce-Reviews-title,.pdp-acc .woocommerce-noreviews{display:none}
.pdp-acc #review_form_wrapper{margin-top:4px}
.pdp-acc .comment-reply-title{display:block;font-family:var(--font-head);font-size:15px;font-weight:600;color:var(--ink);margin-bottom:8px}
.pdp-acc .comment-form-rating label,.pdp-acc .comment-form p label{display:block;font-family:var(--font-head);font-size:14px;font-weight:600;color:var(--ink);margin-bottom:6px}
.pdp-acc .comment-form p{margin:0 0 12px}
.pdp-acc .comment-form .stars a{color:var(--copper)}
.pdp-acc .comment-form .form-submit input{min-height:44px}
.pdp-acc .commentlist{list-style:none;margin:0 0 16px;padding:0}
.pdp-acc .commentlist li{border-bottom:1px solid var(--rule);padding:12px 0}
.pdp-acc .commentlist .comment_container{display:flex;gap:12px}
.pdp-acc .commentlist img.avatar{width:40px;height:40px;border-radius:50%;flex:none}
.pdp-acc .commentlist .meta{font-size:13px;margin:0 0 4px}
.pdp-acc .commentlist .meta strong{color:var(--ink)}
.pdp-acc .commentlist .description p{margin:0;font-size:15px}
.pdp-acc .star-rating{color:var(--copper);font-size:14px}
.pdp-acc .woocommerce-review__verified{color:var(--pine)}
.pdp-acc .comment-form-cookies-consent{display:flex;gap:10px;align-items:flex-start;font-size:13.5px}
.pdp-acc .comment-form-cookies-consent input{width:18px;height:18px;accent-color:var(--pine);margin-top:2px}
.pdp-acc .comment-form-cookies-consent label{display:inline;font-family:var(--font-body)!important;font-weight:400!important}
.pdp-acc .must-log-in{font-size:14px}

/* ---------- logged-in admin bar: keep the sticky header and the overlay below it ---------- */
.admin-bar .site-header{top:32px}
.admin-bar .shop-bar{top:calc(var(--header-h) + 32px)}
.admin-bar .pdp,.admin-bar .drawer{top:32px;height:calc(100% - 32px)}
@media (max-width:782px){
  .admin-bar .site-header{top:46px}
  .admin-bar .shop-bar{top:calc(var(--header-h) + 46px)}
  .admin-bar .pdp,.admin-bar .drawer{top:46px;height:calc(100% - 46px)}
}
/* ---------- misc WordPress ---------- */
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wp-block-image img{height:auto}
.alignwide,.alignfull{max-width:100%}
/* "Edit this product" on the product sheet, shown only to logged-in staff */
.sb-edit-link{display:inline-flex;align-self:flex-start;width:fit-content;align-items:center;min-height:32px;font-size:13px;font-weight:600;color:var(--magenta-text);text-decoration:underline;text-underline-offset:3px}

/* ---------- checkout in steps (theme.js): one part at a time, totals on the right on laptops ---------- */
.sb-off{display:none!important}
form.checkout[data-sb-steps] #customer_details .woocommerce-billing-fields > h3,form.checkout[data-sb-steps] #customer_details .woocommerce-additional-fields > h3{display:none}
.sb-steps{display:flex;list-style:none;margin:0 0 16px;padding:0}
.sb-steps li{flex:1;position:relative;margin:0}
.sb-steps li + li::before{content:"";position:absolute;top:21px;left:calc(-50% + 24px);right:calc(50% + 24px);height:2px;background:var(--rule)}
.sb-steps li.is-done + li::before{background:var(--pine)}
.sb-steps button{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%;min-height:44px;padding:4px 2px;background:none;border:0;font-family:var(--font-head);font-size:13px;font-weight:600;line-height:1.25;color:var(--charcoal);text-align:center;cursor:pointer}
.sb-steps button:disabled{cursor:default}
.sb-steps .n{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;border:1.5px solid var(--ink);background:var(--paper);color:var(--ink);font-size:15px}
.sb-steps li.is-current .n{background:var(--ink);color:var(--cream)}
.sb-steps li.is-current .t{color:var(--ink)}
.sb-steps li.is-done .n{background:var(--pine);border-color:var(--pine);color:#fff}
.sb-steps button:focus-visible{outline:3px solid var(--pine);outline-offset:2px;border-radius:12px}
.sb-recap{display:grid;gap:10px;margin:0 0 16px}
.sb-recap:empty{display:none}
.sb-recap .r{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;background:var(--paper);border:var(--line);border-radius:var(--r-sm);padding:12px 14px;font-size:14.5px;line-height:1.5;color:var(--charcoal);overflow-wrap:anywhere}
.sb-recap b{display:block;font-family:var(--font-head);font-size:13px;color:var(--ink)}
.sb-recap button{flex:none;min-height:44px;margin:-10px -6px -10px 0;padding:0 8px;background:none;border:0;font-weight:600;color:var(--ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.sb-step-nav{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:18px}
.sb-step-nav .sb-next{flex:1 1 220px}
.sb-step-nav .sb-back{min-height:44px;padding:0 6px;background:none;border:0;font-family:var(--font-head);font-weight:600;color:var(--ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.sb-step-msg{flex-basis:100%;margin:0;font-size:14.5px;font-weight:600;color:var(--magenta-text)}
.sb-step-msg:empty,.sb-total-hint:empty{display:none}
.sb-total-hint{flex-basis:100%;margin:0;font-size:14px;color:var(--charcoal)}
.sb-main > .woocommerce-NoticeGroup{margin-bottom:14px}
@media (max-width:899px){
  form.checkout[data-sb-steps]:not([data-sb-step="3"]) #order_review_heading,form.checkout[data-sb-steps]:not([data-sb-step="3"]) #order_review{display:none}
}
@media (min-width:900px){
  form.checkout[data-sb-steps] .sb-main{grid-column:1;grid-row:1 / span 2}
  form.checkout[data-sb-steps] #order_review_heading{grid-row:1}
  form.checkout[data-sb-steps] #order_review{grid-row:2}
  form.checkout[data-sb-steps]:not([data-sb-step="3"]) #payment{display:none}
  .sb-total-hint{display:none}
}

/* ---------- account button in the header ---------- */
@media (max-width:399px){ .header-inner{gap:8px} .logo img,.botanical-home .logo img{width:auto;height:32px} .header-inner{gap:6px 6px} .header-tools .icon-btn,.botanical-home .header-tools .icon-btn{width:40px;height:40px} .header-tools .icon-btn svg{width:23px;height:23px} .nav-toggle,.botanical-home .nav-toggle{width:40px;height:40px;padding-inline:10px} #wishCount,#cartCount{top:-6px;right:-6px;min-width:18px;height:18px;line-height:18px;font-size:10px;padding:0 4px} }

/* ---------- My account overview ---------- */
.sb-login-intro{max-width:720px;margin:0 auto 18px;font-size:15.5px;line-height:1.6;color:var(--charcoal);text-align:center}
.woocommerce .sb-acc-hello{font-family:var(--font-display);font-size:clamp(1.5rem,5vw,2rem);font-weight:800;margin:0 0 16px}
.sb-acc-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
@media (min-width:700px){ .sb-acc-grid{grid-template-columns:repeat(2,minmax(0,1fr))} }
.sb-acc-card{background:var(--cream);border:1px solid var(--rule);border-radius:var(--r-sm);padding:16px}
.woocommerce .sb-acc-card h3,.woocommerce .sb-acc-again > h3{font-size:16px;margin:0 0 8px}
.sb-acc-wide{grid-column:1/-1}
.sb-acc-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.sb-acc-head a{font-weight:600;color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.woocommerce-account .woocommerce-MyAccount-content .sb-acc-actions{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0 0}
.woocommerce .woocommerce-MyAccount-content .button.alt{background:var(--pine);color:#fff}
.woocommerce .woocommerce-MyAccount-content .button.alt:hover{background:var(--pine);color:#fff}
.sb-acc-note{font-size:13.5px!important;color:var(--charcoal);margin:6px 0 0!important}
.sb-acc-thumbs{display:flex;flex-wrap:wrap;gap:8px}
.sb-acc-thumbs img,.sb-order-items img{width:48px;height:48px;object-fit:contain;background:var(--paper);border:1px solid var(--rule);border-radius:10px;padding:3px;flex:none}
.sb-order{border-top:1px solid var(--rule);padding:14px 0 2px}
.sb-acc-head + .sb-order,.sb-acc-head + p + .sb-order{border-top:0;padding-top:4px}
.sb-order-top{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:14px;color:var(--charcoal)}
.sb-order-top b{color:var(--ink)}
.sb-order-total{margin-left:auto}
.sb-status{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:999px;background:var(--sand);color:var(--ink);font-size:13px;font-weight:600}
.sb-status.s-completed{background:var(--mint)}
.sb-status.s-cancelled,.sb-status.s-failed,.sb-status.s-refunded{background:var(--blush)}
.sb-order-items{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}
.sb-order-items li{display:flex;align-items:center;gap:10px;font-size:14.5px;color:var(--ink)}
.sb-acc-again{margin-top:24px}
.woocommerce .sb-acc-again .product-card h3{font-size:14px;margin:0;font-weight:600}
@media (min-width:700px){ .woocommerce .sb-acc-again .product-card h3{font-size:15.5px} }
.sb-acc-out{margin-top:18px!important;font-size:14px!important}
.sb-acc-out a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}

/* "Continue with Google" above the login / register forms and at the top of checkout step 1 */
.sb-google{margin:0 0 16px}
.sb-google .nsl-container{margin:0!important;padding:0!important}
.sb-google .nsl-container-buttons{display:flex!important;justify-content:center;padding:0!important}
.sb-google .nsl-container-buttons a{margin:0!important}
.sb-google-note{margin:8px 0 0;font-size:13px;line-height:1.5;color:var(--charcoal);text-align:center}
.sb-google-note a{color:inherit;text-decoration:underline}
.sb-google-or{display:flex;align-items:center;gap:12px;margin:14px 0 0;font-size:13px;color:var(--charcoal)}
.sb-google-or::before,.sb-google-or::after{content:"";flex:1;height:1px;background:var(--rule)}

/* order progress + quiet text links on the account overview */
.sb-track{list-style:none;display:flex;margin:14px 0 4px;padding:0}
.sb-track li{flex:1;position:relative;text-align:center;font-size:13px;color:var(--ink);opacity:.5;padding-top:22px}
.sb-track li::before{content:"";position:absolute;z-index:1;top:0;left:50%;width:14px;height:14px;margin-left:-7px;box-sizing:border-box;border-radius:50%;background:var(--cream);border:2px solid var(--rule)}
.sb-track li::after{content:"";position:absolute;top:6px;left:-50%;width:100%;height:2px;background:var(--rule)}
.sb-track li:first-child::after{display:none}
.sb-track li.is-done,.sb-track li.is-now{opacity:1}
.sb-track li.is-now{font-weight:700}
.sb-track li.is-done::before,.sb-track li.is-now::before{background:var(--ink);border-color:var(--ink)}
.sb-track li.is-done::after,.sb-track li.is-now::after{background:var(--ink)}
.sb-acc-actions .sb-link{order:2;align-self:center;font-size:14px;font-weight:600;color:var(--ink);text-decoration:underline;text-underline-offset:3px}

/* ---------- Call + WhatsApp, fixed bottom-left on every page ---------- */
.sb-contact{position:fixed;right:14px;bottom:calc(14px + env(safe-area-inset-bottom));z-index:49;display:flex;flex-direction:column;gap:10px}
body .back-to-top{right:17px;bottom:calc(138px + env(safe-area-inset-bottom))}
body:has(.pdp-page .pdp-bar:not([hidden])) .back-to-top{bottom:calc(208px + env(safe-area-inset-bottom))}
.sb-contact-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:52px;height:52px;border-radius:999px;border:var(--line);box-shadow:3px 3px 0 var(--ink);font:600 14px/1 var(--font-head);text-decoration:none;transition:transform .15s ease,box-shadow .15s ease}
.sb-contact-btn:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--ink)}
.sb-contact-btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}
.sb-contact-btn:focus-visible{outline:3px solid var(--magenta);outline-offset:3px}
.sb-contact-btn svg{width:24px;height:24px;flex:none}
.sb-contact-btn span{display:none}
.sb-contact-wa{background:#25D366;color:var(--ink)}
.sb-contact-call{background:var(--pine);color:var(--cream)}
@media (min-width:900px){.sb-contact{right:76px;bottom:20px;flex-direction:row}body .back-to-top,body:has(.pdp-page .pdp-bar:not([hidden])) .back-to-top{right:14px;bottom:14px}.sb-contact-btn{width:auto;height:48px;padding:0 18px 0 14px}.sb-contact-btn svg{width:22px;height:22px}.sb-contact-btn span{display:inline}}
body:has(.pdp-page .pdp-bar:not([hidden])) .sb-contact{bottom:calc(84px + env(safe-area-inset-bottom))}
body:has(#drawer[aria-hidden="false"]) .sb-contact,body:has(#pdp[aria-hidden="false"]) .sb-contact{display:none}
@media print{.sb-contact{display:none}}

/* sb-notice-fix */
html body .woocommerce-store-notice{position:sticky!important;top:0!important;z-index:99999!important}
html body.admin-bar .woocommerce-store-notice{top:32px!important}
html body.woocommerce-demo-store .site-header{top:var(--sb-notice-h,0px)!important}
html body.admin-bar.woocommerce-demo-store .site-header{top:calc(32px + var(--sb-notice-h,0px))!important}
@media (max-width:782px){html body.admin-bar .woocommerce-store-notice{top:46px!important}html body.admin-bar.woocommerce-demo-store .site-header{top:calc(46px + var(--sb-notice-h,0px))!important}}
