/* ============================================================
   Bizzy Beehive — Landing template
   Design system: "Raw & Golden" (see Novamira active design)
   Scoped entirely under body.bbh-landing to avoid leaking into
   / colliding with the rest of the live site.
   ============================================================ */

@font-face{font-family:'Archivo';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/archivo-400.woff2') format('woff2');}
@font-face{font-family:'Archivo';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/archivo-500.woff2') format('woff2');}
@font-face{font-family:'Archivo';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/archivo-700.woff2') format('woff2');}
@font-face{font-family:'Ibarra Real Nova';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/ibarra-600.woff2') format('woff2');}
@font-face{font-family:'Ibarra Real Nova';font-style:italic;font-weight:500;font-display:swap;src:url('fonts/ibarra-500i.woff2') format('woff2');}

body.bbh-landing{
  --ink:#1B1509;
  --ink-soft:#4A4025;
  --honey:#E8A63C;
  --honey-deep:#B8721A;
  --honey-light:#F4C874;
  --bone:#FBF6EA;
  --bone-2:#F1E7CC;
  --surface:#FFFFFF;
  --moss:#454F24;
  --moss-2:#5B6A34;
  --line:rgba(27,21,9,0.14);
  --line-dark:rgba(251,246,234,0.18);
  --shadow:0 18px 40px -22px rgba(27,21,9,0.35);
  --maxw:1240px;
  --radius:14px;
  --radius-pill:999px;
  --font-display:'Ibarra Real Nova', Georgia, 'Times New Roman', serif;
  --font-body:'Archivo', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

  margin:0;
  background:var(--bone);
  color:var(--ink);
  font-family:var(--font-body);
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}

body.bbh-landing :where(h1,h2,h3,h4,blockquote,figure,ul,ol,p){margin:0;padding:0;border:0;}
body.bbh-landing :where(ul){list-style:none;}
body.bbh-landing :where(a){color:inherit;text-decoration:none;}
body.bbh-landing *{box-sizing:border-box;}
body.bbh-landing img{max-width:100%;display:block;}
body.bbh-landing .bbh-page{overflow-x:hidden;}

body.bbh-landing h1,
body.bbh-landing h2,
body.bbh-landing h3{
  font-family:var(--font-display);
  font-weight:600;
  line-height:1.08;
  letter-spacing:-0.01em;
  text-wrap:balance;
  color:var(--ink);
}

body.bbh-landing .bbh-eyebrow{
  font-family:var(--font-body);
  font-weight:700;
  font-size:12.5px;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:var(--honey-deep);
}

body.bbh-landing .bbh-wrap{
  max-width:var(--maxw);
  margin:0 auto;
  padding:0 32px;
}

@media (max-width:640px){
  body.bbh-landing .bbh-wrap{padding:0 20px;}
}

/* ---------- Buttons ---------- */
body.bbh-landing .bbh-btn{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:15px 30px;
  border-radius:var(--radius-pill);
  font-family:var(--font-body);
  font-weight:700;
  font-size:14.5px;
  letter-spacing:0.01em;
  border:1px solid transparent;
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
body.bbh-landing .bbh-btn-primary{background:var(--honey);color:var(--ink);}
body.bbh-landing .bbh-btn-primary:hover{background:var(--honey-deep);color:var(--bone);}
body.bbh-landing .bbh-btn-ghost{background:transparent;border-color:var(--line);color:var(--ink);}
body.bbh-landing .bbh-btn-ghost:hover{border-color:var(--ink);}
body.bbh-landing .bbh-btn-ghost.bbh-on-dark{border-color:var(--line-dark);color:var(--bone);}
body.bbh-landing .bbh-btn-ghost.bbh-on-dark:hover{border-color:var(--bone);}

/* ---------- Announcement + utility bars ---------- */
body.bbh-landing .bbh-announce{
  background:var(--ink);
  color:var(--bone);
  text-align:center;
  font-size:13px;
  font-weight:500;
  letter-spacing:0.02em;
  padding:9px 16px;
}
body.bbh-landing .bbh-utility{
  border-bottom:1px solid var(--line);
  background:var(--bone);
}
body.bbh-landing .bbh-utility .bbh-wrap{
  display:flex;
  justify-content:flex-end;
  gap:22px;
  padding-top:9px;
  padding-bottom:9px;
  font-size:12.5px;
  font-weight:500;
  color:var(--ink-soft);
}
body.bbh-landing .bbh-utility a:hover{color:var(--honey-deep);}

/* ---------- Header ---------- */
body.bbh-landing .bbh-header{
  position:sticky;
  top:0;
  z-index:40;
  background:rgba(251,246,234,0.92);
  backdrop-filter:saturate(160%) blur(10px);
  border-bottom:1px solid var(--line);
  transition:box-shadow .2s ease;
}
body.bbh-landing .bbh-header.bbh-scrolled{box-shadow:0 8px 24px -18px rgba(27,21,9,0.5);}
body.bbh-landing .bbh-header .bbh-wrap{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding-top:16px;
  padding-bottom:16px;
}
body.bbh-landing .bbh-brand{
  display:flex;
  align-items:center;
  gap:11px;
  font-family:var(--font-display);
  font-weight:600;
  font-size:22px;
  color:var(--ink);
  white-space:nowrap;
}
body.bbh-landing .bbh-brand-mark{
  width:38px;
  height:38px;
  flex:none;
  clip-path:polygon(25% 5%,75% 5%,100% 50%,75% 95%,25% 95%,0% 50%);
  background:linear-gradient(155deg,var(--honey-light),var(--honey) 55%,var(--honey-deep));
  display:flex;
  align-items:center;
  justify-content:center;
}
body.bbh-landing .bbh-brand-mark svg{width:19px;height:19px;fill:var(--ink);}
body.bbh-landing .bbh-nav{
  display:flex;
  align-items:center;
  gap:30px;
  font-size:14.5px;
  font-weight:500;
}
body.bbh-landing .bbh-nav a{position:relative;padding:4px 0;}
body.bbh-landing .bbh-nav a:hover{color:var(--honey-deep);}
body.bbh-landing .bbh-header-actions{display:flex;align-items:center;gap:14px;}
body.bbh-landing .bbh-nav-toggle{display:none;background:none;border:0;padding:6px;cursor:pointer;}
body.bbh-landing .bbh-nav-toggle span{display:block;width:22px;height:2px;background:var(--ink);margin:5px 0;}

@media (max-width:900px){
  body.bbh-landing .bbh-header-actions{gap:8px;}
  body.bbh-landing .bbh-header-actions .bbh-btn-primary{display:none;}
  body.bbh-landing .bbh-header-actions .bbh-btn-ghost{padding:11px 16px;font-size:13px;}
  body.bbh-landing .bbh-brand{font-size:19px;}
  body.bbh-landing .bbh-nav{
    position:fixed;
    top:64px;
    left:0;
    right:0;
    height:calc(100vh - 64px);
    height:calc(100dvh - 64px);
    background:var(--bone);
    flex-direction:column;
    align-items:flex-start;
    gap:0;
    padding:10px 24px 24px;
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
    transform:translateY(-8px);
    opacity:0;
    pointer-events:none;
    transition:opacity .2s ease, transform .2s ease;
    border-top:1px solid var(--line);
    z-index:39;
  }
  body.bbh-landing .bbh-nav a{padding:13px 0;border-bottom:1px solid var(--line);width:100%;}
  body.bbh-landing.bbh-nav-open .bbh-nav{opacity:1;transform:translateY(0);pointer-events:auto;}
  body.bbh-landing .bbh-nav-toggle{display:block;}
}

/* ---------- Hero ---------- */
body.bbh-landing .bbh-hero{
  position:relative;
  padding:72px 0 96px;
  overflow:hidden;
}
body.bbh-landing .bbh-hero .bbh-wrap{
  display:grid;
  grid-template-columns:1.05fr 0.95fr;
  gap:56px;
  align-items:center;
}
body.bbh-landing .bbh-hero h1{
  font-size:clamp(38px,5vw,60px);
  margin-bottom:22px;
}
body.bbh-landing .bbh-hero h1 em{
  font-style:italic;
  color:var(--honey-deep);
}
body.bbh-landing .bbh-hero-eyebrow{margin-bottom:16px;display:block;}
body.bbh-landing .bbh-hero p.bbh-lede{
  font-size:18px;
  color:var(--ink-soft);
  max-width:46ch;
  margin-bottom:32px;
}
body.bbh-landing .bbh-hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:34px;}
body.bbh-landing .bbh-hero-trust{display:flex;gap:26px;flex-wrap:wrap;}
body.bbh-landing .bbh-hero-trust div{font-size:13px;color:var(--ink-soft);}
body.bbh-landing .bbh-hero-trust strong{display:block;font-family:var(--font-display);font-size:24px;color:var(--ink);font-weight:600;}

body.bbh-landing .bbh-hero-art{position:relative;}
body.bbh-landing .bbh-hex-frame{
  clip-path:polygon(25% 3%,75% 3%,100% 50%,75% 97%,25% 97%,0% 50%);
  aspect-ratio:1/1.02;
  overflow:hidden;
  box-shadow:var(--shadow);
}
body.bbh-landing .bbh-hex-frame img{width:100%;height:100%;object-fit:cover;}
body.bbh-landing .bbh-hero-badge{
  position:absolute;
  left:-18px;
  bottom:26px;
  background:var(--ink);
  color:var(--bone);
  padding:16px 20px;
  border-radius:var(--radius);
  font-size:13px;
  font-weight:600;
  max-width:230px;
  box-shadow:var(--shadow);
}
body.bbh-landing .bbh-hero-badge b{display:block;font-family:var(--font-display);font-size:19px;font-weight:600;color:var(--honey-light);margin-bottom:2px;}

@media (max-width:900px){
  body.bbh-landing .bbh-hero .bbh-wrap{grid-template-columns:1fr;gap:44px;}
  body.bbh-landing .bbh-hero-art{order:-1;}
  body.bbh-landing .bbh-hex-frame{max-width:420px;margin:0 auto;}
}

/* ---------- Truth strip ---------- */
body.bbh-landing .bbh-truth{
  padding:64px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
body.bbh-landing .bbh-truth .bbh-wrap{
  display:grid;
  grid-template-columns:0.9fr 1.1fr;
  gap:56px;
  align-items:start;
}
body.bbh-landing .bbh-truth h2{font-size:clamp(28px,3.4vw,38px);}
body.bbh-landing .bbh-truth-list{display:grid;gap:18px;}
body.bbh-landing .bbh-truth-row{display:flex;gap:14px;font-size:15.5px;color:var(--ink-soft);padding-bottom:16px;border-bottom:1px solid var(--line);}
body.bbh-landing .bbh-truth-row:last-child{border-bottom:0;padding-bottom:0;}
body.bbh-landing .bbh-truth-row .bbh-x{color:#9b3a2b;font-weight:700;flex:none;}
body.bbh-landing .bbh-truth-row .bbh-check{color:var(--moss);font-weight:700;flex:none;}
@media (max-width:820px){body.bbh-landing .bbh-truth .bbh-wrap{grid-template-columns:1fr;}}

/* ---------- Promise (dark) ---------- */
body.bbh-landing .bbh-promise{background:var(--ink);color:var(--bone);padding:80px 0;}
body.bbh-landing .bbh-promise .bbh-eyebrow{color:var(--honey-light);}
body.bbh-landing .bbh-promise h2{color:var(--bone);font-size:clamp(28px,3.6vw,40px);max-width:18ch;margin:14px 0 44px;}
body.bbh-landing .bbh-promise-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line-dark);}
body.bbh-landing .bbh-promise-item{padding:28px 26px 0;border-right:1px solid var(--line-dark);}
body.bbh-landing .bbh-promise-item:last-child{border-right:0;}
body.bbh-landing .bbh-promise-item .bbh-num{font-family:var(--font-display);font-size:15px;color:var(--honey);margin-bottom:14px;display:block;}
body.bbh-landing .bbh-promise-item h3{color:var(--bone);font-size:19px;margin-bottom:10px;}
body.bbh-landing .bbh-promise-item p{font-size:14.5px;color:rgba(251,246,234,0.72);line-height:1.6;}
@media (max-width:900px){
  body.bbh-landing .bbh-promise-grid{grid-template-columns:1fr 1fr;row-gap:32px;}
  body.bbh-landing .bbh-promise-item{border-right:0;border-bottom:1px solid var(--line-dark);padding-bottom:24px;}
}
@media (max-width:560px){body.bbh-landing .bbh-promise-grid{grid-template-columns:1fr;}}

/* ---------- Varietals ---------- */
body.bbh-landing .bbh-varietals{padding:88px 0 96px;}
body.bbh-landing .bbh-section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:44px;flex-wrap:wrap;}
body.bbh-landing .bbh-section-head h2{font-size:clamp(28px,3.6vw,40px);max-width:20ch;}
body.bbh-landing .bbh-section-head p{max-width:40ch;color:var(--ink-soft);font-size:15.5px;}
body.bbh-landing .bbh-prod-grid{
  display:grid;
  grid-template-columns:1.35fr 1fr 1fr;
  grid-template-rows:auto auto;
  gap:28px;
}
body.bbh-landing .bbh-prod-card{display:flex;flex-direction:column;}
body.bbh-landing .bbh-prod-card.bbh-feature{grid-row:span 2;}
body.bbh-landing .bbh-prod-media{
  border-radius:var(--radius);
  overflow:hidden;
  background:var(--bone-2);
  aspect-ratio:1/1;
  margin-bottom:16px;
  position:relative;
}
body.bbh-landing .bbh-feature .bbh-prod-media{aspect-ratio:1/1.28;}
body.bbh-landing .bbh-prod-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
body.bbh-landing .bbh-prod-card:hover .bbh-prod-media img{transform:scale(1.045);}
body.bbh-landing .bbh-prod-tag{
  position:absolute;top:14px;left:14px;
  background:var(--bone);
  color:var(--ink);
  font-size:11.5px;
  font-weight:700;
  letter-spacing:0.05em;
  text-transform:uppercase;
  padding:6px 11px;
  border-radius:var(--radius-pill);
}
body.bbh-landing .bbh-prod-name{font-family:var(--font-display);font-size:19px;font-weight:600;margin-bottom:4px;}
body.bbh-landing .bbh-feature .bbh-prod-name{font-size:24px;}
body.bbh-landing .bbh-prod-note{font-size:13.5px;color:var(--ink-soft);margin-bottom:10px;}
body.bbh-landing .bbh-prod-row{display:flex;align-items:center;justify-content:space-between;padding-top:10px;border-top:1px solid var(--line);}
body.bbh-landing .bbh-prod-price{font-weight:700;font-size:15.5px;}
body.bbh-landing .bbh-prod-link{font-size:13px;font-weight:700;color:var(--honey-deep);}
body.bbh-landing .bbh-prod-link:hover{color:var(--ink);}
@media (max-width:980px){body.bbh-landing .bbh-prod-grid{grid-template-columns:1fr 1fr;}body.bbh-landing .bbh-prod-card.bbh-feature{grid-column:span 2;grid-row:auto;}body.bbh-landing .bbh-feature .bbh-prod-media{aspect-ratio:16/9;}}
@media (max-width:600px){body.bbh-landing .bbh-prod-grid{grid-template-columns:1fr;}body.bbh-landing .bbh-prod-card.bbh-feature{grid-column:auto;}}

/* ---------- Story ---------- */
body.bbh-landing .bbh-story{padding:96px 0;background:var(--bone-2);}
body.bbh-landing .bbh-story .bbh-wrap{display:grid;grid-template-columns:0.85fr 1.15fr;gap:64px;align-items:center;}
body.bbh-landing .bbh-story-portrait{
  width:220px;
  aspect-ratio:1/1;
  border-radius:50%;
  overflow:hidden;
  box-shadow:var(--shadow);
  border:6px solid var(--surface);
}
body.bbh-landing .bbh-story-portrait img{width:100%;height:100%;object-fit:cover;}
body.bbh-landing .bbh-story blockquote{
  font-family:var(--font-display);
  font-style:italic;
  font-weight:500;
  font-size:clamp(24px,2.9vw,32px);
  line-height:1.28;
  color:var(--ink);
  padding-bottom:14px;
  margin-bottom:18px;
}
body.bbh-landing .bbh-story-cite{font-family:var(--font-body);font-style:normal;font-weight:700;font-size:14.5px;display:block;}
body.bbh-landing .bbh-story-cite span{display:block;font-weight:400;color:var(--ink-soft);font-size:13.5px;margin-top:2px;}
body.bbh-landing .bbh-story p.bbh-story-body{margin-top:22px;font-size:16px;color:var(--ink-soft);max-width:56ch;}
@media (max-width:820px){body.bbh-landing .bbh-story .bbh-wrap{grid-template-columns:1fr;text-align:left;}body.bbh-landing .bbh-story-portrait{width:150px;}}

/* ---------- Beyond the jar ---------- */
body.bbh-landing .bbh-beyond{padding:96px 0;}
body.bbh-landing .bbh-beyond-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
body.bbh-landing .bbh-beyond-card{position:relative;border-radius:var(--radius);overflow:hidden;aspect-ratio:4/5;box-shadow:var(--shadow);}
body.bbh-landing .bbh-beyond-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
body.bbh-landing .bbh-beyond-card:hover img{transform:scale(1.06);}
body.bbh-landing .bbh-beyond-scrim{position:absolute;inset:0;background:linear-gradient(0deg, rgba(20,15,5,0.82) 0%, rgba(20,15,5,0.15) 55%, rgba(20,15,5,0) 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:24px;}
body.bbh-landing .bbh-beyond-scrim h3{color:var(--bone);font-size:21px;margin-bottom:6px;}
body.bbh-landing .bbh-beyond-scrim span{color:var(--honey-light);font-size:13px;font-weight:700;}
@media (max-width:900px){body.bbh-landing .bbh-beyond-grid{grid-template-columns:1fr;}}

/* ---------- Markets / visit (moss) ---------- */
body.bbh-landing .bbh-visit{background:var(--moss);color:var(--bone);padding:88px 0;}
body.bbh-landing .bbh-visit .bbh-wrap{display:grid;grid-template-columns:1fr 1fr;gap:56px;}
body.bbh-landing .bbh-visit-col .bbh-eyebrow{color:var(--honey-light);}
body.bbh-landing .bbh-visit-col h3{color:var(--bone);font-size:26px;margin:12px 0 14px;}
body.bbh-landing .bbh-visit-col p{color:rgba(251,246,234,0.78);font-size:15.5px;margin-bottom:20px;max-width:44ch;}
body.bbh-landing .bbh-visit-col{padding:32px;border:1px solid rgba(251,246,234,0.22);border-radius:var(--radius);}
@media (max-width:820px){body.bbh-landing .bbh-visit .bbh-wrap{grid-template-columns:1fr;}}

/* ---------- Footer ---------- */
body.bbh-landing .bbh-footer{background:var(--ink);color:rgba(251,246,234,0.75);padding:72px 0 28px;}
body.bbh-landing .bbh-footer .bbh-wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:48px;border-bottom:1px solid var(--line-dark);}
body.bbh-landing .bbh-footer .bbh-brand{color:var(--bone);margin-bottom:14px;}
body.bbh-landing .bbh-footer p{font-size:14px;line-height:1.7;max-width:34ch;}
body.bbh-landing .bbh-footer h4{color:var(--bone);font-size:13px;letter-spacing:0.06em;text-transform:uppercase;margin-bottom:16px;font-weight:700;}
body.bbh-landing .bbh-footer ul{display:grid;gap:10px;font-size:14px;}
body.bbh-landing .bbh-footer a:hover{color:var(--bone);}
body.bbh-landing .bbh-footer-form{display:flex;gap:0;margin-top:6px;}
body.bbh-landing .bbh-footer-form input{flex:1;background:transparent;border:1px solid var(--line-dark);border-right:0;border-radius:var(--radius-pill) 0 0 var(--radius-pill);padding:11px 16px;color:var(--bone);font-size:13.5px;font-family:var(--font-body);}
body.bbh-landing .bbh-footer-form input::placeholder{color:rgba(251,246,234,0.5);}
body.bbh-landing .bbh-footer-form button{border:1px solid var(--honey);background:var(--honey);color:var(--ink);border-radius:0 var(--radius-pill) var(--radius-pill) 0;padding:11px 18px;font-weight:700;font-size:13.5px;cursor:pointer;}
body.bbh-landing .bbh-footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:26px;font-size:12.5px;flex-wrap:wrap;gap:10px;}
@media (max-width:900px){body.bbh-landing .bbh-footer .bbh-wrap{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){body.bbh-landing .bbh-footer .bbh-wrap{grid-template-columns:1fr;}}

/* ---------- Motion ----------
   No-JS / JS-disabled / crawler: .bbh-reveal renders fully visible.
   Only once JS adds .bbh-js to <body> do reveal elements hide and then
   fade in via IntersectionObserver adding .bbh-in. */
body.bbh-landing .bbh-reveal{transition:opacity .6s ease, transform .6s ease;}
body.bbh-landing.bbh-js .bbh-reveal{opacity:0;transform:translateY(16px);}
body.bbh-landing.bbh-js .bbh-reveal.bbh-in{opacity:1;transform:none;}

@media (prefers-reduced-motion:reduce){
  body.bbh-landing .bbh-reveal,
  body.bbh-landing.bbh-js .bbh-reveal{opacity:1!important;transform:none!important;transition:none!important;}
  body.bbh-landing *{scroll-behavior:auto!important;}
}

/* ============================================================
   Interior pages (About, Wedding Gifts, Mugs, Markets, Contact,
   Shop). Shares every token/component above.
   ============================================================ */

/* ---------- Simple page hero ---------- */
body.bbh-landing .bbh-page-hero{padding:60px 0 56px;border-bottom:1px solid var(--line);}
body.bbh-landing .bbh-page-hero h1{font-size:clamp(32px,4.4vw,50px);max-width:18ch;margin:14px 0 18px;}
body.bbh-landing .bbh-page-hero p{font-size:17px;color:var(--ink-soft);max-width:56ch;}
body.bbh-landing .bbh-page-hero .bbh-hero-ctas{margin-top:26px;}

/* ---------- Narrative rows (About) ---------- */
body.bbh-landing .bbh-narrative{padding:88px 0;}
body.bbh-landing .bbh-narrative-row{display:grid;grid-template-columns:0.85fr 1.15fr;gap:56px;align-items:center;margin-bottom:88px;}
body.bbh-landing .bbh-narrative-row:last-child{margin-bottom:0;}
body.bbh-landing .bbh-narrative-row.bbh-flip{grid-template-columns:1.15fr 0.85fr;}
body.bbh-landing .bbh-narrative-row.bbh-flip .bbh-narrative-media{order:2;}
body.bbh-landing .bbh-narrative-media{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:4/5;}
body.bbh-landing .bbh-narrative-media img{width:100%;height:100%;object-fit:cover;}
body.bbh-landing .bbh-narrative h2{font-size:clamp(26px,3vw,34px);margin-bottom:16px;}
body.bbh-landing .bbh-narrative p{color:var(--ink-soft);font-size:16px;margin-bottom:14px;max-width:52ch;}
body.bbh-landing .bbh-narrative p:last-child{margin-bottom:0;}
@media (max-width:820px){
  body.bbh-landing .bbh-narrative-row,
  body.bbh-landing .bbh-narrative-row.bbh-flip{grid-template-columns:1fr;gap:28px;}
  body.bbh-landing .bbh-narrative-row.bbh-flip .bbh-narrative-media{order:0;}
  body.bbh-landing .bbh-narrative-media{max-width:360px;}
}

/* ---------- Full-bleed banner photo with caption ---------- */
body.bbh-landing .bbh-banner-photo{position:relative;aspect-ratio:21/9;overflow:hidden;}
body.bbh-landing .bbh-banner-photo img{width:100%;height:100%;object-fit:cover;}
body.bbh-landing .bbh-banner-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg, rgba(20,15,5,0.55) 0%, rgba(20,15,5,0.05) 45%);}
body.bbh-landing .bbh-banner-caption{position:absolute;left:32px;bottom:28px;right:32px;color:var(--bone);font-family:var(--font-display);font-style:italic;font-weight:500;font-size:clamp(18px,2.4vw,27px);max-width:36ch;z-index:1;}
@media (max-width:600px){body.bbh-landing .bbh-banner-photo{aspect-ratio:4/5;}}

/* ---------- Simple product grid (Wedding Gifts, Mugs) ---------- */
body.bbh-landing .bbh-simple-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;}
body.bbh-landing .bbh-simple-media{border-radius:var(--radius);overflow:hidden;background:var(--bone-2);aspect-ratio:1/1;margin-bottom:14px;}
body.bbh-landing .bbh-simple-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
body.bbh-landing .bbh-simple-card:hover .bbh-simple-media img{transform:scale(1.05);}
body.bbh-landing .bbh-simple-name{font-family:var(--font-display);font-size:16.5px;font-weight:600;margin-bottom:4px;}
body.bbh-landing .bbh-simple-price{font-size:14px;color:var(--ink-soft);}
@media (max-width:900px){body.bbh-landing .bbh-simple-grid{grid-template-columns:repeat(3,1fr);}}
@media (max-width:640px){body.bbh-landing .bbh-simple-grid{grid-template-columns:repeat(2,1fr);gap:18px;}}

/* ---------- Markets ---------- */
body.bbh-landing .bbh-market-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
body.bbh-landing .bbh-market-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:30px;}
body.bbh-landing .bbh-market-card h3{font-size:21px;margin-bottom:6px;}
body.bbh-landing .bbh-market-card .bbh-eyebrow{display:block;margin-bottom:10px;}
body.bbh-landing .bbh-market-card p{color:var(--ink-soft);font-size:14.5px;margin-bottom:0;}
body.bbh-landing .bbh-market-meta{display:grid;gap:9px;font-size:14px;color:var(--ink-soft);margin-top:16px;padding-top:16px;border-top:1px solid var(--line);}
body.bbh-landing .bbh-market-meta strong{color:var(--ink);display:block;font-size:12.5px;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:2px;}
@media (max-width:900px){body.bbh-landing .bbh-market-grid{grid-template-columns:1fr;}}

/* ---------- Contact ---------- */
body.bbh-landing .bbh-contact{padding:88px 0;}
body.bbh-landing .bbh-contact .bbh-wrap{display:grid;grid-template-columns:0.85fr 1.15fr;gap:64px;align-items:start;}
body.bbh-landing .bbh-contact-detail{margin-bottom:24px;}
body.bbh-landing .bbh-contact-detail span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:0.06em;color:var(--honey-deep);font-weight:700;margin-bottom:5px;}
body.bbh-landing .bbh-contact-detail strong{font-size:17px;font-weight:600;}
body.bbh-landing .bbh-contact-detail a{border-bottom:1px solid var(--line);}
body.bbh-landing .bbh-contact-detail a:hover{color:var(--honey-deep);border-color:var(--honey-deep);}
body.bbh-landing .bbh-contact-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:36px;}
@media (max-width:860px){body.bbh-landing .bbh-contact .bbh-wrap{grid-template-columns:1fr;}}

/* Contact Form 7 restyle, scoped to our contact card */
body.bbh-landing .bbh-contact-card .wpcf7-form p{margin-bottom:18px;}
body.bbh-landing .bbh-contact-card .wpcf7-form label{display:block;font-size:12.5px;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:7px;}
body.bbh-landing .bbh-contact-card .wpcf7-form input[type=text],
body.bbh-landing .bbh-contact-card .wpcf7-form input[type=email],
body.bbh-landing .bbh-contact-card .wpcf7-form input[type=tel],
body.bbh-landing .bbh-contact-card .wpcf7-form textarea{
  width:100%;border:1px solid var(--line);border-radius:10px;padding:13px 15px;font-family:var(--font-body);font-size:15px;color:var(--ink);background:var(--bone);
}
body.bbh-landing .bbh-contact-card .wpcf7-form textarea{min-height:130px;resize:vertical;}
body.bbh-landing .bbh-contact-card .wpcf7-form input:focus,
body.bbh-landing .bbh-contact-card .wpcf7-form textarea:focus{outline:2px solid var(--honey);outline-offset:1px;border-color:var(--honey-deep);}
body.bbh-landing .bbh-contact-card .wpcf7-form input[type=submit]{
  display:inline-flex;align-items:center;padding:15px 30px;border-radius:var(--radius-pill);font-family:var(--font-body);font-weight:700;font-size:14.5px;border:1px solid transparent;background:var(--honey);color:var(--ink);cursor:pointer;
}
body.bbh-landing .bbh-contact-card .wpcf7-form input[type=submit]:hover{background:var(--honey-deep);color:var(--bone);}
body.bbh-landing .bbh-contact-card .wpcf7-response-output{margin-top:18px;border-radius:10px;padding:14px 16px;font-size:14px;}
body.bbh-landing .bbh-contact-card .wpcf7-not-valid-tip{color:#9b3a2b;font-size:12.5px;margin-top:4px;}

/* ---------- Shop archive ---------- */
body.bbh-landing .bbh-shop-toolbar{display:flex;justify-content:space-between;align-items:center;padding:26px 0;border-bottom:1px solid var(--line);flex-wrap:wrap;gap:14px;}
body.bbh-landing .bbh-shop-cats{display:flex;gap:10px;flex-wrap:wrap;}
body.bbh-landing .bbh-shop-cats a{font-size:13.5px;font-weight:600;padding:8px 15px;border-radius:var(--radius-pill);border:1px solid var(--line);}
body.bbh-landing .bbh-shop-cats a:hover,
body.bbh-landing .bbh-shop-cats a.bbh-active{background:var(--ink);color:var(--bone);border-color:var(--ink);}
body.bbh-landing .bbh-shop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:48px 0 20px;}
body.bbh-landing .bbh-shop-card{display:flex;flex-direction:column;}
body.bbh-landing .bbh-shop-media{border-radius:var(--radius);overflow:hidden;background:var(--bone-2);aspect-ratio:1/1;margin-bottom:16px;position:relative;}
body.bbh-landing .bbh-shop-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
body.bbh-landing .bbh-shop-card:hover .bbh-shop-media img{transform:scale(1.045);}
body.bbh-landing .bbh-shop-media .bbh-prod-tag{position:absolute;top:14px;left:14px;}
body.bbh-landing .bbh-shop-outofstock{position:absolute;inset:0;background:rgba(251,246,234,0.72);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;letter-spacing:0.04em;text-transform:uppercase;color:var(--ink-soft);}
body.bbh-landing .bbh-shop-name{font-family:var(--font-display);font-size:18.5px;font-weight:600;margin-bottom:8px;}
body.bbh-landing .bbh-shop-row{display:flex;align-items:center;justify-content:space-between;padding-top:10px;border-top:1px solid var(--line);}
body.bbh-landing .bbh-shop-price{font-weight:700;font-size:15px;}
body.bbh-landing .bbh-shop-add{font-size:13px;font-weight:700;color:var(--honey-deep);}
body.bbh-landing .bbh-shop-add:hover{color:var(--ink);}
body.bbh-landing .bbh-shop-pagination{display:flex;justify-content:center;gap:8px;padding:48px 0 8px;}
body.bbh-landing .bbh-shop-pagination a,
body.bbh-landing .bbh-shop-pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;border-radius:var(--radius-pill);border:1px solid var(--line);font-size:13.5px;font-weight:600;padding:0 8px;}
body.bbh-landing .bbh-shop-pagination .current{background:var(--ink);color:var(--bone);border-color:var(--ink);}
body.bbh-landing .bbh-shop-empty{padding:60px 0;text-align:center;color:var(--ink-soft);}
@media (max-width:980px){body.bbh-landing .bbh-shop-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:600px){body.bbh-landing .bbh-shop-grid{grid-template-columns:1fr;}}

body.bbh-landing .bbh-brand-logo{
  height:50px;
  width:auto;
  display:block;
}
body.bbh-landing .bbh-brand-logo-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:var(--bone);
  border-radius:14px;
  padding:8px 10px;
}
body.bbh-landing .bbh-brand-logo-chip .bbh-brand-logo{
  height:42px;
}
@media (max-width:640px){
  body.bbh-landing .bbh-brand-logo{height:40px;}
}
/* ---------- Wholesale (single-column contact variant) ---------- */
body.bbh-landing .bbh-contact-single .bbh-wrap{display:block;max-width:640px;}

/* ---------- Blog ---------- */
body.bbh-landing .bbh-blog-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:36px 30px;
}
body.bbh-landing .bbh-blog-card{
  display:block;
  color:var(--ink);
}
body.bbh-landing .bbh-blog-card:hover .bbh-blog-title{color:var(--honey-deep);}
body.bbh-landing .bbh-blog-media{
  aspect-ratio:4/3;
  border-radius:var(--radius);
  overflow:hidden;
  background:var(--surface);
  border:1px solid var(--line);
  margin-bottom:16px;
}
body.bbh-landing .bbh-blog-media img{width:100%;height:100%;object-fit:cover;display:block;}
body.bbh-landing .bbh-blog-media-fallback{
  width:100%;height:100%;
  background:linear-gradient(155deg,var(--honey-light),var(--honey) 70%,var(--honey-deep));
}
body.bbh-landing .bbh-blog-date{
  display:block;font-size:12px;text-transform:uppercase;letter-spacing:0.06em;color:var(--honey-deep);font-weight:700;margin-bottom:8px;
}
body.bbh-landing .bbh-blog-title{
  font-family:var(--font-display);font-size:21px;font-weight:600;margin:0 0 8px;line-height:1.25;
}
body.bbh-landing .bbh-blog-excerpt{
  font-size:14.5px;line-height:1.6;color:var(--ink-soft);margin:0 0 10px;
}
body.bbh-landing .bbh-blog-more{
  font-size:13.5px;font-weight:700;color:var(--ink);
}
@media (max-width:900px){
  body.bbh-landing .bbh-blog-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:640px){
  body.bbh-landing .bbh-blog-grid{grid-template-columns:1fr;}
}
/* =========================================================
   WooCommerce: shared notices, star rating, product loop
   (used on single product, cart, checkout, related/upsells)
   ========================================================= */
body.bbh-landing .woocommerce-breadcrumb{
  font-size:13px;color:var(--ink-soft);margin:0 0 22px;
}
body.bbh-landing .woocommerce-breadcrumb a{color:var(--ink-soft);border-bottom:1px solid var(--line);}
body.bbh-landing .woocommerce-breadcrumb a:hover{color:var(--honey-deep);border-color:var(--honey-deep);}

body.bbh-landing .woocommerce-error,
body.bbh-landing .woocommerce-message,
body.bbh-landing .woocommerce-info{
  list-style:none;
  margin:0 0 24px;
  padding:16px 20px;
  border-radius:var(--radius);
  background:var(--surface);
  border:1px solid var(--line);
  border-left:4px solid var(--honey);
  font-size:14.5px;
  color:var(--ink);
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
  justify-content:space-between;
}
body.bbh-landing .woocommerce-error{border-left-color:#9b3a2b;}
body.bbh-landing .woocommerce-error::before,
body.bbh-landing .woocommerce-message::before,
body.bbh-landing .woocommerce-info::before{content:none !important;display:none !important;}
body.bbh-landing .woocommerce-message .button,
body.bbh-landing .woocommerce-error .button,
body.bbh-landing .woocommerce-info .button{
  display:inline-flex;align-items:center;padding:10px 20px;border-radius:var(--radius-pill) !important;
  font-family:var(--font-body);font-weight:700;font-size:13.5px;background:var(--ink) !important;color:var(--bone) !important;
}

body.bbh-landing .star-rating{color:var(--honey-deep);font-size:14px;}
body.bbh-landing .star-rating span::before{color:var(--honey);}

body.bbh-landing ul.products{
  display:grid;grid-template-columns:repeat(4,1fr);gap:30px;list-style:none;margin:0;padding:0;
}
body.bbh-landing ul.products li.product{list-style:none;width:100% !important;float:none !important;margin:0 !important;}
body.bbh-landing ul.products li.product a{display:block;color:var(--ink);}
body.bbh-landing ul.products li.product img{
  width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);margin-bottom:14px;
}
body.bbh-landing ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--font-body);font-size:15.5px;font-weight:600;margin:0 0 4px;color:var(--ink);
}
body.bbh-landing ul.products li.product .price{
  font-family:var(--font-body);font-size:15px;font-weight:700;color:var(--honey-deep);
}
body.bbh-landing ul.products li.product .price del{color:var(--ink-soft);opacity:0.6;font-weight:400;margin-right:6px;}
body.bbh-landing ul.products li.product .star-rating{margin-bottom:4px;}
body.bbh-landing ul.products li.product .button{
  display:inline-flex;align-items:center;margin-top:10px;padding:9px 18px;border-radius:var(--radius-pill) !important;
  font-family:var(--font-body);font-weight:700;font-size:13px;background:var(--honey) !important;color:var(--ink) !important;
}
body.bbh-landing ul.products li.product .button:hover{background:var(--honey-deep) !important;color:var(--bone) !important;}
body.bbh-landing ul.products li.product .onsale{
  position:absolute;background:var(--ink);color:var(--bone);font-size:11px;font-weight:700;text-transform:uppercase;
  padding:5px 10px;border-radius:var(--radius-pill);letter-spacing:0.04em;
}
@media (max-width:900px){ body.bbh-landing ul.products{grid-template-columns:repeat(2,1fr);} }

/* =========================================================
   Single product page
   ========================================================= */
body.bbh-landing .bbh-product-wrap{padding:36px 0 96px;}
body.bbh-landing div.product{
  display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start;margin-bottom:64px;
}
body.bbh-landing div.product > .woocommerce-product-gallery,
body.bbh-landing div.product > .summary.entry-summary{width:100% !important;float:none !important;margin:0 !important;}
body.bbh-landing .woocommerce-product-gallery{position:relative;}
body.bbh-landing .woocommerce-product-gallery__wrapper{margin:0;padding:0;}
body.bbh-landing .woocommerce-product-gallery__image{
  border-radius:var(--radius);overflow:hidden;background:var(--surface);border:1px solid var(--line);
}
body.bbh-landing .woocommerce-product-gallery__image img{width:100%;height:auto;display:block;}
body.bbh-landing .flex-control-thumbs{
  display:flex;gap:12px;margin:14px 0 0;padding:0;list-style:none;flex-wrap:wrap;
}
body.bbh-landing .flex-control-thumbs li{width:72px;}
body.bbh-landing .flex-control-thumbs img{
  width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:10px;border:1px solid var(--line);cursor:pointer;opacity:0.65;
}
body.bbh-landing .flex-control-thumbs img.flex-active,
body.bbh-landing .flex-control-thumbs img:hover{opacity:1;border-color:var(--honey-deep);}

body.bbh-landing .summary.entry-summary{padding-top:4px;}
body.bbh-landing .summary .product_title{
  font-family:var(--font-display);font-size:clamp(28px,3.2vw,38px);font-weight:600;line-height:1.15;margin:0 0 14px;
}
body.bbh-landing .summary .woocommerce-product-rating{margin-bottom:14px;display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--ink-soft);}
body.bbh-landing .summary .woocommerce-review-link{color:var(--ink-soft);border-bottom:1px solid var(--line);}
body.bbh-landing .summary p.price{
  font-family:var(--font-body);font-size:26px;font-weight:700;color:var(--honey-deep);margin:0 0 20px;
}
body.bbh-landing .summary p.price del{opacity:0.55;font-weight:400;font-size:18px;margin-right:10px;color:var(--ink-soft);}
body.bbh-landing .summary p.price ins{text-decoration:none;}
body.bbh-landing .woocommerce-product-details__short-description{
  font-size:15.5px;line-height:1.7;color:var(--ink-soft);margin-bottom:26px;
}
body.bbh-landing .woocommerce-product-details__short-description p:last-child{margin-bottom:0;}

body.bbh-landing table.variations{width:100%;margin-bottom:20px;border-collapse:collapse;}
body.bbh-landing table.variations tr{display:block;margin-bottom:14px;}
body.bbh-landing table.variations th.label{
  display:block;font-size:12.5px;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:7px;
}
body.bbh-landing table.variations td.value{display:block;}
body.bbh-landing table.variations select{
  width:100%;max-width:340px;border:1px solid var(--line);border-radius:10px;padding:12px 15px;
  font-family:var(--font-body);font-size:15px;color:var(--ink);background:var(--surface);
}
body.bbh-landing .woocommerce-variation-add-to-cart,
body.bbh-landing .single_variation_wrap{margin-top:6px;}
body.bbh-landing .woocommerce-variation-price .price{font-size:22px;}
body.bbh-landing .woocommerce-variation-availability p.stock{
  display:inline-block;margin:8px 0 0;padding:5px 12px;border-radius:var(--radius-pill);font-size:12.5px;font-weight:700;
  background:var(--bone-2);color:var(--moss);
}
body.bbh-landing .woocommerce-variation-availability p.stock.out-of-stock,
body.bbh-landing p.stock.out-of-stock{background:rgba(155,58,43,0.1);color:#9b3a2b;}

body.bbh-landing form.cart{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:24px;}
body.bbh-landing .quantity{display:inline-flex;}
body.bbh-landing .quantity .qty{
  width:74px;border:1px solid var(--line);border-radius:var(--radius-pill);padding:13px 16px;text-align:center;
  font-family:var(--font-body);font-size:15px;color:var(--ink);background:var(--surface);
}
body.bbh-landing .single_add_to_cart_button,
body.bbh-landing button.single_add_to_cart_button{
  display:inline-flex;align-items:center;padding:15px 32px;border-radius:var(--radius-pill) !important;
  font-family:var(--font-body);font-weight:700;font-size:15px;border:1px solid transparent;
  background:var(--honey) !important;color:var(--ink) !important;cursor:pointer;
}
body.bbh-landing .single_add_to_cart_button:hover{background:var(--honey-deep) !important;color:var(--bone) !important;}
body.bbh-landing .single_add_to_cart_button.disabled{opacity:0.45;cursor:not-allowed;}

body.bbh-landing .product_meta{
  font-size:13.5px;color:var(--ink-soft);border-top:1px solid var(--line);padding-top:18px;margin-top:10px;
}
body.bbh-landing .product_meta > span{display:block;margin-bottom:6px;}
body.bbh-landing .product_meta a{color:var(--ink-soft);border-bottom:1px solid var(--line);}

body.bbh-landing .woocommerce-tabs{margin-top:20px;grid-column:1 / -1;}
body.bbh-landing .woocommerce-tabs ul.tabs{
  display:flex;gap:8px;list-style:none;margin:0 0 28px;padding:0;border-bottom:1px solid var(--line);flex-wrap:wrap;
}
body.bbh-landing .woocommerce-tabs ul.tabs li{margin:0;}
body.bbh-landing .woocommerce-tabs ul.tabs li a{
  display:inline-block;padding:12px 4px;margin-right:22px;font-weight:700;font-size:14px;color:var(--ink-soft);border-bottom:2px solid transparent;
}
body.bbh-landing .woocommerce-tabs ul.tabs li.active a{color:var(--ink);border-bottom-color:var(--honey);}
body.bbh-landing .woocommerce-tabs .panel{max-width:76ch;font-size:15.5px;line-height:1.75;color:var(--ink-soft);}
body.bbh-landing .woocommerce-tabs .panel h2{
  font-family:var(--font-display);font-size:22px;font-weight:600;color:var(--ink);margin:0 0 18px;
}
body.bbh-landing table.shop_attributes{width:100%;border-collapse:collapse;font-size:14.5px;}
body.bbh-landing table.shop_attributes th{
  text-align:left;padding:12px 16px 12px 0;font-weight:700;color:var(--ink);border-bottom:1px solid var(--line);width:200px;
}
body.bbh-landing table.shop_attributes td{padding:12px 0;border-bottom:1px solid var(--line);color:var(--ink-soft);}

body.bbh-landing .related.products,
body.bbh-landing .upsells.products{
  grid-column:1 / -1;margin-top:24px;padding-top:56px;border-top:1px solid var(--line);
}
body.bbh-landing .related.products > h2,
body.bbh-landing .upsells.products > h2{
  font-family:var(--font-display);font-size:26px;font-weight:600;margin:0 0 28px;
}

@media (max-width:900px){
  body.bbh-landing div.product{grid-template-columns:1fr;gap:32px;}
  body.bbh-landing ul.products{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:560px){
  body.bbh-landing ul.products{grid-template-columns:1fr;}
  body.bbh-landing table.variations tr{display:block;}
}
/* =========================================================
   Cart & Checkout (shared)
   ========================================================= */
body.bbh-landing .bbh-woo-wrap{padding:8px 0 96px;}

body.bbh-landing table.shop_table{
  width:100%;border-collapse:collapse;margin:0 0 32px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;
}
body.bbh-landing table.shop_table th{
  text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:0.05em;font-weight:700;color:var(--ink-soft);
  padding:16px 14px;border-bottom:1px solid var(--line);background:var(--bone-2);
}
body.bbh-landing table.shop_table td{padding:18px 14px;border-bottom:1px solid var(--line);vertical-align:middle;font-size:14.5px;}
body.bbh-landing table.shop_table tr:last-child td{border-bottom:none;}
body.bbh-landing table.shop_table td.product-thumbnail img{
  width:64px;height:64px;object-fit:cover;border-radius:10px;border:1px solid var(--line);
}
body.bbh-landing table.shop_table td.product-name a{color:var(--ink);font-weight:600;}
body.bbh-landing table.shop_table td.product-price,
body.bbh-landing table.shop_table td.product-subtotal{font-weight:700;color:var(--honey-deep);white-space:nowrap;}
body.bbh-landing table.shop_table .quantity .qty{
  width:64px;border:1px solid var(--line);border-radius:var(--radius-pill);padding:9px 12px;text-align:center;
  font-family:var(--font-body);font-size:14.5px;background:var(--bone);
}
body.bbh-landing table.shop_table a.remove{
  display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;
  color:var(--ink-soft);font-size:18px;line-height:1;text-decoration:none;
}
body.bbh-landing table.shop_table a.remove:hover{background:rgba(155,58,43,0.1);color:#9b3a2b;}

body.bbh-landing td.actions,
body.bbh-landing tr td.actions{background:transparent;padding-top:22px;}
body.bbh-landing .coupon{display:flex;flex-wrap:wrap;gap:10px;align-items:center;}
body.bbh-landing #coupon_code{
  border:1px solid var(--line);border-radius:var(--radius-pill);padding:12px 18px;font-family:var(--font-body);
  font-size:14px;background:var(--bone);min-width:180px;
}
body.bbh-landing .coupon .button,
body.bbh-landing button[name="update_cart"]{
  display:inline-flex;align-items:center;padding:12px 22px;border-radius:var(--radius-pill) !important;
  font-family:var(--font-body);font-weight:700;font-size:13.5px;border:1px solid var(--ink) !important;
  background:transparent !important;color:var(--ink) !important;cursor:pointer;
}
body.bbh-landing .coupon .button:hover,
body.bbh-landing button[name="update_cart"]:hover{background:var(--ink) !important;color:var(--bone) !important;}
body.bbh-landing tr td.actions{display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px;border:none;}

body.bbh-landing .cart-collaterals{display:flex;justify-content:flex-end;}
body.bbh-landing .cart_totals{width:100%;max-width:420px;position:static !important;right:auto !important;top:auto !important;}
body.bbh-landing .cart_totals h2{font-family:var(--font-display);font-size:22px;font-weight:600;margin:0 0 16px;}
body.bbh-landing .cart_totals table.shop_table td,
body.bbh-landing .cart_totals table.shop_table th{padding:14px;}
body.bbh-landing .cart_totals .order-total .woocommerce-Price-amount{font-size:19px;color:var(--honey-deep);}
body.bbh-landing .wc-proceed-to-checkout{padding:20px 14px 0;}
body.bbh-landing .wc-proceed-to-checkout a.checkout-button{
  display:flex;align-items:center;justify-content:center;width:100%;padding:16px 24px;border-radius:var(--radius-pill) !important;
  font-family:var(--font-body);font-weight:700;font-size:15px;background:var(--honey) !important;color:var(--ink) !important;
}
body.bbh-landing .wc-proceed-to-checkout a.checkout-button:hover{background:var(--honey-deep) !important;color:var(--bone) !important;}

/* Empty cart */
body.bbh-landing .cart-empty{font-size:16px;margin-bottom:20px;}
body.bbh-landing .return-to-shop .button{
  display:inline-flex;align-items:center;padding:14px 26px;border-radius:var(--radius-pill) !important;
  font-family:var(--font-body);font-weight:700;font-size:14.5px;background:var(--honey) !important;color:var(--ink) !important;
}

/* Checkout */
body.bbh-landing .woocommerce-checkout .col2-set{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-bottom:40px;}
body.bbh-landing .woocommerce-checkout h3{font-family:var(--font-display);font-size:22px;font-weight:600;margin:0 0 20px;}
body.bbh-landing .woocommerce-checkout .form-row{margin-bottom:16px;}
body.bbh-landing .woocommerce-checkout label{
  display:block;font-size:12.5px;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:7px;
}
body.bbh-landing .woocommerce-checkout label .required{color:#9b3a2b;text-decoration:none;}
body.bbh-landing .woocommerce-checkout input[type=text],
body.bbh-landing .woocommerce-checkout input[type=email],
body.bbh-landing .woocommerce-checkout input[type=tel],
body.bbh-landing .woocommerce-checkout input[type=password],
body.bbh-landing .woocommerce-checkout textarea,
body.bbh-landing .woocommerce-checkout select,
body.bbh-landing .select2-container .select2-selection--single{
  width:100%;border:1px solid var(--line);border-radius:10px;padding:13px 15px;font-family:var(--font-body);
  font-size:15px;color:var(--ink);background:var(--surface);height:auto;
}
body.bbh-landing .select2-container .select2-selection--single{padding:9px 15px;}
body.bbh-landing .woocommerce-checkout input:focus,
body.bbh-landing .woocommerce-checkout textarea:focus,
body.bbh-landing .woocommerce-checkout select:focus{outline:2px solid var(--honey);outline-offset:1px;border-color:var(--honey-deep);}
body.bbh-landing .woocommerce-additional-fields{margin-top:8px;}

body.bbh-landing #order_review_heading{font-family:var(--font-display);font-size:24px;font-weight:600;margin:0 0 20px;}
body.bbh-landing #order_review{
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:28px;
}
body.bbh-landing .woocommerce-checkout-review-order-table{border:none;background:transparent;margin-bottom:0;}
body.bbh-landing .woocommerce-checkout-review-order-table th,
body.bbh-landing .woocommerce-checkout-review-order-table td{background:transparent;}

body.bbh-landing #payment{background:transparent;border-top:1px solid var(--line);margin-top:22px;padding-top:22px;}
body.bbh-landing ul.wc_payment_methods{list-style:none;margin:0;padding:0;}
body.bbh-landing ul.payment_methods li{
  border:1px solid var(--line);border-radius:10px;padding:14px 16px;margin-bottom:10px;background:var(--bone);
}
body.bbh-landing ul.payment_methods li label{
  display:inline;font-size:14.5px;font-weight:600;text-transform:none;letter-spacing:0;color:var(--ink);margin:0 0 0 8px;
}
body.bbh-landing ul.payment_methods li img{vertical-align:middle;margin-left:8px;}
body.bbh-landing .payment_box{
  margin-top:12px;padding:14px 16px;background:var(--surface);border-radius:8px;font-size:13.5px;color:var(--ink-soft);
}
body.bbh-landing .payment_box p:last-child{margin-bottom:0;}

body.bbh-landing .woocommerce-terms-and-conditions-wrapper{margin:20px 0;font-size:13.5px;color:var(--ink-soft);}
body.bbh-landing #place_order,
body.bbh-landing button#place_order{
  display:flex;align-items:center;justify-content:center;width:100%;padding:17px 24px;margin-top:18px;
  border-radius:var(--radius-pill) !important;font-family:var(--font-body);font-weight:700;font-size:15.5px;border:none;
  background:var(--honey) !important;color:var(--ink) !important;cursor:pointer;
}
body.bbh-landing #place_order:hover{background:var(--honey-deep) !important;color:var(--bone) !important;}

body.bbh-landing .woocommerce-form-login,
body.bbh-landing .woocommerce-form-coupon{
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px;margin-bottom:24px;max-width:480px;
}
body.bbh-landing .woocommerce-form-login .form-row label,
body.bbh-landing .woocommerce-form-coupon .form-row label{
  display:block;font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:0.04em;color:var(--ink-soft);margin-bottom:7px;
}
body.bbh-landing .woocommerce-form-login input[type=text],
body.bbh-landing .woocommerce-form-login input[type=password],
body.bbh-landing .woocommerce-form-coupon input[type=text]{
  width:100%;border:1px solid var(--line);border-radius:10px;padding:12px 15px;background:var(--bone);
}
body.bbh-landing .woocommerce-form-login .button,
body.bbh-landing .woocommerce-form-coupon .button{
  display:inline-flex;align-items:center;padding:12px 24px;border-radius:var(--radius-pill) !important;
  font-weight:700;font-size:14px;background:var(--honey) !important;color:var(--ink) !important;border:none;cursor:pointer;
}
body.bbh-landing .showcoupon{color:var(--ink-soft);border-bottom:1px solid var(--line);}

@media (max-width:768px){
  body.bbh-landing .woocommerce-checkout .col2-set{grid-template-columns:1fr;gap:0;}
  body.bbh-landing table.shop_table thead{display:none;}
  body.bbh-landing table.shop_table tr{display:block;padding:14px 0;border-bottom:1px solid var(--line);}
  body.bbh-landing table.shop_table td{display:flex;justify-content:space-between;align-items:center;border-bottom:none;padding:6px 14px;}
  body.bbh-landing table.shop_table td::before{content:attr(data-title);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:0.04em;color:var(--ink-soft);margin-right:12px;}
  body.bbh-landing table.shop_table td.product-thumbnail::before,
  body.bbh-landing table.shop_table td.product-remove::before{content:none;}
}

/* =========================================================
   Grid/flex clearfix-pseudo-element fix
   The parent theme's bundled CSS applies legacy float-clearfix
   rules (content:" "; display:table;) to ::before/::after on
   several WooCommerce selectors. Once we turn those same elements
   into grid/flex containers, browsers treat those clearfix pseudo-
   elements as real anonymous grid/flex items, which throws off
   auto-placement (e.g. checkout's col2-set rendering billing details
   in the wrong column with a blank gap, and the related-products
   grid squeezing real product cards into slivers). Neutralizing the
   pseudo-elements on every selector we've made a grid/flex container
   fixes this class of bug everywhere at once.
   ========================================================= */
body.bbh-landing .woocommerce-checkout .col2-set::before,
body.bbh-landing .woocommerce-checkout .col2-set::after,
body.bbh-landing ul.products::before,
body.bbh-landing ul.products::after,
body.bbh-landing .cart-collaterals::before,
body.bbh-landing .cart-collaterals::after,
body.bbh-landing .woocommerce-tabs ul.tabs::before,
body.bbh-landing .woocommerce-tabs ul.tabs::after,
body.bbh-landing form.cart::before,
body.bbh-landing form.cart::after,
body.bbh-landing .coupon::before,
body.bbh-landing .coupon::after,
body.bbh-landing tr td.actions::before,
body.bbh-landing tr td.actions::after,
body.bbh-landing div.product::before,
body.bbh-landing div.product::after{
  content:none !important;display:none !important;
}
