/*
Theme Name: BHG Ocean
Theme URI: https://www.besthydroxylgenerator.com/
Author: Oxyzone Enterprises LLC
Description: Light, soft-edged ocean theme for Best Hydroxyl Generator. WooCommerce ready. Deep sea navy, open water blue, aqua foam.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: bhg-ocean
*/

/* besthydroxylgenerator.com — Ocean design system
   Light, soft-edged, welcoming. Deep sea navy + open water blue + aqua foam. */

:root{
  /* surfaces */
  --chassis:#F4F9FC;      /* page background - sea mist */
  --panel:#FFFFFF;        /* cards */
  --panel-hi:#EAF5FA;     /* tinted panel / hover */
  --etch:#DCEAF2;         /* soft hairlines */
  --sand:#FBF7F1;         /* warm neutral for alternating bands */

  /* ink */
  --ink:#0F3B52;          /* deep sea navy - headings & body strong */
  --ink-dim:#5C7C8D;      /* muted slate blue */

  /* brand */
  --safety:#1B7FB8;       /* open water blue - primary */
  --safety-hi:#146290;    /* deeper on hover */
  --uva:#3FB8C9;          /* aqua foam - accents */
  --tide:#8ED4E0;         /* pale aqua */

  /* shape */
  --r:14px;
  --r-sm:10px;
  --r-lg:24px;
  --r-pill:999px;

  /* depth */
  --shadow-sm:0 1px 3px rgba(15,59,82,.06), 0 4px 12px rgba(15,59,82,.05);
  --shadow-md:0 2px 6px rgba(15,59,82,.06), 0 12px 28px rgba(15,59,82,.08);
  --shadow-lg:0 4px 12px rgba(15,59,82,.07), 0 24px 56px rgba(15,59,82,.10);

  --wrap:1120px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;
  background:var(--chassis);
  color:var(--ink);
  font-family:"Source Sans 3",system-ui,-apple-system,sans-serif;
  font-size:17px;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--safety);text-decoration:none;transition:color .18s}
a:hover{color:var(--safety-hi);text-decoration:underline;text-underline-offset:3px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}

/* ---------- type ---------- */
h1,h2,h3,h4{font-family:"Outfit",system-ui,sans-serif;line-height:1.12;margin:0;color:var(--ink);letter-spacing:-.015em}
h1{font-weight:700;font-size:clamp(2.3rem,5vw,3.5rem)}
h2{font-weight:600;font-size:clamp(1.65rem,3.2vw,2.3rem);margin-bottom:16px}
h3{font-weight:600;font-size:1.3rem;margin-bottom:10px}
.eyebrow{
  font-family:"Outfit",sans-serif;font-size:.78rem;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;color:var(--uva);margin:0 0 14px;
}
.lede{max-width:62ch;color:var(--ink-dim);font-size:1.15rem;line-height:1.65}
.mono{font-family:"IBM Plex Mono",monospace}

/* ---------- header ---------- */
header.site{
  background:rgba(255,255,255,.88);backdrop-filter:blur(12px);
  border-bottom:1px solid var(--etch);position:sticky;top:0;z-index:50;
}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;
  gap:20px;min-height:76px;flex-wrap:wrap}
.brand{font-family:"Outfit",sans-serif;font-weight:700;font-size:1.3rem;
  letter-spacing:-.02em;color:var(--ink);text-decoration:none}
.brand:hover{text-decoration:none}
.brand span{color:var(--safety)}
nav.site ul{display:flex;gap:26px;list-style:none;margin:0;padding:0;flex-wrap:wrap}
nav.site a{color:var(--ink-dim);font-size:.95rem;text-decoration:none;padding:6px 0;
  border-bottom:2px solid transparent;transition:color .18s,border-color .18s}
nav.site a:hover,nav.site a[aria-current]{color:var(--safety);border-bottom-color:var(--uva);text-decoration:none}
.tel{font-family:"Outfit",sans-serif;font-weight:600;font-size:1rem;color:var(--ink);white-space:nowrap}

/* ---------- sections ---------- */
section{padding:72px 0}
section:nth-of-type(even){background:var(--panel)}
section.hero{
  padding:88px 0 72px;
  background:
    radial-gradient(1000px 460px at 78% -12%, rgba(142,212,224,.32), transparent 62%),
    radial-gradient(760px 380px at 8% 8%, rgba(27,127,184,.10), transparent 60%),
    var(--chassis);
}
.two{display:grid;grid-template-columns:1fr;gap:36px}
@media(min-width:900px){.two{grid-template-columns:1.15fr .85fr;gap:52px}}

/* ---------- panels ---------- */
.panel{
  background:var(--panel);border:1px solid var(--etch);border-radius:var(--r-lg);
  padding:32px 30px;box-shadow:var(--shadow-sm);
}
.panel-label{
  font-family:"Outfit",sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.13em;
  text-transform:uppercase;color:var(--uva);padding-bottom:14px;margin:0 0 22px;
  border-bottom:1px solid var(--etch);
}

/* ---------- buttons ---------- */
.btn{
  display:inline-block;background:var(--safety);color:#fff;border:0;border-radius:var(--r-pill);
  padding:15px 32px;font-family:"Outfit",sans-serif;font-weight:600;font-size:1rem;
  letter-spacing:.01em;cursor:pointer;text-decoration:none;
  box-shadow:0 2px 8px rgba(27,127,184,.24);transition:background .18s,transform .18s,box-shadow .18s;
}
.btn:hover{background:var(--safety-hi);color:#fff;text-decoration:none;transform:translateY(-1px);
  box-shadow:0 6px 18px rgba(27,127,184,.30)}
.btn.ghost{background:#fff;color:var(--safety);border:1.5px solid var(--etch);box-shadow:none}
.btn.ghost:hover{border-color:var(--uva);background:var(--panel-hi);color:var(--safety-hi);transform:translateY(-1px)}
.btn-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}

/* ---------- tables ---------- */
.tablescroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--r);
  border:1px solid var(--etch);background:var(--panel);box-shadow:var(--shadow-sm)}
table.spec{width:100%;border-collapse:collapse;font-size:.97rem;min-width:660px}
table.spec th,table.spec td{text-align:left;padding:16px 18px;border-bottom:1px solid var(--etch);vertical-align:top}
table.spec thead th{font-family:"Outfit",sans-serif;font-size:.78rem;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;color:var(--ink);background:var(--panel-hi);white-space:nowrap;
  border-bottom:1px solid var(--etch)}
table.spec thead th:first-child{border-top-left-radius:var(--r)}
table.spec thead th:last-child{border-top-right-radius:var(--r)}
table.spec td{color:var(--ink-dim)}
table.spec td:first-child,table.spec th[scope=row]{color:var(--ink);font-weight:600}
table.spec .num{font-family:"IBM Plex Mono",monospace;color:var(--safety);font-weight:500}
table.spec tbody tr:last-child td,table.spec tbody tr:last-child th{border-bottom:0}
table.spec tbody tr:hover{background:var(--panel-hi)}

/* ---------- cards ---------- */
.cards{display:grid;grid-template-columns:1fr;gap:24px;margin-top:40px}
@media(min-width:760px){.cards{grid-template-columns:repeat(3,1fr)}}
.card{
  background:var(--panel);border:1px solid var(--etch);border-radius:var(--r-lg);
  padding:32px 28px 34px;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);
  transition:transform .22s,box-shadow .22s,border-color .22s;
}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--tide)}
.card .tag{display:inline-block;align-self:flex-start;font-family:"Outfit",sans-serif;font-size:.72rem;
  font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--safety);
  background:var(--panel-hi);padding:6px 14px;border-radius:var(--r-pill);margin-bottom:16px}
.card h3{margin-bottom:8px}
.card .price{font-family:"Outfit",sans-serif;font-weight:700;font-size:1.75rem;color:var(--safety);margin:0 0 16px}
.card p{color:var(--ink-dim);font-size:.98rem;margin:0 0 22px}
.card ul{list-style:none;margin:0 0 28px;padding:0;font-size:.94rem;color:var(--ink-dim)}
.card li{padding:9px 0 9px 26px;position:relative;border-top:1px solid var(--etch)}
.card li::before{content:"";position:absolute;left:2px;top:16px;width:9px;height:9px;
  border-radius:50%;background:var(--tide)}
.card .btn{margin-top:auto;text-align:center}

/* ---------- readout ---------- */
.readout{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:8px}
@media(min-width:700px){.readout{grid-template-columns:repeat(4,1fr)}}
.cell{background:var(--panel-hi);padding:22px 20px;border-radius:var(--r);border:1px solid var(--etch)}
.cell dt{font-family:"Outfit",sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;color:var(--ink-dim);margin-bottom:9px}
.cell dd{margin:0;font-family:"Outfit",sans-serif;font-size:1.5rem;font-weight:700;color:var(--safety);line-height:1.1}
.cell dd small{display:block;font-family:"Source Sans 3",sans-serif;font-size:.78rem;font-weight:400;
  color:var(--ink-dim);letter-spacing:0;margin-top:6px}

/* ---------- prose ---------- */
.prose{max-width:70ch}
.prose p,.prose li{color:var(--ink-dim)}
.prose h3{color:var(--ink);margin-top:38px}
.prose ul{padding-left:20px}
.prose strong{color:var(--ink);font-weight:600}

/* ---------- faq ---------- */
details.faq{border:1px solid var(--etch);border-radius:var(--r);background:var(--panel);
  padding:18px 22px;margin-bottom:12px;transition:border-color .18s,box-shadow .18s}
details.faq[open]{border-color:var(--tide);box-shadow:var(--shadow-sm)}
details.faq summary{cursor:pointer;font-family:"Outfit",sans-serif;font-weight:600;
  font-size:1.05rem;color:var(--ink);list-style:none;display:flex;align-items:center;gap:14px}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary::before{content:"+";display:inline-flex;align-items:center;justify-content:center;
  flex:0 0 26px;height:26px;border-radius:50%;background:var(--panel-hi);color:var(--safety);
  font-family:"IBM Plex Mono",monospace;font-size:1rem}
details.faq[open] summary::before{content:"–";background:var(--tide);color:#fff}
details.faq p{color:var(--ink-dim);margin:14px 0 4px 40px;font-size:1rem;max-width:66ch}

/* ---------- callout ---------- */
.callout{
  background:linear-gradient(135deg, rgba(142,212,224,.20), rgba(27,127,184,.08));
  border:1px solid var(--tide);padding:26px 28px;border-radius:var(--r-lg);margin:32px 0;
}
.callout p{margin:0;color:var(--ink);font-size:1rem}
.callout strong{color:var(--ink);font-weight:700}

/* ---------- breadcrumb ---------- */
.crumb{font-size:.88rem;color:var(--ink-dim);padding:22px 0 0}
.crumb a{color:var(--ink-dim)}
.crumb a:hover{color:var(--safety)}

/* ---------- footer ---------- */
footer.site{padding:64px 0 72px;font-size:.96rem;color:var(--ink-dim);
  background:var(--ink);border-top:1px solid var(--etch)}
footer.site .cols{display:grid;grid-template-columns:1fr;gap:36px}
@media(min-width:760px){footer.site .cols{grid-template-columns:2fr 1fr 1fr}}
footer.site h4{font-family:"Outfit",sans-serif;font-size:1.05rem;font-weight:600;
  margin-bottom:16px;color:#fff}
footer.site p{color:rgba(255,255,255,.72)}
footer.site ul{list-style:none;margin:0;padding:0}
footer.site li{padding:6px 0}
footer.site a{color:rgba(255,255,255,.72)}
footer.site a:hover{color:var(--tide)}
footer.site .mono{color:var(--tide);font-family:"Outfit",sans-serif;font-weight:600;font-size:1.05rem}
.legal{margin-top:44px;padding-top:26px;border-top:1px solid rgba(255,255,255,.14);
  font-size:.82rem;line-height:1.7;color:rgba(255,255,255,.55)}

@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}


/* =============================================================
   Sizing calculator
   ============================================================= */
/* sizing-calculator page-specific only — base system lives in site.css */
.console{display:grid;grid-template-columns:1fr;gap:20px;margin-top:8px}
@media(min-width:900px){.console{grid-template-columns:1.05fr .95fr;align-items:start}}
fieldset{border:0;margin:0 0 26px;padding:0}
legend{font-family:"Outfit",sans-serif;font-weight:600;font-size:1.05rem;padding:0;
  margin-bottom:10px;color:var(--ink)}
.hint{font-size:.8rem;color:var(--ink-dim);margin:-6px 0 12px}
.dims{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.dim label{display:block;font-family:"Outfit",sans-serif;font-size:.75rem;font-weight:600;
  letter-spacing:.08em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:7px}
input[type=number]{width:100%;background:var(--panel-hi);color:var(--ink);border:1.5px solid var(--etch);
  border-radius:var(--r-sm);padding:14px 14px;font-family:"Outfit",sans-serif;font-weight:600;font-size:1.05rem;
  -moz-appearance:textfield}
input[type=number]:focus{border-color:var(--uva);background:#fff}
input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
input:focus-visible{outline:2px solid var(--safety);outline-offset:2px}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opt{flex:1 1 auto}
.opt input{position:absolute;opacity:0;pointer-events:none}
.opt span{display:block;text-align:center;cursor:pointer;padding:13px 16px;min-height:48px;
  background:var(--panel-hi);border:1.5px solid var(--etch);border-radius:var(--r-pill);font-size:.95rem;
  color:var(--ink-dim);transition:border-color .18s,color .18s,background .18s}
.opt input:checked+span{border-color:var(--safety);color:#fff;background:var(--safety);font-weight:600}
.opt input:focus-visible+span{outline:2px solid var(--safety);outline-offset:2px}
.calc-btn{width:100%;margin-top:4px;cursor:pointer;background:var(--safety);color:#fff;border:0;
  border-radius:var(--r-pill);padding:17px;font-family:"Outfit",sans-serif;font-weight:600;
  font-size:1.05rem;box-shadow:0 2px 8px rgba(27,127,184,.24);transition:background .18s,transform .18s}
.calc-btn:hover{background:var(--safety-hi);transform:translateY(-1px)}
.plate{position:relative;overflow:hidden}
.plate::before{content:"";position:absolute;inset:-40% -10% auto -10%;height:70%;
  background:radial-gradient(ellipse at 50% 0%,rgba(142,212,224,.45),transparent 68%);
  opacity:0;transition:opacity .5s ease;pointer-events:none}
.plate.lit::before{opacity:1}
.plate>*{position:relative}
.idle{color:var(--ink-dim);font-size:.92rem;padding:30px 0 10px}
.stamp{font-family:"Outfit",sans-serif;font-weight:700;letter-spacing:-.02em;
  font-size:clamp(1.8rem,4.5vw,2.5rem);line-height:1.1;margin:6px 0 6px;color:var(--ink)}
.stamp-sub{font-size:.9rem;color:var(--ink-dim);margin:0 0 22px}
.notes{margin:0;padding:0;list-style:none;font-size:.88rem}
.notes li{padding:9px 0 9px 18px;position:relative;border-top:1px solid var(--etch);color:var(--ink-dim)}
.notes li::before{content:"";position:absolute;left:0;top:17px;width:7px;height:1px;background:var(--tide)}
.disclaimer{margin-top:22px;padding-top:16px;border-top:1px solid var(--etch);font-size:.78rem;
  color:var(--ink-dim);line-height:1.55}
.method{max-width:70ch}
.method h3{font-family:"Outfit",sans-serif;font-weight:600;font-size:1.2rem;
  margin:36px 0 8px;color:var(--ink)}
.method p,.method li{color:var(--ink-dim);font-size:.95rem}
.method ul{padding-left:18px}
.method table{width:100%;border-collapse:collapse;margin-top:12px;font-size:.88rem}
.method th,.method td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--etch);color:var(--ink-dim)}
.method th{font-family:"Outfit",sans-serif;font-size:.78rem;font-weight:600;letter-spacing:.08em;
  text-transform:uppercase;color:var(--ink)}
.method td:first-child{color:var(--ink)}


/* =============================================================
   WordPress core classes
   ============================================================= */
.alignwide{max-width:1280px;margin-left:auto;margin-right:auto}
.alignfull{max-width:none}
.aligncenter{margin-left:auto;margin-right:auto;text-align:center}
.alignleft{float:left;margin:0 24px 20px 0}
.alignright{float:right;margin:0 0 20px 24px}
.wp-caption-text,.wp-block-image figcaption{font-size:.88rem;color:var(--ink-dim);margin-top:8px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}
.custom-logo{max-height:52px;width:auto}
.skip-link{position:absolute;left:-9999px}

/* current menu item */
nav.site .current-menu-item > a,
nav.site .current_page_item > a{color:var(--safety);border-bottom-color:var(--uva)}

/* =============================================================
   WooCommerce
   ============================================================= */
.woocommerce-page section{padding:56px 0}
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error{
  border-top:0;border:1px solid var(--tide);border-radius:var(--r);
  background:linear-gradient(135deg,rgba(142,212,224,.20),rgba(27,127,184,.08));
  color:var(--ink);padding:20px 24px 20px 24px
}
.woocommerce .woocommerce-message::before,
.woocommerce .woocommerce-info::before{color:var(--safety)}
.woocommerce .woocommerce-error{border-color:#E8A0A0;background:#FDF2F2}

/* product grid */
.woocommerce ul.products li.product{
  background:var(--panel);border:1px solid var(--etch);border-radius:var(--r-lg);
  padding:22px;box-shadow:var(--shadow-sm);text-align:left;
  transition:transform .22s,box-shadow .22s,border-color .22s
}
.woocommerce ul.products li.product:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--tide)}
.woocommerce ul.products li.product a img{border-radius:var(--r);margin-bottom:18px}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:"Outfit",sans-serif!important;font-weight:600;font-size:1.25rem;color:var(--ink);padding:0 0 8px
}
.woocommerce ul.products li.product .price{
  font-family:"Outfit",sans-serif;font-weight:700;font-size:1.4rem;color:var(--safety)
}
.woocommerce ul.products li.product .price del{font-size:1rem;font-weight:400;color:var(--ink-dim)}
.woocommerce ul.products li.product .price ins{text-decoration:none}

/* buttons */
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt{
  background:var(--safety);color:#fff;border-radius:var(--r-pill);
  font-family:"Outfit",sans-serif;font-weight:600;font-size:1rem;
  padding:14px 30px;border:0;box-shadow:0 2px 8px rgba(27,127,184,.24);
  transition:background .18s,transform .18s,box-shadow .18s
}
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover{
  background:var(--safety-hi);color:#fff;transform:translateY(-1px);box-shadow:0 6px 18px rgba(27,127,184,.30)
}
.woocommerce a.button.wc-backward,
.woocommerce .cart .button[name="update_cart"]{background:#fff;color:var(--safety);border:1.5px solid var(--etch);box-shadow:none}

/* single product */
.woocommerce div.product .product_title{font-family:"Outfit",sans-serif;font-weight:700;letter-spacing:-.015em;color:var(--ink)}
.woocommerce div.product p.price,
.woocommerce div.product span.price{
  font-family:"Outfit",sans-serif;font-weight:700;font-size:2rem;color:var(--safety)
}
.woocommerce div.product p.price del{font-size:1.15rem;font-weight:400;color:var(--ink-dim)}
.woocommerce div.product p.price ins{text-decoration:none}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin-bottom:0}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{border-bottom-color:var(--etch)}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  background:var(--panel-hi);border:1px solid var(--etch);border-radius:var(--r) var(--r) 0 0
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:var(--panel);border-bottom-color:var(--panel)}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  font-family:"Outfit",sans-serif;font-weight:600;color:var(--ink-dim)
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--safety)}
.woocommerce div.product .woocommerce-tabs .panel{
  background:var(--panel);border:1px solid var(--etch);border-top:0;
  border-radius:0 0 var(--r) var(--r);padding:30px
}
.woocommerce div.product form.cart .quantity input.qty{
  border:1.5px solid var(--etch);border-radius:var(--r-sm);padding:12px 8px;
  font-family:"Outfit",sans-serif;font-weight:600;background:var(--panel-hi);color:var(--ink)
}
.woocommerce div.product .woocommerce-product-gallery img{border-radius:var(--r-lg)}
.woocommerce .product_meta{font-size:.9rem;color:var(--ink-dim);margin-top:20px}

/* tables: cart, checkout, order */
.woocommerce table.shop_table{
  border:1px solid var(--etch);border-radius:var(--r);border-collapse:separate;background:var(--panel)
}
.woocommerce table.shop_table th{
  font-family:"Outfit",sans-serif;font-weight:600;color:var(--ink);background:var(--panel-hi)
}
.woocommerce table.shop_table td{border-top:1px solid var(--etch);color:var(--ink-dim)}
.woocommerce-cart table.cart img{width:80px;border-radius:var(--r-sm)}
.woocommerce .cart-collaterals .cart_totals > h2,
.woocommerce-checkout h3{font-family:"Outfit",sans-serif;font-weight:600;color:var(--ink)}

/* forms */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.select2-container .select2-selection--single{
  border:1.5px solid var(--etch);border-radius:var(--r-sm);padding:13px 14px;
  background:var(--panel-hi);color:var(--ink);font-family:"Source Sans 3",sans-serif;font-size:1rem;height:auto
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus{border-color:var(--uva);background:#fff;outline:none}
.woocommerce form .form-row label{font-family:"Outfit",sans-serif;font-weight:600;color:var(--ink);font-size:.95rem}
.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register,
.woocommerce-checkout #payment{
  border:1px solid var(--etch);border-radius:var(--r-lg);background:var(--panel);padding:26px
}
.woocommerce-checkout #payment div.payment_box{background:var(--panel-hi);border-radius:var(--r);color:var(--ink-dim)}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:var(--panel-hi)}
.woocommerce-checkout #payment ul.payment_methods{border-bottom-color:var(--etch)}

/* result count / ordering */
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering select{color:var(--ink-dim)}

/* badges */
.woocommerce span.onsale{
  background:var(--uva);color:#fff;border-radius:var(--r-pill);
  font-family:"Outfit",sans-serif;font-weight:600;min-height:auto;min-width:auto;
  padding:8px 18px;line-height:1;top:14px;left:14px
}

/* reviews / ratings — only render if real reviews exist */
.woocommerce .star-rating span::before{color:var(--safety)}

/* breadcrumb */
.woocommerce .woocommerce-breadcrumb{color:var(--ink-dim);font-size:.88rem}
.woocommerce .woocommerce-breadcrumb a{color:var(--ink-dim)}
.woocommerce .woocommerce-breadcrumb a:hover{color:var(--safety)}
