/* ============================================================================
   BREAZY - SHOP
   Category / brand / shop archives with their filter rail, the single product
   page, the brands index, search results and the account screens.
   ========================================================================== */

/* ---- archive header ----
   Order matches the live storefront: breadcrumb -> category image + title ->
   description (with a Read More toggle) -> product grid. The description
   carries the internal links, so it must not be pushed below the grid. */
.bz-archive__head{
  display:flex;align-items:flex-start;gap:var(--s5);
  padding-top:var(--s6);padding-bottom:var(--s4);
}
.bz-archive__heading{flex:1 1 auto;min-width:0}
.bz-archive__icon{
  width:120px;height:120px;flex:none;background:var(--haze);
  border-radius:var(--r-1);display:flex;align-items:center;justify-content:center;padding:var(--s3);
}
.bz-archive__icon img{max-width:100%;height:auto;object-fit:contain;mix-blend-mode:multiply}
@media (max-width:640px){ .bz-archive__icon{width:88px;height:88px} }

.bz-archive__toolbar{
  display:flex;align-items:center;justify-content:space-between;gap:var(--s4);
  flex-wrap:wrap;
  padding:var(--s3) 0;margin-bottom:var(--s5);
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  font-size:var(--fs-2);
}
.woocommerce-result-count{margin:0!important;color:var(--muted);font-family:var(--mono);font-size:var(--fs-1);font-variant-numeric:tabular-nums}
.woocommerce-ordering{margin:0!important}
.woocommerce-ordering select{
  border:1px solid var(--line);border-radius:var(--r-1);
  padding:10px var(--s3);font:inherit;font-size:var(--fs-2);background:var(--paper);color:var(--ink);
}

/* Category copy: collapsed height shows the opening heading plus two lines of
   body copy; the cut edge fades so the collapse reads as deliberate. This
   stylesheet does not own the background under imported copy, so <strong>
   inherits rather than being repainted navy on an inline-coloured panel. */
.bz-archive__copy{
  margin-top:var(--s3);max-width:none;font-size:var(--fs-3);
  position:relative;overflow:hidden;
}
.bz-archive__copy:not(.is-open){max-height:6.4em}
.bz-archive__copy:not(.is-open)::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:1.5em;
  background:linear-gradient(to bottom,rgba(255,255,255,0),var(--paper));
  pointer-events:none;
}
.bz-archive__copy.is-open{max-height:none}
.bz-archive__copy > *:first-child{margin-top:0}
.bz-archive__copy h2{
  font-family:var(--display);font-size:var(--fs-5);font-weight:700;
  color:var(--ink);margin:var(--s6) 0 var(--s3);line-height:var(--lh-snug);
}
.bz-archive__copy h3{
  font-family:var(--display);font-size:var(--fs-4);font-weight:700;
  color:var(--ink);margin:var(--s5) 0 var(--s2);line-height:var(--lh-snug);
}
.bz-archive__copy h4{font-size:var(--fs-3);font-weight:700;color:var(--ink);margin:var(--s4) 0 var(--s2)}
.bz-archive__copy p{margin:0 0 var(--s3);line-height:1.75}
.bz-archive__copy strong,.bz-archive__copy b{font-weight:700;color:inherit}
.bz-archive__copy a{color:var(--brand-ink);text-decoration:underline}
.bz-archive__copy a:hover{color:var(--brand-fill)}
.bz-archive__copy ul,.bz-archive__copy ol{margin:0 0 var(--s4);padding-left:var(--s5);line-height:1.75}
.bz-archive__copy li{margin:0 0 var(--s2)}
.bz-archive__copy img{max-width:100%;height:auto;border-radius:var(--r-1)}
.bz-archive__copy p:empty{display:none}
.bz-archive__more{
  margin-top:var(--s2);padding:0;border:0;background:none;
  color:var(--brand-ink);font:inherit;font-size:var(--fs-2);font-weight:700;
  text-decoration:underline;cursor:pointer;
}

/* Long-form SEO copy beneath the grid (35 categories carry it). */
.bz-archive__below h2,
.bz-archive__below h3,
.bz-archive__below h4{
  font-family:var(--display);font-weight:700;color:var(--ink);
  line-height:var(--lh-snug);
}
.bz-archive__below h2{font-size:var(--fs-5);margin:var(--s6) 0 var(--s3)}
.bz-archive__below h3{font-size:var(--fs-4);margin:var(--s5) 0 var(--s2)}
.bz-archive__below h4{font-size:var(--fs-3);margin:var(--s4) 0 var(--s2)}
.bz-archive__below h2:first-child,
.bz-archive__below h3:first-child{margin-top:0}

/* ---- pagination ----
   WooCommerce core's selector is (0,3,4); the current-page rule matches its
   shape so it wins the cascade honestly. */
.woocommerce-pagination ul{
  list-style:none;display:flex;gap:var(--s2);padding:0;margin:var(--s7) 0 0;flex-wrap:wrap;
}
.woocommerce-pagination a,.woocommerce-pagination span{
  display:block;padding:10px var(--s4);border:1px solid var(--line);
  border-radius:var(--r-1);color:var(--ink);font-weight:600;
}
.woocommerce-pagination .current,
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a.current{
  background:var(--brand-fill);border-color:var(--brand-fill);color:#fff;
}

/* ---- filter rail ----
   Size / Type / Brand / Price down the left of the grid, in the live
   storefront's order, each option carrying its count. */
.bz-archive__body{display:grid;grid-template-columns:300px minmax(0,1fr);gap:var(--s6);align-items:start}
.bz-archive__body > .bz-archive__results:only-child{grid-column:1 / -1}
.bz-archive__results{min-width:0}

.bz-filters{min-width:0;font-size:var(--fs-2)}
.bz-filters__refine{padding-bottom:var(--s4);border-bottom:1px solid var(--line);margin-bottom:var(--s4)}
.bz-filters__heading{
  font-size:var(--fs-1);font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:var(--ink);margin:0 0 var(--s2);
}
.bz-filters__none{color:var(--muted);margin:0}
.bz-filters__applied{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--s2)}
.bz-filters__applied a{
  display:inline-flex;align-items:center;gap:6px;
  padding:4px 10px;border:1px solid var(--brand);border-radius:var(--r-pill);
  background:var(--brand-wash);color:var(--brand-ink);font-size:var(--fs-1);font-weight:600;
}
/* The chip removes its own filter, so it reads as a dismiss control. Its hover
   fill is --brand-fill, the blue that can carry white text. */
.bz-filters__applied a::after{content:"\00d7";font-size:15px;line-height:1}
.bz-filters__applied a:hover{text-decoration:none;background:var(--brand-fill);color:#fff}
.bz-filters__clear{display:inline-block;margin-top:var(--s3);font-size:var(--fs-1);font-weight:700;text-decoration:underline}

.bz-filters__toggle{
  display:flex;align-items:center;justify-content:space-between;gap:var(--s3);width:100%;
  padding:var(--s3) 0;border:0;border-bottom:1px solid var(--line);background:none;
  font:inherit;font-weight:700;color:var(--ink);cursor:pointer;text-align:left;
}
.bz-filters__toggle-state{font-size:var(--fs-1);font-weight:600;color:var(--brand-ink);white-space:nowrap}

.bz-filters__list{display:none}
.bz-filters__list.is-open{display:block}
.bz-filters__group{padding:var(--s4) 0;border-bottom:1px solid var(--line)}
.bz-filters__group-title{
  font-size:var(--fs-2);font-weight:700;margin:0 0 var(--s3);color:var(--ink);
}
.bz-filters__group ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:280px;overflow-y:auto}
.bz-filters__group a{color:var(--body);display:inline-block;line-height:1.4}
.bz-filters__group a:hover{color:var(--brand-ink)}
.bz-filters__group li.is-on a{color:var(--brand-ink);font-weight:700}
.bz-filters__count{color:var(--muted);font-size:var(--fs-1)}

.bz-filters__price{display:flex;align-items:center;gap:var(--s2)}
.bz-filters__price label{flex:1 1 0;min-width:0}
.bz-filters__price input{
  width:100%;min-width:0;padding:8px 10px;border:1px solid var(--line);
  border-radius:var(--r-1);font:inherit;font-size:var(--fs-2);
}
.bz-filters__price button{
  flex:none;padding:9px 14px;border:0;border-radius:var(--r-1);
  background:var(--brand-fill);color:#fff;font:inherit;font-weight:700;cursor:pointer;
}
.bz-filters__price button:hover{background:var(--brand-deep)}

@media (max-width:1000px){
  .bz-archive__body{grid-template-columns:1fr}
  /* On a narrow screen the rail would push the grid below the fold, so it
     starts collapsed and the toggle opens it (breazy.js removes is-open). */
  .bz-filters__list{display:none}
  .bz-filters__list.is-open{display:block}
}

/* ============================================================================
   SINGLE PRODUCT
   Image column left, details column right, full-width description beneath,
   then related products.
   ========================================================================== */
.bz-product__top{
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);
  gap:var(--s8);align-items:start;margin-bottom:var(--s8);
}
@media (max-width:900px){ .bz-product__top{grid-template-columns:1fr;gap:var(--s6)} }

/* ---- gallery ----
   With hover-zoom off, the whole image is the affordance: cursor:zoom-in and
   WooCommerce's lightbox on the image's own link. The floating magnifier is
   redundant once the image itself is the target. */
.bz-product__media{min-width:0}
.bz-product__media .woocommerce-product-gallery{
  margin:0;width:100%!important;float:none!important;
  background:var(--haze);border-radius:var(--r-1);padding:var(--s5);
}
.bz-product__media img{display:block;width:100%;height:auto;mix-blend-mode:multiply}
.woocommerce-product-gallery__wrapper{margin:0}
.woocommerce-product-gallery__trigger{display:none!important}
.woocommerce-product-gallery__image,
.woocommerce-product-gallery__image > a,
.woocommerce-product-gallery__image img{cursor:zoom-in}
.woocommerce-product-gallery__image > a{display:block}
.woocommerce-product-gallery img.zoomImg{display:none!important}
.flex-control-thumbs{
  list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));
  gap:var(--s2);margin:var(--s3) 0 0;padding:0;
}
.flex-control-thumbs li{margin:0}
.flex-control-thumbs img{border:1px solid var(--line);border-radius:var(--r-1);cursor:pointer;background:var(--paper)}
.flex-control-thumbs img.flex-active{border-color:var(--ink);border-width:2px}

/* ---- buy block: one scale, no orphaned gaps ---- */
.bz-product__summary{min-width:0;display:flex;flex-direction:column;gap:var(--s4)}
.bz-product__summary > *{margin:0}
.bz-product__title{font-size:var(--fs-6);font-weight:700;margin:0}
.bz-product__brand{margin:0;font-size:var(--fs-1);font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}
.bz-product__brand a{color:var(--faint)}
.bz-product__price{margin:0;font-size:var(--fs-6);font-weight:700;color:var(--ink);
  font-variant-numeric:tabular-nums}
.bz-product__price .price{font-size:inherit;color:inherit}
.bz-product__price del{color:var(--muted);font-weight:400;font-size:var(--fs-4);margin-right:var(--s2)}
.bz-product__price ins{text-decoration:none;color:var(--deal)}
.bz-product__sku{margin:0;color:var(--muted);font-family:var(--mono);font-size:var(--fs-1)}
.bz-product__sku span{font-weight:700}

/* woocommerce.css ships its own price colour (#77a464) and a pale disabled
   button, both winning on specificity. Put the block on the theme's palette. */
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce div.product .bz-product__price,
.woocommerce div.product .bz-product__price .price,
.woocommerce div.product .woocommerce-variation-price .price{
  color:var(--ink) !important;
  font-family:var(--sans);
  font-size:var(--fs-6);
  font-weight:700;
  line-height:1.1;
  margin:0;
}
.woocommerce div.product p.price del,
.woocommerce div.product span.price del{
  color:var(--muted) !important;font-weight:400;font-size:var(--fs-4);margin-right:var(--s2);
}
.woocommerce div.product p.price ins,
.woocommerce div.product span.price ins{
  color:var(--deal) !important;text-decoration:none;background:none;
}
.woocommerce div.product form.cart .button.disabled,
.woocommerce div.product form.cart .button:disabled,
.woocommerce div.product form.cart .button[disabled],
.woocommerce div.product form.cart .wc-variation-selection-needed .button{
  background:var(--haze) !important;
  border-color:var(--line) !important;
  color:var(--muted) !important;
  cursor:not-allowed;opacity:1 !important;
}

/* ---- variation picker ---- */
.bz-product__cart form.cart{display:flex;flex-direction:column;gap:var(--s4);margin:0}
.woocommerce div.product form.cart{margin:0}
.bz-product__cart table.variations{width:100%;border-collapse:collapse;margin:0}
.woocommerce div.product form.cart .variations{margin-bottom:0}
.bz-product__cart table.variations tr{display:block;margin-bottom:var(--s4)}
.bz-product__cart table.variations tr:last-child{margin-bottom:0}
.bz-product__cart table.variations th,
.bz-product__cart table.variations td{display:block;padding:0;text-align:left;width:auto}
/* The option label sits in the theme's label voice, not WooCommerce's, and
   reads "Flavor:  (Required)" as on the live page. */
.bz-product__cart table.variations th,
.bz-product__cart table.variations label{
  color:var(--faint) !important;
  font-size:var(--fs-1);font-weight:700;letter-spacing:.06em;text-transform:uppercase;
}
.bz-product__cart table.variations th{margin-bottom:var(--s2)}
.bz-product__cart table.variations th::after{
  content:" (Required)";
  color:var(--muted);font-weight:400;text-transform:none;letter-spacing:0;
}
.bz-product__cart select{
  width:100%;min-height:52px;
  border:2px solid var(--line);border-radius:var(--r-1);
  padding:var(--s3) var(--s4);font:inherit;font-size:var(--fs-3);
  background:var(--paper);color:var(--ink);
}
.bz-product__cart select:focus{border-color:var(--blue)}
.bz-product__cart .reset_variations{font-size:var(--fs-1);color:var(--muted)}
.woocommerce div.product .woocommerce-variation{margin:0}
.bz-product__cart .woocommerce-variation-price{
  font-size:var(--fs-5);font-weight:700;color:var(--ink);margin:0;
}
.woocommerce div.product .woocommerce-variation-price{margin:0 0 var(--s2)}
.bz-product__cart .woocommerce-variation-availability{font-size:var(--fs-2)}
/* Empty containers left by removed stock/availability must not add height. */
.woocommerce-variation:empty,
.woocommerce-variation-availability:empty,
.woocommerce div.product .woocommerce-variation-description:empty{display:none}
.bz-product__cart .woocommerce-variation-add-to-cart{
  display:flex;gap:var(--s3);align-items:stretch;flex-wrap:wrap;
}
.bz-product__cart .quantity{display:inline-flex}
.bz-product__cart .quantity input{
  width:88px;min-height:48px;
  border:2px solid var(--ink-3,#5A6B7B);border-radius:var(--r-1);
  background:var(--paper);color:var(--ink);
  padding:var(--s3);font:inherit;font-size:var(--fs-4);font-weight:700;
  text-align:center;font-variant-numeric:tabular-nums;
}
.bz-product__cart .quantity input:focus{
  outline:2px solid var(--brand);outline-offset:1px;border-color:var(--brand-fill);
}
/* Keep the native stepper arrows - they are the affordance that says "editable". */
.bz-product__cart .quantity input[type="number"]{-moz-appearance:auto;appearance:auto}
.bz-product__cart .quantity input::-webkit-outer-spin-button,
.bz-product__cart .quantity input::-webkit-inner-spin-button{
  -webkit-appearance:inner-spin-button;opacity:1;
}
.bz-product__cart .quantity::before{
  content:"Qty";align-self:center;margin-right:var(--s2);
  font-size:var(--fs-1);font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--muted);
}
.bz-product__cart .single_add_to_cart_button{min-height:48px;font-size:var(--fs-3)}
/* Add-to-cart sizing depends on which way its container flexes: beside the
   quantity field (row) 220px is a width basis; as a direct child of form.cart
   (column) it would become a height. */
.bz-product__cart .woocommerce-variation-add-to-cart .single_add_to_cart_button{
  flex:1 1 220px;
}
.bz-product__cart form.cart > .single_add_to_cart_button{
  flex:0 0 auto;
  width:100%;
  min-height:52px;
}

/* Variation pickers as button groups (breazy.js), matching the live page. */
.bz-variant-select--hidden{
  position:absolute !important;width:1px;height:1px;overflow:hidden;
  clip:rect(1px,1px,1px,1px);white-space:nowrap;
}
.bz-variant-group{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s2)}
.bz-variant{
  appearance:none;cursor:pointer;
  display:inline-flex;align-items:center;gap:8px;
  background:var(--paper);
  border:1px solid var(--ink);
  border-radius:var(--r-1);
  color:var(--ink);
  font-family:var(--sans);font-size:var(--fs-3);font-weight:400;line-height:1.2;
  padding:12px 18px;min-height:46px;
  transition:background-color .12s ease,border-color .12s ease,color .12s ease;
}
.bz-variant:hover{border-color:var(--brand-fill);color:var(--brand-ink)}
.bz-variant.is-selected{
  background:var(--brand-fill);border-color:var(--brand-fill);color:#fff;font-weight:600;
}
/* Unavailable: the combination does not exist. */
.bz-variant.is-unavailable{
  border-color:var(--line);color:var(--gone);
  text-decoration:line-through;cursor:not-allowed;
}
/* Sold out: stays clickable so WooCommerce can show its own notice, but must
   never read as buyable. Greyed, de-emphasised, with a grey ×. */
.bz-variant__x{
  font-size:1.15em;line-height:1;font-weight:400;
  color:var(--faint);
}
.bz-variant.is-oos{
  border-color:var(--line);
  color:var(--muted);
  background:var(--haze);
}
.bz-variant.is-oos .bz-variant__label{text-decoration:line-through;text-decoration-thickness:1px}
.bz-variant.is-oos:hover{
  border-color:var(--line);
  color:var(--muted);
}
.bz-variant.is-oos.is-selected{
  background:var(--muted);border-color:var(--muted);color:#fff;
}
.bz-variant.is-oos.is-selected .bz-variant__x{color:#fff}
.bz-variant.is-oos.is-selected .bz-variant__label{text-decoration:line-through}
.bz-variant-legend{
  display:inline-flex;align-items:center;gap:6px;
  width:100%;margin-top:var(--s2);
  font-size:var(--fs-1);color:var(--muted);
}

/* "Shipped & Sold By breazy" reassurance line. */
.bz-shipnote{
  display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap;
  margin:var(--s4) 0 0;font-size:var(--fs-3);color:var(--ink);
}
.bz-shipnote__truck{width:34px;height:auto;display:block;opacity:.75}
.bz-shipnote__logo{height:26px;width:auto;display:block}

.bz-product__excerpt{margin-top:var(--s4);font-size:var(--fs-2);color:var(--muted)}

.bz-product__description{margin-top:var(--s7);margin-bottom:var(--s8);max-width:none}
.bz-product__description .bz-section__title{margin-bottom:var(--s5)}
.bz-product__description-body h2{font-size:var(--fs-5);margin:var(--s6) 0 var(--s3)}
.bz-product__description-body h3{font-size:var(--fs-4);margin:var(--s5) 0 var(--s2)}
.bz-product__description-body p{margin:0 0 var(--s3)}
.bz-product__description-body img{border-radius:var(--r-1)}

.related.products > h2,.up-sells > h2{font-size:var(--fs-5);font-weight:700;margin:0 0 var(--s5)}

/* Review and rating display stays hidden: the migrated catalogue carries no
   reviews yet, and an empty "Reviews (0)" panel reads as broken. */
.woocommerce .star-rating,
.woocommerce .woocommerce-product-rating,
.woocommerce #reviews,
.woocommerce #review_form_wrapper,
.woocommerce-Reviews,
li.reviews_tab{display:none !important}

/* ============================================================================
   BRANDS INDEX  (/brands)
   Two sections, as the live storefront lists them: Featured, then A-Z.
   ========================================================================== */
.bz-brands__count{color:var(--muted);font-size:var(--fs-1);margin:0 0 var(--s5)}
.bz-brands__heading{
  font-family:var(--display);font-size:var(--fs-5);font-weight:700;
  margin:var(--s7) 0 var(--s5);display:flex;align-items:center;gap:var(--s3);
}
.bz-brands__heading:first-of-type{margin-top:var(--s5)}
.bz-brands__az{
  font-family:var(--sans);font-size:var(--fs-1);font-weight:700;
  letter-spacing:.1em;color:#fff;background:var(--brand-fill);
  padding:4px 9px;border-radius:var(--r-1);
}
.bz-brands{
  list-style:none;margin:0;padding:0;
  display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--s4);
}
.bz-brands__item{margin:0;min-width:0}
.bz-brands__link{
  display:grid;grid-template-rows:auto auto auto;gap:var(--s2);
  padding:var(--s4);height:100%;
  border:1px solid var(--line);border-radius:var(--r-1);
  background:var(--paper);color:var(--ink);text-align:center;
}
.bz-brands__link:hover{border-color:var(--brand);text-decoration:none}
.bz-brands__logo{
  display:flex;align-items:center;justify-content:center;
  height:88px;background:var(--haze);border-radius:var(--r-1);padding:var(--s3);
}
.bz-brands__logo img{max-height:100%;width:auto;object-fit:contain;mix-blend-mode:multiply}
.bz-brands__initial{font-family:var(--display);font-size:var(--fs-6);font-weight:700;color:var(--brand-deep)}
.bz-brands__name{font-weight:700;font-size:var(--fs-3);line-height:var(--lh-snug)}

/* ============================================================================
   ACCOUNT PAGES
   WooCommerce ships its own form furniture; this gives it the theme's
   controls and stops the login form stretching the full container width.
   ========================================================================== */
.woocommerce-account .bz-content{max-width:1000px}
.woocommerce-account .u-columns{display:grid;grid-template-columns:1fr 1fr;gap:var(--s6);align-items:start}
.woocommerce-account h2{font-family:var(--display);font-size:var(--fs-5);font-weight:700;margin:0 0 var(--s4)}
.woocommerce-account form.login,
.woocommerce-account form.register{
  border:1px solid var(--line);border-radius:var(--r-1);
  padding:var(--s5);background:var(--paper);margin:0;
}
.woocommerce form .form-row{margin:0 0 var(--s4);padding:0;display:block}
.woocommerce form .form-row label{display:block;font-weight:600;margin-bottom:6px;font-size:var(--fs-2)}
.woocommerce form .form-row .required{color:var(--deal);text-decoration:none;border:0}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-account input[type="text"],
.woocommerce-account input[type="email"],
.woocommerce-account input[type="password"],
.woocommerce-account input[type="tel"]{
  width:100%;padding:11px var(--s3);
  border:1px solid var(--line);border-radius:var(--r-1);
  font:inherit;font-size:var(--fs-2);background:var(--paper);color:var(--ink);
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce-account input:focus{outline:2px solid var(--brand);outline-offset:1px;border-color:var(--brand)}
/* WooCommerce's show/hide password control renders as a bare box otherwise. */
.woocommerce form .password-input{display:block;position:relative}
.woocommerce form .show-password-input{
  position:absolute;right:10px;top:50%;transform:translateY(-50%);
  cursor:pointer;opacity:.5;
}
.woocommerce form .show-password-input::after{content:"\1F441";font-size:14px}
.woocommerce-form-login__rememberme{display:inline-flex;align-items:center;gap:8px;font-weight:400}
.woocommerce-account .button,
.woocommerce-account button[type="submit"]{
  display:inline-block;padding:12px var(--s5);border:0;border-radius:var(--r-1);
  background:var(--brand-fill);color:#fff;font:inherit;font-weight:700;cursor:pointer;
}
.woocommerce-account .button:hover,
.woocommerce-account button[type="submit"]:hover{background:var(--brand-deep);color:#fff;text-decoration:none}
.woocommerce-LostPassword{margin:var(--s3) 0 0;font-size:var(--fs-2)}
/* Signed-in view: the account nav beside its panel. */
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.woocommerce-account .woocommerce-MyAccount-navigation a{
  display:block;padding:10px var(--s3);border-radius:var(--r-1);color:var(--ink);font-weight:600;
}
.woocommerce-account .woocommerce-MyAccount-navigation a:hover{background:var(--haze);text-decoration:none}
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a{background:var(--brand-wash);color:var(--brand-ink)}
@media (min-width:781px){
  .woocommerce-account.logged-in .woocommerce{display:grid;grid-template-columns:240px minmax(0,1fr);gap:var(--s6);align-items:start}
}
@media (max-width:780px){ .woocommerce-account .u-columns{grid-template-columns:1fr} }
