
/* ── DESIGN SYSTEM (matches homepage) ── */
:root {
  --dark:       #08131e;
  --deep:       #0c1e30;
  --river:      #0f2a40;
  --river-mid:  #163550;
  --teal:       #1a7fa8;
  --teal-light: #2799c8;
  --gold:       #D4A84B;
  --gold-light: #ECC76A;
  --cream:      #F5F1E8;
  --white:      #ffffff;
  --mist:       #8fa8be;
  --text-muted: #bccfdf;
  --radius:     6px;
  --radius-lg:  14px;
  --shadow:     0 12px 50px rgba(0,0,0,.4);
  --transition: .35s cubic-bezier(.4,0,.2,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;background:var(--dark);color:var(--cream);overflow-x:hidden;line-height:1.65}
::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:var(--dark)}::-webkit-scrollbar-thumb{background:var(--gold);border-radius:3px}
h1,h2,h3,h4{font-family:'Playfair Display',serif;line-height:1.15}
h1{font-size:clamp(2.4rem,5vw,4.5rem);font-weight:900}
h2{font-size:clamp(1.8rem,3vw,2.8rem);font-weight:700}
h3{font-size:clamp(1.1rem,2vw,1.45rem);font-weight:600}
p{font-weight:300}
a{text-decoration:none;color:inherit}
.container{width:92%;max-width:1220px;margin:0 auto}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:.68rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem}
.eyebrow::before{content:'';width:26px;height:1.5px;background:var(--gold)}
.btn{display:inline-flex;align-items:center;gap:8px;padding:.85rem 2rem;border-radius:var(--radius);font-family:'DM Sans',sans-serif;font-size:.88rem;font-weight:700;letter-spacing:.04em;cursor:pointer;border:none;transition:var(--transition)}
.btn-gold{background:var(--gold);color:var(--dark)}.btn-gold:hover{background:var(--gold-light);transform:translateY(-2px);box-shadow:0 10px 30px rgba(212,168,75,.4)}
.btn-outline{background:transparent;color:var(--white);border:1.5px solid rgba(255,255,255,.3)}.btn-outline:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-2px)}
@keyframes fadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes shimmer{0%,100%{opacity:.6}50%{opacity:1}}
@keyframes ripple{0%{transform:scale(.8);opacity:.9}100%{transform:scale(2.2);opacity:0}}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}
.reveal.visible{opacity:1;transform:translateY(0)}

/* ── NAV (identical to homepage) ── */
#nav{position:sticky;top:0;left:0;right:0;z-index:999;padding:1rem 0;background:rgba(8,19,30,.6);backdrop-filter:blur(20px);transition:background .4s,padding .4s,box-shadow .4s}
#nav.scrolled{background:rgba(8,19,30,.97);padding:.65rem 0;box-shadow:0 2px 30px rgba(0,0,0,.7)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem}
.nav-logo{display:flex;align-items:center;gap:12px}
.logo-emblem{width:42px;height:42px;border-radius:10px;background:linear-gradient(135deg,var(--gold),#a8771e);display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;letter-spacing:.04em;color:var(--dark);flex-shrink:0}
.logo-text .top{font-family:'Playfair Display',serif;font-size:1.25rem;font-weight:700;color:var(--white)}
.logo-text .sub{font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-weight:600}
.nav-links{display:flex;align-items:center;gap:2rem;list-style:none}
.nav-links a{font-size:.84rem;font-weight:500;color:var(--text-muted);transition:color .25s;position:relative}
.nav-links a::after{content:'';position:absolute;bottom:-3px;left:0;width:0;height:1.5px;background:var(--gold);transition:width .3s}
.nav-links a:hover,.nav-links a.active{color:var(--white)}.nav-links a:hover::after,.nav-links a.active::after{width:100%}
.nav-right{display:flex;align-items:center;gap:1rem}
.nav-phone{display:flex;align-items:center;gap:6px;font-size:.82rem;font-weight:700;color:var(--gold)}
.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px}
.hamburger span{display:block;width:24px;height:2px;background:var(--white);border-radius:2px;transition:var(--transition)}
#mobile-menu{display:none;position:fixed;inset:0;z-index:998;background:var(--dark);padding:7rem 2rem 3rem;flex-direction:column;gap:.5rem}
#mobile-menu.open{display:flex}
#mobile-menu a{font-family:'Playfair Display',serif;font-size:1.8rem;color:var(--cream);padding:.8rem 0;border-bottom:1px solid rgba(255,255,255,.07)}
#mobile-menu a:hover{color:var(--gold)}

/* ── PAGE HERO ── */
#page-hero{
  position:relative;padding:10rem 0 5rem;
  overflow:hidden;
  background:
    linear-gradient(160deg,rgba(8,19,30,.98) 0%,rgba(15,42,64,.85) 60%,rgba(8,19,30,.95) 100%),
    url('/assets/images/editorial-1558618666-fcd25c85cd64-20261009.avif') center/cover no-repeat;
}
#page-hero::after{content:'';position:absolute;bottom:0;left:0;right:0;height:120px;background:linear-gradient(to top,var(--dark),transparent)}
.hero-accent-line{position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--teal),var(--gold),var(--teal),transparent);animation:shimmer 4s ease infinite;z-index:2}

/* Large decorative BHB watermark */
.page-watermark{position:absolute;right:-60px;top:50%;transform:translateY(-50%);font-family:'Playfair Display',serif;font-size:20vw;font-weight:900;color:rgba(255,255,255,.025);line-height:1;pointer-events:none;letter-spacing:-.05em}

.breadcrumb{display:flex;align-items:center;gap:.5rem;font-size:.72rem;color:var(--mist);margin-bottom:1.8rem;animation:fadeIn .8s ease both}
.breadcrumb a{color:var(--mist);transition:color .25s}.breadcrumb a:hover{color:var(--gold)}
.breadcrumb span{color:var(--gold)}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(26,127,168,.15);border:1px solid rgba(26,127,168,.4);padding:.4rem 1rem;border-radius:100px;font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--teal-light);margin-bottom:1.4rem;animation:fadeIn .8s ease .1s both}
#page-hero h1{animation:fadeUp .9s ease .2s both;margin-bottom:.4em}
#page-hero h1 em{font-style:italic;color:var(--gold)}
.hero-desc{font-size:clamp(1rem,1.6vw,1.15rem);color:var(--text-muted);max-width:600px;line-height:1.75;animation:fadeUp .9s ease .4s both;margin-bottom:2.5rem}
.hero-bottom{display:flex;align-items:center;flex-wrap:wrap;gap:2rem;padding-top:2.2rem;border-top:1px solid rgba(255,255,255,.07);animation:fadeUp .9s ease .6s both}
.hero-stat .n{font-family:'Playfair Display',serif;font-size:2rem;font-weight:900;color:var(--gold);line-height:1}
.hero-stat .l{font-size:.72rem;color:var(--mist);margin-top:.2rem}

/* ── STORY SECTION ── */
#story{padding:6rem 0}
.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.story-image{position:relative}
.story-frame{border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:3/4;background:var(--river);box-shadow:var(--shadow)}
.story-frame img{width:100%;height:100%;object-fit:cover}
.story-frame::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,transparent 60%,rgba(8,19,30,.7))}

/* Floating quote card */
.story-quote{
  position:absolute;bottom:-2rem;right:-2rem;
  background:var(--dark);border:1px solid rgba(212,168,75,.3);
  border-radius:var(--radius-lg);padding:1.6rem;
  max-width:260px;box-shadow:0 15px 40px rgba(0,0,0,.5);
}
.story-quote .q-mark{font-family:'Playfair Display',serif;font-size:3rem;color:var(--gold);opacity:.4;line-height:.6;margin-bottom:.6rem}
.story-quote p{font-size:.82rem;color:var(--text-muted);font-style:italic;line-height:1.65}
.story-quote .attr{font-size:.72rem;color:var(--gold);font-weight:600;margin-top:.8rem;letter-spacing:.05em}

.story-text h2{margin-bottom:1.2rem}
.story-text h2 em{color:var(--gold);font-style:italic;display:block}
.story-text p{color:var(--text-muted);margin-bottom:1.2rem;font-size:.98rem;line-height:1.8}

/* BHB callout */
.bhb-callout{
  display:flex;align-items:flex-start;gap:1rem;
  background:rgba(212,168,75,.06);border:1px solid rgba(212,168,75,.2);
  border-radius:var(--radius);padding:1.2rem;margin:1.6rem 0;
}
.bhb-letters{font-family:'Playfair Display',serif;font-size:1.8rem;font-weight:900;color:var(--gold);letter-spacing:.1em;line-height:1;flex-shrink:0}
.bhb-callout p{font-size:.85rem;color:var(--text-muted);margin:0;line-height:1.65}

/* ── TIMELINE ── */
#timeline{padding:6rem 0;background:var(--deep)}
.timeline-wrap{position:relative;max-width:900px;margin:3rem auto 0}
.timeline-line{position:absolute;left:50%;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,transparent,rgba(26,127,168,.4),rgba(212,168,75,.4),transparent);transform:translateX(-50%)}
.tl-item{display:grid;grid-template-columns:1fr auto 1fr;gap:2rem;align-items:center;margin-bottom:3rem;position:relative}
.tl-item:last-child{margin-bottom:0}
.tl-left{text-align:right}
.tl-right{text-align:left}
.tl-blank{/* empty side */}
.tl-node{width:48px;height:48px;border-radius:50%;background:var(--river);border:2px solid rgba(26,127,168,.5);display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:1;font-size:1.1rem}
.tl-node::before{content:'';position:absolute;inset:-5px;border-radius:50%;border:1px solid rgba(212,168,75,.2)}
.tl-year{font-family:'Playfair Display',serif;font-size:.78rem;font-weight:700;color:var(--gold);letter-spacing:.1em;margin-bottom:.3rem}
.tl-title{font-family:'Playfair Display',serif;font-size:1.05rem;font-weight:700;margin-bottom:.3rem}
.tl-desc{font-size:.82rem;color:var(--mist);line-height:1.6}

/* ── VALUES ── */
#values{padding:6rem 0}
.values-header{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;margin-bottom:4rem}
.values-header p{color:var(--mist);font-size:.98rem;line-height:1.8}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.value-card{padding:2rem;border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.025);transition:var(--transition);position:relative;overflow:hidden}
.value-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--teal),var(--gold));transform:scaleX(0);transform-origin:left;transition:transform .4s}
.value-card:hover{border-color:rgba(26,127,168,.3);transform:translateY(-4px)}.value-card:hover::after{transform:scaleX(1)}
.value-icon{font-size:2rem;margin-bottom:1rem}
.value-num{position:absolute;top:1rem;right:1.2rem;font-family:'Playfair Display',serif;font-size:3.5rem;font-weight:900;color:rgba(255,255,255,.04);line-height:1}
.value-card h3{font-size:1.15rem;margin-bottom:.6rem}
.value-card p{font-size:.84rem;color:var(--mist);line-height:1.65}

/* ── TEAM ── */
#team{padding:6rem 0;background:var(--deep)}
.team-intro{text-align:center;max-width:600px;margin:0 auto 3.5rem}
.team-intro p{color:var(--mist);margin-top:.8rem}
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.team-card{text-align:center;padding:2rem 1.5rem;border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.025);transition:var(--transition)}
.team-card:hover{border-color:rgba(212,168,75,.25);transform:translateY(-4px)}
.team-avatar{width:90px;height:90px;border-radius:50%;margin:0 auto 1.2rem;border:2px solid rgba(212,168,75,.3);overflow:hidden;background:linear-gradient(135deg,var(--teal),var(--river-mid));display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:2.2rem;font-weight:700;color:var(--white)}
.team-card h3{font-size:1.15rem;margin-bottom:.2rem}
.team-card .role{font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:.8rem}
.team-card p{font-size:.82rem;color:var(--mist);line-height:1.6}

/* ── PROMISE STRIP ── */
#promise{padding:5rem 0;background:linear-gradient(135deg,var(--river),var(--river-mid));border-top:1px solid rgba(26,127,168,.2);border-bottom:1px solid rgba(26,127,168,.2)}
.promise-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;text-align:center}
.promise-item .p-icon{font-size:2.2rem;margin-bottom:.8rem}
.promise-item h3{font-family:'Playfair Display',serif;font-size:1.05rem;margin-bottom:.4rem}
.promise-item p{font-size:.8rem;color:var(--mist)}

/* ── LOCATION ── */
#location{padding:6rem 0}
.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.location-map{border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:4/3;background:var(--river-mid);position:relative;box-shadow:var(--shadow)}
.map-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;background:linear-gradient(135deg,var(--river),var(--river-mid))}
.map-pin{font-size:3rem;animation:shimmer 2.5s ease infinite}
.map-address{font-size:.88rem;color:var(--text-muted);text-align:center;line-height:1.6}
.map-address strong{color:var(--cream);display:block;font-size:1rem;margin-bottom:.3rem}

.location-text h2{margin-bottom:1rem}
.location-text h2 em{color:var(--gold);font-style:italic;display:block}
.location-text p{color:var(--text-muted);margin-bottom:1.2rem;font-size:.98rem}
.location-details{display:flex;flex-direction:column;gap:.9rem;margin:1.5rem 0}
.loc-detail{display:flex;align-items:flex-start;gap:.9rem}
.loc-icon{width:38px;height:38px;border-radius:9px;flex-shrink:0;background:rgba(26,127,168,.1);border:1px solid rgba(26,127,168,.25);display:flex;align-items:center;justify-content:center;font-size:.95rem}
.loc-detail h3{font-family:'DM Sans',sans-serif;font-size:.88rem;font-weight:700;margin-bottom:.15rem}
.loc-detail p{font-size:.82rem;color:var(--mist);margin:0}

/* ── CTA ── */
#about-cta{padding:5rem 0;text-align:center;background:var(--deep);position:relative;overflow:hidden}
#about-cta::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 90% at 50% 50%,rgba(26,127,168,.08),transparent)}
#about-cta h2{position:relative;margin-bottom:.7rem}
#about-cta p{color:var(--mist);max-width:520px;margin:0 auto 2.5rem;position:relative}
.cta-btns{display:flex;justify-content:center;flex-wrap:wrap;gap:1rem;position:relative}

/* ── FOOTER (identical to homepage) ── */
footer{background:#05101a;padding:4rem 0 0;border-top:1px solid rgba(255,255,255,.05)}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr;gap:3rem;margin-bottom:3rem}
.footer-brand .fb-name{font-family:'Playfair Display',serif;font-size:1.5rem;font-weight:700;color:var(--white);margin-bottom:.2rem}
.footer-brand .fb-bhb{display:inline-block;font-size:.6rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:.5rem}
.footer-brand .fb-sub{font-size:.78rem;color:var(--teal-light);font-style:italic;margin-bottom:1rem}
.footer-brand p{font-size:.83rem;color:var(--mist);line-height:1.7;margin-bottom:1.3rem}
.footer-contact a{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:var(--mist);margin-bottom:.5rem;transition:color .25s}
.footer-contact a:hover{color:var(--gold)}
.footer-col h3{font-family:'DM Sans',sans-serif;font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--teal-light);margin-bottom:1.2rem}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:.55rem}
.footer-links a{font-size:.82rem;color:var(--mist);transition:color .25s}.footer-links a:hover{color:var(--cream)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.05);padding:1.4rem 0;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;font-size:.75rem;color:var(--mist)}
.footer-bottom a{color:var(--mist);transition:color .25s}.footer-bottom a:hover{color:var(--gold)}

/* FLOAT PHONE */
.float-phone{position:fixed;bottom:1.5rem;right:1.5rem;z-index:990;background:var(--gold);color:var(--dark);width:56px;height:56px;border-radius:50%;display:none;align-items:center;justify-content:center;font-size:1.3rem;box-shadow:0 4px 20px rgba(212,168,75,.5);transition:transform .25s}
.float-phone:hover{transform:scale(1.1)}
.float-phone::before{content:'';position:absolute;inset:0;border-radius:50%;border:2px solid var(--gold);opacity:.5;animation:ripple 2.2s ease infinite}

@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
/* TOP BAR */
#top-bar{background:linear-gradient(90deg,var(--river-mid),var(--river),var(--river-mid));border-bottom:1px solid rgba(212,168,75,.2);padding:.52rem 0;font-size:.72rem;font-weight:600;overflow:hidden;position:relative;z-index:1000}
.top-bar-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem}
.top-bar-ticker{overflow:hidden;flex:1}.top-bar-track{display:flex;gap:3rem;white-space:nowrap;animation:marquee 32s linear infinite}
.top-bar-track span{display:flex;align-items:center;gap:.5rem;color:var(--text-muted)}
.top-bar-track em{color:var(--gold);font-style:normal;font-weight:700}
.top-bar-right{display:flex;align-items:center;gap:1.2rem;flex-shrink:0}
.top-bar-right a{color:var(--gold);font-weight:700;display:flex;align-items:center;gap:.4rem}
.tb-badge{background:var(--gold);color:var(--dark);padding:.18rem .65rem;border-radius:100px;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
/* RESPONSIVE */
@media(max-width:1024px){.story-grid{gap:3rem}.values-grid{grid-template-columns:repeat(2,1fr)}.team-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.values-header{grid-template-columns:1fr}.promise-grid{grid-template-columns:repeat(2,1fr)}.location-grid{gap:3rem}}
@media(max-width:768px){.top-bar-ticker{display:none}.top-bar-right{width:100%;justify-content:center}.nav-links,.nav-phone{display:none}.hamburger{display:flex}.float-phone{display:flex}.story-grid{grid-template-columns:1fr}.location-grid{grid-template-columns:1fr}.story-quote{position:static;margin-top:1.5rem;max-width:100%}.timeline-line{display:none}.tl-item{grid-template-columns:1fr;gap:1rem}.tl-left{text-align:left}.team-grid{grid-template-columns:1fr}.values-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:2rem}.page-watermark{display:none}}
@media(max-width:480px){.promise-grid{grid-template-columns:1fr}.hero-bottom{gap:1.2rem}}

/* ── DROPDOWN MENUS ── */
.nav-links li{position:relative}
.has-dropdown>a{display:flex;align-items:center;gap:5px}
.has-dropdown>a::after{content:'';display:inline-block;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid currentColor;vertical-align:middle;opacity:.5;transition:transform .25s;flex-shrink:0}
.has-dropdown:hover>a::after{transform:rotate(180deg)}
.dropdown{position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-50%) translateY(-8px);background:rgba(8,19,30,.98);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);padding:.6rem 0;min-width:230px;box-shadow:0 24px 60px rgba(0,0,0,.6);opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s,transform .25s;z-index:997}
.has-dropdown:hover .dropdown{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.dropdown a{display:flex;align-items:center;gap:.6rem;padding:.55rem 1.3rem;font-size:.8rem;font-weight:500;color:var(--text-muted);white-space:nowrap;transition:color .2s,background .2s}
.dropdown a:hover{color:var(--gold);background:rgba(212,168,75,.06)}
.dropdown a::before{content:'→';font-size:.7rem;color:var(--gold);opacity:0;transition:opacity .2s}
.dropdown a:hover::before{opacity:1}
.dropdown-divider{height:1px;background:rgba(255,255,255,.06);margin:.4rem 0}
.dropdown-label{font-size:.64rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--mist);padding:.3rem 1.3rem;display:block}

/* ── PHONE RING ANIMATION ── */
@keyframes phone-ring {
  0%,60%,100%{transform:rotate(0) scale(1)}
  65%{transform:rotate(-18deg) scale(1.15)}
  70%{transform:rotate(18deg) scale(1.15)}
  75%{transform:rotate(-13deg) scale(1.1)}
  80%{transform:rotate(13deg) scale(1.1)}
  85%{transform:rotate(-8deg)}
  90%{transform:rotate(8deg)}
  95%{transform:rotate(-3deg)}
}
.nav-phone svg,.nav-phone .ring-svg{
  animation:phone-ring 5s ease-in-out infinite;
  transform-origin:top center;
  display:inline-block;
}
.nav-phone{
  display:flex;align-items:center;gap:6px;
  font-weight:700;font-size:.8rem;letter-spacing:.04em;
  color:var(--gold);padding:.38rem .85rem;
  border:1.5px solid rgba(212,168,75,.35);
  border-radius:999px;
  transition:background .25s,border-color .25s;
}
.nav-phone:hover{background:rgba(212,168,75,.1);border-color:var(--gold)}
.nav-phone .call-label{color:var(--gold)}
.float-phone svg{
  animation:phone-ring 6s ease-in-out infinite;
  transform-origin:top center;
}


@font-face{font-family:'DM Sans';font-style:normal;font-weight:100 1000;font-display:swap;src:url('/assets/fonts/dm-sans-20261009.woff2') format('woff2')}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:400 900;font-display:swap;src:url('/assets/fonts/playfair-regular-20261009.woff2') format('woff2')}
@font-face{font-family:'Playfair Display';font-style:italic;font-weight:400 900;font-display:swap;src:url('/assets/fonts/playfair-italic-v2-20261009.woff2') format('woff2')}
:root{--gold:#d4a84b;--gold-light:#ebca84;--dark:#08131e;--cream:#f7f1e6;--mist:#aab8c5;--text-muted:#c6d1da;--radius:6px;--radius-lg:14px;--transition:all .22s ease;--shadow:0 22px 64px #0005}
html{scroll-behavior:smooth;scroll-padding-top:100px}body{font-family:'DM Sans',sans-serif;background:#08131e;color:#f7f1e6;-webkit-font-smoothing:antialiased;line-height:1.7}
::selection{background:#d4a84b;color:#08131e}a,button,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #ebca84;outline-offset:5px}
h1,h2,h3,h4{font-family:'Playfair Display',serif}h1{letter-spacing:-.035em;line-height:1.06}h2{letter-spacing:-.025em;line-height:1.15}p{font-weight:400}.container{max-width:1240px}
#top-bar{background:#050e17;border-bottom:1px solid #d4a84b20;font-size:.74rem;min-height:38px}.top-bar-ticker{overflow:hidden}.bhb-announcement{font-size:.72rem;letter-spacing:.045em;color:#c6d1da;white-space:nowrap;display:block;padding:.45rem 0}.bhb-announcement b{color:#ebca84;font-weight:600}.tb-badge{border-color:#d4a84b40;background:#d4a84b12;color:#ebca84}
#nav{background:#08131eee;border-bottom:1px solid #ffffff0d;padding:1rem 0;box-shadow:none;backdrop-filter:blur(14px)}#nav.scrolled{background:#08131ef8;box-shadow:0 12px 30px #0002}.nav-inner{gap:1.3rem}.nav-links{gap:1.5rem}.nav-links a{font-size:.81rem;color:#c6d1da}.logo-emblem{background:linear-gradient(145deg,#f0d294,#b98b37);border:1px solid #f0d29480;border-radius:7px;box-shadow:0 4px 15px #0002}.logo-text .top{letter-spacing:-.015em}.logo-text .sub{letter-spacing:.16em;font-size:.58rem}.dropdown{border:1px solid #d4a84b35!important;background:#0b1928!important;box-shadow:0 22px 60px #0007!important;border-radius:12px!important}.has-dropdown:focus-within .dropdown{opacity:1;visibility:visible;transform:none;pointer-events:auto}
.btn,.f-submit{min-height:48px;border-radius:6px;font-weight:650;letter-spacing:.02em}.btn-gold,.f-submit{background:linear-gradient(120deg,#e8c57e,#d4a84b);color:#08131e;box-shadow:0 6px 18px #0002}.btn-gold:hover,.f-submit:hover{background:#edcf93;box-shadow:0 9px 28px #d4a84b20;transform:translateY(-2px)}.btn-outline{border:1px solid #ffffff45;background:#08131e24}.btn-outline:hover{border-color:#d4a84b}
.page-hero{min-height:640px;min-height:min(82vh,820px)}.hero-content{padding:5.5rem 0 5rem;max-width:810px}.hero-desc{font-weight:400;color:#d5dee6;max-width:640px;line-height:1.8}.hero-badge{background:#d4a84b0d;border-color:#d4a84b50;color:#ebca84;border-radius:4px;font-size:.67rem;letter-spacing:.12em}.breadcrumb{line-height:1.6;flex-wrap:wrap}.breadcrumb a{color:#c1cbd4}.hero-usps{border-color:#d4a84b30}.hero-usp{color:#d0d9e2}.accent-line{background:linear-gradient(90deg,transparent,#d4a84b80,#d4a84b,transparent);animation:none}.eyebrow{font-size:.67rem;letter-spacing:.19em}.section-head p{max-width:660px;line-height:1.8}.post-hero-content h1{letter-spacing:-.035em;font-weight:700}.post-content,.article-body{line-height:1.85}.post-content p,.article-body p{font-weight:400;color:#c6d1da}.post-content h2,.article-body h2{margin-top:2.4rem}
#trust{background:#0c1b2a;border-top-color:#d4a84b20;border-bottom-color:#d4a84b20}.trust-item{font-size:.75rem;letter-spacing:.025em}.trust-inner{gap:1.2rem 2rem}.bhb-line-icon{width:25px;height:25px;stroke:#d4a84b;stroke-width:1.55;fill:none;vertical-align:middle;flex-shrink:0}
.svc-card,.vehicle-card,.fleet-tile,.benefit-card,.uc-card,.area-card,.spec-card,.scenario-card,.price-card,.venue-card,.post-card,.blog-card,.route-card,.customer-card,.tc-card{border:1px solid #ffffff12;border-radius:14px;background:linear-gradient(140deg,#102233,#0b1928);box-shadow:0 10px 28px #0001;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.svc-card:hover,.vehicle-card:hover,.area-card:hover,.post-card:hover,.blog-card:hover,.route-card:hover{border-color:#d4a84b65;transform:translateY(-3px);box-shadow:0 18px 38px #0003}.svc-card::after{background:#d4a84b}.vc-img img,.post-img img,.card-img img,.fleet-tile img{transition:transform .4s ease}.vehicle-card:hover img,.post-card:hover img{transform:scale(1.025)}.vc-feat,.svc-card p,.bc-desc,.uc-card p{color:#bac7d3}.img-frame,.img-wrap{border-radius:14px}.img-frame{border:1px solid #d4a84b25}.price{color:#e8c57e}
.quote-box,.form-card,.contact-form{background:linear-gradient(135deg,#112435,#0b1928);border:1px solid #d4a84b35;border-radius:16px;box-shadow:0 25px 70px #0003}.quote-box{padding:2.5rem}.f-group label{font-size:.69rem;color:#c9d4de;letter-spacing:.08em}.f-group input,.f-group select,.f-group textarea{background:#07131f;border:1px solid #ffffff24;border-radius:6px;font-size:.92rem;color:#f7f1e6;min-height:46px}.f-group textarea{min-height:110px}.f-group input::placeholder,.f-group textarea::placeholder{color:#8f9fac}.f-group input:focus,.f-group select:focus,.f-group textarea:focus{border-color:#d4a84b;box-shadow:0 0 0 3px #d4a84b13}.f-group select option{background:#08131e;color:#f7f1e6}[data-enquiry-status]{margin-top:1rem;padding:1rem;background:#08131e;border:1px solid #d4a84b50;border-radius:8px;color:#e9e2d4;line-height:1.65}[data-enquiry-status] a{color:#ebca84;text-decoration:underline}
.faq-item{border-color:#ffffff14}.faq-q{min-height:54px;color:#f7f1e6}.faq-a[hidden]{display:none!important}.faq-item[data-open="true"]>.faq-a{max-height:none!important;opacity:1;visibility:visible;display:block}.faq-q[aria-expanded="true"]{color:#ebca84}.faq-a-inner{color:#bdcbd7;line-height:1.8}
.bhb-planning{padding:5.5rem 0;background:linear-gradient(160deg,#0c1c2b,#08131e);border-top:1px solid #d4a84b1c;border-bottom:1px solid #d4a84b1c}.bhb-planning-head{display:grid;grid-template-columns:1fr .8fr;gap:4rem;align-items:end;margin-bottom:2.3rem}.bhb-planning h2{font-size:clamp(1.9rem,3vw,2.8rem);max-width:700px;margin:0}.bhb-planning-head p{color:#b7c5d1;font-size:.96rem;margin:0}.bhb-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.bhb-detail{padding:1.65rem;border:1px solid #ffffff12;border-top:2px solid #d4a84b80;border-radius:4px 4px 12px 12px;background:#102131}.bhb-detail-index{font-size:.65rem;letter-spacing:.15em;color:#d4a84b;display:block;margin-bottom:.8rem}.bhb-detail h3{font-size:1.25rem;margin-bottom:.7rem}.bhb-detail p{color:#bfcbd6;line-height:1.8;font-size:.9rem;margin:0}.bhb-planning-footer{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-top:2rem}.bhb-planning-footer p{font-size:.83rem;color:#aab8c5;max-width:760px}.bhb-rate-note{font-size:.79rem;line-height:1.65;color:#b8c6d2;border-left:2px solid #d4a84b;padding:.3rem 0 .3rem .9rem;margin:1.2rem 0}.bhb-booking-note{color:#afbdc9;font-size:.79rem;line-height:1.7;margin-top:1rem}.bhb-booking-note a{color:#ebca84;text-decoration:underline}
footer{background:#050e17;border-top:1px solid #d4a84b35}footer .footer-links a,footer p{color:#aebdca;line-height:1.8}.footer-brand-desc{max-width:350px}.footer-col h4,.footer-col h3{color:#f1e6d0}.footer-bottom{border-top-color:#ffffff12;color:#91a4b5}.bhb-skip{position:fixed;top:8px;left:8px;transform:translateY(-200%);z-index:10010;padding:.7rem 1rem;background:#ebca84;color:#08131e;border-radius:4px}.bhb-skip:focus{transform:none}.bhb-back-top{position:fixed;right:1.25rem;bottom:5.5rem;z-index:985;border:1px solid #d4a84b70;background:#0d1e2e;color:#e8c57e;width:42px;height:42px;border-radius:8px;cursor:pointer;opacity:0;visibility:hidden;transition:opacity .2s;box-shadow:0 5px 20px #0003}.bhb-back-top.is-visible{opacity:1;visibility:visible}.bhb-back-top svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}.float-phone{background:#d4a84b;box-shadow:0 5px 20px #0004;animation:none}.ring-svg,.pulse-ring{animation:none!important}.reveal{opacity:1;transform:none}
@media(min-width:769px){.bhb-type-fleet .page-hero,.bhb-type-routes .page-hero,.bhb-type-venues .page-hero{min-height:560px}}
@media(max-width:1100px){.nav-links{display:none!important}.hamburger{display:flex!important}.nav-inner{gap:1rem}.nav-right{gap:.75rem}#mobile-menu{overflow:auto;overscroll-behavior:contain;padding-top:6.5rem}#mobile-menu a{font-size:1.45rem}.bhb-planning-head{gap:2rem}}
@media(max-width:768px){html{scroll-padding-top:85px}.container{width:calc(100% - 40px)}.bhb-announcement{font-size:.63rem}.top-bar-right .tb-badge{display:none}.top-bar-inner{gap:.5rem}.top-bar-ticker{max-width:calc(100% - 100px)}#nav{padding:.85rem 0}.logo-text .top{font-size:1.05rem}.logo-text .sub{font-size:.5rem}.logo-emblem{width:36px;height:36px}.nav-logo{gap:8px}.nav-right .btn{padding:.65rem .85rem;font-size:.73rem;min-height:42px}.nav-phone{display:none}.page-hero{min-height:0}.hero-content{padding:4rem 0 3.75rem;max-width:100%}.hero-content h1{font-size:clamp(2.65rem,9vw,3.5rem)}.hero-desc{font-size:1rem}.hero-usps{padding-top:1.3rem;margin-top:1.4rem}.hero-ctas{gap:.7rem}.hero-ctas .btn{padding:.8rem 1.1rem}.hero-badge{line-height:1.5;letter-spacing:.08em}.section-head{margin-bottom:2rem}.section-head p{font-size:.94rem}.trust-inner{gap:.75rem 1rem;justify-content:flex-start}.trust-item{font-size:.7rem}.bhb-detail-grid{grid-template-columns:1fr}.bhb-planning{padding:3.5rem 0}.bhb-planning-head{display:block;margin-bottom:1.6rem}.bhb-planning-head p{margin-top:1.2rem}.bhb-planning-footer{display:block}.bhb-planning-footer .btn{margin-top:1rem}.quote-box{padding:1.5rem}.quote-layout,.two-col,.two-col-reverse{gap:2.5rem}.float-badge{right:.8rem;bottom:.8rem}.bhb-back-top{right:1rem;bottom:5.25rem}.post-hero-content h1{font-size:clamp(2.3rem,8vw,3.4rem)}.btn{font-size:.84rem}footer .footer-grid{gap:2rem}.breadcrumb{font-size:.69rem}}
@media(max-width:380px){.container{width:calc(100% - 32px)}.logo-text .sub{display:none}.logo-text .top{font-size:.95rem}.nav-right .btn{padding:.6rem .65rem}.nav-inner{gap:.5rem}.hero-content h1{font-size:2.55rem}.bhb-announcement{font-size:.58rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* Text is immediately readable; no delayed hero entrance animations. */
.hero-content h1,.hero-desc,.hero-ctas,.hero-usps,.hero-badge,.post-hero-content h1,.post-hero-content p,.breadcrumb{animation:none!important;opacity:1;transform:none}.nav-right .btn{white-space:nowrap}.bhb-line-icon{font-family:initial}
@media(max-width:768px){.nav-right .btn{font-size:.7rem;padding:.65rem .75rem}.top-bar-ticker{display:none}.top-bar-right{width:100%;justify-content:space-between}.hero-ctas .btn{white-space:normal}.hero-usps{margin-top:1.5rem}}

.hero-content>p,.hero-sub,.post-hero-content>p{animation:none!important;opacity:1!important;transform:none!important;color:#c6d1da!important}.hero-tag{background:#d4a84b0d!important;border-color:#d4a84b50!important;color:#ebca84!important}.float-phone::before,.float-phone::after{animation:none!important;display:none!important}

.bhb-table-scroll{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:10px;margin:1.25rem 0}.bhb-table-scroll table{margin:0;min-width:100%}.quote-layout>*,.faq-layout>*,.two-col>*,.two-col-reverse>*,.post-layout>*,.contact-layout>*{min-width:0}h1{overflow-wrap:break-word}.customer-card h3,.customer-card p{color:#c6d1da!important}
@media(max-width:768px){.quote-layout,.faq-layout,.two-col,.two-col-reverse,.contact-layout,.booking-layout,.intro-grid,.hero-grid,.venue-grid,.spec-grid,.footer-grid{grid-template-columns:minmax(0,1fr)!important;gap:2rem!important}.faq-layout{display:grid}.f-row{grid-template-columns:minmax(0,1fr)!important}.f-group input,.f-group select,.f-group textarea{width:100%;min-width:0}.bhb-premium [style*="display:grid"][style*="grid-template-columns"],.bhb-premium [style*="display: grid"][style*="grid-template-columns"]{grid-template-columns:minmax(0,1fr)!important;gap:1.25rem!important}.hero-content h1,.page-hero h1{font-size:clamp(2.4rem,8.5vw,3.4rem)!important;overflow-wrap:anywhere}.faq-q{overflow-wrap:anywhere}.f-submit{width:100%}}

.article-wrap>*,.sidebar{min-width:0}.bhb-form-active .float-phone,.bhb-form-active .bhb-back-top{opacity:0;pointer-events:none}
@media(max-width:768px){.article-wrap{grid-template-columns:minmax(0,1fr)!important;gap:2rem}.sidebar,.sidebar-card,.author-card{max-width:100%;min-width:0}.float-badge{right:.8rem!important;bottom:.8rem!important;max-width:calc(100% - 1.6rem)}}

/* Inline links remain identifiable without colour. */
main p a,main li a:not([class]),.fleet-intro p a{text-decoration:underline;text-underline-offset:.18em}
