/* ==========================================================================
   Bridgewell Scientific — polish layer (loads LAST)
   Unifies container width, vertical rhythm, typography, radii, hover/motion across the
   previously separate section stylesheets, and styles the new shared components.
   Section stylesheets stay untouched; this file only harmonises them.
   ========================================================================== */

/* ---------- 1. one container width everywhere ---------- */
.bw-about__inner,
.bsc-categories__container,
.bw2026 .bw-container,
.bw-markets__wrap,
.bw-contact-inner,
.bw-footer-v3__columns,
.bw-footer-v3__bottom{
  width:min(100% - 2*var(--bw-gutter),var(--bw-container))!important;
  max-width:none!important;margin-inline:auto!important;padding-inline:0!important;box-sizing:border-box;
}

/* ---------- 2. one vertical rhythm ---------- */
.bw-about{padding-block:var(--bw-section)!important}
.bsc-categories{padding-block:var(--bw-section)!important}
.bw2026 .bw-section{padding-block:var(--bw-section)!important}
.bw-markets{padding-block:var(--bw-section)!important}
#bridgewell-contact.bw-contact-section{padding:var(--bw-section) 0!important}
.bw-section,.bw-markets,.bw-about,.bsc-categories{margin:0!important}

/* ---------- 3. one type scale ---------- */
.bsc-categories h2,
.bw2026 .bw-title,
.bw-markets__title,
#bw-contact-heading{
  font-family:var(--bw-font-heading)!important;font-size:var(--fs-h2)!important;font-weight:800!important;
  line-height:1.12!important;letter-spacing:-.035em!important;color:var(--bw-navy)!important;text-wrap:balance;
}
.bsc-categories__eyebrow,.bw2026 .bw-eyebrow,.bw-markets__eyebrow,.bw-contact-kicker,.bw-about__heading{
  font-family:var(--bw-font-body)!important;font-size:.75rem!important;font-weight:800!important;letter-spacing:.2em!important;
}
.bsc-categories__intro,.bw2026 .bw-summary,.bw-markets__intro,.bw-contact-intro{font-size:var(--fs-lead)!important;line-height:1.6!important;color:var(--bw-text)!important}
.bw-about__body p,.bw-contact-fact span{font-size:1.02rem!important;line-height:1.7!important}
.bw2026 .bw-caption{font-size:1.05rem!important}

/* card typography */
.bw2026 .bw-mission-card h3,.bw-markets__name{font-family:var(--bw-font-heading)!important;font-size:var(--fs-h3)!important;font-weight:800!important;letter-spacing:-.02em!important;line-height:1.25!important}

/* ---------- 4. shared card feel ---------- */
.bw-mission-card,.bw-about__card,.bw-markets__card,.bw-logo-card,.bsc-cat-card,.bwsp-card,.bw-contact-form-card{
  border-radius:var(--bw-radius)!important;
  transition:transform .35s var(--bw-ease),box-shadow .35s var(--bw-ease),border-color .25s!important;
}
.bw-mission-card:hover,.bw-about__card:hover,.bw-markets__card:hover,.bsc-cat-card:hover,.bwsp-card:hover{
  transform:translateY(-6px);box-shadow:var(--bw-shadow-m)!important;
}
.bsc-cat-card__media img{transition:transform .6s var(--bw-ease)}
.bsc-cat-card:hover .bsc-cat-card__media img{transform:scale(1.07)}
.bw-markets__media{overflow:hidden}
.bw-markets__image{transition:transform .7s var(--bw-ease)}
.bw-markets__card:hover .bw-markets__image{transform:scale(1.06)}

/* category tile label (name + count) */
.bsc-cat-card__name small{display:block;margin-top:2px;font:600 .75rem/1.2 var(--bw-font-body);color:var(--bw-muted);letter-spacing:0}

/* ---------- 9. contact form polish ---------- */
.bw-form-hidden{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.bw-form-feedback{margin-top:14px;padding:12px 14px;border-radius:10px;font-weight:600;font-size:.95rem}
.bw-form-feedback[data-status="success"]{background:#e8f8ee;color:#126b3a}
.bw-form-feedback[data-status="error"]{background:#fdecec;color:#a02727}

/* ---------- 11. category tiles: align names + dashes whatever the wrap ---------- */
.bsc-cat-card__bottom{align-items:flex-start!important;min-height:84px!important;padding-top:4px!important}
.bsc-cat-card__arrow{align-self:flex-end}
.bsc-cat-card__media{flex:none!important}
@media (max-width:640px){.bsc-cat-card__bottom{min-height:78px!important}}

/* ---------- 14. About / Contact pages: same radii + buttons as the rest of the site ---------- */
.bw-cp-office,.bw-cp-form-card,.bw-cp-hero-side,.bw-cp-distribution,
.bw-about-mission-card,.bw-about-market,.bw-about-scope,.bw-about-brand-frame,.bw-about-partner-grid>div,.bw-about-highlights{border-radius:var(--bw-radius)!important;overflow:hidden}
.bw-cp-btn,.bw-about-action,.bw-cp-submit,.bw-cp-field input,.bw-cp-field textarea,.bw-contact-form input,.bw-contact-form textarea{border-radius:var(--bw-radius-s)!important}
.bw-cp-btn-primary,.bw-about-action--primary,.bw-cp-submit{min-height:48px;font-family:var(--bw-font-body)!important;font-weight:700!important;letter-spacing:.005em}
.bw-cp-btn-primary:hover,.bw-about-action--primary:hover,.bw-cp-submit:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(102,44,145,.3)}
.bw-about-hero h1,.bw-cp-hero h1{font-family:var(--bw-font-heading)!important;letter-spacing:-.03em!important;word-spacing:.07em}
.bw-cp-honeypot{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.bw-cp-field input:focus,.bw-cp-field textarea:focus,.bw-contact-form input:focus,.bw-contact-form textarea:focus{outline:3px solid rgba(102,44,145,.25);outline-offset:1px;border-color:var(--bw-purple)}

/* ---------- 18. cart / checkout / order: same container + radii as the rest ---------- */
.bw-main>.bw-container{width:min(100% - 2*var(--bw-gutter),var(--bw-container))!important;max-width:none!important;margin-inline:auto!important;padding-block:clamp(14px,2.5vw,28px) var(--bw-section)!important}
.bwc-cart-contents,.bwc-order-panel,.bwc-checkout-section,.bwc-empty-cart,.bw-complete,.bw-panel{border-radius:var(--bw-radius)!important;overflow:hidden}
.bwc-cart-item img,.bwc-checkout-item img{border-radius:10px}
.bw-field,.bwc-update-button,.bwc-remove-button,.bwc-steps span,.bwc-payment-note{border-radius:var(--bw-radius-s)}
.bwc-page-lead h1,.bw-title,.bw-complete h1{font-family:var(--bw-font-heading)!important;letter-spacing:-.03em!important;word-spacing:.07em}

/* ---------- 19. stray horizontal overflow guards ---------- */
@media (max-width:1180px){.bwh__cta{display:none!important}}
html,body{overflow-x:clip}
.bw-page{overflow-x:clip}

/* ---------- 20. market landing pages, 404, legal ---------- */
.bwmk__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(24px,4vw,56px);align-items:start}
.bwmk__lists{display:grid;gap:18px}
.bwmk__card{padding:clamp(20px,3vw,32px);background:#fff;border:1px solid var(--bw-line);border-radius:var(--bw-radius);box-shadow:var(--bw-shadow-s)}
.bwmk__card h2{font-size:var(--fs-h3);margin:0 0 .8em;color:var(--bw-navy)}
.bwmk__card p{margin:0;line-height:1.7}
.bwmk__card ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px}
.bwmk__card li{display:flex;gap:10px;align-items:flex-start;font-weight:600;color:var(--bw-ink,#202841);line-height:1.4}
.bwmk__card li .bw-i{flex:none;width:20px;height:20px;margin-top:1px;color:var(--bw-purple)}
.bwmk__media{margin:0;border-radius:var(--bw-radius);overflow:hidden;box-shadow:var(--bw-shadow-m);position:sticky;top:110px}
.bwmk__media img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.bwmk__chips{justify-content:center;margin:0 0 clamp(20px,3vw,32px)}
.bwmk__products{grid-template-columns:repeat(4,minmax(0,1fr))}
.bwmk__index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,26px)}
.bwmk__tile{display:flex;flex-direction:column;background:#fff;border:1px solid var(--bw-line);border-radius:var(--bw-radius);overflow:hidden;transition:transform .35s var(--bw-ease),box-shadow .35s var(--bw-ease)}
.bwmk__tile:hover{transform:translateY(-6px);box-shadow:var(--bw-shadow-m)}
.bwmk__tile img{width:100%;aspect-ratio:3/2;object-fit:cover;transition:transform .7s var(--bw-ease)}
.bwmk__tile:hover img{transform:scale(1.05)}
.bwmk__tile{overflow:hidden}
.bwmk__tile-body{display:grid;gap:6px;padding:20px 22px 24px}
.bwmk__tile-body strong{font:800 var(--fs-h3)/1.25 var(--bw-font-heading);color:var(--bw-navy)}
.bwmk__tile-body span{color:var(--bw-text);line-height:1.55}
.bwmk__tile-body em{font-style:normal;font-weight:700;color:var(--bw-purple);display:inline-flex;gap:6px;align-items:center}
.bwmk__tile-body em .bw-i{width:18px;height:18px}
@media (max-width:1000px){.bwmk__grid{grid-template-columns:1fr}.bwmk__media{position:static;order:-1}.bwmk__products{grid-template-columns:repeat(2,minmax(0,1fr))}.bwmk__index{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.bwmk__card ul{grid-template-columns:1fr}.bwmk__index{grid-template-columns:1fr}}
.bw404{text-align:center}
.bw404__code{font:800 clamp(5rem,16vw,9rem)/1 var(--bw-font-heading);margin:0;background:linear-gradient(120deg,var(--bw-purple),var(--bw-orange));-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:-.05em}
.bw404 h1{font-size:var(--fs-h1);margin:.1em 0 .3em}
.bw404__lead{margin:0 auto 1.4em;max-width:52ch;font-size:var(--fs-lead)}
.bw404__search{display:flex;align-items:center;gap:10px;max-width:560px;margin:0 auto 1.4em;padding:6px 6px 6px 16px;background:#fff;border:1.5px solid var(--bw-line);border-radius:var(--bw-radius-s)}
.bw404__search .bw-i{width:20px;height:20px;color:var(--bw-muted);flex:none}
.bw404__search input{flex:1;min-width:0;border:0;outline:0;font:inherit;background:transparent;padding:10px 0}
.bw404__links{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:1.6em}
.bw404__cats{justify-content:center}
.bwlegal{max-width:820px;margin-inline:auto}
.bwlegal h2{font-size:var(--fs-h3);margin:1.8em 0 .5em;color:var(--bw-navy)}
.bwlegal p,.bwlegal li{line-height:1.75;color:var(--bw-text)}
.bwlegal ul{padding-left:1.2em}
.bwlegal a{color:var(--bw-purple);text-decoration:underline;text-underline-offset:3px}
.bwlegal__meta{font-size:.9rem;color:var(--bw-muted)}

/* market page: image fills the column height next to the lists */
.bwmk__grid{align-items:stretch}
.bwmk__media{position:relative!important;top:auto!important;display:flex}
.bwmk__media img{height:100%;min-height:300px;aspect-ratio:auto}
@media (max-width:1000px){.bwmk__media img{height:auto;aspect-ratio:4/3}}


/* ==========================================================================
   Final design pass — square boxes, compact sections, clean product cards
   ========================================================================== */

/* ---------- square corners on every box (circles stay circles) ---------- */
:root{--bw-radius:0px;--bw-radius-s:0px}
.bw2026 .bw-mission-card,.bw2026 .bw-logo-card,.bw-about__card,.bw-markets__card,.bsc-cat-card,.bwsp-card,
.bw-contact-form-card,.bw-contact-form input:not([type=checkbox]),.bw-contact-form textarea,.bw-contact-send,
.bw-form-feedback,.bw-cp-office,.bw-cp-form-card,.bw-cp-hero-side,.bw-cp-distribution,
.bw-about-mission-card,.bw-about-market,.bw-about-scope,.bw-about-brand-frame,.bw-about-partner-grid>div,.bw-about-highlights,
.bw-cp-btn,.bw-about-action,.bw-cp-submit,.bw-cp-field input,.bw-cp-field textarea,
.bw-btn,.bwh__link,.bwh__mega,.bwh__mega-grid a,.bwh__mega-all,.bwh__search form,.bwh__results a.bwr,.bwh__results .bwr img,
.bwd__search,.bwd__nav>a,.bwd__acc>summary,.bwd__acc>div a,.bwd__contact a,.bwx-toast,.bwx-toast a,
.bwx-wa,.bwh__cart,.bw-field,.bw-alert,.bwc-cart-contents,.bwc-order-panel,.bwc-checkout-section,.bwc-empty-cart,.bw-complete,.bw-panel,
.bwc-cart-item img,.bwc-checkout-item img,.bwmk__card,.bwmk__tile,.bwmk__media,.bw404__search,.bw-section--soft .bw-btn{border-radius:0!important}
.bw-contact-send{border-radius:0!important}

/* ---------- hero: shorter ---------- */
.bwhero__slide{min-height:clamp(360px,50vh,460px)}
.bwhero__inner{padding-block:clamp(36px,4.5vw,60px) clamp(70px,7vw,86px)}
.bwhero h1,.bwhero h2.bwhero__title{font-size:clamp(1.85rem,1.1rem + 2.7vw,3.05rem);margin-bottom:.4em}
.bwhero p.bwhero__text{font-size:clamp(.98rem,.94rem + .25vw,1.12rem);margin-bottom:1.5em;max-width:58ch}
.bwhero__copy{max-width:700px}
@media (max-width:760px){.bwhero__slide{min-height:min(76svh,500px)}.bwhero__inner{padding-block:36px 84px}}

/* trust strip: single clean line */
.bwtrust li{padding:18px 14px}

/* ---------- mission: compact cards ---------- */
.bw2026 .bw-mission-grid{gap:18px;margin:30px auto 0;max-width:1060px}
.bw2026 .bw-mission-card{min-height:0!important;padding:22px 22px 24px!important}
.bw2026 .bw-icon-disc{width:80px;height:80px;margin:0 auto 14px}
.bw2026 .bw-icon-disc img{width:64px;height:64px}
.bw2026 .bw-mission-card h3{font-size:1.12rem!important;line-height:1.25!important}
.bw2026 .bw-dash{margin:10px auto}
.bw2026 .bw-mission-card p{font-size:.94rem;line-height:1.55;max-width:300px}
@media (max-width:740px){.bw2026 .bw-mission-card h3{font-size:1.1rem!important}.bw2026 .bw-mission-card p{font-size:.94rem}.bw2026 .bw-icon-disc{width:72px;height:72px}.bw2026 .bw-icon-disc img{width:58px;height:58px}}

/* ---------- supply logos ---------- */
.bw2026 .bw-logo-card{min-height:104px}
.bw2026 .bw-logo-card img{height:70px;max-width:210px}

/* ---------- popular equipment: 5 x 3 ---------- */
.bwfeat .bw-sechead{margin-bottom:clamp(22px,3vw,36px)}
.bwfeat__grid,.bwsp-grid.bwfeat__grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.bwfeat__more{text-align:center;margin:clamp(26px,3.5vw,40px) 0 0}
@media (max-width:1180px){.bwfeat__grid{grid-template-columns:repeat(4,minmax(0,1fr))}.bwfeat__grid>:nth-child(n+13){display:none}}
@media (max-width:900px){.bwfeat__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.bwfeat__grid>:nth-child(n+13){display:flex}}
@media (max-width:620px){.bwfeat__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bwfeat__grid>:nth-child(15){display:none}}

/* ---------- product card (home, shop, related) ---------- */
:root{--sp-purple:var(--bw-purple);--sp-orange:var(--bw-orange);--sp-navy:var(--bw-navy);--sp-ink:#202841;--sp-muted:var(--bw-muted);--sp-line:var(--bw-line);--sp-soft:#f8f7fb;--sp-head:var(--bw-font-heading)}
.bwsp-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid var(--bw-line);overflow:hidden;transition:box-shadow .3s var(--bw-ease),border-color .25s,transform .3s var(--bw-ease)}
.bwsp-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(16,23,89,.12);border-color:#d9cfe8}
.bwsp-image{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;width:100%;padding:12px;background:#fff;border-bottom:1px solid #f0edf4;overflow:hidden}
.bwsp-image img{width:100%;height:100%;object-fit:contain;transition:transform .5s var(--bw-ease)}
.bwsp-card:hover .bwsp-image img{transform:scale(1.05)}
.bwsp-image--none{background:#f7f6fa}
.bwsp-image img.bw-noimg-logo,img.bw-noimg-logo{width:55%;max-width:200px;height:auto;object-fit:contain;opacity:.35;filter:grayscale(1)}
.bwsp-card-content{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0;padding:16px 14px 14px}
.bwsp-card-category{font-size:.66rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--bw-purple);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bwsp-card :is(h2,h3){font:600 1rem/1.4 var(--bw-font-heading);margin:0;min-height:2.8em;color:var(--bw-navy);letter-spacing:-.01em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.bwsp-card :is(h2,h3) a{color:inherit}
.bwsp-card :is(h2,h3) a:hover{color:var(--bw-purple)}
.bwsp-code{font-size:.74rem;color:var(--bw-muted)}
.bwsp-card-price{margin-top:auto;padding-top:6px}
.bwsp-card-price strong{display:block;font:800 1.02rem/1.3 var(--bw-font-heading);color:var(--bw-navy);white-space:nowrap}
.bwsp-actions{display:flex;gap:8px;margin-top:10px}
.bwsp-actions form{flex:1;min-width:0;margin:0}
.bwsp-cart,.bwsp-wa{display:flex;align-items:center;justify-content:center;width:100%;height:42px;border:0;border-radius:0;cursor:pointer;color:#fff;transition:background .2s,transform .2s}
.bwsp-wa{flex:1;min-width:0;background:#25D366}
.bwsp-wa:hover{background:#1ebe5a;color:#fff}
.bwsp-cart{background:var(--bw-purple)}
.bwsp-cart:hover{background:var(--bw-purple-d)}
.bwsp-cart .bw-i,.bwsp-wa .bw-i{width:21px;height:21px}
.bwsp-cart.is-loading{opacity:.7;pointer-events:none}
.bwsp-cart.is-added{background:#1f9d55}
.bwsp-cart:focus-visible,.bwsp-wa:focus-visible{outline:3px solid var(--bw-orange);outline-offset:2px}
@media (max-width:680px){.bwsp-card :is(h2,h3){font-size:.84rem}.bwsp-card-content{padding:11px}.bwsp-card-price strong{font-size:.94rem}}

/* ---------- shop (original layout, page container) ---------- */
.bwsp{width:min(100% - 2*var(--bw-gutter),var(--bw-container))!important;max-width:none!important;margin:0 auto!important;padding:clamp(20px,3vw,34px) 0 var(--bw-section)!important}
.bwsp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media (max-width:720px){.bwsp-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}

/* shop sidebar: category + brand boxes */
.bwsp-shell{display:grid!important;grid-template-columns:268px minmax(0,1fr)!important;gap:28px!important;align-items:start}
.bwsp-sidebar{position:sticky;top:96px;border:1px solid var(--bw-line,#e7e3ee);background:#fff;border-radius:0}
.bwsp-sidebar-title{display:flex;align-items:center;gap:10px;background:var(--bw-purple);color:#fff;padding:15px 18px;font-size:1rem;font-weight:700}
.bwsp-sidebar-title .bw-i{width:20px;height:20px;flex:none}
.bwsp-sidebar-content{padding:16px 12px 14px}
.bwsp-category-heading{display:flex;justify-content:space-between;align-items:center;padding:0 8px 10px;color:var(--bw-navy);font-weight:700;font-size:.95rem}
.bwsp-category-heading span{font-size:.8rem;color:#8d93a8;font-family:var(--bw-font-body)!important}
.bwsp-category{min-height:44px;padding:9px 10px;font-size:.95rem;font-weight:500;line-height:1.35;color:#454d6b}
.bwsp-category.is-current{font-weight:700}
.bwsp-category-count{font-size:.8rem}
.bwsp-brands{padding:16px 12px 16px;border-top:1px solid var(--bw-line,#e7e3ee);background:#faf8fc}
.bwsp-brand-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.bwsp-brand{display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--bw-line,#e7e3ee);padding:8px;aspect-ratio:2.4/1}
.bwsp-brand:last-child{grid-column:1/-1}
.bwsp-brand img{width:100%;height:100%;object-fit:contain}
@media (max-width:1100px){.bwsp-shell{grid-template-columns:230px minmax(0,1fr)!important;gap:20px!important}}
@media (max-width:920px){
  .bwsp-shell{grid-template-columns:minmax(0,1fr)!important;gap:20px!important}
  .bwsp-sidebar{position:static}
  .bwsp-sidebar-title{display:none}
  .bwsp-sidebar-content{padding:12px 10px 10px}
  .bwsp-category-heading{padding-bottom:8px}
  .bwsp-category-list{flex-direction:row!important;overflow-x:auto;gap:8px!important;padding:2px 2px 8px;-webkit-overflow-scrolling:touch}
  .bwsp-category{flex:0 0 auto;border:1px solid #e2d7ea;border-left-width:1px;padding:8px 14px;white-space:nowrap;min-height:42px}
  .bwsp-category.is-current{background:var(--bw-purple);color:#fff;border-color:var(--bw-purple)}
  .bwsp-category.is-current .bwsp-category-count{color:#fff}
  .bwsp-brands{display:none}
}
.bwsp-clear{font-weight:700;font-size:.82rem;color:var(--bw-purple);text-decoration:underline;text-underline-offset:3px}

/* ---------- single product (original layout) ---------- */
.bwp{width:min(100% - 2*var(--bw-gutter),var(--bw-container));margin:0 auto;padding:clamp(20px,3vw,34px) 0 var(--bw-section)}
.bwp .bwp-overline a{color:inherit}
.bwp .bwp-main-image--none{background:#f7f6fa}
.bwp .bwp-main-image>img.bw-noimg-logo{width:42%;max-width:260px;height:auto;mix-blend-mode:normal}
.bwp .bwp-tabs-region{margin-top:46px}
.bwp .bwp-tab-panel{min-height:0;padding:26px 30px 30px}
.bwp-specs{width:100%;max-width:760px;border-collapse:collapse}
.bwp-specs th,.bwp-specs td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--bw-line);font-size:.92rem}
.bwp-specs th{width:36%;color:var(--bw-muted);font-weight:600}
.bwp-specs tr:nth-child(odd){background:#faf9fc}
.bwp .bwp-related-image .bw-noimg-logo{width:50%;height:auto;mix-blend-mode:normal}
.bwp .bwp-related-content h3 a{color:inherit}
.bwp .bwp-related-content strong{color:var(--bw-purple);font-size:.9rem;margin-top:auto}
.bwp .bwp-whatsapp .bw-i{width:22px;height:22px;color:#25D366}
.bw-notfound{padding-block:clamp(48px,8vw,110px);text-align:center}
.bw-notfound h1{font-size:var(--fs-h1);margin-bottom:.4em}
.bw-btn--outline{background:#fff;color:var(--bw-purple);border-color:var(--bw-purple)}
.bw-btn--outline:hover{background:var(--bw-purple);color:#fff}

/* ---------- call to action (original design, self-contained) ---------- */
.bwcta{position:relative;isolation:isolate;background:#fff var(--cta-bg) center/cover no-repeat;color:#fff;font-family:"Albert Sans",var(--bw-font-body)}
.bwcta::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.86;background:linear-gradient(90deg,#0A3F39 52%,rgba(242,41,91,0) 83%)}
.bwcta__in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px;align-items:center;width:min(100% - 120px,1230px);margin:0 auto;padding:60px 0}
.bwcta__title{margin:0 0 10px;max-width:420px;color:#fff;font:800 clamp(1.25rem,1.1rem + .9vw,2rem)/1.48 "Albert Sans",var(--bw-font-body)}
.bwcta__main p{margin:0 0 20px;max-width:430px;color:#fff;font-size:.95rem;line-height:1.75}
.bwcta__btn{display:inline-flex;align-items:center;gap:10px;background:#A64588;color:#fff;font:700 1rem/1 "Albert Sans",var(--bw-font-body);padding:15px 22px;border-radius:6px!important;transition:background .2s}
.bwcta__btn:hover{background:#8d3873;color:#fff}
.bwcta__card{padding:30px;background:rgba(16,15,14,.41);border:1px solid rgba(0,0,0,.11);border-radius:10px!important}
.bwcta__card h4{margin:0 0 12px;color:#fff;font:700 clamp(1.1rem,1rem + .5vw,1.5rem)/1.35 "Albert Sans",var(--bw-font-body)}
.bwcta__card p{margin:0;color:#fff;font-size:.88rem;line-height:1.65}
@media (max-width:900px){.bwcta__in{grid-template-columns:1fr;width:min(100% - 56px,1230px);padding:44px 0}.bwcta::before{background:linear-gradient(180deg,#0A3F39 40%,rgba(10,63,57,.7))}.bwcta__card{padding:22px}}
@media (max-width:480px){.bwcta__in{width:calc(100% - 36px);padding:36px 0}}

/* ---------- about: image beside the copy ---------- */
.bw-about__inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;grid-template-areas:"copy fig";align-items:center!important;gap:clamp(28px,4vw,52px) clamp(28px,4vw,56px)!important}
.bw-about__copy{grid-area:copy}
.bw-about__figure{grid-area:fig;margin:0;overflow:hidden;align-self:stretch;min-height:280px;position:relative}
.bw-about__figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.bw-about__card{min-height:128px!important;border-radius:0!important}
@media (max-width:980px){.bw-about__inner{grid-template-columns:1fr!important;grid-template-areas:"copy" "fig"}.bw-about__figure{min-height:0;aspect-ratio:16/10}}
.bwp .bwp-related-content>span{font-size:.62rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--bw-purple);margin-bottom:5px}
.bwp .bwp-related-content h3{font-family:var(--bw-font-heading);font-size:.88rem;color:var(--bw-navy)}
@media (max-width:520px){.bwsp-intro{gap:10px;align-items:center}.bwsp-intro h1{font-size:clamp(1.5rem,7vw,1.9rem)!important}.bwsp-cart-shortcut{font-size:0!important;width:44px;height:44px;padding:0!important;justify-content:center;gap:0!important;flex:none}.bwsp-cart-shortcut svg{width:22px;height:22px}}
.bw-about-partner-grid>div{background:#fff!important;min-height:100px}
.bw-about-partner-grid img{width:100%;max-width:200px;height:64px;object-fit:contain}
@media (max-width:767px){.bw-about-partner-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.bw-about-partner-grid>div:last-child{grid-column:1/-1}}

/* ==========================================================================
   Typography — one system: Exo for headings, Roboto for everything else
   ========================================================================== */
html{font-size:100%}
body,body :where(p,li,span,a,small,td,th,dd,dt,label,input,textarea,select,button,figcaption,address,em,strong,b,summary,div){font-family:var(--bw-font-body)!important}
body :where(h1,h2,h3,h4,h5,h6),
body :where(h1,h2,h3,h4,h5,h6) :where(span,em,strong,a,small,b),
.bw-title,.bwhero__title,.bw-sechead h2,[class*="__title"],[class*="__name"],[class*="__heading"],[class*="__number"],[class*="__value"],
.bwsp-card-price strong,.bwp-price,.bw-btn,.bwcta__btn,.bwh__link,.bwh__cta,.bwd__nav>a,.bw-eyebrow,.bsc-categories__eyebrow,
.bw-markets__eyebrow,.bwhero .bw-eyebrow,.bwsp-search-btn,.bwp-button,.bwsp-category-heading,.bwsp-sidebar-title,
.bw-footer-v3__column h2,.bw-footer-v3__contact-item strong,.bwtrust li>span{font-family:var(--bw-font-heading)!important}
body :where(h1,h2,h3,h4){letter-spacing:-.01em;word-spacing:0;font-weight:700}
.bw-title,.bsc-categories h2,.bw-markets__title,#bw-contact-heading{letter-spacing:-.012em!important;word-spacing:0!important;font-weight:700!important}
body{font-size:1rem;line-height:1.7}
p{line-height:1.75}
/* readable minimum sizes */
.bwsp-breadcrumb,.bwp .bwp-breadcrumb{font-size:.875rem}
.bwsp-results p{font-size:.9rem}
.bwsp-code,.bwp .bwp-meta{font-size:.85rem}
.bwp .bwp-product-summary{font-size:1.04rem;line-height:1.8}
.bw-about__body p{font-size:1.04rem!important}

/* ---------- product tabs: Description / Reviews ---------- */
.bwp .bwp-tabs-region{margin-top:clamp(36px,5vw,56px);border:1px solid var(--bw-line,#e7e3ee);background:#fff}
.bwp .bwp-tabbar{display:flex;gap:0;background:#faf8fc;border-bottom:1px solid var(--bw-line,#e7e3ee);overflow-x:auto}
.bwp .bwp-tab{flex:0 0 auto;background:transparent;color:#454d6b;border:0;border-right:1px solid var(--bw-line,#e7e3ee);border-bottom:3px solid transparent;margin-bottom:-1px;padding:16px clamp(18px,3vw,34px);font:700 1rem/1.2 var(--bw-font-heading)!important;min-height:56px;cursor:pointer;text-transform:none;letter-spacing:0;transition:color .2s,background .2s}
.bwp .bwp-tab:hover{color:var(--bw-purple)}
.bwp .bwp-tab:last-child{border-right:0}
.bwp .bwp-tab.is-active{background:#fff;color:var(--bw-purple);border-bottom-color:var(--bw-orange)}
.bwp .bwp-tab:focus-visible{outline:3px solid var(--bw-orange);outline-offset:-3px}
.bwp .bwp-tab-panel{padding:clamp(22px,3vw,34px)!important;min-height:0}
.bwp .bwp-tab-panel[hidden]{display:none}
.bwp .bwp-tab-panel h2{font-size:1.25rem;margin:0 0 12px}
.bwp .bwp-tab-panel p{font-size:1.04rem;line-height:1.8;color:#4a5170;max-width:860px}
.bwp .bwp-tab-panel p a{color:var(--bw-purple);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.bwp .bwp-specs-title{font-size:1.1rem;margin:26px 0 10px}
.bwp-specs th,.bwp-specs td{font-size:1rem}
@media (max-width:560px){.bwp .bwp-tab{flex:1 1 0;text-align:center;padding:14px 10px;font-size:.95rem!important}}

/* ---------- readable sizes: shop + product ---------- */
.bwsp-search input,.bwsp-search input::placeholder{font-size:.95rem!important}
.bwsp-sort-label,.bwsp-sort-label select{font-size:.92rem!important}
.bwsp-search-btn{font-size:.95rem!important}
.bwsp-results p{font-size:.95rem!important}
.bwsp-page-arrow,.bwsp-page-number{font-size:.92rem!important}
.bwsp-cart-shortcut{font-size:.92rem}
.bwsp-card-price strong{font-size:1.08rem}
.bwp .bwp-qty-field label{font-size:.9rem!important}
.bwp .bwp-button,.bwp .bwp-whatsapp{font-size:.98rem!important}
.bwp .bwp-meta{font-size:.92rem!important}
.bwp .bwp-overline{font-size:.82rem!important}
.bwp .bwp-related-content h3{font-size:1rem!important;line-height:1.4}
.bwp .bwp-related-content strong{font-size:1rem!important}
.bwp .bwp-related-link{font-size:.9rem!important}
.bwp .bwp-related-header a{font-size:.95rem!important}
@media (max-width:680px){.bwsp-card :is(h2,h3){font-size:.95rem!important}.bwsp-card-price strong{font-size:1rem}}
