/* Matching Brands CMS runtime styles.
   This file contains the human-readable layout layer used by the Flask/Jinja CMS.
   site.css keeps the original exported design reference styles; inline.css makes the
   database-rendered components match that design and restores local interaction. */
:root{
  --bp-font:"Helvetica Neue",Arial,"Segoe UI",Roboto,sans-serif;
  --bp-black:#000;
  --bp-white:#fff;
  --bp-soft:#f2f1ef;
  --bp-soft-2:#ebe9e5;
  --bp-gold:#ffd284;
  --bp-sale:#f6cf83;
  --bp-border:#d8d4cc;
  --bp-text:#111;
  --bp-muted:#555;
  --bp-container:1180px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:var(--bp-font);color:var(--bp-text);background:#fff;font-size:16px;line-height:1.4}
a{color:inherit;text-underline-offset:3px} img{max-width:100%;display:block} button,input,select,textarea{font:inherit}.bp-main{min-height:45vh}.bp-container{width:min(var(--bp-container),calc(100% - 48px));margin-inline:auto}.bp-center{text-align:center}.bp-lead{font-size:20px;line-height:1.45}.bp-richtext p{margin:0 0 18px}.bp-section{padding:72px 0}.bp-section--soft{background:var(--bp-soft)}.bp-section__title{font-size:34px;font-weight:300;letter-spacing:-.03em;margin:0 0 10px}.bp-section__subtitle{margin:0 0 28px;color:#222}.bp-section__head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}.bp-section__head.bp-center{align-items:center}.bp-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 28px;text-decoration:none;text-transform:uppercase;font-weight:700;letter-spacing:.04em;border:0;border-radius:3px;cursor:pointer}.bp-button--dark{background:#000;color:#fff}.bp-button--gold{background:var(--bp-gold);color:#000}.bp-button--wide{width:100%;margin:12px 0}

/* Header */
.bp-site-header{position:relative;z-index:50;background:#fff;border-bottom:1px solid #ddd}.bp-top-strip{background:#f3f2f0;border-top:1px solid #dad7d1;border-bottom:1px solid #e4e1dc}.bp-top-strip__inner{width:min(var(--bp-container),calc(100% - 48px));margin:auto;display:grid;grid-template-columns:repeat(4,1fr);text-align:center;gap:16px;font-size:14px}.bp-top-strip a{display:block;padding:11px 4px}.bp-header-main{width:min(var(--bp-container),calc(100% - 48px));margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 0 18px}.bp-logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none;min-width:190px}.bp-logo img{max-height:56px;width:auto}.bp-logo__mark{display:inline-flex;align-items:center;justify-content:center;width:70px;height:38px;background:#000;color:#fff;font-weight:700;letter-spacing:.08em}.bp-logo__text{font-size:24px;font-weight:700}.bp-header-ctas{display:flex;gap:8px;align-items:center}.bp-mobile-toggle{display:none;background:transparent;border:0;cursor:pointer;align-items:center;gap:8px;padding:10px}.bp-mobile-toggle span{display:block;width:24px;height:2px;background:#000;margin:5px 0}.bp-mobile-toggle strong{font-size:13px}.bp-primary-nav{background:#fff}.bp-nav__inner{width:min(var(--bp-container),calc(100% - 48px));margin:auto;display:flex;align-items:center;justify-content:space-between}.bp-product-nav,.bp-page-nav{display:flex;align-items:center;gap:28px}.bp-nav-item{position:static}.bp-nav-link{display:block;padding:14px 0 18px;text-decoration:none;font-weight:700}.bp-nav-link:hover{border-bottom:4px solid #000;padding-bottom:14px}.bp-nav-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.42);z-index:40}.bp-site-header.is-menu-open .bp-nav-overlay{display:block}.bp-mega{position:absolute;left:0;right:0;top:100%;display:none;background:#fff;box-shadow:0 16px 30px rgba(0,0,0,.12);z-index:60;border-top:1px solid #d5d0c8}.bp-nav-item.is-open .bp-mega,.bp-nav-item:hover .bp-mega{display:block}.bp-mega__inner{width:min(var(--bp-container),calc(100% - 48px));margin:auto;display:grid;grid-template-columns:240px 1fr;min-height:300px}.bp-mega__left{background:#f3f2f0;border-right:1px solid #ddd5ca}.bp-mega__tab{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:72px;padding:0 22px;background:#f3f2f0;border:0;border-bottom:1px solid #d4d0c8;text-align:left;text-decoration:none;font-weight:700;cursor:pointer}.bp-mega__tab.is-active,.bp-mega__tab:hover{background:#fff}.bp-mega__tab--all{text-decoration:none}.bp-mega__chevron{width:12px;height:12px;border-top:1.5px solid #000;border-right:1.5px solid #000;transform:rotate(45deg)}.bp-mega__right{padding:34px 42px}.bp-mega__panel{display:none;grid-template-columns:repeat(7,minmax(92px,1fr));gap:30px 28px}.bp-mega__panel.is-active{display:grid}.bp-mega-card{text-align:center;text-decoration:none;font-weight:400;line-height:1.25}.bp-mega-card img{height:62px;width:78px;object-fit:contain;margin:0 auto 10px}.bp-colour-dot{width:64px;height:64px;border-radius:50%;border:1px solid #aaa;display:block;margin:0 auto 12px}.bp-mega-card:hover span{text-decoration:underline}

/* Sale and hero */
.bp-sale-banner{background:var(--bp-sale)}.bp-sale-banner__inner{width:min(1280px,calc(100% - 48px));margin:auto;min-height:96px;display:flex;align-items:center;justify-content:center;gap:44px;font-size:26px}.bp-sale-banner__script{font-size:40px;font-style:italic;font-weight:300}.bp-sale-banner__slash{font-size:72px;line-height:1;font-weight:300}.bp-sale-banner strong{font-size:54px;font-weight:300;letter-spacing:.04em}.bp-hero{background:var(--bp-soft);padding:92px 0;text-align:center}.bp-hero h1{font-size:52px;font-weight:300;line-height:1.1;letter-spacing:-.04em;margin:0 0 24px}.bp-video-hero__media{width:100%;height:min(58vw,640px);object-fit:cover;object-position:center}.bp-video-hero__text{padding:74px 0 80px;background:var(--bp-soft)}.bp-video-hero__text h1{font-size:48px}

/* Cards */
.bp-icon-row{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;text-align:center;margin-top:36px}.bp-icon-item img{height:70px;object-fit:contain;margin:0 auto 14px}.bp-icon-item h3{font-size:18px;margin:0 0 4px}.bp-icon-item p{font-size:15px;margin:0;color:#222}.bp-card-grid{display:grid;gap:28px}.bp-card-grid--3{grid-template-columns:repeat(3,1fr)}.bp-card-grid--4{grid-template-columns:repeat(4,1fr)}.bp-card{background:#f1f0ee;overflow:hidden}.bp-card img{width:100%;height:230px;object-fit:cover}.bp-card__body{padding:24px}.bp-card h3{font-size:25px;font-weight:300;margin:0 0 18px;letter-spacing:-.03em}.bp-card p{margin:0 0 16px}.bp-text-link{font-weight:700}.bp-card-carousel{display:flex;overflow-x:auto;scroll-behavior:smooth;gap:22px;padding-bottom:18px;scrollbar-color:#cbc6bc #eee}.bp-card--carousel{min-width:360px;max-width:360px}.bp-carousel-controls{display:flex;gap:12px;align-items:center}.bp-circle-btn{width:32px;height:32px;border-radius:50%;border:2px solid #a3a3a3;background:#fff;cursor:pointer;position:relative}.bp-circle-btn::after{content:"";display:block;width:8px;height:8px;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(-135deg);position:absolute;left:12px;top:10px}.bp-circle-btn--dark{background:#000;border-color:#000;color:#fff}.bp-circle-btn--dark::after{transform:rotate(45deg);left:9px}.bp-carousel-track{height:8px;border-radius:20px;border:1px solid #d8d1c7;background:#fff;margin-top:8px}

/* Split, forms, footer */
.bp-split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.bp-split--image-left img{order:-1}.bp-split img{border-radius:4px;width:100%;max-height:420px;object-fit:cover}.bp-split h2{font-size:36px;font-weight:300;margin:0 0 16px}.bp-form-wrap{max-width:720px}.bp-form{display:grid;gap:18px}.bp-form label{display:grid;gap:6px}.bp-form input,.bp-form select,.bp-form textarea{border:1px solid #aaa;border-radius:2px;min-height:44px;padding:10px;background:#fff}.bp-form textarea{min-height:120px}.bp-form--inline{grid-template-columns:1fr 320px auto;align-items:end}.bp-newsletter{background:#fff}.bp-breadcrumbs{width:min(var(--bp-container),calc(100% - 48px));margin:20px auto 34px;display:flex;gap:10px;font-size:14px}.bp-footer{background:#000;color:#fff;padding:56px 0}.bp-footer__inner{width:min(var(--bp-container),calc(100% - 48px));margin:auto}.bp-footer__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:48px}.bp-footer__column h3{margin:0 0 14px;font-size:18px}.bp-footer__column a{display:block;margin:8px 0;text-decoration:none}.bp-footer__column a:hover{text-decoration:underline}.bp-footer__copyright{text-align:center;margin-top:48px;font-size:14px}

/* Product listing and product detail */
.bp-filter-box{display:flex;flex-wrap:wrap;gap:12px;align-items:center;background:#f0efed;padding:20px;margin-bottom:28px}.bp-filter-box a{background:#fff;text-decoration:none;padding:16px 22px;border-radius:4px}.bp-product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.bp-product-card img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:4px}.bp-product-card h3{font-size:18px;font-weight:400;margin:12px 0 2px}.bp-product-card p{margin:0}.bp-product-detail{padding:52px 0 64px;border-top:1px solid #ddd}.bp-product-detail__grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);gap:56px}.bp-product-detail__media{display:grid;grid-template-columns:72px 1fr;gap:18px}.bp-product-thumbs{display:grid;align-content:start;gap:12px}.bp-product-thumbs button{border:0;background:#eee;border-radius:4px;padding:0;overflow:hidden;cursor:pointer}.bp-product-thumbs img{width:72px;height:72px;object-fit:cover}.bp-product-image-stage{position:relative;background:#f2f1ef;border-radius:4px;overflow:hidden}.bp-product-image-stage>img{width:100%;height:540px;object-fit:cover}.bp-product-count{position:absolute;right:16px;bottom:16px;background:#3b3d45;color:#fff;border-radius:4px;padding:6px 10px;font-weight:700}.bp-product-detail__info h1{font-size:42px;font-weight:300;letter-spacing:-.04em;margin:0 0 6px}.bp-product-subtitle{font-size:20px;margin:0 0 24px;color:#555}.bp-small-label{font-size:14px;margin:22px 0 10px}.bp-swatches{display:flex;gap:14px;margin-bottom:26px}.bp-swatch{width:30px;height:30px;border-radius:50%;border:1px solid #999;display:inline-block;box-shadow:0 0 0 3px #fff,0 0 0 4px #ddd}.bp-product-description{margin-top:26px;color:#333}.bp-feature-card{background:#fff;min-width:180px;max-width:180px;text-align:center;padding:24px 18px}.bp-feature-card img{height:72px;width:88px;object-fit:contain;margin:0 auto 14px}.bp-feature-card h3{font-size:20px;margin:0 0 12px}.bp-feature-card p{font-size:14px;margin:0}.bp-attributes{display:grid;grid-template-columns:220px 1fr;border-top:1px solid #ddd}.bp-attributes dt,.bp-attributes dd{padding:12px 0;border-bottom:1px solid #ddd;margin:0}

/* Gallery and lightbox */
.bp-gallery{columns:4 230px;column-gap:22px}.bp-gallery__item{display:block;width:100%;position:relative;margin:0 0 22px;border:0;background:transparent;padding:0;cursor:pointer;break-inside:avoid}.bp-gallery__item img{width:100%;border-radius:4px}.bp-gallery__item span{position:absolute;right:14px;bottom:14px;width:48px;height:48px;border-radius:50%;background:#000;color:#fff;display:flex;align-items:center;justify-content:center;font-size:38px;line-height:1}.bp-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:200;display:flex;align-items:center;justify-content:center;padding:34px}.bp-lightbox[hidden]{display:none}.bp-lightbox__dialog{position:relative;width:min(1180px,calc(100vw - 140px));max-height:88vh;background:#fff;border-radius:18px;overflow:hidden}.bp-lightbox__stage{position:relative;background:#f3f2ef;min-height:520px;display:flex;align-items:center;justify-content:center;overflow:hidden}.bp-lightbox__stage::before{content:"";position:absolute;inset:0;background-image:var(--bp-lightbox-bg);background-size:cover;background-position:center;filter:blur(14px);opacity:.35;transform:scale(1.05)}.bp-lightbox__image{position:relative;z-index:1;max-height:70vh;width:auto;max-width:62%;object-fit:contain}.bp-lightbox__caption{padding:18px 24px;font-size:17px;line-height:1.6}.bp-lightbox__caption strong{display:block;margin-top:10px}.bp-lightbox__close,.bp-lightbox__prev,.bp-lightbox__next{position:absolute;border:0;border-radius:50%;background:#fff;cursor:pointer;z-index:4}.bp-lightbox__close{top:14px;right:14px;width:34px;height:34px;font-size:22px}.bp-lightbox__prev,.bp-lightbox__next{width:48px;height:48px;top:50%;transform:translateY(-50%);font-size:36px}.bp-lightbox__prev{left:28px}.bp-lightbox__next{right:28px}

/* Admin compatibility thumbnails */
.admin-thumb{width:64px;height:64px;object-fit:cover;border-radius:4px}

@media (max-width: 900px){
  .bp-top-strip__inner{grid-template-columns:1fr 1fr;font-size:12px}.bp-header-main{padding:14px 16px}.bp-mobile-toggle{display:block}.bp-header-ctas{display:none}.bp-nav__inner{width:100%;display:block}.bp-primary-nav{display:none}.bp-primary-nav.is-open{display:block}.bp-product-nav,.bp-page-nav{display:block}.bp-nav-link{padding:16px 24px;border-top:1px solid #e1ddd5}.bp-mega{position:static;box-shadow:none;border-top:0}.bp-nav-item.is-open .bp-mega{display:block}.bp-nav-item:hover .bp-mega{display:none}.bp-nav-item.is-open:hover .bp-mega{display:block}.bp-mega__inner{width:100%;display:block;min-height:0}.bp-mega__left{border-right:0}.bp-mega__right{padding:16px}.bp-mega__panel{grid-template-columns:repeat(2,1fr);gap:18px}.bp-sale-banner__inner{min-height:120px;gap:14px;flex-wrap:wrap;font-size:18px}.bp-sale-banner__script{font-size:34px}.bp-sale-banner__slash{font-size:56px}.bp-sale-banner strong{font-size:40px}.bp-hero h1{font-size:42px}.bp-video-hero__media{height:420px}.bp-icon-row,.bp-card-grid--3,.bp-card-grid--4,.bp-product-grid,.bp-footer__grid,.bp-split,.bp-product-detail__grid{grid-template-columns:1fr}.bp-form--inline{grid-template-columns:1fr}.bp-product-detail__media{grid-template-columns:1fr}.bp-product-thumbs{display:flex;overflow:auto}.bp-product-image-stage>img{height:auto}.bp-lightbox__dialog{width:calc(100vw - 36px)}.bp-lightbox__image{max-width:100%;max-height:64vh}.bp-lightbox__prev{left:8px}.bp-lightbox__next{right:8px}
}

/* Admin panel */
.admin-body{background:#f5f6f8;color:#111}.admin-layout{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.admin-sidebar{background:#111;color:#fff;padding:24px;position:sticky;top:0;height:100vh}.admin-sidebar h2{margin:0 0 24px}.admin-sidebar a{display:block;color:#fff;text-decoration:none;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.12)}.admin-main{padding:32px;max-width:1500px}.admin-card{background:#fff;border:1px solid #ddd;border-radius:8px;padding:18px;margin:0 0 18px}.admin-form{display:grid;gap:16px}.admin-form label{display:grid;gap:6px;font-weight:700}.admin-form input,.admin-form select,.admin-form textarea{border:1px solid #bbb;border-radius:4px;padding:10px;min-height:42px}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}.admin-table{width:100%;border-collapse:collapse;background:#fff}.admin-table th,.admin-table td{padding:10px;border-bottom:1px solid #ddd;text-align:left;vertical-align:top}.admin-btn{display:inline-flex;align-items:center;justify-content:center;background:#000;color:#fff;border:0;border-radius:4px;padding:10px 14px;text-decoration:none;cursor:pointer;font-weight:700}.admin-btn.secondary{background:#e9e9e9;color:#111}.flash{padding:12px 16px;border-radius:6px;margin:0 0 16px;background:#e9f5ff}.flash.error{background:#ffe9e9}.flash.success{background:#e7f7e7}@media(max-width:900px){.admin-layout{grid-template-columns:1fr}.admin-sidebar{position:relative;height:auto}.admin-main{padding:18px}.admin-table{font-size:13px}}

/* v1.4 design parity corrections */
:root{--bp-container:1120px;--bp-font:Arial,"Helvetica Neue",sans-serif}
.bp-top-strip__inner{font-size:15px}.bp-top-strip__item{display:block;padding:10px 4px;text-decoration:none}
.bp-header-main{padding:20px 0 16px}.bp-logo{min-width:260px}.bp-logo__mark{width:58px;height:34px;font-size:14px}.bp-logo__text{font-size:22px}.bp-button{border-radius:2px;min-height:50px;padding:0 30px}.bp-header-ctas .bp-button{min-width:220px}.bp-primary-nav{border-top:0}.bp-nav-link{font-size:16px;padding-top:12px}.bp-mega{box-shadow:none}.bp-mega__inner{width:min(1120px,calc(100% - 48px));grid-template-columns:260px 1fr}.bp-mega__left{background:#f2f1ef}.bp-mega__tab{font-size:16px;min-height:72px}.bp-mega__tab--all{background:#fff}.bp-mega__right{padding:34px 52px 42px}.bp-mega__panel{grid-template-columns:repeat(7,100px);justify-content:start;gap:32px 34px}.bp-mega-card{font-size:16px}.bp-mega-card img{height:74px;width:88px}.bp-colour-dot{width:74px;height:74px}
.bp-sale-banner__inner{min-height:90px;gap:42px}.bp-sale-banner__script{font-size:42px}.bp-sale-banner__slash{font-size:72px}.bp-sale-banner strong{font-size:54px}.bp-sale-banner .bp-button{min-width:240px}
.bp-hero{padding:74px 0;background:#f3f2f0}.bp-hero--compact{padding:72px 0}.bp-hero h1{font-size:48px}.bp-lead{font-size:18px}.bp-section{padding:70px 0}.bp-section__title{font-size:34px;text-align:left}.bp-center,.bp-center .bp-section__title{text-align:center}.bp-icon-row{grid-template-columns:repeat(5,1fr);max-width:980px;margin:36px auto 0}.bp-icon-item img{height:76px}.bp-icon-item h3{font-size:16px}.bp-icon-item p{font-size:14px;line-height:1.35}.bp-card-grid--3{grid-template-columns:repeat(3,1fr)}.bp-card-grid--4{grid-template-columns:repeat(4,1fr)}.bp-card img{height:230px}.bp-card h3{font-size:24px;line-height:1.15}.bp-card--carousel{min-width:360px;max-width:360px}.bp-card-carousel{gap:26px}.bp-text-link{font-size:14px}.bp-newsletter .bp-form--inline{grid-template-columns:1fr 320px auto;gap:24px}.bp-breadcrumbs{margin-top:26px}.bp-footer{padding:58px 0 54px}.bp-footer__grid{grid-template-columns:repeat(4,1fr)}
.bp-filter-box{position:relative;gap:10px;border-radius:4px;padding:22px;background:#f1f0ee}.bp-filter-menu{position:relative}.bp-filter-button,.bp-filter-reset{display:inline-flex;align-items:center;min-height:54px;background:#fff;border:0;border-radius:3px;padding:0 22px;text-decoration:none;cursor:pointer}.bp-filter-menu__panel{display:none;position:absolute;top:calc(100% + 8px);left:0;min-width:240px;background:#fff;border:1px solid #ddd;box-shadow:0 12px 28px rgba(0,0,0,.16);z-index:12;padding:8px}.bp-filter-menu.is-open .bp-filter-menu__panel{display:block}.bp-filter-menu__panel a{display:block;background:transparent;padding:10px 12px;border-radius:0}.bp-filter-menu__panel a.is-active,.bp-filter-menu__panel a:hover{background:#f1f0ee}.bp-product-count-heading{font-size:20px;margin:24px 0}.bp-product-grid{grid-template-columns:repeat(4,1fr);gap:32px}.bp-product-card h3{font-size:18px}.bp-product-card img{border-radius:3px}.bp-product-detail__grid{max-width:1040px}.bp-product-detail__media{grid-template-columns:80px 1fr}.bp-product-image-stage>img{height:560px;object-fit:cover}.bp-product-thumbs button.is-active{outline:2px solid #000}.bp-feature-carousel .bp-feature-card{min-width:170px;max-width:170px;background:#fff}.bp-feature-card .bp-colour-dot{width:72px;height:72px;margin:0 auto 14px}.bp-gallery{columns:4 250px}.admin-image-row{display:grid;grid-template-columns:80px 1fr 1fr 90px 120px;gap:10px;align-items:center;margin-bottom:10px}.admin-property-grid label[style*="none"]{display:none!important}
@media(max-width:900px){.bp-logo{min-width:0}.bp-logo__text{font-size:18px}.bp-icon-row{grid-template-columns:repeat(2,1fr)}.bp-card-grid--3,.bp-card-grid--4,.bp-product-grid{grid-template-columns:1fr}.bp-newsletter .bp-form--inline{grid-template-columns:1fr}.bp-mega__panel{grid-template-columns:repeat(2,1fr)}.admin-image-row{grid-template-columns:1fr}.bp-header-main{width:100%;padding-left:16px;padding-right:16px}.bp-top-strip__inner{grid-template-columns:1fr 1fr}.bp-sale-banner__inner{gap:18px}.bp-sale-banner strong{font-size:38px}.bp-sale-banner__script{font-size:30px}.bp-hero h1{font-size:40px}.bp-product-nav,.bp-page-nav{gap:0}.bp-nav-link{padding-left:22px}}
.bp-icon-link-carousel{display:flex;gap:42px;overflow-x:auto;scroll-behavior:smooth;padding:18px 0 20px}.bp-icon-link-card{min-width:150px;text-align:center;text-decoration:none;font-weight:700}.bp-icon-link-card img{height:92px;width:110px;object-fit:contain;margin:0 auto 16px}.bp-icon-link-card .bp-colour-dot{width:118px;height:118px;margin:0 auto 18px}.bp-icon-link-card span{display:block}

/* v1.5 home/page design parity pass */
:root{--bp-container:1240px;--bp-sale:#f4cf83;--bp-soft:#f3f2f0;--bp-card:#f0efed}
.bp-site-header{border-bottom:0;box-shadow:none}
.bp-top-strip{background:#f3f2f0;border-top:1px solid #d8d5d0;border-bottom:1px solid #dedbd5}
.bp-top-strip__inner{height:42px;align-items:center;font-size:15px;line-height:1}
.bp-top-strip__item{padding:0;font-weight:400;white-space:nowrap}
.bp-header-main{height:96px;padding:0;align-items:center}
.bp-logo{min-width:250px;gap:12px}
.bp-logo__mark{width:58px;height:34px;font-size:14px;background:#000;color:#fff}
.bp-logo__text{font-size:24px;line-height:1;font-weight:700;letter-spacing:-.02em}
.bp-header-ctas{gap:10px}
.bp-header-ctas .bp-button{min-width:220px;height:50px;min-height:50px;font-size:14px;letter-spacing:.055em}
.bp-nav__inner{height:56px}
.bp-product-nav,.bp-page-nav{gap:32px}.bp-nav-link{font-size:16px;padding:18px 0 18px}.bp-nav-link:hover{border-bottom:4px solid #000;padding-bottom:14px}

.bp-sale-banner{background:var(--bp-sale);overflow:hidden}.bp-sale-banner__inner{width:min(1370px,calc(100% - 70px));min-height:108px;display:grid;grid-template-columns:auto auto auto auto auto;justify-content:center;align-items:center;column-gap:50px;white-space:nowrap}.bp-sale-banner__script{font-size:42px;font-weight:300;font-style:italic}.bp-sale-banner__slash{font-size:82px;line-height:.85;font-weight:300}.bp-sale-banner strong{font-size:58px;font-weight:300;letter-spacing:.03em}.bp-sale-banner__inner>span:not(.bp-sale-banner__script):not(.bp-sale-banner__slash){font-size:24px;font-style:italic}.bp-sale-banner .bp-button{height:44px;min-height:44px;min-width:275px;padding:0 24px;text-transform:none;font-style:italic;font-weight:400;letter-spacing:.02em;font-size:18px}

.bp-video-hero__media{height:min(55vw,620px);object-fit:cover}.bp-video-hero__text{padding:70px 0;background:#f3f2f0}.bp-video-hero__text h1,.bp-hero h1{font-size:48px;font-weight:300;letter-spacing:-.04em}.bp-video-hero__text .bp-lead,.bp-hero .bp-lead{font-size:18px;margin:0 auto;max-width:780px}
.bp-section{padding:72px 0}.bp-section__title{font-size:34px;font-weight:300;letter-spacing:-.04em;line-height:1.1;margin:0 0 28px}.bp-section--center-title .bp-section__title,.bp-section--center-title .bp-section__subtitle{text-align:center}.bp-section--center-title .bp-section__subtitle{margin-top:-16px;margin-bottom:30px;font-size:18px}.bp-section__footer-cta{text-align:center;margin-top:24px}.bp-button--outline{background:#fff;color:#000;border:1px solid #000;text-transform:uppercase;font-weight:700;letter-spacing:.06em;min-width:210px}

.bp-icon-row{grid-template-columns:repeat(5,1fr);max-width:980px;margin:36px auto 0;gap:52px}.bp-icon-item img{height:76px;margin-bottom:28px}.bp-icon-item h3{font-size:16px;font-weight:400;margin:0;line-height:1.35}.bp-icon-item p{font-size:16px;color:#111;line-height:1.35;margin:0}.bp-icon-item h3+p{margin-top:0}.bp-icon-item h3{font-weight:400}.bp-icon-item h3 strong{font-weight:400}

.bp-card-grid{gap:24px}.bp-card{border-radius:3px;background:#f0efed}.bp-card img{height:260px}.bp-card__body{padding:28px}.bp-card h3{font-size:26px;font-weight:300;letter-spacing:-.04em}.bp-card p{font-size:18px;line-height:1.45}.bp-text-link{font-size:15px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.bp-card-grid--overlay{gap:22px}.bp-card-grid--overlay.bp-card-grid--2{grid-template-columns:repeat(2,1fr)}.bp-card-grid--overlay .bp-card{background:#000;color:#fff;border-radius:3px;overflow:hidden}.bp-card-grid--overlay .bp-card img{height:300px;object-fit:cover}.bp-card-grid--overlay .bp-card__body{min-height:82px;background:#000;color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;padding:20px}.bp-card-grid--overlay .bp-card h3{font-size:18px;font-weight:700;letter-spacing:.06em;margin:0}.bp-card-grid--overlay .bp-card p,.bp-card-grid--overlay .bp-text-link{display:none}
.bp-section--action .bp-card{text-align:center}.bp-section--action .bp-card img{height:300px}.bp-section--action .bp-card__body{padding:34px 32px}.bp-section--action .bp-card h3{font-size:28px}.bp-section--action .bp-card p{min-height:76px}.bp-section--action .bp-text-link{display:inline-flex;align-items:center;justify-content:center;min-height:54px;min-width:190px;padding:0 24px;border:1px solid #000;text-decoration:none;text-transform:uppercase;letter-spacing:.06em;background:#fff;color:#000}.bp-section--action .bp-card:nth-child(3) .bp-text-link{background:#000;color:#fff}

.bp-section--split{padding:58px 0}.bp-section--soft-bg{background:#f3f2f0}.bp-split{gap:0;background:#f3f2f0;border-radius:4px;overflow:hidden}.bp-split img{border-radius:0;height:380px;max-height:none}.bp-split__content{padding:54px 64px}.bp-split h2{font-size:36px;line-height:1.15}.bp-split .bp-richtext{font-size:18px;line-height:1.55}.bp-split--boxed{background:#f3f2f0}.bp-split--promo{background:#fff}.bp-split--promo img{height:420px}.bp-split--promo .bp-split__content{padding:70px 64px}.bp-split--promo .bp-button{margin-top:18px}

.bp-newsletter{background:#fff;padding-top:32px}.bp-newsletter .bp-form--inline{display:block;background:#f0efed;border-radius:4px;max-width:1140px;margin:0 auto;padding:34px 70px;text-align:center}.bp-newsletter__intro h2{font-size:28px;font-weight:300;margin:0 0 20px}.bp-newsletter__intro p{font-size:17px;max-width:780px;margin:0 auto 28px}.bp-newsletter__email{display:block;text-align:left;max-width:760px;margin:0 auto}.bp-newsletter__email strong{display:block;margin-bottom:12px;font-size:16px}.bp-newsletter__input-row{display:flex;background:#fff;border:1px solid #bbb;border-radius:3px;padding:4px}.bp-newsletter__input-row input{flex:1;border:0!important;min-height:54px}.bp-newsletter__input-row .bp-button{height:54px;min-height:54px;min-width:150px}.bp-newsletter__privacy{font-size:14px;margin:16px 0 0;text-align:center}

/* Keep category landing cards closer to approved page sections */
.bp-section[data-component="card_display"] + .bp-section[data-component="card_display"]{padding-top:42px}

@media (max-width: 1100px){.bp-sale-banner__inner{column-gap:26px;width:calc(100% - 32px)}.bp-sale-banner__script{font-size:34px}.bp-sale-banner strong{font-size:46px}.bp-sale-banner__slash{font-size:62px}.bp-sale-banner .bp-button{min-width:220px;font-size:16px}.bp-card-grid--overlay .bp-card img{height:240px}}
@media (max-width: 900px){.bp-header-main{height:auto;padding:14px 16px}.bp-nav__inner{height:auto}.bp-sale-banner__inner{min-height:140px;grid-template-columns:auto auto auto;row-gap:10px;white-space:normal}.bp-sale-banner .bp-button{grid-column:1/-1}.bp-icon-row{grid-template-columns:repeat(2,1fr);gap:28px}.bp-card-grid--overlay.bp-card-grid--2,.bp-card-grid--overlay.bp-card-grid--3,.bp-card-grid--3,.bp-card-grid--4{grid-template-columns:1fr}.bp-card-grid--overlay .bp-card img,.bp-card img{height:auto}.bp-split{grid-template-columns:1fr}.bp-split__content{padding:36px 24px}.bp-newsletter .bp-form--inline{padding:28px 22px}.bp-newsletter__input-row{display:block}.bp-newsletter__input-row .bp-button{width:100%;margin-top:8px}}

/* v1.6 navigation and carousel interaction refinements */
@media (min-width: 901px){
  .bp-primary-nav{position:relative;}
  .bp-nav__inner{height:56px;align-items:stretch;}
  .bp-product-nav{gap:0;align-items:stretch;height:100%;}
  .bp-page-nav{gap:0;align-items:stretch;height:100%;}
  .bp-nav-item{position:static;display:flex;align-items:stretch;height:100%;}
  .bp-nav-link{height:100%;display:flex;align-items:center;padding:0 16px 4px;border-bottom:4px solid transparent;}
  .bp-nav-link:hover{border-bottom-color:#000;padding-bottom:4px;}
  .bp-page-nav .bp-nav-link{padding-left:14px;padding-right:14px;}
  .bp-mega{top:100%;}
  .bp-mega__inner{width:min(1120px,calc(100% - 48px));grid-template-columns:240px 1fr;}
  .bp-mega__left{min-height:360px;}
  .bp-mega__right{padding:28px 42px 36px;}
  .bp-mega__panel{grid-template-columns:repeat(7,minmax(86px,1fr));gap:28px 24px;}
  .bp-mega-card img{height:70px;width:86px;margin-bottom:10px;}
  .bp-mega-card span{font-size:16px;line-height:1.22;}
}

/* Hide browser-native horizontal scrollbars; keep the custom slim track only. */
.bp-card-carousel,
.bp-icon-link-carousel,
.bp-product-thumbs,
.bp-feature-carousel,
.bp-gallery-strip,
[data-carousel]{
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
.bp-card-carousel::-webkit-scrollbar,
.bp-icon-link-carousel::-webkit-scrollbar,
.bp-product-thumbs::-webkit-scrollbar,
.bp-feature-carousel::-webkit-scrollbar,
.bp-gallery-strip::-webkit-scrollbar,
[data-carousel]::-webkit-scrollbar{
  width:0!important;
  height:0!important;
  display:none!important;
}
.bp-card-carousel{padding-bottom:0!important;}
.bp-carousel-track{height:6px;margin-top:16px;background:linear-gradient(90deg,#c9c3b9 0 55%,#fff 55% 100%);}

/* Prevent accidental page-width overflow from carousel peeking cards. */
html,body{max-width:100%;overflow-x:hidden;}
.bp-section,.bp-container{min-width:0;}

@media (max-width: 900px){
  .bp-product-nav,.bp-page-nav{gap:0;}
  .bp-nav-link{padding:14px 16px;}
  .bp-primary-nav.is-open{display:block;}
}

/* v1.7 navigation alignment and small-screen banner refinements */
@media (min-width: 901px){
  .bp-header-main,.bp-nav__inner{width:min(var(--bp-container),calc(100% - 48px));}
  .bp-product-nav .bp-nav-item:first-child .bp-nav-link{padding-left:0;}
  .bp-page-nav .bp-nav-link:last-child{padding-right:0;}
  .bp-mega__inner{width:min(var(--bp-container),calc(100% - 48px));}
  .bp-product-nav,.bp-page-nav{align-items:stretch;}
  .bp-header-ctas{margin-left:auto;}
}
@media (max-width: 600px){
  .bp-top-strip__inner{width:100%;padding:0 10px;gap:4px 10px;}
  .bp-header-main{min-height:92px;}
  .bp-sale-banner__inner{width:100%;min-height:0;padding:22px 16px;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;row-gap:12px;align-items:center;}
  .bp-sale-banner__script{font-size:30px;line-height:1.12;}
  .bp-sale-banner__slash{display:none;}
  .bp-sale-banner strong{font-size:40px;line-height:1;white-space:nowrap;}
  .bp-sale-banner__inner>span:not(.bp-sale-banner__script):not(.bp-sale-banner__slash){grid-column:1/-1;font-size:19px;}
  .bp-sale-banner .bp-button{grid-column:1/-1;width:100%;min-width:0;}
  .bp-video-hero__text h1,.bp-hero h1{font-size:38px;line-height:1.08;}
}

/* v1.8 interaction, typography and split-layout corrections */
:root{--bp-font:"Avenir Next","Segoe UI","Helvetica Neue",Arial,sans-serif}
.bp-split>img{order:2}.bp-split>.bp-split__content{order:1}.bp-split--image-left>img{order:0}.bp-split--image-left>.bp-split__content{order:1}
.bp-circle-btn:disabled{opacity:.35;cursor:not-allowed}.bp-card-carousel.is-dragging,.bp-icon-link-carousel.is-dragging,.bp-feature-carousel.is-dragging{cursor:grabbing;user-select:none}
.bp-carousel-track{position:relative;height:6px;overflow:hidden;background:#e2ded6;border-radius:999px}.bp-carousel-track::after{content:"";position:absolute;inset-block:0;left:calc(var(--bp-carousel-progress,0)*(100% - (var(--bp-carousel-visible,1)*100%)));width:max(48px,calc(var(--bp-carousel-visible,1)*100%));max-width:100%;border-radius:999px;background:#8d877d;transition:left .15s ease,width .15s ease}
.bp-public-flashes{padding-top:18px}.bp-public-flash{padding:14px 18px;border:1px solid #bad8c5;border-radius:4px;background:#eaf7ef;color:#164d30}.bp-public-flash--error{border-color:#e2b7b3;background:#fff0ef;color:#7c211b}
@media(max-width:900px){.bp-split>img,.bp-split--image-left>img{order:0}.bp-split>.bp-split__content,.bp-split--image-left>.bp-split__content{order:1}}

/* v1.9 confirmation, scheduling and image interaction */
.bp-newsletter .bp-form--inline{width:100%;max-width:none}
.bp-card a,.bp-product-card>a,.bp-gallery__item,.bp-product-image-stage,.bp-product-thumbs button,.bp-card-image-button{overflow:hidden}
.bp-card img,.bp-product-card img,.bp-gallery__item img,.bp-product-image-stage>img,.bp-product-thumbs img,.bp-card-image-button img{transition:transform .28s ease,filter .28s ease}
@media(hover:hover){.bp-card a:hover img,.bp-product-card>a:hover img,.bp-gallery__item:hover img,.bp-product-image-stage:hover>img,.bp-product-thumbs button:hover img,.bp-card-image-button:hover img{transform:scale(1.025);filter:contrast(1.04) saturate(1.03)}}
.bp-card-image-button{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}
.bp-card-image-button img{width:100%}
.is-static-carousel .bp-carousel-controls,.is-static-carousel .bp-carousel-track{visibility:hidden}
.bp-consultation-intro{text-align:center;max-width:820px;margin:0 auto 42px}.bp-consultation-intro h1,.bp-confirmation h1{font-size:46px;font-weight:300;letter-spacing:-.04em;margin:10px 0 16px}.bp-step-label{display:inline-block;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.09em}.bp-schedule{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(280px,1fr) minmax(340px,1.15fr);gap:18px;align-items:stretch}.bp-schedule__panel,.bp-schedule__summary{padding:28px;border:1px solid var(--bp-border);border-radius:4px;background:#f3f2f0}.bp-schedule h2{font-size:24px;font-weight:400;margin:0 0 24px}.bp-schedule__panel>label{display:grid;gap:8px;font-weight:700}.bp-schedule input[type=date]{width:100%;min-height:52px;border:1px solid #aaa;border-radius:3px;background:#fff;padding:10px}.bp-form-note{font-size:14px;color:#555}.bp-time-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.bp-time-grid input,.bp-service-types input{position:absolute;opacity:0;pointer-events:none}.bp-time-grid span,.bp-service-types span{display:flex;align-items:center;justify-content:center;min-height:46px;padding:8px;border:1px solid #aaa;border-radius:3px;background:#fff;cursor:pointer}.bp-time-grid input:checked+span,.bp-service-types input:checked+span{border-color:#000;background:#000;color:#fff}.bp-service-types{display:grid;gap:8px;margin:18px 0 26px}.bp-schedule__summary{background:#fff;border-color:#111}.bp-schedule__summary dl{margin:0 0 22px}.bp-schedule__summary dt{font-weight:700;margin-top:15px}.bp-schedule__summary dd{margin:4px 0 0}.bp-text-button{display:block;margin:14px auto 0;border:0;background:transparent;text-decoration:underline;cursor:pointer}.bp-confirmation__inner{max-width:980px;text-align:center}.bp-confirmation__mark{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 18px;border-radius:50%;background:#e6f4eb;color:#17603a;font-size:30px}.bp-confirmation__grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:36px 0;text-align:left}.bp-confirmation__grid section{padding:28px;border-radius:4px;background:#f3f2f0}.bp-confirmation__grid h2{margin-top:0;font-size:22px}
@media(max-width:900px){.bp-schedule{grid-template-columns:1fr}.bp-confirmation__grid{grid-template-columns:1fr}.bp-consultation-intro h1,.bp-confirmation h1{font-size:38px}}
@media(min-width:901px){.bp-nav-item:hover .bp-mega{display:none}.bp-nav-item.is-open .bp-mega{display:block}}

/* CMS refinements v2.0 */
.bp-logo img{width:100%;height:auto;max-height:64px;object-fit:contain;object-position:left center}
.bp-card{position:relative}.bp-card__link{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none}.bp-card__image{display:block;position:relative;overflow:hidden}.bp-card__link .bp-card__body{flex:1}.bp-card__link:hover img{transform:scale(1.025);filter:contrast(1.04) saturate(1.03)}
.bp-card-image-button--overlay{position:absolute;inset:0;z-index:2;height:100%;cursor:zoom-in}
.bp-card__badge{position:absolute;left:0;right:0;z-index:2;padding:7px 12px;background:var(--badge-bg);color:var(--badge-color);text-align:center;font-size:16px;line-height:1.2}.bp-card__badge--bottom{bottom:0}.bp-card__badge--top{top:0}.bp-card__badge--top-right{left:auto;right:12px;top:12px;width:auto;border-radius:3px}
.bp-section--action .bp-text-link{background:var(--button-bg)!important;color:var(--button-color)!important}.bp-section--action .bp-card:hover .bp-text-link{background:var(--button-hover-bg)!important;color:var(--button-hover-color)!important}
.bp-card-grid--promotion .bp-card{background:transparent}.bp-card-grid--promotion .bp-card img{height:296px;border-radius:3px}.bp-card-grid--promotion .bp-card__body{padding:28px 8px 10px;text-align:center}.bp-card-grid--promotion .bp-card h3{font-size:25px;font-weight:400;text-decoration:underline;text-decoration-color:#aaa;text-underline-offset:10px}.bp-card-grid--promotion .bp-card p,.bp-card-grid--promotion .bp-text-link{display:none}
.bp-product-back{display:inline-flex;align-items:center;gap:8px;margin:24px 0 0;color:#111;text-decoration:none;font-weight:700}.bp-product-back span{font-size:28px;line-height:1}.bp-product-back:hover{text-decoration:underline}
.bp-product-features__head{position:relative;justify-content:center;text-align:center}.bp-product-features__head>div:first-child{margin:auto}.bp-product-features__head .bp-section__title{text-align:center;font-weight:700}.bp-product-features__head .bp-carousel-controls{position:absolute;right:0;top:0}
@media(min-width:901px){.bp-mega{background:transparent;box-shadow:none}.bp-mega__inner{width:min(var(--bp-container),calc(100% - 48px));grid-template-columns:210px minmax(0,1fr);min-height:416px;background:#fff;box-shadow:0 16px 30px rgba(0,0,0,.14)}.bp-mega__left{min-height:416px}.bp-mega__right{padding:26px 34px 30px}.bp-mega__panel{grid-template-columns:repeat(7,minmax(100px,1fr));gap:25px 24px}.bp-mega-card img{height:62px;width:78px}.bp-mega__tab{min-height:64px}}
@media(max-width:900px){.bp-product-back{margin-left:0}.bp-product-features__head .bp-carousel-controls{position:static}.bp-card-grid--promotion .bp-card img{height:auto}}

/* Keep the dim page overlay behind the header controls.
   Otherwise the overlay can steal hover from the nav link and make the menu blink. */
@media(min-width:901px){.bp-top-strip,.bp-header-main,.bp-primary-nav{position:relative;z-index:55}.bp-mega{z-index:65}.bp-nav-overlay{z-index:40}}
@media(max-width:900px){.bp-header-main,.bp-primary-nav{position:relative;z-index:55}.bp-primary-nav.is-open{background:#fff}.bp-nav-overlay{z-index:40}}
.bp-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.bp-footer__grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}

/* v2.1 product detail alignment and hover magnifier */
.bp-product-detail__grid{max-width:none}
.bp-product-image-stage{cursor:zoom-in}
.bp-product-image-stage:hover>img{transform:none!important;filter:none!important}
.bp-product-zoom-lens{position:absolute;z-index:3;width:170px;height:170px;border-radius:50%;border:2px solid rgba(255,255,255,.92);box-shadow:0 10px 28px rgba(0,0,0,.26),inset 0 0 0 1px rgba(0,0,0,.16);background-repeat:no-repeat;opacity:0;transform:translate(-50%,-50%) scale(.96);pointer-events:none;transition:opacity .16s ease,transform .16s ease}
.bp-product-zoom-lens.is-visible{opacity:1;transform:translate(-50%,-50%) scale(1)}
@media(max-width:900px),(hover:none){.bp-product-image-stage{cursor:default}.bp-product-zoom-lens{display:none!important}}
