/* ============================================================
   BATHOS INTERNATIONAL GROUP — MAIN STYLESHEET
   File: css/style.css
   ============================================================ */

/* ── Design Tokens ── */
:root {
  --ink:      #0B1520;
  --ink-2:    #1A2940;
  --gold:     #B8862A;
  --gold-lt:  #D4A84B;
  --gold-dim: rgba(184,134,42,0.12);
  --cream:    #F5F2EC;
  --white:    #FFFFFF;
  --mist:     #EDEAE4;
  --stone:    #8E8A83;
  --ash:      #C8C4BC;
  --line:     rgba(11,21,32,0.09);
  --line-lt:  rgba(255,255,255,0.08);
  --r:        2px;
  --serif:    'Playfair Display', Georgia, serif;
  --sans:     'Outfit', system-ui, sans-serif;
}

/* ── Reset ── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { font-family: var(--sans); font-weight: 300; color: var(--ink); background: var(--white); -webkit-font-smoothing: antialiased; overflow-x: hidden; }
img { max-width: 100%; display: block; }
a { text-decoration: none; }

/* ━━━━━━━━━━━━━━━━━━━━━━
   NAVIGATION
━━━━━━━━━━━━━━━━━━━━━━ */
.bh-nav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 900;
  height: 80px; display: flex; align-items: center;
  justify-content: space-between; padding: 0 6%;
  transition: all 0.4s ease;
}
.bh-nav--dark  { background: rgba(11,21,32,0.96); backdrop-filter: blur(20px); border-bottom: 1px solid var(--line-lt); }
.bh-nav--light { background: rgba(255,255,255,0.97); backdrop-filter: blur(20px); border-bottom: 1px solid var(--line); box-shadow: 0 2px 24px rgba(11,21,32,0.05); }

.bh-nav__logo { display: flex; align-items: center; gap: 14px; }
.bh-nav__logo-img { height: 42px; width: 42px; object-fit: contain; }
.bh-nav--dark  .bh-nav__logo-img { filter: brightness(0) invert(1); }
.bh-nav--light .bh-nav__logo-img { filter: none; }
.bh-nav__logo-text { display: flex; flex-direction: column; line-height: 1.2; }
.bh-nav__logo-name { font-family: var(--serif); font-size: 15px; font-weight: 600; letter-spacing: 0.5px; }
.bh-nav--dark  .bh-nav__logo-name { color: var(--white); }
.bh-nav--light .bh-nav__logo-name { color: var(--ink); }
.bh-nav__logo-sub { font-size: 9px; font-weight: 400; letter-spacing: 3px; text-transform: uppercase; }
.bh-nav--dark  .bh-nav__logo-sub { color: rgba(255,255,255,0.32); }
.bh-nav--light .bh-nav__logo-sub { color: var(--stone); }

.bh-nav__links { display: flex; list-style: none; align-items: center; gap: 32px; }
.bh-nav__links a { font-size: 12px; font-weight: 400; letter-spacing: 1px; text-transform: uppercase; position: relative; transition: color 0.25s; }
.bh-nav__links a::after { content: ''; position: absolute; bottom: -5px; left: 0; width: 0; height: 1px; background: var(--gold); transition: width 0.3s; }
.bh-nav__links a:hover::after, .bh-nav__links a.active::after { width: 100%; }
.bh-nav--dark  .bh-nav__links a { color: rgba(255,255,255,0.6); }
.bh-nav--dark  .bh-nav__links a:hover, .bh-nav--dark .bh-nav__links a.active { color: var(--gold-lt); }
.bh-nav--light .bh-nav__links a { color: var(--stone); }
.bh-nav--light .bh-nav__links a:hover, .bh-nav--light .bh-nav__links a.active { color: var(--gold); }

.bh-nav__cta { background: var(--gold) !important; color: var(--ink) !important; padding: 9px 22px; border-radius: var(--r); font-size: 11px !important; font-weight: 500 !important; transition: background 0.2s !important; }
.bh-nav__cta::after { display: none !important; }
.bh-nav__cta:hover { background: var(--gold-lt) !important; }

.bh-nav__hamburger { display: none; flex-direction: column; gap: 6px; cursor: pointer; background: none; border: none; padding: 4px; }
.bh-nav__hamburger span { display: block; width: 26px; height: 1.5px; transition: all 0.3s; }
.bh-nav--dark  .bh-nav__hamburger span { background: var(--white); }
.bh-nav--light .bh-nav__hamburger span { background: var(--ink); }

.bh-mobile-nav { display: none; position: fixed; inset: 0; background: var(--ink); z-index: 850; flex-direction: column; align-items: center; justify-content: center; gap: 36px; }
.bh-mobile-nav.open { display: flex; }
.bh-mobile-nav a { font-family: var(--serif); font-size: 28px; font-weight: 500; color: rgba(255,255,255,0.65); transition: color 0.2s; }
.bh-mobile-nav a:hover { color: var(--gold-lt); }
.bh-mobile-nav__close { position: absolute; top: 28px; right: 6%; font-size: 28px; color: rgba(255,255,255,0.4); background: none; border: none; cursor: pointer; }

/* ━━━━━━━━━━━━━━━━━━━━━━
   HOME HERO
━━━━━━━━━━━━━━━━━━━━━━ */
.bh-home-hero { min-height: 100vh; background: var(--ink); position: relative; overflow: hidden; display: flex; align-items: center; padding: 0 6% 0; padding-top: 80px; }
.bh-home-hero::before { content: ''; position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,0.022) 1px,transparent 1px), linear-gradient(90deg,rgba(255,255,255,0.022) 1px,transparent 1px); background-size: 80px 80px; pointer-events: none; }
.bh-home-hero__glow { position: absolute; right: -10%; top: -15%; width: 65vw; height: 65vw; background: radial-gradient(ellipse, rgba(184,134,42,0.07) 0%,transparent 65%); pointer-events: none; }
.bh-home-hero__accent { position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: linear-gradient(180deg,transparent 0%,var(--gold) 35%,var(--gold-lt) 65%,transparent 100%); opacity: 0.5; }
.bh-home-hero__content { position: relative; z-index: 2; max-width: 860px; }
.bh-home-hero__body { font-size: 16.5px; font-weight: 300; line-height: 1.9; color: rgba(255,255,255,0.5); max-width: 540px; margin: 28px 0 48px; animation: bh-rise 1.1s 0.7s ease both; }
.bh-home-hero__actions { display: flex; gap: 16px; flex-wrap: wrap; animation: bh-rise 1.1s 0.9s ease both; }

.bh-home-hero__scroll { position: absolute; bottom: 40px; left: 50%; transform: translateX(-50%); display: flex; flex-direction: column; align-items: center; gap: 10px; animation: bh-rise 1s 1.4s ease both; }
.bh-home-hero__scroll span { font-size: 9px; letter-spacing: 3px; text-transform: uppercase; color: rgba(255,255,255,0.25); }
.bh-home-hero__scroll-line { width: 1px; height: 48px; background: linear-gradient(180deg,rgba(255,255,255,0.2),transparent); animation: bh-scroll-pulse 2.2s ease-in-out infinite; }

@keyframes bh-scroll-pulse { 0%{transform:scaleY(0);transform-origin:top} 49%{transform:scaleY(1);transform-origin:top} 50%{transform:scaleY(1);transform-origin:bottom} 100%{transform:scaleY(0);transform-origin:bottom} }
@keyframes bh-rise { from{opacity:0;transform:translateY(28px)} to{opacity:1;transform:translateY(0)} }

.bh-home-hero .bh-eyebrow { animation: bh-rise 1s 0.3s ease both; }
.bh-home-hero .bh-h1      { animation: bh-rise 1.1s 0.5s ease both; }

.bh-hero-stats { position: absolute; right: 6%; bottom: 60px; display: flex; gap: 44px; animation: bh-rise 1.1s 1.1s ease both; }
.bh-hero-stats__item { display: flex; flex-direction: column; align-items: flex-end; gap: 5px; }
.bh-hero-stats__num { font-family: var(--serif); font-size: 34px; font-weight: 500; color: var(--white); line-height: 1; }
.bh-hero-stats__num em { font-style: normal; color: var(--gold-lt); }
.bh-hero-stats__label { font-size: 9.5px; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,0.28); }
.bh-hero-stats__div { width: 1px; background: rgba(255,255,255,0.08); align-self: stretch; }

/* ━━━━━━━━━━━━━━━━━━━━━━
   PAGE HERO (inner pages)
━━━━━━━━━━━━━━━━━━━━━━ */
.bh-page-hero { min-height: 52vh; background: var(--ink); display: flex; align-items: flex-end; padding: 80px 6% 72px; position: relative; overflow: hidden; }
.bh-page-hero::before { content:''; position:absolute; inset:0; background: repeating-linear-gradient(-55deg,transparent,transparent 80px,rgba(255,255,255,0.01) 80px,rgba(255,255,255,0.01) 81px); }
.bh-page-hero__glow { position:absolute; left:-5%; top:-30%; width:55vw; height:55vw; background:radial-gradient(ellipse,rgba(184,134,42,0.07) 0%,transparent 65%); pointer-events:none; }
.bh-page-hero__content { position:relative; z-index:2; }
.bh-page-hero__title { font-family:var(--serif); font-size:clamp(38px,5.5vw,70px); font-weight:500; line-height:1.06; color:var(--white); }
.bh-page-hero__title .em { font-style:italic; color:var(--gold-lt); }

/* ━━━━━━━━━━━━━━━━━━━━━━
   MARQUEE
━━━━━━━━━━━━━━━━━━━━━━ */
.bh-marquee { background:var(--gold); overflow:hidden; padding:15px 0; }
.bh-marquee__track { display:flex; width:max-content; animation:bh-marquee 30s linear infinite; }
@keyframes bh-marquee { from{transform:translateX(0)} to{transform:translateX(-50%)} }
.bh-marquee__item { display:flex; align-items:center; gap:22px; padding:0 22px; white-space:nowrap; }
.bh-marquee__item span { font-size:10.5px; font-weight:600; letter-spacing:2.5px; text-transform:uppercase; color:var(--ink); }
.bh-marquee__dot { width:3px; height:3px; background:rgba(11,21,32,0.35); border-radius:50%; }

/* ━━━━━━━━━━━━━━━━━━━━━━
   BUTTONS
━━━━━━━━━━━━━━━━━━━━━━ */
.bh-btn { display:inline-flex; align-items:center; gap:10px; font-family:var(--sans); font-size:11.5px; font-weight:600; letter-spacing:1.5px; text-transform:uppercase; padding:14px 32px; border-radius:var(--r); border:none; cursor:pointer; transition:all 0.3s; white-space:nowrap; }
.bh-btn svg { transition:transform 0.3s; flex-shrink:0; }
.bh-btn:hover svg { transform:translateX(4px); }
.bh-btn-gold { background:var(--gold); color:var(--ink); }
.bh-btn-gold:hover { background:var(--gold-lt); transform:translateY(-2px); box-shadow:0 8px 24px rgba(184,134,42,0.25); }
.bh-btn-dark { background:var(--ink); color:var(--white); }
.bh-btn-dark:hover { background:var(--ink-2); transform:translateY(-2px); }
.bh-btn-ghost { background:transparent; color:rgba(255,255,255,0.7); border:1px solid rgba(255,255,255,0.2); padding:13px 32px; }
.bh-btn-ghost:hover { border-color:var(--gold); color:var(--gold-lt); }

/* ━━━━━━━━━━━━━━━━━━━━━━
   TYPOGRAPHY & LAYOUT
━━━━━━━━━━━━━━━━━━━━━━ */
.bh-eyebrow { display:flex; align-items:center; gap:14px; margin-bottom:20px; }
.bh-eyebrow::before { content:''; display:block; width:32px; height:1px; background:var(--gold); flex-shrink:0; }
.bh-eyebrow span { font-size:10.5px; font-weight:500; letter-spacing:3.5px; text-transform:uppercase; color:var(--gold); }
.bh-eyebrow.light span { color:rgba(255,255,255,0.4); }
.bh-eyebrow.light::before { background:rgba(255,255,255,0.25); }

.bh-h2 { font-family:var(--serif); font-size:clamp(28px,3.5vw,46px); font-weight:500; line-height:1.2; color:var(--ink); }
.bh-h2.light { color:var(--white); }
.bh-h3 { font-family:var(--serif); font-size:clamp(22px,2.5vw,30px); font-weight:500; line-height:1.25; color:var(--ink); }
.bh-body { font-size:15.5px; font-weight:300; line-height:1.9; color:var(--stone); }

.bh-h1 { font-family:var(--serif); font-size:clamp(44px,6.5vw,88px); font-weight:500; line-height:1.04; color:var(--white); }
.bh-h1 .em { font-style:italic; color:var(--gold-lt); }
.bh-h1 .outline { -webkit-text-stroke:1px rgba(255,255,255,0.25); color:transparent; }

.bh-section { padding:112px 6%; }
.bh-section--bg-ink   { background:var(--ink); }
.bh-section--bg-cream { background:var(--cream); }
.bh-section--bg-white { background:var(--white); }

.bh-2col { display:grid; grid-template-columns:1fr 1fr; gap:72px; align-items:start; }
.bh-2col--center { align-items:center; }
.bh-2col--1-2 { grid-template-columns:1fr 2fr; }
.bh-section-header { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:end; margin-bottom:64px; }

/* ━━━━━━━━━━━━━━━━━━━━━━
   COMPONENTS
━━━━━━━━━━━━━━━━━━━━━━ */
/* Stat cards */
.bh-stat-cards { display:flex; flex-direction:column; gap:20px; }
.bh-stat-card { background:var(--cream); border-radius:4px; padding:26px 30px; border-left:3px solid var(--gold); transition:transform 0.3s; }
.bh-stat-card:hover { transform:translateX(6px); }
.bh-stat-card__num { font-family:var(--serif); font-size:32px; font-weight:500; color:var(--gold); line-height:1; margin-bottom:6px; }
.bh-stat-card__desc { font-size:13px; font-weight:400; color:var(--stone); line-height:1.65; }

/* Division cards */
.bh-div-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(255,255,255,0.07); border:1px solid rgba(255,255,255,0.07); }
.bh-div-card { background:var(--ink); padding:44px 36px; position:relative; overflow:hidden; transition:background 0.35s; }
.bh-div-card:hover { background:var(--ink-2); }
.bh-div-card::after { content:''; position:absolute; bottom:0; left:0; right:0; height:2px; background:var(--gold); transform:scaleX(0); transform-origin:left; transition:transform 0.4s; }
.bh-div-card:hover::after { transform:scaleX(1); }
.bh-div-card__num { display:block; font-family:var(--serif); font-size:11px; color:rgba(255,255,255,0.18); letter-spacing:2px; margin-bottom:22px; }
.bh-div-card__icon { width:50px; height:50px; border:1px solid rgba(255,255,255,0.1); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:20px; margin-bottom:22px; transition:border-color 0.3s,background 0.3s; }
.bh-div-card:hover .bh-div-card__icon { border-color:var(--gold); background:var(--gold-dim); }
.bh-div-card h3 { font-family:var(--serif); font-size:19px; font-weight:500; color:var(--white); margin-bottom:12px; }
.bh-div-card p { font-size:13.5px; font-weight:300; line-height:1.75; color:rgba(255,255,255,0.42); margin-bottom:28px; }
.bh-div-card__link { display:inline-flex; align-items:center; gap:9px; font-size:10.5px; font-weight:500; letter-spacing:2px; text-transform:uppercase; color:rgba(255,255,255,0.28); transition:color 0.3s; }
.bh-div-card__link svg { transition:transform 0.3s; }
.bh-div-card:hover .bh-div-card__link { color:var(--gold-lt); }
.bh-div-card:hover .bh-div-card__link svg { transform:translateX(4px); }

/* Credentials bar */
.bh-creds-bar { background:var(--cream); padding:40px 6%; }
.bh-creds-bar__inner { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:28px; }
.bh-creds-bar__label { font-size:10px; letter-spacing:3px; text-transform:uppercase; color:var(--stone); font-weight:500; white-space:nowrap; }
.bh-creds-bar__divider { width:1px; height:32px; background:var(--ash); flex-shrink:0; }
.bh-cred { display:flex; flex-direction:column; align-items:center; gap:4px; text-align:center; }
.bh-cred__name { font-size:15px; font-weight:600; color:var(--ink); }
.bh-cred__sub { font-size:9.5px; letter-spacing:1.5px; text-transform:uppercase; color:var(--stone); }

/* Feature list */
.bh-features { display:flex; flex-direction:column; }
.bh-feature { display:flex; gap:28px; padding:32px 0; border-bottom:1px solid var(--line); transition:padding-left 0.3s; }
.bh-feature:first-child { border-top:1px solid var(--line); }
.bh-feature:hover { padding-left:6px; }
.bh-feature__num { font-family:var(--serif); font-size:40px; font-weight:400; color:var(--mist); line-height:1; min-width:56px; transition:color 0.3s; }
.bh-feature:hover .bh-feature__num { color:rgba(184,134,42,0.2); }
.bh-feature h4 { font-family:var(--serif); font-size:16px; font-weight:500; color:var(--ink); margin-bottom:8px; }
.bh-feature p { font-size:14px; font-weight:300; line-height:1.8; color:var(--stone); }

/* Quote card */
.bh-quote-card { background:var(--ink); border-radius:4px; padding:52px 44px; position:relative; }
.bh-quote-card::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:linear-gradient(90deg,var(--gold),var(--gold-lt)); border-radius:4px 4px 0 0; }
.bh-quote-card blockquote { font-family:var(--serif); font-size:22px; font-style:italic; color:var(--white); line-height:1.6; margin-bottom:28px; }
.bh-quote-card cite { font-size:10.5px; letter-spacing:2px; text-transform:uppercase; color:rgba(255,255,255,0.28); font-style:normal; }
.bh-mini-metrics { display:grid; grid-template-columns:1fr 1fr; gap:1px; background:rgba(255,255,255,0.06); margin-top:36px; }
.bh-mini-metric { background:rgba(255,255,255,0.025); padding:22px 18px; }
.bh-mini-metric__n { font-family:var(--serif); font-size:26px; font-weight:500; color:var(--gold-lt); line-height:1; margin-bottom:5px; }
.bh-mini-metric__l { font-size:10px; letter-spacing:1.5px; text-transform:uppercase; color:rgba(255,255,255,0.3); }

/* CTA Banner */
.bh-cta-banner { background:var(--gold); padding:80px 6%; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:32px; }
.bh-cta-banner h2 { font-family:var(--serif); font-size:clamp(24px,3vw,38px); font-weight:500; color:var(--ink); line-height:1.3; max-width:540px; }

/* About page */
.bh-vm-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:8px; }
.bh-vm-box { background:var(--cream); border-radius:4px; padding:28px 26px; border-top:2px solid var(--gold); }
.bh-vm-box h4 { font-family:var(--serif); font-size:18px; font-weight:500; color:var(--ink); margin-bottom:12px; }
.bh-vm-box p { font-size:13.5px; font-weight:300; line-height:1.8; color:var(--stone); }
.bh-values-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:0; border:1px solid rgba(255,255,255,0.06); margin-top:56px; }
.bh-value-item { padding:40px 30px; border-right:1px solid rgba(255,255,255,0.06); transition:background 0.3s; }
.bh-value-item:last-child { border-right:none; }
.bh-value-item:hover { background:rgba(255,255,255,0.03); }
.bh-value-item__icon { font-size:26px; margin-bottom:18px; display:block; }
.bh-value-item h4 { font-family:var(--serif); font-size:17px; font-weight:500; color:var(--white); margin-bottom:10px; }
.bh-value-item p { font-size:13px; font-weight:300; line-height:1.8; color:rgba(255,255,255,0.4); }
.bh-strength-list { display:flex; flex-direction:column; gap:16px; }
.bh-strength { padding:22px 26px; border:1px solid var(--line); border-radius:4px; border-left:3px solid var(--gold); }
.bh-strength h4 { font-size:14.5px; font-weight:500; color:var(--ink); margin-bottom:6px; }
.bh-strength p { font-size:13.5px; font-weight:300; color:var(--stone); line-height:1.75; }

/* Division blocks */
.bh-division-block { padding:96px 6%; border-bottom:1px solid var(--line); display:grid; grid-template-columns:280px 1fr; gap:72px; align-items:start; }
.bh-division-block:nth-child(even) { background:var(--cream); }
.bh-division-sidebar { position:sticky; top:100px; }
.bh-division-sidebar__num { font-family:var(--serif); font-size:60px; font-weight:400; color:var(--mist); line-height:1; display:block; margin-bottom:10px; }
.bh-division-sidebar__icon { font-size:30px; display:block; margin-bottom:14px; }
.bh-division-sidebar h2 { font-family:var(--serif); font-size:22px; font-weight:500; color:var(--ink); line-height:1.3; margin-bottom:14px; }
.bh-division-sidebar__tag { display:inline-block; font-size:9.5px; font-weight:500; letter-spacing:2.5px; text-transform:uppercase; color:var(--gold); background:var(--gold-dim); padding:5px 11px; border-radius:2px; }
.bh-division-body { display:flex; flex-direction:column; gap:36px; }
.bh-products-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.bh-product-card { background:var(--white); border:1px solid var(--line); border-radius:4px; padding:20px 18px; transition:border-color 0.25s,transform 0.25s,box-shadow 0.25s; }
.bh-product-card:hover { border-color:var(--gold); transform:translateY(-3px); box-shadow:0 8px 24px rgba(11,21,32,0.07); }
.bh-product-card h5 { font-size:13.5px; font-weight:500; color:var(--ink); margin-bottom:5px; }
.bh-product-card p { font-size:12px; font-weight:300; color:var(--stone); line-height:1.6; }
.bh-division-block:nth-child(even) .bh-product-card { background:var(--white); }
.bh-vp-box { background:var(--ink); border-radius:4px; padding:28px 30px; border-left:2px solid var(--gold); }
.bh-vp-box h4 { font-size:10px; letter-spacing:2.5px; text-transform:uppercase; color:var(--gold-lt); font-weight:500; margin-bottom:12px; }
.bh-vp-box p { font-size:14px; font-weight:300; line-height:1.8; color:rgba(255,255,255,0.52); }
.bh-tags { display:flex; flex-wrap:wrap; gap:8px; }
.bh-tag { font-size:11.5px; font-weight:400; padding:5px 13px; background:var(--cream); border:1px solid var(--ash); border-radius:2px; color:var(--stone); }
.bh-division-block:nth-child(even) .bh-tag { background:var(--white); }

/* Supply chain */
.bh-process { display:flex; flex-direction:column; }
.bh-process-step { display:flex; gap:28px; padding:28px 0; border-bottom:1px solid var(--line); }
.bh-process-step__num { width:46px; height:46px; min-width:46px; background:var(--gold-dim); border:1px solid var(--gold); border-radius:50%; display:flex; align-items:center; justify-content:center; font-family:var(--serif); font-size:14px; color:var(--gold); font-weight:500; }
.bh-process-step h4 { font-family:var(--serif); font-size:16px; font-weight:500; color:var(--ink); margin-bottom:8px; }
.bh-process-step p { font-size:14px; font-weight:300; line-height:1.8; color:var(--stone); }
.bh-cert-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:56px; }
.bh-cert-card { background:var(--ink); border-radius:4px; padding:28px 24px; text-align:center; border-top:2px solid var(--gold); }
.bh-cert-card__name { font-family:var(--serif); font-size:19px; font-weight:500; color:var(--gold-lt); margin-bottom:8px; }
.bh-cert-card__desc { font-size:12px; font-weight:300; color:rgba(255,255,255,0.42); line-height:1.55; }

/* Global reach */
.bh-regions { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:var(--line); }
.bh-region { background:var(--white); padding:48px 40px; transition:background 0.3s; }
.bh-region:hover { background:var(--cream); }
.bh-region__header { display:flex; align-items:flex-start; justify-content:space-between; margin-bottom:16px; }
.bh-region h3 { font-family:var(--serif); font-size:21px; font-weight:500; color:var(--ink); margin-bottom:10px; }
.bh-region__flags { font-size:22px; }
.bh-region p { font-size:14px; font-weight:300; line-height:1.8; color:var(--stone); margin-bottom:20px; }
.bh-trade-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:56px; }
.bh-trade-card { background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.07); border-radius:4px; padding:28px 22px; }
.bh-trade-card h4 { font-size:10px; letter-spacing:2.5px; text-transform:uppercase; color:var(--gold-lt); font-weight:500; margin-bottom:12px; }
.bh-trade-card p { font-size:13.5px; font-weight:300; line-height:1.8; color:rgba(255,255,255,0.48); }

/* Contact */
.bh-contact-wrapper { padding:96px 6%; background:var(--cream); display:grid; grid-template-columns:1fr 1.6fr; gap:72px; align-items:start; }
.bh-contact-info { position:sticky; top:100px; }
.bh-contact-info__block { margin-bottom:28px; }
.bh-contact-info__label { display:block; font-size:10px; letter-spacing:3px; text-transform:uppercase; color:var(--stone); font-weight:500; margin-bottom:8px; }
.bh-contact-info__value { font-size:16px; font-weight:400; color:var(--ink); line-height:1.7; }
.bh-contact-info__value a { color:var(--ink); transition:color 0.2s; }
.bh-contact-info__value a:hover { color:var(--gold); }
.bh-reg-box { background:var(--white); border-radius:4px; padding:22px 26px; border:1px solid var(--line); margin-top:28px; }
.bh-reg-box h4 { font-size:10px; letter-spacing:2.5px; text-transform:uppercase; color:var(--stone); margin-bottom:10px; font-weight:500; }
.bh-reg-box p { font-size:13px; line-height:1.75; color:var(--stone); }
.bh-form-card { background:var(--white); border-radius:4px; padding:52px 48px; border:1px solid var(--line); box-shadow:0 4px 40px rgba(11,21,32,0.04); }
.bh-form-card h3 { font-family:var(--serif); font-size:28px; font-weight:500; color:var(--ink); margin-bottom:8px; }
.bh-form-card__sub { font-size:14px; font-weight:300; color:var(--stone); line-height:1.75; margin-bottom:40px; }
.bh-form-row { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-bottom:18px; }
.bh-fg { display:flex; flex-direction:column; gap:7px; margin-bottom:18px; }
.bh-fg label { font-size:10.5px; font-weight:500; letter-spacing:1.5px; text-transform:uppercase; color:var(--stone); }
.bh-fg input, .bh-fg select, .bh-fg textarea { font-family:var(--sans); font-size:14.5px; font-weight:300; color:var(--ink); background:var(--cream); border:1px solid var(--mist); border-radius:var(--r); padding:13px 16px; outline:none; width:100%; resize:none; transition:border-color 0.25s,background 0.25s; appearance:none; }
.bh-fg input:focus, .bh-fg select:focus, .bh-fg textarea:focus { border-color:var(--gold); background:var(--white); }
.bh-form-footer { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px; margin-top:8px; }
.bh-form-note { font-size:12px; font-weight:300; color:var(--stone); line-height:1.6; max-width:220px; }

/* Footer */
.bh-footer { background:var(--ink); padding:80px 6% 36px; border-top:1px solid rgba(255,255,255,0.04); }
.bh-footer__gold-rule { height:1px; background:linear-gradient(90deg,var(--gold),transparent); opacity:0.3; margin-bottom:64px; }
.bh-footer__grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:56px; margin-bottom:56px; }
.bh-footer__brand { display:flex; flex-direction:column; gap:18px; }
.bh-footer__logo { display:inline-flex; align-items:center; gap:12px; }
.bh-footer__logo img { height:34px; width:34px; object-fit:contain; filter:none}
.bh-footer__logo-name { font-family:var(--serif); font-size:15px; font-weight:500; color:var(--white); display:block; }
.bh-footer__logo-sub { font-size:9px; letter-spacing:3px; text-transform:uppercase; color:rgba(255,255,255,0.28); display:block; }
.bh-footer__brand p { font-size:13px; font-weight:300; line-height:1.9; color:rgba(255,255,255,0.32); max-width:280px; }
.bh-footer__col h5 { font-size:9.5px; letter-spacing:3px; text-transform:uppercase; color:rgba(255,255,255,0.28); font-weight:500; margin-bottom:18px; }
.bh-footer__col ul { list-style:none; display:flex; flex-direction:column; gap:11px; }
.bh-footer__col a { font-size:13.5px; font-weight:300; color:rgba(255,255,255,0.48); transition:color 0.2s; }
.bh-footer__col a:hover { color:var(--gold-lt); }
.bh-footer__bottom { padding-top:24px; border-top:1px solid rgba(255,255,255,0.06); display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px; }
.bh-footer__bottom p, .bh-footer__bottom a { font-size:11.5px; font-weight:300; color:rgba(255,255,255,0.22); transition:color 0.2s; }
.bh-footer__bottom a:hover { color:rgba(255,255,255,0.5); }
.bh-footer__links { display:flex; gap:24px; flex-wrap:wrap; }

/* Scroll reveal */
.bh-reveal { opacity:0; transform:translateY(28px); transition:opacity 0.85s cubic-bezier(.25,.46,.45,.94), transform 0.85s cubic-bezier(.25,.46,.45,.94); }
.bh-reveal.in { opacity:1; transform:translateY(0); }
.bh-d1 { transition-delay:0.1s; }
.bh-d2 { transition-delay:0.2s; }
.bh-d3 { transition-delay:0.3s; }
.bh-d4 { transition-delay:0.4s; }

/* ━━━━━━━━━━━━━━━━━━━━━━
   RESPONSIVE
━━━━━━━━━━━━━━━━━━━━━━ */
@media (max-width:1100px) {
  .bh-div-grid { grid-template-columns:repeat(2,1fr); }
  .bh-values-grid { grid-template-columns:repeat(2,1fr); }
  .bh-trade-grid { grid-template-columns:repeat(2,1fr); }
  .bh-footer__grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:900px) {
  .bh-2col, .bh-2col--1-2 { grid-template-columns:1fr; gap:48px; }
  .bh-section-header { grid-template-columns:1fr; }
  .bh-division-block { grid-template-columns:1fr; }
  .bh-division-sidebar { position:static; }
  .bh-products-grid { grid-template-columns:repeat(2,1fr); }
  .bh-regions { grid-template-columns:1fr; }
  .bh-hero-stats { display:none; }
  .bh-contact-wrapper { grid-template-columns:1fr; }
  .bh-contact-info { position:static; }
}
@media (max-width:768px) {
  .bh-nav__links { display:none; }
  .bh-nav__hamburger { display:flex; }
}
@media (max-width:640px) {
  .bh-section { padding:72px 5%; }
  .bh-div-grid { grid-template-columns:1fr; }
  .bh-products-grid { grid-template-columns:1fr; }
  .bh-cert-grid { grid-template-columns:1fr 1fr; }
  .bh-values-grid { grid-template-columns:1fr; }
  .bh-vm-grid { grid-template-columns:1fr; }
  .bh-trade-grid { grid-template-columns:1fr 1fr; }
  .bh-form-row { grid-template-columns:1fr; }
  .bh-cta-banner { flex-direction:column; }
  .bh-footer__grid { grid-template-columns:1fr; }
  .bh-form-card { padding:32px 24px; }
  .bh-creds-bar__divider { display:none; }
  .bh-contact-wrapper { padding:64px 5%; }
}


