
    /* ============================================================
       Tokens (colors + type) — inlined from colors_and_type.css
       ============================================================ */
    :root {
      --bl-blush:#d9c0b4; --bl-blush-soft:#e3cdc2; --bl-blush-deep:#c9a594; --bl-blush-100:#f3e6df;
      --bl-cream:#f8f3ef; --bl-cream-2:#efe7df; --bl-paper:#faf6f2; --bl-white:#fff;
      --bl-ink:#2a201b; --bl-ink-soft:#4d3f37; --bl-ink-mute:#877668; --bl-line:#e6dcd3;
      --bl-gold:#b89568; --bl-rose:#c97f7a;
      --bl-bg:var(--bl-cream); --bl-fg:var(--bl-ink); --bl-fg-soft:var(--bl-ink-soft);
      --bl-fg-mute:var(--bl-ink-mute); --bl-accent:var(--bl-blush); --bl-accent-deep:var(--bl-blush-deep);
      --bl-border:var(--bl-line);

      --bl-font-display:"Anton","Bebas Neue",Impact,sans-serif;
      --bl-font-body:"Roboto",system-ui,-apple-system,"Segoe UI",sans-serif;

      --bl-w-thin:200; --bl-w-regular:400; --bl-w-medium:500; --bl-w-bold:700;

      --bl-fs-hero:clamp(56px,9vw,140px);
      --bl-fs-h1:clamp(40px,6vw,88px);
      --bl-fs-h2:clamp(32px,4.5vw,60px);
      --bl-fs-h3:clamp(22px,2.4vw,32px);
      --bl-fs-body:16px; --bl-fs-small:14px; --bl-fs-eyebrow:13px;

      --bl-lh-display:.95; --bl-lh-heading:1.1; --bl-lh-body:1.7;
      --bl-ls-eyebrow:.18em; --bl-ls-button:.22em;

      --bl-container:1240px;
      --bl-gutter:clamp(20px,4vw,64px);
      --bl-section-y:clamp(72px,10vw,140px);

      --bl-header-h:76px;
      --bl-shadow-card:0 18px 50px -22px rgba(60,36,24,.28);
      --bl-ease:cubic-bezier(.22,.61,.36,1);
      --bl-dur-fast:180ms; --bl-dur-base:420ms; --bl-dur-slow:900ms;
    }

    *,*::before,*::after{box-sizing:border-box;}
    html,body{margin:0;padding:0;overflow-x:hidden;background:var(--bl-bg);color:var(--bl-fg);
      font-family:var(--bl-font-body);font-weight:var(--bl-w-thin);font-size:var(--bl-fs-body);
      line-height:var(--bl-lh-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
    img{max-width:100%;display:block;}
    a{color:inherit;text-decoration:none;}

    /* Type classes */
    .bl-hero,.bl-display{font-family:var(--bl-font-display);font-weight:400;font-size:var(--bl-fs-hero);
      line-height:var(--bl-lh-display);letter-spacing:.01em;text-transform:uppercase;color:var(--bl-fg);margin:0;}
    .bl-h1{font-family:var(--bl-font-display);font-size:var(--bl-fs-h1);line-height:var(--bl-lh-heading);
      text-transform:uppercase;letter-spacing:.01em;color:var(--bl-fg);margin:0;}
    .bl-h2{font-family:var(--bl-font-display);font-size:var(--bl-fs-h2);line-height:var(--bl-lh-heading);
      text-transform:uppercase;letter-spacing:.01em;margin:0;}
    .bl-h3{font-family:var(--bl-font-display);font-size:var(--bl-fs-h3);line-height:1.2;
      text-transform:uppercase;letter-spacing:.04em;margin:0;}
    .bl-eyebrow{font-family:var(--bl-font-body);font-weight:var(--bl-w-medium);font-size:var(--bl-fs-eyebrow);
      letter-spacing:var(--bl-ls-eyebrow);text-transform:uppercase;color:var(--bl-accent-deep);}
    .bl-section-num{font-family:var(--bl-font-display);font-size:clamp(120px,18vw,260px);line-height:.8;
      color:var(--bl-blush);opacity:.55;letter-spacing:-.04em;user-select:none;}
    .bl-body,p.bl-body{font-family:var(--bl-font-body);font-weight:var(--bl-w-thin);font-size:var(--bl-fs-body);
      line-height:var(--bl-lh-body);color:var(--bl-fg-soft);margin:0 0 1em 0;text-wrap:pretty;}
    .bl-link{display:inline-flex;align-items:center;gap:10px;font-family:var(--bl-font-body);
      font-weight:var(--bl-w-medium);font-size:13px;letter-spacing:var(--bl-ls-button);text-transform:uppercase;
      color:var(--bl-fg);transition:color var(--bl-dur-fast) var(--bl-ease),gap var(--bl-dur-base) var(--bl-ease);}
    .bl-link:hover{color:var(--bl-accent-deep);gap:18px;}
    .bl-link .arrow{transition:transform var(--bl-dur-base) var(--bl-ease);}
    .bl-link:hover .arrow{transform:translateX(4px);}

    .bl-container{max-width:var(--bl-container);margin:0 auto;padding-inline:var(--bl-gutter);}
    .bl-section{padding-block:var(--bl-section-y);scroll-margin-top:var(--bl-header-h);}
    ::selection{background:var(--bl-blush);color:var(--bl-ink);}

    /* ============================================================
       Components — buttons, header, footer, tiles, reviews
       ============================================================ */
    .bl-btn{--pad-y:18px;--pad-x:36px;display:inline-flex;align-items:center;gap:14px;
      padding:var(--pad-y) var(--pad-x);font-family:var(--bl-font-body);font-weight:var(--bl-w-medium);
      font-size:13px;letter-spacing:var(--bl-ls-button);text-transform:uppercase;white-space:nowrap;
      border:1px solid var(--bl-ink);background:transparent;color:var(--bl-ink);cursor:pointer;
      transition:background var(--bl-dur-base) var(--bl-ease),color var(--bl-dur-base) var(--bl-ease),
        transform var(--bl-dur-fast) var(--bl-ease),border-color var(--bl-dur-base) var(--bl-ease);}
    .bl-btn:hover{background:var(--bl-ink);color:var(--bl-cream);}
    .bl-btn:active{transform:translateY(1px);}
    .bl-btn--primary{background:var(--bl-ink);color:var(--bl-cream);}
    .bl-btn--primary:hover{background:var(--bl-blush-deep);border-color:var(--bl-blush-deep);}
    .bl-btn--blush{background:var(--bl-blush);color:var(--bl-ink);border-color:var(--bl-blush);}
    .bl-btn--blush:hover{background:var(--bl-blush-deep);border-color:var(--bl-blush-deep);color:var(--bl-cream);}
    .bl-btn--ghost{background:transparent;color:var(--bl-cream);border-color:var(--bl-cream);}
    .bl-btn--ghost:hover{background:var(--bl-cream);color:var(--bl-ink);}
    .bl-btn .arrow{transition:transform var(--bl-dur-base) var(--bl-ease);display:inline-block;}
    .bl-btn:hover .arrow{transform:translateX(6px);}

    .bl-coin{position:relative;width:130px;height:130px;border-radius:50%;background:var(--bl-blush);
      color:var(--bl-ink);display:inline-flex;align-items:center;justify-content:center;
      font-family:var(--bl-font-display);letter-spacing:.18em;text-transform:uppercase;font-size:14px;
      cursor:pointer;animation:bl-pulse 3s var(--bl-ease) infinite;
      transition:transform var(--bl-dur-base) var(--bl-ease),background var(--bl-dur-base) var(--bl-ease);}
    .bl-coin:hover{transform:scale(1.06) rotate(8deg);background:var(--bl-blush-deep);color:var(--bl-cream);}
    @keyframes bl-pulse{0%,100%{box-shadow:0 0 0 0 rgba(217,192,180,.6);}50%{box-shadow:0 0 0 22px rgba(217,192,180,0);}}

    /* Header */
    .bl-header{position:fixed;top:0;left:0;right:0;z-index:9999;background:rgba(248,243,239,.92);
      -webkit-backdrop-filter:blur(10px) saturate(120%);backdrop-filter:blur(10px) saturate(120%);
      border-bottom:1px solid var(--bl-line);
      transform:translateY(0);will-change:transform;
      transition:transform .42s var(--bl-ease),padding .42s var(--bl-ease),background .42s var(--bl-ease),box-shadow .42s var(--bl-ease);}
    .bl-header--hidden{transform:translateY(-100%);}
    .bl-header--notop{background:rgba(248,243,239,.98);box-shadow:0 1px 0 var(--bl-line);}
    .bl-header--scrolling{-webkit-backdrop-filter:none !important;backdrop-filter:none !important;}
    .bl-header__inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:18px;}
    .bl-header--notop .bl-header__inner{padding-block:12px;}
    .bl-header__logo{display:flex;align-items:center;gap:10px;margin-top:-3px;}
    .bl-header__logo .bl-logo-mark{font-family:var(--bl-font-display);font-size:26px;letter-spacing:.04em;
      text-transform:uppercase;color:var(--bl-ink);}
    .bl-header__logo .bl-logo-mark em{font-style:normal;color:var(--bl-blush-deep);}
    .bl-header__logo img{height:27px;width:auto;max-width:none;}
    .bl-nav{display:flex;gap:38px;align-items:center;}
    @media (max-width: 1200px){.bl-nav{gap:24px;}}
    @media (max-width: 1100px){.bl-nav{gap:16px;}}
    .bl-nav__link{font-family:var(--bl-font-body);font-weight:var(--bl-w-regular);font-size:13px;
      letter-spacing:.12em;text-transform:uppercase;color:var(--bl-fg);position:relative;padding:6px 0;
      transition:color var(--bl-dur-fast) var(--bl-ease);}
    .bl-nav__link::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;
      transform:scaleX(0);transform-origin:left center;transition:transform var(--bl-dur-base) var(--bl-ease);}
    .bl-nav__link:hover{color:var(--bl-accent-deep);}
    .bl-nav__link:hover::after{transform:scaleX(1);}
    /* Dropdown nav */
    .bl-nav__item{position:relative;display:flex;align-items:center;gap:4px;}
    .bl-nav__item .bl-nav__link{padding:6px 0;}
    .bl-nav__item .bl-nav__link::after{display:none;}
    .bl-nav__dropdown{position:absolute;top:100%;left:-16px;min-width:200px;background:var(--bl-cream);
      border:1px solid var(--bl-line);border-radius:8px;padding:8px 0;opacity:0;visibility:hidden;
      transform:translateY(4px);transition:all var(--bl-dur-base) var(--bl-ease);
      box-shadow:0 12px 40px -12px rgba(42,32,27,.25);z-index:60;}
    .bl-nav__item:hover .bl-nav__dropdown{opacity:1;visibility:visible;transform:translateY(0);}
    .bl-nav__dropdown a{padding:10px 20px;display:block;font-family:var(--bl-font-body);
      font-weight:var(--bl-w-regular);font-size:13px;letter-spacing:.08em;text-transform:uppercase;
      color:var(--bl-fg-soft);transition:background var(--bl-dur-fast) var(--bl-ease),color var(--bl-dur-fast) var(--bl-ease);}
    .bl-nav__dropdown a:hover{background:var(--bl-blush-100);color:var(--bl-ink);}
    /* Courses dropdown — same style as Services but no uppercase, no dividers */
    .bl-nav__dropdown--courses{min-width:240px;}
    .bl-nav__dropdown--courses a{text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:var(--bl-w-thin);padding:8px 20px;color:var(--bl-fg-soft);transition:color .18s ease,padding .18s ease;}
    .bl-nav__dropdown--courses a:hover{color:var(--bl-accent-deep);padding-left:26px;background:transparent;}
    /* Category dropdown with sub-services */
    .bl-nav__dropdown--cats{min-width:240px;padding:4px 0;}
    .bl-nav__dropdown-cat{border-bottom:1px solid var(--bl-line);}
    .bl-nav__dropdown-cat:last-child{border-bottom:none;}
    .bl-nav__dropdown-link{display:flex;align-items:center;justify-content:space-between;gap:8px;
      padding:12px 20px!important;font-weight:var(--bl-w-medium)!important;cursor:pointer;}
    .bl-nav__dropdown-link .arrow{font-size:10px;transition:transform var(--bl-dur-fast) var(--bl-ease);}
    .bl-nav__dropdown-cat.is-open .bl-nav__dropdown-link .arrow{transform:rotate(90deg);}
    .bl-nav__dropdown-sub{display:none;}
    .bl-nav__dropdown-cat.is-open .bl-nav__dropdown-sub{display:block;}
    .bl-nav__dropdown-sub a{padding:10px 20px 10px 32px!important;font-weight:var(--bl-w-thin)!important;
      font-size:12px!important;border-top:1px solid var(--bl-line);}
    .bl-nav__dropdown-sub a:first-child{border-top:none;}
    .bl-nav__dropdown-sub a:hover{background:var(--bl-blush-100);}

    .bl-nav-close{display:none;}

    /* Desktop only: Services — no hover dropdown, only mega menu on click */
    .bl-mega{display:none;}
    @media (min-width: 981px){
      .bl-nav__item--mega:hover > .bl-nav__dropdown{opacity:0;visibility:hidden;transform:translateY(4px);pointer-events:none;}
    }

    /* Mobile nav overlay */
    @media (max-width: 980px){
      .bl-nav{display:flex;position:fixed;top:0;left:0;width:100%;height:100vh;
        flex-direction:column;align-items:stretch;gap:0;background:var(--bl-cream);
        padding:100px 40px 32px;z-index:55;overflow-y:auto;
        will-change:transform;
        transform:translateX(-100%);
        transition:transform .42s var(--bl-ease);}
      .bl-nav--open{transform:translateX(0);}
      .bl-nav-close{display:flex;position:absolute;top:16px;right:16px;width:36px;height:36px;
        align-items:center;justify-content:center;background:none;border:none;cursor:pointer;
        color:var(--bl-ink);z-index:56;touch-action:manipulation;}
      .bl-nav-close svg{width:22px;height:22px;}
      .bl-nav__item{display:block;}
      .bl-nav__link,.bl-nav__item .bl-nav__link{padding:16px 0;font-size:15px;letter-spacing:.14em;display:block;}
      .bl-nav__link::after{display:none;}
      .bl-nav__dropdown{position:static;opacity:1;visibility:visible;transform:none;
        box-shadow:none;border:none;border-radius:0;padding:0 0 8px 0;min-width:auto;
        background:transparent;display:none;}
      .bl-nav__item.is-open .bl-nav__dropdown{display:block;}
      .bl-nav__item.is-open .bl-nav__dropdown--cats{display:block;}
      .bl-nav__dropdown--cats{min-width:auto;padding:0;}
      .bl-nav__dropdown-cat{border:0!important;}
      .bl-nav__dropdown-link{border:0!important;display:block!important;padding:12px 0 12px 16px!important;font-size:13px!important;color:var(--bl-fg-mute);font-weight:var(--bl-w-regular)!important;}
      .bl-nav__dropdown-link .arrow{display:inline-block!important;float:right;}
      .bl-nav__dropdown a{padding:12px 0 12px 16px;font-size:13px;color:var(--bl-fg-mute);border:0;display:block;}
      .bl-nav__dropdown--courses{min-width:auto;}
      .bl-nav__dropdown--courses a{padding:12px 0 12px 16px!important;font-size:13px!important;font-weight:var(--bl-w-regular)!important;color:var(--bl-fg-mute);border:0!important;display:block!important;}
      .bl-nav__dropdown-sub{display:none;}
      .bl-nav__dropdown-cat.is-open .bl-nav__dropdown-sub{display:block;}
      .bl-nav__dropdown-sub a{padding:10px 0 10px 32px!important;font-size:13px!important;color:var(--bl-fg-mute);border:0!important;font-weight:var(--bl-w-thin)!important;display:block!important;}

      /* Overlay background */
      .bl-nav--open + .bl-overlay{display:block;}
      .bl-overlay{display:none;position:fixed;inset:0;background:rgba(42,32,27,.3);
        z-index:54;cursor:pointer;}
    }

    .bl-header__cta{display:flex;gap:16px;align-items:center;}
    .bl-header__cta .bl-btn{--pad-y:10px;--pad-x:24px;gap:10px;font-size:12px;}
    .bl-header__cta .bl-icon-btn{width:34px;height:34px;}
    .bl-header__cta .bl-icon-btn svg{width:16px;height:16px;}
    .bl-icon-btn{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;
      border-radius:50%;background:var(--bl-blush-100);color:var(--bl-ink);border:none;cursor:pointer;
      transition:background var(--bl-dur-fast) var(--bl-ease),transform var(--bl-dur-fast) var(--bl-ease);}
    .bl-icon-btn:hover{background:var(--bl-blush);transform:translateY(-1px);}
    .bl-icon-btn svg{width:18px;height:18px;}
    .bl-burger{display:none;width:36px;height:36px;background:none;border:0;cursor:pointer;touch-action:manipulation;}
    .bl-burger span{display:block;width:22px;height:1.5px;background:var(--bl-ink);margin:5px auto;
      transition:transform .3s ease,opacity .3s ease;}
    .bl-burger.is-active span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
    .bl-burger.is-active span:nth-child(2){opacity:0;}
    .bl-burger.is-active span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}
    .bl-header.is-scrolled{background:rgba(248,243,239,.98);box-shadow:0 1px 0 var(--bl-line);}
    .bl-header.is-scrolled .bl-header__inner{padding-block:12px;}

    /* CTA final — "Treat yourself" section (shared from footer include) */
    .bl-cta-final{position:relative;min-height:520px;display:flex;align-items:center;overflow:hidden;
      color:var(--bl-cream);isolation:isolate;background:var(--bl-ink);}
    .bl-cta-bg{position:absolute;inset:0;z-index:0;}
    .bl-cta-bg .bl-img{position:absolute;inset:0;}
    .bl-cta-bg .bl-img img{object-position:center 30%;}
    .bl-cta-bg::after{content:"";position:absolute;inset:0;z-index:2;
      background:linear-gradient(rgba(42,32,27,.7),rgba(42,32,27,.7));}
    .bl-cta-final .bl-container{position:relative;z-index:3;text-align:center;}

    /* Footer */
    .bl-footer{background:var(--bl-cream-2);color:var(--bl-fg);padding-block:0;}
    .bl-footer > .bl-container{padding-block:80px 40px;}
    .bl-footer__grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.2fr;gap:60px;}
    .bl-footer h4{font-family:var(--bl-font-body);font-weight:var(--bl-w-medium);font-size:13px;
      letter-spacing:var(--bl-ls-eyebrow);text-transform:uppercase;margin:0 0 18px 0;color:var(--bl-fg);}
    .bl-footer__logo{display:inline-flex;align-items:center;margin-bottom:22px;}
    .bl-footer__logo .bl-logo-mark{font-family:var(--bl-font-display);font-size:30px;letter-spacing:.04em;
      text-transform:uppercase;color:var(--bl-ink);}
    .bl-footer__logo .bl-logo-mark em{font-style:normal;color:var(--bl-blush-deep);}
    .bl-footer ul{list-style:none;padding:0;margin:0;display:grid;gap:12px;}
    .bl-footer ul a{font-weight:var(--bl-w-thin);color:var(--bl-fg-soft);font-size:14px;
      transition:color var(--bl-dur-fast) var(--bl-ease);}
    .bl-footer ul a:hover{color:var(--bl-accent-deep);}
    .bl-footer__toggle{cursor:pointer;font-weight:var(--bl-w-thin);color:var(--bl-fg-soft);font-size:14px;
      display:flex;align-items:center;gap:6px;transition:color var(--bl-dur-fast) var(--bl-ease);}
    .bl-footer__toggle:hover{color:var(--bl-accent-deep);}
    .bl-footer__toggle .arrow{font-size:12px;transition:transform var(--bl-dur-base) var(--bl-ease);}
    .bl-footer__dropdown.is-open .bl-footer__toggle .arrow{transform:rotate(90deg);}
    .bl-footer ul.bl-footer__sub{display:none;padding-left:16px;margin-top:6px;}
    .bl-footer__dropdown.is-open .bl-footer__sub{display:grid;}
    .bl-footer__sub li a{font-size:13px;color:var(--bl-fg-mute);}
    .bl-footer__bottom{margin-top:60px;padding-top:24px;border-top:1px solid var(--bl-line);
      display:flex;justify-content:space-between;font-size:13px;color:var(--bl-fg-mute);font-weight:var(--bl-w-thin);}
    .bl-newsletter{display:flex;gap:0;border-bottom:1px solid var(--bl-ink);padding-bottom:8px;}
    .bl-newsletter input{flex:1;border:0;background:transparent;font-family:var(--bl-font-body);
      font-weight:var(--bl-w-thin);font-size:14px;color:var(--bl-fg);outline:none;}
    .bl-newsletter input::placeholder{color:var(--bl-fg-mute);}
    .bl-newsletter button{background:none;border:0;cursor:pointer;font-family:var(--bl-font-body);
      font-weight:var(--bl-w-medium);text-transform:uppercase;letter-spacing:var(--bl-ls-button);
      font-size:12px;color:var(--bl-fg);display:inline-flex;align-items:center;gap:8px;
      transition:color var(--bl-dur-fast) var(--bl-ease);}
    .bl-newsletter button:hover{color:var(--bl-accent-deep);}
    .bl-socials{display:flex;gap:12px;margin-top:22px;}
    .bl-socials a{width:38px;height:38px;border-radius:50%;display:inline-flex;align-items:center;
      justify-content:center;border:1px solid var(--bl-ink);color:var(--bl-ink);
      transition:background var(--bl-dur-fast) var(--bl-ease),color var(--bl-dur-fast) var(--bl-ease);}
    .bl-socials a:hover{background:var(--bl-ink);color:var(--bl-cream);}
    .bl-socials svg{width:16px;height:16px;}

    .bl-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:40px;}

    /* Placeholder treatment when images fail to serve — warm cream block w/ label */
    .bl-img{position:relative;overflow:hidden;background:
      repeating-linear-gradient(135deg,var(--bl-cream-2) 0 12px,var(--bl-blush-100) 12px 24px);}
    .bl-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
    .bl-img::after{content:attr(data-label);position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
      font-family:ui-monospace,"SF Mono",Menlo,monospace;font-size:11px;letter-spacing:.2em;text-transform:uppercase;
      color:var(--bl-ink-mute);padding:6px 10px;border:1px dashed var(--bl-ink-mute);background:rgba(248,243,239,.8);
      pointer-events:none;z-index:0;}
    .bl-img img{z-index:1;}

    /* Service tile */
    .bl-tile{position:relative;overflow:hidden;background:var(--bl-cream-2);aspect-ratio:4/5;display:block;}
    .bl-tile .bl-img{position:absolute;inset:0;}
    .bl-tile .bl-img img{transition:transform var(--bl-dur-slow) var(--bl-ease),filter var(--bl-dur-slow) var(--bl-ease);
      filter:saturate(.95);}
    .bl-tile:hover .bl-img img{transform:scale(1.05);filter:saturate(1.05);}
    .bl-tile__content{position:absolute;inset:auto 0 0 0;padding:28px;z-index:2;
      background:linear-gradient(to top,rgba(42,32,27,.85) 0%,rgba(42,32,27,0) 80%);
      color:var(--bl-cream);display:flex;flex-direction:column;gap:8px;}
    .bl-tile__title{font-family:var(--bl-font-display);font-size:clamp(28px,2.5vw,40px);
      text-transform:uppercase;letter-spacing:.04em;line-height:1;}
    .bl-tile__sub{font-size:13px;font-weight:var(--bl-w-thin);opacity:.9;max-width:28ch;margin:0;}
    .bl-tile__arrow{align-self:flex-start;margin-top:6px;width:36px;height:36px;border-radius:50%;
      display:inline-flex;align-items:center;justify-content:center;background:var(--bl-cream);
      color:var(--bl-ink);transition:transform var(--bl-dur-base) var(--bl-ease);}
    .bl-tile:hover .bl-tile__arrow{transform:translateX(4px) rotate(-8deg);}

    .bl-letters{display:flex;flex-direction:column;font-family:var(--bl-font-display);
      text-transform:uppercase;line-height:.95;letter-spacing:-.01em;color:var(--bl-blush);
      font-size:clamp(34px,4vw,60px);}
    .bl-letters span{display:block;}
    .bl-letters--dark{color:var(--bl-ink);}

    .bl-review{background:var(--bl-paper);border:1px solid var(--bl-line);padding:28px;
      display:flex;flex-direction:column;gap:12px;border-radius:2px;height:460px;
      transition:transform var(--bl-dur-base) var(--bl-ease),box-shadow var(--bl-dur-base) var(--bl-ease);}
    .bl-review:hover{transform:translateY(-4px);box-shadow:var(--bl-shadow-card);}
    .bl-review__stars{color:var(--bl-blush-deep);font-size:15px;letter-spacing:.1em;flex-shrink:0;}
    .bl-review__text{font-size:14px;line-height:1.7;font-weight:var(--bl-w-thin);color:var(--bl-fg-soft);margin:0;flex:1 1 auto;overflow:hidden;}
    .bl-review__author{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:12px;flex-shrink:0;}
    .bl-review__author strong{font-size:13px;font-weight:var(--bl-w-medium);}
    .bl-review__author small{display:block;font-size:11px;color:var(--bl-fg-mute);font-weight:var(--bl-w-thin);}
    .bl-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-weight:500;
      color:#fff;font-family:var(--bl-font-body);}

    .bl-numblock{display:grid;grid-template-columns:auto 1fr;gap:clamp(20px,4vw,80px);align-items:start;}
    .bl-numblock__body{max-width:56ch;}

    .bl-frame{position:relative;}
    .bl-frame::before{content:"";position:absolute;inset:12px -12px -12px 12px;border:1px solid var(--bl-blush);z-index:0;}
    .bl-frame .bl-img{position:relative;z-index:1;width:100%;aspect-ratio:4/5;}

    /* Map block (shared for main + contact page) */
    .bl-map-block{width:100%;aspect-ratio:3/1;min-height:400px;background:
      linear-gradient(135deg,#efe7df 0%,#e6dcd3 100%);
      border-top:1px solid var(--bl-line);position:relative;overflow:hidden;}
    .bl-map-iframe{position:absolute;inset:0;width:100%;height:100%;border:0;
      filter:saturate(0%);transition:filter .6s ease;}
    .bl-map-block:hover .bl-map-iframe{filter:saturate(100%);}
    .bl-map-block::before{content:"";position:absolute;inset:0;
      background-image:
        linear-gradient(0deg,rgba(135,118,104,.15) 1px,transparent 1px),
        linear-gradient(90deg,rgba(135,118,104,.15) 1px,transparent 1px);
      background-size:60px 60px;}
    .bl-map-pin{position:absolute;left:50%;top:50%;transform:translate(-50%,-100%);
      display:flex;flex-direction:column;align-items:center;gap:8px;}
    .bl-map-pin__dot{width:18px;height:18px;border-radius:50%;background:var(--bl-blush-deep);
      box-shadow:0 0 0 6px rgba(201,165,148,.3),0 0 0 14px rgba(201,165,148,.15);}
    .bl-map-pin__label{font-family:var(--bl-font-display);font-size:14px;letter-spacing:.2em;
      text-transform:uppercase;color:var(--bl-ink);background:var(--bl-cream);padding:6px 12px;
      border:1px solid var(--bl-line);}

    /* ============================================================
       Sub-pages — policy, FAQ, contact
       ============================================================ */
    .bl-policy{padding-top:calc(var(--bl-header-h) + 64px);padding-bottom:80px;}
    .bl-policy .bl-h1{margin-bottom:8px;}
    .bl-policy .bl-h2{margin-top:48px;margin-bottom:12px;}
    .bl-policy .bl-body{max-width:720px;}
    .bl-policy .bl-last-updated{font-size:13px;color:var(--bl-fg-mute);margin-bottom:32px;}
    .bl-policy-list{padding-left:20px;margin-bottom:1em;}
    .bl-policy-list li{margin-bottom:8px;font-family:var(--bl-font-body);font-weight:var(--bl-w-thin);font-size:var(--bl-fs-body);line-height:var(--bl-lh-body);color:var(--bl-fg-soft);}

    /* FAQ */
    .bl-faq-list{display:grid;gap:12px;max-width:720px;margin-bottom:40px;}
    .bl-faq-item{border-bottom:1px solid var(--bl-line);padding-bottom:12px;}
    .bl-faq-question{display:flex;justify-content:space-between;align-items:center;gap:16px;
      cursor:pointer;font-family:var(--bl-font-body);font-weight:var(--bl-w-medium);
      font-size:15px;color:var(--bl-ink);padding:12px 0;list-style:none;}
    .bl-faq-question::-webkit-details-marker{display:none;}
    .bl-faq-icon{font-size:22px;font-weight:300;color:var(--bl-blush-deep);
      transition:transform var(--bl-dur-base) var(--bl-ease);
      flex-shrink:0;line-height:1;}
    details[open] .bl-faq-icon{transform:rotate(45deg);}
    .bl-faq-answer{padding:0 0 12px 0;}
    .bl-faq-answer .bl-body{margin:0;}

    /* Contact page */
    .bl-contact-page{padding-top:calc(var(--bl-header-h) + 64px);padding-bottom:80px;}
    .bl-contact-intro{text-align:center;margin-bottom:48px;}
    .bl-contact-intro h1{margin-bottom:12px;}
    .bl-contact-intro p{max-width:52ch;margin:0 auto;color:var(--bl-fg-soft);}
    .bl-contact-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:60px;}
    .bl-contact-card{background:var(--bl-cream-2);padding:32px 24px;text-align:center;
      border-radius:2px;display:flex;flex-direction:column;align-items:center;gap:12px;}
    .bl-contact-card__icon{width:48px;height:48px;border-radius:50%;background:var(--bl-blush-100);
      display:flex;align-items:center;justify-content:center;color:var(--bl-blush-deep);}
    .bl-contact-card__icon svg{width:22px;height:22px;}
    .bl-contact-card h3{font-family:var(--bl-font-body);font-weight:var(--bl-w-medium);
      font-size:13px;letter-spacing:var(--bl-ls-eyebrow);text-transform:uppercase;margin:0;}
    .bl-contact-card p{margin:0;font-size:14px;color:var(--bl-fg-soft);line-height:1.6;}
    .bl-contact-card a{font-size:14px;font-weight:var(--bl-w-medium);color:var(--bl-ink);
      text-decoration:none;}
    .bl-contact-card a:hover{color:var(--bl-blush-deep);}
    .bl-contact-map{margin-bottom:60px;margin-left:calc(var(--bl-gutter,40px)*-1);margin-right:calc(var(--bl-gutter,40px)*-1);}
    .bl-contact-map .bl-map-block{border-top:none;}
    .bl-contact-form-wrap{max-width:var(--bl-container);margin:0 auto 60px;padding-inline:var(--bl-gutter);}
    .bl-contact-form-wrap h3{font-family:var(--bl-font-display);font-size:clamp(28px,4vw,36px);
      letter-spacing:.03em;text-transform:uppercase;margin:0 0 8px 0;}
    .bl-contact-form-wrap > p{color:var(--bl-fg-soft);margin-bottom:28px;}
    @media (min-width: 981px){
      .bl-contact-cards{margin-left:calc(var(--bl-gutter,40px)*-1);margin-right:calc(var(--bl-gutter,40px)*-1);}
      .bl-contact-form-wrap{padding-inline:0;}
      .bl-contact-form-wrap h3{padding-inline:var(--bl-gutter);}
      .bl-contact-form-wrap > p{padding-inline:var(--bl-gutter);}
    }
    .bl-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
    .bl-form-group{display:grid;gap:6px;margin-bottom:16px;}
    .bl-form-group label{font-size:12px;font-weight:var(--bl-w-medium);
      letter-spacing:var(--bl-ls-eyebrow);text-transform:uppercase;color:var(--bl-fg);}
    .bl-form-group input,.bl-form-group textarea{width:100%;padding:14px 16px;
      border:1px solid var(--bl-line);background:var(--bl-cream);
      font-family:var(--bl-font-body);font-size:14px;color:var(--bl-ink);
      border-radius:2px;outline:none;box-sizing:border-box;
      transition:border-color var(--bl-dur-fast) var(--bl-ease);}
    .bl-form-group input:focus,.bl-form-group textarea:focus{border-color:var(--bl-blush-deep);}
    .bl-form-group textarea{resize:vertical;min-height:120px;}
    .bl-form-success{display:none;text-align:center;padding:60px 20px;}

    @media (max-width: 700px){
      .bl-contact-cards{grid-template-columns:1fr 1fr;}
      .bl-form-row{grid-template-columns:1fr;}
    }
    @media (max-width: 480px){
      .bl-contact-cards{grid-template-columns:1fr;}
    }
    
    /* ============================================================
       Shared Responsive
       ============================================================ */
@media (max-width: 1100px){
  .bl-reviews-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width: 980px){
  .bl-burger{display:inline-block;}
  .bl-footer__grid{grid-template-columns:1fr 1fr;gap:40px;}
  .bl-footer__bottom{flex-direction:column;gap:12px;}
}
@media (max-width: 780px){
  :root{--bl-header-h:64px;}
  .bl-header__cta{gap:6px;}
  .bl-header__cta .bl-btn{--pad-y:5px;--pad-x:12px;gap:3px;font-size:10px;white-space:nowrap;}
  .bl-header__cta .bl-icon-btn{width:28px;height:28px;}
  .bl-header__cta .bl-icon-btn svg{width:14px;height:14px;}
  .bl-header__inner{gap:6px;}
}
@media (max-width: 600px){
  :root{--bl-header-h:59px;}
  .bl-reviews-grid{grid-template-columns:1fr;}
  .bl-footer__grid{grid-template-columns:1fr;}
  .bl-header__logo img{height:22px;width:auto;max-width:80px;}
  .bl-header__inner{gap:8px;}
}
@media (max-width: 380px){
  :root{--bl-header-h:51px;}
  .bl-header__logo img{height:14px;width:auto;max-width:50px;}
  .bl-header__inner{gap:6px;}
}
@media (prefers-reduced-motion: reduce){
  /* Keep functional UI animations (burger menu) — override with more specific selectors */
  *,*::before,*::after{animation:none !important;transition:none !important;}
  .bl-nav{transition:transform .42s var(--bl-ease) !important;animation:none !important;}
  .bl-nav--open{animation:none !important;}
}

/* Cart badge on header */
.bl-cart-badge{position:absolute;top:-4px;right:-6px;min-width:16px;height:16px;border-radius:8px;
  background:var(--bl-blush-deep);color:#fff;font-size:10px;font-weight:700;
  display:flex;align-items:center;justify-content:center;line-height:1;padding:0 4px;}
.bl-shop-cart-btn{position:relative;}
.bl-shop-cart-btn svg{width:22px;height:22px;}

/* Shop page CSS */
.bl-shop-hero{position:relative;min-height:50vh;display:flex;align-items:center;overflow:hidden;background:var(--bl-ink);padding:var(--bl-header-h) 0 0 0;}
.bl-shop-hero .bl-hero-image{position:absolute;inset:0;z-index:0;}
.bl-shop-hero .bl-hero-image img{width:100%;height:100%;object-fit:cover;}
.bl-shop-hero .bl-hero-image::after{content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(135deg,rgba(42,32,27,.88) 0%,rgba(42,32,27,.6) 60%,rgba(42,32,27,.35) 100%);}
.bl-shop-hero .bl-container{position:relative;z-index:2;text-align:center;padding-block:80px 60px;max-width:720px;margin:0 auto;}
.bl-shop-hero .bl-eyebrow{display:block;margin-bottom:16px;color:var(--bl-blush);}
.bl-shop-hero .bl-h1{color:var(--bl-cream);margin-bottom:16px;}
.bl-shop-hero p{color:var(--bl-blush-100);font-size:clamp(15px,1.2vw,17px);max-width:52ch;margin:0 auto;line-height:1.7;}

/* Stats bar — matching blog/gallery */
.bl-page-stats{background:var(--bl-cream);padding:clamp(24px,3vw,36px) 0;border-bottom:1px solid var(--bl-line);}
.bl-page-stats .bl-container{display:flex;justify-content:center;gap:clamp(32px,6vw,80px);flex-wrap:wrap;}
.bl-page-stat{text-align:center;}
.bl-page-stat__num{font-family:var(--bl-font-display);font-size:clamp(28px,3vw,42px);color:var(--bl-ink);line-height:1;}
.bl-page-stat__label{font-size:12px;color:var(--bl-fg-mute);letter-spacing:.08em;text-transform:uppercase;margin-top:4px;}

.bl-shop-section{padding:clamp(48px,7vw,80px) 0;}
.bl-shop-section--cream{background:var(--bl-cream);}
.bl-shop-section--white{background:var(--bl-white);}
.bl-shop-toolbar{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:24px;}
.bl-shop-search{flex:1;min-width:200px;position:relative;}
.bl-shop-search input{width:100%;padding:12px 16px 12px 42px;border:1px solid var(--bl-line);border-radius:4px;
  font-family:var(--bl-font-body);font-size:14px;color:var(--bl-ink);background:var(--bl-paper);outline:none;
  transition:border-color var(--bl-dur-fast) var(--bl-ease);box-sizing:border-box;}
.bl-shop-search input:focus{border-color:var(--bl-blush-deep);}
.bl-shop-search .bl-search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--bl-fg-mute);pointer-events:none;}
.bl-shop-search .bl-search-icon svg{width:16px;height:16px;}
.bl-shop-cats{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-bottom:24px;}
.bl-shop-cat{padding:10px 20px;border:1px solid var(--bl-line);border-radius:0;font-size:12px;
  letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:var(--bl-paper);
  color:var(--bl-fg-soft);white-space:nowrap;transition:all var(--bl-dur-fast) var(--bl-ease);
  font-family:var(--bl-font-body);font-weight:var(--bl-w-medium);}
.bl-shop-cat:hover{border-color:var(--bl-blush-deep);color:var(--bl-blush-deep);}
.bl-shop-cat.is-active{background:var(--bl-blush-deep);color:#fff;border-color:var(--bl-blush-deep);}
.bl-shop-count{font-size:13px;color:var(--bl-fg-mute);margin-left:auto;white-space:nowrap;}
.bl-shop-loading{text-align:center;padding:80px 0;color:var(--bl-fg-mute);font-size:14px;}
.bl-shop-empty{grid-column:1/-1;text-align:center;padding:60px 0;color:var(--bl-fg-mute);font-size:14px;}
.bl-shop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,24px);}
.bl-shop-card{display:flex;flex-direction:column;background:var(--bl-white);border:1px solid var(--bl-line);
  border-radius:3px;overflow:hidden;text-decoration:none;color:inherit;cursor:pointer;
  transition:transform var(--bl-dur-fast) var(--bl-ease),box-shadow var(--bl-dur-fast) var(--bl-ease);}
.bl-shop-card:hover{transform:translateY(-3px);box-shadow:0 12px 40px -18px rgba(42,32,27,.25);}
.bl-shop-card__img{position:relative;aspect-ratio:1;overflow:hidden;background:var(--bl-cream-2);}
.bl-shop-card__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  transition:transform var(--bl-dur-slow) var(--bl-ease);}
.bl-shop-card:hover .bl-shop-card__img img{transform:scale(1.05);}
.bl-shop-card__badge{position:absolute;top:8px;left:8px;display:inline-block;padding:3px 8px;
  font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;border-radius:2px;z-index:2;}
.bl-shop-card__badge--sale{background:var(--bl-rose);color:#fff;}
.bl-shop-card__body{padding:16px 18px 20px;display:flex;flex-direction:column;gap:4px;flex:1;}
.bl-shop-card__cats{font-size:10px;color:var(--bl-fg-mute);letter-spacing:.1em;text-transform:uppercase;}
.bl-shop-card__title{font-family:var(--bl-font-body);font-weight:var(--bl-w-medium);font-size:14px;
  line-height:1.35;color:var(--bl-ink);margin:0;}
.bl-shop-card__prices{display:flex;align-items:baseline;gap:8px;margin-top:auto;padding-top:8px;}
.bl-shop-card__price{font-family:var(--bl-font-display);font-size:clamp(18px,2vw,24px);color:var(--bl-blush-deep);line-height:1;}
.bl-shop-card__price--old{font-size:13px;color:var(--bl-fg-mute);text-decoration:line-through;}
.bl-shop-card__add{width:100%;margin-top:10px;padding:10px;font-size:11px;letter-spacing:.18em;
  font-weight:var(--bl-w-medium);text-transform:uppercase;border:1px solid var(--bl-ink);
  background:transparent;color:var(--bl-ink);cursor:pointer;text-align:center;
  transition:all var(--bl-dur-fast) var(--bl-ease);font-family:var(--bl-font-body);border-radius:2px;}
.bl-shop-card__add:hover{background:var(--bl-ink);color:var(--bl-cream);}

/* Cart sidebar */
.bl-cart-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:99998;opacity:0;pointer-events:none;
  transition:opacity var(--bl-dur-base) var(--bl-ease);}
.bl-cart-overlay.is-open{opacity:1;pointer-events:auto;}
.bl-cart-drawer{position:fixed;top:0;right:0;bottom:0;width:400px;max-width:90vw;background:var(--bl-cream);
  z-index:99999;transform:translateX(100%);transition:transform var(--bl-dur-base) var(--bl-ease);
  display:flex;flex-direction:column;border-left:1px solid var(--bl-line);}
.bl-cart-drawer.is-open{transform:translateX(0);}
.bl-cart-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;
  border-bottom:1px solid var(--bl-line);}
.bl-cart-header h3{margin:0;font-family:var(--bl-font-display);font-size:22px;text-transform:uppercase;
  letter-spacing:.04em;color:var(--bl-ink);}
.bl-cart-close{background:none;border:none;cursor:pointer;width:32px;height:32px;
  display:flex;align-items:center;justify-content:center;color:var(--bl-fg-mute);}
.bl-cart-close svg{width:20px;height:20px;}
.bl-cart-close:hover{color:var(--bl-ink);}
.bl-cart-body{flex:1;overflow-y:auto;padding:16px 24px;}
.bl-cart-empty{text-align:center;padding:60px 20px;color:var(--bl-fg-mute);}
.bl-cart-empty svg{width:48px;height:48px;margin-bottom:16px;opacity:.3;}
.bl-cart-empty p{font-size:14px;margin:0;}
.bl-cart-item{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--bl-line);}
.bl-cart-item:last-child{border-bottom:none;}
.bl-cart-item__img{width:60px;height:60px;border-radius:2px;overflow:hidden;flex-shrink:0;background:var(--bl-cream-2);}
.bl-cart-item__img img{width:100%;height:100%;object-fit:cover;}
.bl-cart-item__info{flex:1;min-width:0;}
.bl-cart-item__name{font-size:13px;font-weight:var(--bl-w-medium);color:var(--bl-ink);margin:0 0 2px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.bl-cart-item__price{font-size:12px;color:var(--bl-blush-deep);}
.bl-cart-item__qty{display:flex;align-items:center;gap:8px;margin-top:6px;}
.bl-cart-item__qty button{width:24px;height:24px;border:1px solid var(--bl-line);background:var(--bl-paper);
  border-radius:2px;cursor:pointer;display:flex;align-items:center;justify-content:center;
  font-size:14px;color:var(--bl-ink);transition:background var(--bl-dur-fast) var(--bl-ease);}
.bl-cart-item__qty button:hover{background:var(--bl-blush-100);}
.bl-cart-item__qty span{font-size:13px;min-width:20px;text-align:center;}
.bl-cart-item__remove{background:none;border:none;cursor:pointer;color:var(--bl-fg-mute);padding:4px;
  align-self:flex-start;font-size:18px;line-height:1;}
.bl-cart-item__remove:hover{color:var(--bl-rose);}
.bl-cart-footer{padding:20px 24px;border-top:1px solid var(--bl-line);background:var(--bl-paper);}
.bl-cart-subtotal{display:flex;justify-content:space-between;font-size:14px;color:var(--bl-fg-soft);margin-bottom:4px;}
.bl-cart-shipping{display:flex;justify-content:space-between;font-size:13px;color:var(--bl-fg-mute);margin-bottom:4px;}
.bl-cart-minnotice{font-size:11px;color:var(--bl-rose);margin:4px 0 8px;text-align:center;}
.bl-cart-total{display:flex;justify-content:space-between;font-weight:var(--bl-w-medium);font-size:16px;
  color:var(--bl-ink);margin-bottom:14px;padding-top:8px;border-top:1px solid var(--bl-line);}
.bl-cart-checkout{width:100%;padding:14px;font-size:13px;letter-spacing:.2em;font-weight:var(--bl-w-medium);
  text-transform:uppercase;border:none;background:var(--bl-blush-deep);color:#fff;cursor:pointer;
  border-radius:2px;transition:background var(--bl-dur-fast) var(--bl-ease);font-family:var(--bl-font-body);}
.bl-cart-checkout:hover{background:var(--bl-blush);}
.bl-cart-checkout:disabled{opacity:.35;pointer-events:none;}



/* Notification toast */
.bl-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(80px);z-index:99999;
  background:var(--bl-ink);color:var(--bl-cream);padding:12px 24px;border-radius:4px;
  font-size:13px;opacity:0;pointer-events:none;transition:all var(--bl-dur-base) var(--bl-ease);
  white-space:nowrap;max-width:90vw;text-align:center;}
.bl-toast.is-open{opacity:1;transform:translateX(-50%) translateY(0);pointer-events:auto;}

/* Product overlay */
.bl-shop-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:99996;opacity:0;pointer-events:none;
  transition:opacity var(--bl-dur-base) var(--bl-ease);}
.bl-shop-overlay.is-open{opacity:1;pointer-events:auto;}
.bl-shop-product-view{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%) scale(.95);z-index:99997;
  background:var(--bl-cream);border-radius:4px;max-width:800px;width:90vw;max-height:85vh;overflow-y:auto;
  opacity:0;pointer-events:none;transition:all var(--bl-dur-base) var(--bl-ease);}
.bl-shop-product-view.is-open{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1);}
.bl-shop-pv-close{position:absolute;top:12px;right:12px;z-index:2;background:none;border:none;cursor:pointer;
  width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--bl-fg-mute);}
.bl-shop-pv-close:hover{color:var(--bl-ink);}
.bl-shop-pv-close svg{width:20px;height:20px;}
.bl-shop-pv-inner{display:grid;grid-template-columns:1fr 1fr;min-height:0;}
.bl-shop-pv-image{position:relative;background:var(--bl-cream-2);overflow:hidden;}
.bl-shop-pv-image img{width:100%;height:100%;object-fit:contain;display:block;padding:20px;}
.bl-shop-pv-info{padding:32px;display:flex;flex-direction:column;gap:8px;}
.bl-shop-pv-cats{font-size:10px;color:var(--bl-fg-mute);letter-spacing:.1em;text-transform:uppercase;}
.bl-shop-pv-title{font-family:var(--bl-font-body);font-weight:var(--bl-w-medium);font-size:20px;
  line-height:1.3;color:var(--bl-ink);margin:0;}
.bl-shop-pv-price{font-family:var(--bl-font-display);font-size:28px;color:var(--bl-blush-deep);line-height:1;margin:4px 0;}
.bl-shop-pv-desc{font-size:14px;color:var(--bl-fg-soft);line-height:1.7;margin:0;flex:1;}
.bl-shop-pv-add{width:100%;padding:14px;font-size:13px;letter-spacing:.2em;font-weight:var(--bl-w-medium);
  text-transform:uppercase;border:none;background:var(--bl-blush-deep);color:#fff;cursor:pointer;
  border-radius:2px;transition:background var(--bl-dur-fast) var(--bl-ease);font-family:var(--bl-font-body);
  margin-top:auto;}
.bl-shop-pv-add:hover{background:var(--bl-blush);}
.bl-shop-pv-qty{display:flex;align-items:center;gap:12px;margin:8px 0;}
.bl-shop-pv-qty-label{font-size:12px;color:var(--bl-fg-mute);text-transform:uppercase;letter-spacing:.1em;}
.bl-shop-pv-qty-stepper{display:flex;align-items:center;gap:0;border:1px solid var(--bl-line);border-radius:2px;}
.bl-shop-pv-qty-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;
  border:none;background:none;cursor:pointer;font-size:16px;color:var(--bl-fg-soft);}
.bl-shop-pv-qty-btn:hover{color:var(--bl-ink);}
.bl-shop-pv-qty-val{min-width:32px;text-align:center;font-size:16px;font-weight:500;color:var(--bl-ink);}

/* Responsive shop */
@media (max-width: 900px){
  .bl-shop-grid{grid-template-columns:repeat(2,1fr);}
  .bl-shop-pv-inner{grid-template-columns:1fr;}
  .bl-shop-pv-image{max-height:300px;}
  .bl-shop-pv-info{padding:24px;}
}
@media (max-width: 600px){
  .bl-shop-grid{grid-template-columns:1fr;}
  .bl-shop-toolbar{flex-direction:column;align-items:stretch;}
  .bl-shop-count{text-align:right;}
  .bl-cart-drawer{width:100%;max-width:100%;}
}

