/* HBF MANAGEMENT — brand system 2026
   Direction: dark graphite, warm amber, off-white, petrol only as a supporting accent.
   Loaded last to keep legacy styles from leaking into v3.
*/

:root{
  --hbf-night:#061116;
  --hbf-night-2:#09181d;
  --hbf-graphite:#0B1B21;
  --hbf-petrol:#0D4F59;
  --hbf-petrol-deep:#083A42;
  --hbf-gold:#C49A5A;
  --hbf-gold-strong:#D5A45B;
  --hbf-cream:#F1EEE7;
  --hbf-cream-2:#E8E4DB;
  --hbf-paper:#FAF9F6;
  --hbf-white:#FFFFFF;
  --hbf-ink:#0E1E24;
  --hbf-muted:#58676C;
  --hbf-line:#CBD3D0;

  --bg:var(--hbf-cream);
  --paper:var(--hbf-paper);
  --text:var(--hbf-ink);
  --muted:var(--hbf-muted);
  --red:var(--hbf-petrol);
  --red-dark:var(--hbf-graphite);
  --red-soft:#E8EFED;
  --gold:var(--hbf-gold);
  --line:var(--hbf-line);
  --line-dark:#B5C0BC;
  --max:1240px;
}

body{
  color:var(--hbf-ink);
  background:var(--hbf-cream);
  font-size:16.5px;
}

.wrap{
  max-width:var(--max);
}

/* HEADER */
.topbar{
  background:rgba(6,17,22,.985);
  border-bottom:1px solid rgba(255,255,255,.08);
  box-shadow:0 12px 32px rgba(0,0,0,.16);
  backdrop-filter:blur(15px);
}

.topbar-inner{
  min-height:86px;
  padding-block:10px;
}

.brand{
  min-width:204px;
  display:flex;
  align-items:center;
}

.brand-lockup,
.footer-brand-lockup{
  display:inline-flex;
  flex-direction:column;
  align-items:stretch;
  width:198px;
}

.brand-logo,
.footer-brand-logo{
  display:block;
  width:100%;
  height:auto;
}

.brand-management,
.footer-brand-management{
  margin-top:-2px;
  color:#F5F3EE;
  font-size:.58rem;
  line-height:1;
  font-weight:700;
  letter-spacing:.58em;
  text-align:center;
  white-space:nowrap;
}

.nav{
  gap:4px;
}

.nav a{
  position:relative;
  padding:12px 11px 11px;
  border:0;
  background:transparent;
  box-shadow:none;
  color:#DFE6E3;
  font-size:.94rem;
  font-weight:700;
}

.nav a::after{
  content:"";
  position:absolute;
  left:11px;
  right:11px;
  bottom:3px;
  height:2px;
  border-radius:2px;
  background:var(--hbf-gold);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .18s ease;
}

.nav a:hover,
.nav a.is-active{
  color:#fff;
  background:transparent;
  box-shadow:none;
}

.nav a:hover::after,
.nav a.is-active::after{
  transform:scaleX(1);
}

.nav a.nav-qualified{
  color:#85CFF2;
}

.nav a.nav-qualified::after{
  background:#3AAFE4;
}

.nav a.nav-qualified.is-active{
  color:#fff;
  background:rgba(0,102,204,.18);
  border-radius:8px;
  box-shadow:inset 0 0 0 1px rgba(102,204,255,.18);
}

.header-contact{
  min-width:106px;
  padding-inline:18px;
  border-radius:5px;
  background:var(--hbf-gold);
  border-color:var(--hbf-gold);
  color:var(--hbf-night);
  box-shadow:0 10px 28px rgba(196,154,90,.15);
}

.header-contact:hover{
  background:var(--hbf-gold-strong);
  border-color:var(--hbf-gold-strong);
  color:var(--hbf-night);
}

.mobile-menu-toggle{
  border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.04);
  color:#fff;
}

/* GLOBAL HERO */
main:not(.certum-main) .hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border:0;
  color:#fff;
  background:
    radial-gradient(circle at 83% 18%,rgba(196,154,90,.09),transparent 25%),
    linear-gradient(112deg,#061116 0%,#08171C 58%,#0A1D23 100%);
}

main:not(.certum-main) .hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  width:auto;
  background:
    radial-gradient(circle at 76% 66%,rgba(13,79,89,.18),transparent 32%),
    linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:auto,68px 68px,68px 68px;
  mask-image:linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.18) 72%,transparent);
}

main:not(.certum-main) .hero::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  z-index:2;
  width:auto;
  height:2px;
  border-radius:0;
  background:linear-gradient(90deg,transparent 6%,var(--hbf-gold) 36%,rgba(196,154,90,.18) 72%,transparent);
}

main:not(.certum-main) .hero h1{
  color:#fff;
}

main:not(.certum-main) .hero .lead{
  color:#DDE5E2;
}

main:not(.certum-main) .kicker{
  display:flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  margin:0 0 22px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#E0B36E;
  font-size:.74rem;
  font-weight:850;
  letter-spacing:.14em;
  text-transform:uppercase;
}

main:not(.certum-main) .kicker::before{
  content:"";
  flex:0 0 34px;
  height:2px;
  margin-right:12px;
  background:var(--hbf-gold);
}

/* HOMEPAGE HERO */
.v3-home .home-hero{
  padding:76px 0 74px;
}

.v3-home .hero-grid{
  grid-template-columns:minmax(0,1.08fr) minmax(450px,.92fr);
  gap:72px;
  align-items:center;
}

.v3-hero-copy{
  position:relative;
  z-index:3;
}

.v3-home .hero h1{
  max-width:11.2ch;
  margin-bottom:24px;
  font-size:clamp(3.55rem,5.1vw,5.25rem);
  line-height:.98;
  letter-spacing:-.055em;
  font-weight:780;
}

.v3-home .hero .lead{
  max-width:60ch;
  margin-bottom:30px;
  font-size:clamp(1.08rem,1.3vw,1.22rem);
  line-height:1.72;
}

.v3-home .hero .actions{
  gap:12px;
}

.v3-home .hero .btn{
  min-height:50px;
  padding-inline:21px;
}

.v3-home .hero .btn-primary{
  background:var(--hbf-gold);
  border-color:var(--hbf-gold);
  color:var(--hbf-night);
}

.v3-home .hero .btn-primary:hover{
  background:var(--hbf-gold-strong);
  border-color:var(--hbf-gold-strong);
  color:var(--hbf-night);
}

.v3-home .hero .btn:not(.btn-primary){
  border-color:rgba(255,255,255,.34);
  background:rgba(255,255,255,.035);
  color:#fff;
}

.v3-home .hero .btn:not(.btn-primary):hover{
  border-color:var(--hbf-gold);
  background:rgba(196,154,90,.08);
  color:#fff;
}

.v3-home .v3-hero-photo{
  position:relative;
  min-height:520px;
  margin:0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px 42px 14px 42px;
  background:#020A0D;
  box-shadow:0 34px 90px rgba(0,0,0,.36);
}

.v3-home .v3-hero-photo img{
  display:block;
  width:100%;
  height:100%;
  min-height:520px;
  object-fit:cover;
  object-position:center;
  filter:saturate(.82) contrast(1.11) brightness(.78);
  transform:scale(1.025);
}

.v3-home .v3-hero-photo::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    radial-gradient(circle at 22% 22%,rgba(213,164,91,.20),transparent 22%),
    linear-gradient(90deg,rgba(5,15,19,.30),rgba(5,15,19,.02) 56%),
    linear-gradient(180deg,transparent 38%,rgba(4,13,17,.94) 100%);
}

.v3-home .v3-hero-photo::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(135deg,rgba(13,79,89,.10),transparent 45%,rgba(196,154,90,.07));
}

.v3-home .v3-hero-photo-caption{
  left:30px;
  right:30px;
  bottom:28px;
  z-index:3;
}

.v3-photo-kicker{
  color:#E3B66F;
  font-size:.72rem;
  letter-spacing:.14em;
}

.v3-home .v3-hero-photo-caption strong{
  color:#fff;
  font-size:4.1rem;
  line-height:.86;
}

.v3-home .v3-hero-photo-caption>span:last-child{
  color:#F2F4F3;
}

/* LIGHT SURFACES */
main:not(.certum-main) .section{
  background:var(--hbf-cream);
}

main:not(.certum-main) .section.alt{
  background:var(--hbf-cream-2);
  border-color:#D1D5D1;
}

main:not(.certum-main) .section.dark{
  color:#fff;
  background:
    radial-gradient(circle at 82% 18%,rgba(196,154,90,.08),transparent 28%),
    linear-gradient(116deg,#061116,#09191F 68%,#0A2026);
}

main:not(.certum-main) .section-head{
  border-left:0;
  padding-left:0;
}

main:not(.certum-main) .section-head h2{
  color:var(--hbf-ink);
  font-size:clamp(2rem,2.8vw,2.7rem);
  line-height:1.12;
}

main:not(.certum-main) .section-head p{
  color:var(--hbf-muted);
  font-size:1.05rem;
}

main:not(.certum-main) .section.dark .section-head h2{
  color:#fff;
}

main:not(.certum-main) .section.dark .section-head p{
  color:#C8D2CF;
}

.v3-section-label,
.v3-eyebrow{
  color:#765929;
}

.v3-section-label::after{
  content:"";
  display:block;
  width:42px;
  height:2px;
  margin-top:9px;
  background:var(--hbf-gold);
}

/* HOMEPAGE SITUATIONS — editorial, not card-wall */
.v3-situation-section{
  padding:92px 0 96px;
}

.v3-situation-layout{
  display:grid;
  grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);
  gap:86px;
  align-items:start;
}

.v3-situation-intro{
  position:sticky;
  top:122px;
}

.v3-situation-intro h2{
  max-width:10ch;
  margin:0 0 18px;
  color:var(--hbf-ink);
  font-size:clamp(2.35rem,3.5vw,3.35rem);
  line-height:1.02;
  letter-spacing:-.045em;
}

.v3-situation-intro>p:last-child{
  max-width:35ch;
  margin:0;
  color:var(--hbf-muted);
  font-size:1.06rem;
  line-height:1.75;
}

.v3-situation-list{
  border-top:1px solid #BFC7C3;
}

.v3-situation-row{
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  gap:22px;
  padding:28px 0 30px;
  border-bottom:1px solid #BFC7C3;
}

.v3-situation-row>span{
  padding-top:4px;
  color:#9B7137;
  font-size:.75rem;
  font-weight:850;
  letter-spacing:.10em;
}

.v3-situation-row h3{
  margin:0 0 8px;
  color:var(--hbf-ink);
  font-size:clamp(1.22rem,1.7vw,1.52rem);
  line-height:1.23;
}

.v3-situation-row p{
  max-width:62ch;
  margin:0;
  color:var(--hbf-muted);
  line-height:1.72;
}

.v3-situation-row a{
  display:inline-block;
  margin-top:14px;
  color:#765929;
  font-weight:800;
}

.v3-situation-row a:hover{
  color:var(--hbf-petrol);
}

/* DARK PROOF BAND */
.v3-dark-band{
  padding:32px 0!important;
  background:#061116!important;
  border-top:1px solid rgba(196,154,90,.14);
  border-bottom:1px solid rgba(196,154,90,.12);
}

.v3-dark-band .band{
  border:0;
}

.v3-dark-band .metric{
  padding:14px 30px;
  border-right:1px solid rgba(255,255,255,.10);
}

.v3-dark-band .metric:first-child{
  padding-left:0;
}

.v3-dark-band .metric:last-child{
  padding-right:0;
  border-right:0;
}

.v3-dark-band .metric b{
  color:#E1B36E;
  font-size:1.75rem;
}

.v3-dark-band .metric span{
  color:#CBD4D1;
}

/* SERVICES SHOWCASE — real IT imagery + content */
.v3-services-section{
  padding:94px 0 100px;
}

.v3-services-showcase{
  display:grid;
  grid-template-columns:minmax(370px,.82fr) minmax(0,1.18fr);
  gap:74px;
  align-items:start;
}

.v3-services-visual{
  position:sticky;
  top:118px;
  min-height:700px;
  margin:0;
  overflow:hidden;
  border-radius:12px 36px 12px 36px;
  background:#071116;
  box-shadow:0 28px 70px rgba(6,17,22,.16);
}

.v3-services-visual img{
  display:block;
  width:100%;
  height:700px;
  object-fit:cover;
  object-position:center;
  filter:saturate(.86) contrast(1.12) brightness(.70);
}

.v3-services-visual::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(6,17,22,.02) 34%,rgba(6,17,22,.92) 100%),
    linear-gradient(120deg,rgba(13,79,89,.14),transparent 45%);
  pointer-events:none;
}

.v3-services-visual figcaption{
  position:absolute;
  left:28px;
  right:28px;
  bottom:28px;
  z-index:2;
  display:grid;
  gap:6px;
  color:#fff;
}

.v3-services-visual figcaption span{
  color:#E1B36E;
  font-size:.72rem;
  font-weight:850;
  letter-spacing:.13em;
}

.v3-services-visual figcaption strong{
  max-width:14ch;
  font-size:clamp(1.65rem,2.5vw,2.45rem);
  line-height:1.08;
  letter-spacing:-.03em;
}

.v3-services-copy .v3-section-head{
  margin-bottom:20px;
}

.v3-services-copy .v3-section-head h2{
  max-width:18ch;
}

.v3-services-copy .v3-service-list{
  grid-template-columns:1fr;
}

.v3-services-copy .v3-service-line{
  grid-template-columns:42px minmax(0,1fr);
  padding:21px 0 23px;
  border-color:#C4CDC9;
}

.v3-services-copy .v3-service-line>span{
  color:#9A7138;
}

.v3-services-copy .v3-service-line h3{
  color:var(--hbf-ink);
  font-size:1.18rem;
}

.v3-services-copy .v3-service-line p{
  color:var(--hbf-muted);
}

.v3-inline-actions{
  margin-top:28px;
}

/* GENERAL TYPOGRAPHY / BUTTONS */
main:not(.certum-main) .btn{
  border-radius:5px;
  border-color:#B8C3BF;
  background:#FDFCF9;
  color:var(--hbf-graphite);
}

main:not(.certum-main) .btn:hover{
  border-color:var(--hbf-gold);
  color:var(--hbf-night);
}

main:not(.certum-main) .btn-primary{
  background:var(--hbf-gold);
  border-color:var(--hbf-gold);
  color:var(--hbf-night);
  box-shadow:0 9px 24px rgba(196,154,90,.13);
}

main:not(.certum-main) .btn-primary:hover{
  background:var(--hbf-gold-strong);
  border-color:var(--hbf-gold-strong);
  color:var(--hbf-night);
}

main:not(.certum-main) .card,
main:not(.certum-main) .service{
  border-color:#C9D0CD;
  background:#F9F8F4;
  box-shadow:none;
}

main:not(.certum-main) .service{
  border-top-color:#BFC7C4;
}

main:not(.certum-main) .service:hover{
  border-top-color:var(--hbf-gold);
}

main:not(.certum-main) .highlight{
  background:linear-gradient(135deg,#FBFAF7,#F5EEDF);
  border-color:rgba(196,154,90,.38);
}

.v3-path-index,
.v3-model-index,
.v3-service-line>span,
.v3-directory-item>span,
.v3-process span{
  color:#9A7138;
}

.v3-path a,
.v3-directory-item a{
  color:#765929;
}

.v3-path a:hover,
.v3-directory-item a:hover{
  color:var(--hbf-petrol);
}

.v3-path p,
.v3-model p,
.v3-service-line p,
.v3-directory-item p,
.v3-process p,
.v3-editorial-copy p,
.v3-faq details p,
.v3-rate-list dt,
.v3-form-intro{
  color:var(--hbf-muted);
}

/* EDITORIAL EXPERIENCE */
.v3-editorial-section{
  padding:94px 0 98px;
}

.v3-editorial{
  gap:78px;
}

.v3-statement{
  color:var(--hbf-ink);
  max-width:19ch;
  font-size:clamp(2rem,3vw,2.9rem);
  line-height:1.12;
}

.v3-editorial-copy h2{
  color:var(--hbf-ink);
}

/* PRICING / OFFER */
.v3-price-card{
  border-color:#C8D0CD;
  border-top-color:#BAC4C0;
  background:#F9F8F4;
  border-radius:10px 28px 10px 28px;
}

.v3-price-card.is-featured{
  border-color:rgba(196,154,90,.46);
  border-top-color:var(--hbf-gold);
  background:linear-gradient(180deg,#FCFBF8,#F5EEDF);
  box-shadow:0 22px 54px rgba(6,17,22,.08);
}

.v3-price-badge{
  background:#9B7137;
}

.v3-price-name{
  color:#765929;
}

.v3-price{
  color:var(--hbf-ink);
}

.v3-price-list li::before{
  background:var(--hbf-gold);
}

.v3-package-compare thead th{
  background:#061116;
}

.v3-package-compare thead th:nth-child(3){
  background:#765929;
}

.v3-enterprise-strip{
  background:
    radial-gradient(circle at 88% 10%,rgba(196,154,90,.12),transparent 30%),
    linear-gradient(120deg,#061116,#0B1B21);
}

/* CTA */
.v3-cta{
  border:1px solid rgba(196,154,90,.18);
  background:
    radial-gradient(circle at 88% 12%,rgba(196,154,90,.13),transparent 30%),
    linear-gradient(115deg,#061116,#0B1B21 70%,#10262C);
  box-shadow:0 28px 62px rgba(6,17,22,.15);
}

.v3-cta .v3-section-label{
  color:#E1B36E;
}

.v3-cta p{
  color:#D5DDDA;
}

/* FORMS */
main:not(.certum-main) .contact-form input,
main:not(.certum-main) .contact-form textarea,
main:not(.certum-main) .contact-form select{
  border-color:#B8C4C0;
  background:#FDFCF9;
}

main:not(.certum-main) .contact-form input:focus,
main:not(.certum-main) .contact-form textarea:focus,
main:not(.certum-main) .contact-form select:focus{
  border-color:var(--hbf-gold);
  box-shadow:0 0 0 3px rgba(196,154,90,.14);
}

main:not(.certum-main) .consent input{
  accent-color:#9A7138;
}

/* FOOTER */
.footer{
  padding-top:46px;
  background:#050E12;
  border-top:3px solid var(--hbf-gold);
  color:#EEF2F0;
}

.footer-brand{
  gap:10px;
}

.footer-brand-lockup{
  width:190px;
  margin-bottom:2px;
}

.footer-brand-management{
  font-size:.56rem;
}

.footer-claim{
  margin-top:5px;
  color:#fff;
  font-size:1.04rem;
}

.footer .muted,
.footer-legal{
  color:#A8B5B1;
}

.footer a{
  color:#E8ECEA;
}

.footer a:hover{
  color:#E2B46F;
}

/* ACCESSIBILITY */
a:focus-visible,
button:focus-visible,
summary:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible{
  outline-color:rgba(213,164,91,.90);
}

/* RESPONSIVE */
@media (max-width:1180px){
  .brand{
    min-width:182px;
  }

  .brand-lockup{
    width:182px;
  }

  .nav a{
    padding-inline:9px;
    font-size:.89rem;
  }

  .v3-home .hero-grid{
    grid-template-columns:minmax(0,1.05fr) minmax(390px,.95fr);
    gap:46px;
  }

  .v3-services-showcase{
    grid-template-columns:minmax(330px,.78fr) minmax(0,1.22fr);
    gap:48px;
  }
}

@media (max-width:1040px){
  .topbar-inner{
    min-height:72px;
  }

  .nav{
    top:82px;
    background:#07161B;
    border-color:rgba(255,255,255,.10);
    box-shadow:0 24px 70px rgba(0,0,0,.30);
  }

  .nav a{
    color:#E5EAE8;
    border-bottom:1px solid rgba(255,255,255,.08);
  }

  .nav a::after{
    display:none;
  }

  .nav a:hover,
  .nav a.is-active{
    color:#fff;
    background:rgba(255,255,255,.05);
  }

  .v3-home .hero-grid,
  .v3-situation-layout,
  .v3-services-showcase{
    grid-template-columns:1fr;
  }

  .v3-home .hero h1{
    max-width:13ch;
  }

  .v3-home .v3-hero-photo{
    min-height:410px;
  }

  .v3-home .v3-hero-photo img{
    min-height:410px;
  }

  .v3-situation-layout{
    gap:34px;
  }

  .v3-situation-intro,
  .v3-services-visual{
    position:relative;
    top:auto;
  }

  .v3-situation-intro h2{
    max-width:16ch;
  }

  .v3-services-showcase{
    gap:42px;
  }

  .v3-services-visual,
  .v3-services-visual img{
    min-height:430px;
    height:430px;
  }
}

@media (max-width:760px){
  body{
    font-size:16px;
  }

  .brand{
    min-width:148px;
  }

  .brand-lockup{
    width:148px;
  }

  .brand-management{
    font-size:.48rem;
    letter-spacing:.50em;
  }

  .v3-home .home-hero{
    padding:50px 0 52px;
  }

  .v3-home .hero h1{
    max-width:100%;
    font-size:clamp(2.7rem,12vw,3.8rem);
    line-height:1.02;
  }

  main:not(.certum-main) .kicker{
    font-size:.68rem;
  }

  .v3-home .v3-hero-photo{
    min-height:310px;
    border-radius:10px 28px 10px 28px;
  }

  .v3-home .v3-hero-photo img{
    min-height:310px;
  }

  .v3-home .v3-hero-photo-caption{
    left:20px;
    right:20px;
    bottom:20px;
  }

  .v3-home .v3-hero-photo-caption strong{
    font-size:3.2rem;
  }

  .v3-situation-section,
  .v3-services-section,
  .v3-editorial-section{
    padding-block:58px;
  }

  .v3-situation-intro h2{
    max-width:none;
    font-size:clamp(2rem,9vw,2.65rem);
  }

  .v3-situation-row{
    grid-template-columns:38px minmax(0,1fr);
    gap:12px;
    padding-block:22px;
  }

  .v3-services-visual,
  .v3-services-visual img{
    height:320px;
    min-height:320px;
  }

  .v3-services-visual{
    border-radius:10px 28px 10px 28px;
  }

  .v3-services-visual figcaption{
    left:20px;
    right:20px;
    bottom:20px;
  }

  .v3-services-visual figcaption strong{
    font-size:1.8rem;
  }

  .v3-dark-band .metric{
    padding:18px 0;
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.10);
  }

  .v3-dark-band .metric:last-child{
    border-bottom:0;
  }

  .footer-brand-lockup{
    width:176px;
  }
}


/* contextual quick action */
.floating-help-cta{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:90;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:11px 17px;
  border:1px solid rgba(196,154,90,.55);
  border-radius:999px;
  background:#07161B;
  color:#fff;
  font-size:.86rem;
  font-weight:800;
  box-shadow:0 16px 38px rgba(0,0,0,.24);
  transition:transform .16s ease,background .16s ease,border-color .16s ease;
}

.floating-help-cta::before{
  content:"";
  width:8px;
  height:8px;
  margin-right:9px;
  border-radius:50%;
  background:#C49A5A;
}

.floating-help-cta:hover{
  transform:translateY(-2px);
  border-color:#D5A45B;
  background:#0B2026;
  color:#fff;
}

.floating-help-cta.is-qualified{
  border-color:rgba(0,174,232,.56);
}

.floating-help-cta.is-qualified::before{
  background:#00AEE8;
}

@media (max-width:760px){
  body{
    padding-bottom:64px;
  }

  .floating-help-cta{
    left:12px;
    right:12px;
    bottom:10px;
    min-height:50px;
    border-radius:8px;
    font-size:.94rem;
  }
}


/* Protect approved HBF artwork from accidental recoloring */
.brand-logo,
.footer-brand-logo,
.home-hero-logo{
  opacity:1;
  filter:none!important;
  mix-blend-mode:normal;
  image-rendering:auto;
}


/* Desktop layout integrity */
html{
  min-height:100%;
}

body{
  min-height:100vh;
  display:flex;
  flex-direction:column;
}

body > main{
  width:100%;
  flex:1 0 auto;
}

body > .footer{
  margin-top:auto;
}


/* Facebook presence — compact trust/social card in footer */
.footer-inner{
  align-items:flex-start;
}

.footer-social-card{
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:13px;
  align-items:center;
  width:min(100%,300px);
  min-height:96px;
  padding:16px 17px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:9px 24px 9px 24px;
  background:
    radial-gradient(circle at 90% 10%,rgba(24,119,242,.18),transparent 34%),
    rgba(255,255,255,.025);
  color:#fff!important;
  transition:transform .16s ease,border-color .16s ease,background .16s ease;
}

.footer-social-card:hover{
  transform:translateY(-2px);
  border-color:rgba(82,153,244,.52);
  background:rgba(24,119,242,.07);
  color:#fff!important;
}

.footer-social-icon{
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  border-radius:50%;
  background:#1877F2;
}

.footer-social-icon svg{
  width:28px;
  height:28px;
  fill:#fff;
}

.footer-social-copy{
  display:grid;
  gap:3px;
}

.footer-social-copy small{
  color:#8FBDF8;
  font-size:.65rem;
  font-weight:900;
  letter-spacing:.12em;
}

.footer-social-copy strong{
  color:#fff;
  font-size:.96rem;
  line-height:1.2;
}

.footer-social-copy>span{
  color:#AFC6D9;
  font-size:.76rem;
}

.footer-meta{
  flex-basis:100%;
}

@media (max-width:1040px){
  .footer-social-card{
    width:min(100%,360px);
  }
}

@media (max-width:760px){
  .footer-social-card{
    width:100%;
  }
}

@media (prefers-reduced-motion:reduce){
  .footer-social-card{
    transition:none;
  }

  .footer-social-card:hover{
    transform:none;
  }
}


/* 2026-09-26 footer: social presence + external trust, without making the footer taller */
.footer-trust-strip{
  flex-basis:100%;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:8px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.09);
}

.footer-presence-card{
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:13px;
  align-items:center;
  min-height:84px;
  padding:13px 15px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:8px 20px 8px 20px;
  background:rgba(255,255,255,.025);
  color:#fff!important;
  transition:transform .16s ease,border-color .16s ease,background .16s ease;
}

.footer-presence-card:hover{
  transform:translateY(-2px);
  color:#fff!important;
}

.footer-presence-icon{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border-radius:50%;
}

.footer-presence-icon svg{
  width:26px;
  height:26px;
  fill:#fff;
}

.footer-presence-copy{
  display:grid;
  gap:2px;
  min-width:0;
}

.footer-presence-copy small{
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.12em;
}

.footer-presence-copy strong{
  color:#fff;
  font-size:.94rem;
  line-height:1.2;
}

.footer-presence-copy>span{
  overflow:hidden;
  color:#AFC0C6;
  font-size:.75rem;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.footer-presence-card.is-facebook{
  background:
    radial-gradient(circle at 90% 10%,rgba(24,119,242,.14),transparent 34%),
    rgba(255,255,255,.02);
}

.footer-presence-card.is-facebook:hover{
  border-color:rgba(82,153,244,.48);
  background:rgba(24,119,242,.065);
}

.footer-presence-card.is-facebook .footer-presence-icon{
  background:#1877F2;
}

.footer-presence-card.is-facebook small{
  color:#8FBDF8;
}

.footer-presence-card.is-linkedin{
  background:
    radial-gradient(circle at 90% 10%,rgba(10,102,194,.15),transparent 34%),
    rgba(255,255,255,.02);
}

.footer-presence-card.is-linkedin:hover{
  border-color:rgba(55,139,220,.48);
  background:rgba(10,102,194,.065);
}

.footer-presence-card.is-linkedin .footer-presence-icon{
  background:#0A66C2;
}

.footer-presence-card.is-linkedin small{
  color:#8CC8FF;
}

/* X / HBF Management */
.footer-presence-card.is-x{
  background:
    radial-gradient(circle at 90% 10%,rgba(255,255,255,.10),transparent 34%),
    rgba(255,255,255,.02);
}

.footer-presence-card.is-x:hover{
  border-color:rgba(255,255,255,.32);
  background:rgba(255,255,255,.055);
}

.footer-presence-card.is-x .footer-presence-icon{
  background:#050505;
  border:1px solid rgba(255,255,255,.16);
}

.footer-presence-card.is-x small{
  color:#D8E0DE;
}

.footer-presence-x{
  color:#fff;
  font-family:Arial,sans-serif;
  font-size:1.18rem;
  font-weight:800;
  line-height:1;
}

.footer-presence-card.is-rzetelna{
  grid-template-columns:86px minmax(0,1fr);
  background:
    radial-gradient(circle at 90% 10%,rgba(196,154,90,.14),transparent 34%),
    rgba(255,255,255,.02);
}

.footer-presence-card.is-rzetelna:hover{
  border-color:rgba(196,154,90,.50);
  background:rgba(196,154,90,.055);
}

.footer-presence-card.is-rzetelna small{
  color:#E0B36F;
}

.footer-rzetelna-logo{
  display:grid;
  place-items:center;
  width:86px;
  height:48px;
  padding:5px 7px;
  overflow:hidden;
  border-radius:6px;
  background:#fff;
}

.footer-rzetelna-logo img{
  display:block;
  max-width:74px;
  max-height:38px;
  width:auto;
  height:auto;
  object-fit:contain;
}

@media (max-width:1040px){
  .footer-trust-strip{
    grid-template-columns:1fr 1fr;
  }

  .footer-presence-card.is-rzetelna{
    grid-column:1 / -1;
  }
}

@media (max-width:760px){
  .footer-trust-strip{
    grid-template-columns:1fr;
  }

  .footer-presence-card.is-rzetelna{
    grid-column:auto;
  }

  .footer-presence-copy>span{
    white-space:normal;
  }
}

@media (prefers-reduced-motion:reduce){
  .footer-presence-card{
    transition:none;
  }

  .footer-presence-card:hover{
    transform:none;
  }
}


/* 2026-09-26 footer trust row: compact, verifiable and balanced */
.footer{
  padding:38px 0 28px;
}

.footer-trust-strip{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-top:4px;
  padding-top:16px;
}

.footer-presence-card{
  min-height:80px;
  padding:11px 13px;
}

.footer-presence-card.is-rzetelna{
  grid-template-columns:118px minmax(0,1fr);
}

.footer-rzetelna-logo{
  width:118px;
  height:58px;
  padding:2px 3px;
  background:#fff;
}

.footer-rzetelna-logo img{
  width:112px;
  max-width:112px;
  height:auto;
  max-height:54px;
}

.footer-presence-card.is-insert{
  grid-template-columns:76px minmax(0,1fr);
  background:
    radial-gradient(circle at 88% 10%,rgba(22,117,188,.15),transparent 34%),
    rgba(255,255,255,.02);
}

.footer-presence-card.is-insert:hover{
  border-color:rgba(68,153,211,.48);
  background:rgba(22,117,188,.06);
}

.footer-presence-card.is-insert small{
  color:#83C6EF;
}

.footer-insert-mark{
  display:grid;
  place-items:center;
  width:72px;
  height:46px;
  border-radius:7px;
  background:#fff;
  color:#1477B8;
  font-family:"Segoe UI",Arial,sans-serif;
  font-size:1.08rem;
  font-weight:900;
  letter-spacing:-.055em;
}

.footer-meta{
  margin-top:4px;
  padding-top:14px;
}

@media (max-width:1180px){
  .footer-trust-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:760px){
  .footer{
    padding-top:32px;
  }

  .footer-trust-strip{
    grid-template-columns:1fr;
  }
}


/* 2026-09-26 footer trust strip — full-width grid + Certum */
.footer-trust-strip{
  grid-column:1 / -1;
  width:100%;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:16px;
}

.footer-presence-card{
  min-width:0;
}

.footer-presence-card.is-rzetelna{
  grid-template-columns:96px minmax(0,1fr);
}

.footer-rzetelna-logo{
  width:96px;
  height:52px;
}

.footer-rzetelna-logo img{
  width:90px;
  max-width:90px;
  max-height:46px;
}

.footer-presence-card.is-insert{
  grid-template-columns:66px minmax(0,1fr);
}

.footer-insert-mark{
  width:62px;
  height:44px;
}

.footer-presence-card.is-certum{
  grid-template-columns:92px minmax(0,1fr);
  background:
    radial-gradient(circle at 88% 10%,rgba(0,117,190,.16),transparent 34%),
    rgba(255,255,255,.02);
}

.footer-presence-card.is-certum:hover{
  border-color:rgba(62,153,210,.5);
  background:rgba(0,117,190,.065);
}

.footer-presence-card.is-certum small{
  color:#8CCCF2;
}

.footer-certum-logo{
  display:grid;
  place-items:center;
  width:88px;
  height:46px;
  padding:6px 7px;
  overflow:hidden;
  border-radius:7px;
  background:#073248;
}

.footer-certum-logo img{
  display:block;
  width:76px;
  max-width:76px;
  height:auto;
  max-height:34px;
  object-fit:contain;
}

@media (max-width:1380px){
  .footer-trust-strip{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (max-width:900px){
  .footer-trust-strip{
    grid-column:1 / -1;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:760px){
  .footer-trust-strip{
    grid-column:auto;
    grid-template-columns:1fr;
  }
}
