/* Franchise Horizon premium card system.
   CSS-only surfaces: no raster/SVG background artwork is used on cards. */
:root{
  --fh-card-bg:#fffefa;
  --fh-card-border:#e3e5e9;
  --fh-card-ink:#101a3a;
  --fh-card-muted:#55607c;
  --fh-card-blue:#1a5fa8;
  --fh-card-green:#14814f;
  --fh-card-gold:#e8a93a;
  --fh-card-shadow:0 10px 30px rgba(16,26,58,.07);
  --fh-card-shadow-hover:0 18px 38px rgba(16,26,58,.12);
}
.dir,.expert,.brand-card,.stat,.step,.why>div,.service-cards>.expert,.countries>div,.founder,.presence-card,.value-card,.benefit-card,.process-card,.testimonial-card{
  position:relative;
  overflow:hidden;
  color:var(--fh-card-ink)!important;
  background-color:var(--fh-card-bg)!important;
  background-image:none!important;
  border:1px solid var(--fh-card-border)!important;
  box-shadow:var(--fh-card-shadow);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.dir:hover,.expert:hover,.brand-card:hover,.stat:hover,.step:hover,.why>div:hover,.countries>div:hover,.presence-card:hover,.value-card:hover,.benefit-card:hover,.process-card:hover,.testimonial-card:hover{
  transform:translateY(-4px);
  border-color:rgba(20,129,79,.36)!important;
  box-shadow:var(--fh-card-shadow-hover);
}
.dir b,.dir span,.dir p,.expert b,.expert span,.expert p,.brand-card,.brand-card p,.brand-card strong,.stat b,.stat span,.step b,.step h3,.step p,.why>div,.countries>div{
  color:var(--fh-card-ink)!important;
}
.dir p,.expert p,.step p,.stat span{color:var(--fh-card-muted)!important}
.dir a,.expert a,.brand-card a{
  color:var(--fh-card-blue)!important;
  text-decoration:underline;
  text-decoration-color:rgba(26,95,168,.35);
  text-underline-offset:3px;
}
.dir:before,.expert:before{background:var(--fh-card-green)!important}
.dir .member-initials,.dir i,.expert i{
  color:var(--fh-card-green)!important;
  background:#eaf5ee!important;
  border:1px solid #d4e9dc;
}
.brand-card{
  min-height:74px;
  display:flex;
  align-items:center;
  padding:20px 22px!important;
  border-radius:14px!important;
  font-weight:600;
}
.stat,.step,.why>div,.countries>div,.presence-card,.value-card,.benefit-card,.process-card,.testimonial-card{
  border-radius:18px!important;
}
.stat b{color:var(--fh-card-blue)!important}
.step::before{
  background:var(--fh-card-ink)!important;
  color:var(--fh-card-gold)!important;
}
.step::after{background:repeating-linear-gradient(90deg,#dfe2ea 0 8px,transparent 8px 14px)!important}
.founder{
  color:#f6f7fb!important;
  background-color:var(--fh-card-ink)!important;
  background-image:none!important;
  border-color:rgba(20,129,79,.5)!important;
  box-shadow:0 18px 42px rgba(16,26,58,.16);
}
.founder b,.founder span,.founder p,.founder blockquote{color:#f6f7fb!important}
.founder blockquote{border-left:3px solid var(--fh-card-gold)}
.founder .founder-photo{border:4px solid rgba(255,255,255,.86);box-shadow:0 8px 24px rgba(0,0,0,.16)}
.why>div h3,.countries>div h3,.value-card h3,.benefit-card h3,.process-card h3,.testimonial-card h3{color:var(--fh-card-green)}
@media(prefers-reduced-motion:reduce){
  .dir,.expert,.brand-card,.stat,.step,.why>div,.countries>div,.presence-card,.value-card,.benefit-card,.process-card,.testimonial-card{transition:none}
  .dir:hover,.expert:hover,.brand-card:hover,.stat:hover,.step:hover,.why>div:hover,.countries>div:hover,.presence-card:hover,.value-card:hover,.benefit-card:hover,.process-card:hover,.testimonial-card:hover{transform:none}
}

/* Founder portrait sizing: balanced against the card and quote on desktop/mobile. */
.founder img.founder-photo{
  display:block!important;
  width:100%!important;
  max-width:210px!important;
  height:auto!important;
  aspect-ratio:4/5!important;
  object-fit:cover!important;
  object-position:center top!important;
  margin:0 auto 16px!important;
}
@media(max-width:600px){
  .founder img.founder-photo{max-width:180px!important}
}


/* Franchise Horizon — shared premium inner-page hero system */
.fh-page-hero{
  position:relative!important;
  isolation:isolate;
  overflow:hidden;
  padding:clamp(54px,7vw,92px) 0 clamp(52px,6vw,78px)!important;
  background:linear-gradient(112deg,#f8f6f0 0%,#f5f4ef 54%,#eef4ef 100%)!important;
  border-bottom:1px solid rgba(16,26,58,.09);
}
.fh-page-hero:before{
  content:"";position:absolute;z-index:-1;right:-145px;top:-235px;width:650px;height:650px;border-radius:50%;
  border:1px solid rgba(20,129,79,.14);
  box-shadow:0 0 0 34px rgba(20,129,79,.025),0 0 0 72px rgba(26,95,168,.025),0 0 0 112px rgba(232,169,58,.025);
}
.fh-page-hero:after{
  content:"";position:absolute;z-index:-1;right:6%;bottom:-145px;width:360px;height:210px;
  background:radial-gradient(ellipse at center,rgba(232,169,58,.18),rgba(232,169,58,0) 72%);
  pointer-events:none;
}
.fh-hero-inner{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);align-items:center;gap:clamp(32px,6vw,88px)}
.fh-hero-copy{max-width:690px}
.fh-hero-eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 19px!important;color:#14814f!important;font:700 11px/1.4 "Instrument Sans",system-ui,sans-serif!important;letter-spacing:.18em;text-transform:uppercase}
.fh-hero-eyebrow:before{content:"";width:26px;height:2px;background:#e8a93a;border-radius:2px}
.fh-hero-copy h1{max-width:13ch;font-size:clamp(2.6rem,5.1vw,4.65rem)!important;line-height:1.02!important;letter-spacing:-.045em!important;color:#101a3a!important;font-weight:700}
.fh-hero-copy h1 em{display:block;margin-top:7px;color:#1a5fa8;font-style:normal}
.fh-hero-lead{max-width:58ch;margin:22px 0 0!important;color:#55607c!important;font-size:clamp(1rem,1.4vw,1.13rem)!important;line-height:1.8!important}
.fh-hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:29px}
.fh-hero-actions a{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:47px;padding:12px 19px;border-radius:999px;text-decoration:none!important;font-size:14px;font-weight:700;transition:transform .2s ease,box-shadow .2s ease}
.fh-hero-primary{background:#101a3a;color:#fff!important;box-shadow:0 8px 20px rgba(16,26,58,.14)}
.fh-hero-secondary{color:#101a3a!important;border:1px solid rgba(16,26,58,.17);background:rgba(255,255,255,.52)}
.fh-hero-actions a:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(16,26,58,.12)}
.fh-hero-visual{position:relative;min-height:330px;display:grid;place-items:center}
.fh-hero-orbit{position:relative;width:min(100%,390px);aspect-ratio:1/1;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.88) 0 23%,rgba(255,255,255,.32) 23.5% 40%,rgba(20,129,79,.045) 40.5% 58%,transparent 58.5%);border:1px solid rgba(16,26,58,.09)}
.fh-hero-orbit:before,.fh-hero-orbit:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(26,95,168,.18);inset:11%;transform:rotate(-26deg) scaleX(.78)}
.fh-hero-orbit:after{inset:19%;border-color:rgba(20,129,79,.22);transform:rotate(34deg) scaleX(.78)}
.fh-hero-core{position:relative;z-index:1;width:142px;height:142px;border-radius:35px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(145deg,#1a5fa8 0 48%,#14814f 49% 100%);box-shadow:0 20px 44px rgba(16,26,58,.2);color:white;transform:rotate(-5deg)}
.fh-hero-core strong{font:700 47px/1 "Instrument Sans",system-ui,sans-serif;letter-spacing:-.07em}
.fh-hero-core span{font:700 8px/1.5 "Instrument Sans",system-ui,sans-serif;letter-spacing:.16em;margin-top:9px}
.fh-hero-chip{position:absolute;z-index:2;display:flex;align-items:center;gap:10px;min-width:154px;padding:12px 15px;border:1px solid rgba(16,26,58,.09);border-radius:14px;background:rgba(255,254,250,.94);box-shadow:0 12px 28px rgba(16,26,58,.09);backdrop-filter:blur(8px)}
.fh-hero-chip:before{content:"";flex:0 0 8px;width:8px;height:8px;border-radius:50%;background:#14814f;box-shadow:0 0 0 4px rgba(20,129,79,.1)}
.fh-hero-chip span{display:block;color:#55607c;font:600 10px/1.35 "Instrument Sans",system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.fh-hero-chip b{display:block;margin-top:3px;color:#101a3a;font:700 13px/1.3 "Instrument Sans",system-ui,sans-serif}
.fh-hero-chip.chip-one{top:13%;left:-2%}
.fh-hero-chip.chip-two{right:-3%;top:38%}
.fh-hero-chip.chip-three{left:9%;bottom:8%}
.fh-hero-footnote{display:flex;align-items:center;gap:9px;margin-top:28px;color:#68718a;font-size:12px;letter-spacing:.04em}
.fh-hero-footnote:before{content:"";width:24px;height:1px;background:#14814f}
.fh-page-hero.fh-hero-brands .fh-hero-core{background:linear-gradient(145deg,#101a3a 0 50%,#1a5fa8 51% 100%)}
.fh-page-hero.fh-hero-expertise .fh-hero-core{background:linear-gradient(145deg,#14814f 0 48%,#101a3a 49% 100%)}
.fh-page-hero.fh-hero-presence .fh-hero-core{background:linear-gradient(145deg,#1a5fa8 0 48%,#e8a93a 49% 100%)}
.fh-page-hero.fh-hero-leadership .fh-hero-core{background:linear-gradient(145deg,#101a3a 0 48%,#14814f 49% 100%)}
.fh-page-hero.fh-hero-contact .fh-hero-core{background:linear-gradient(145deg,#e8a93a 0 48%,#14814f 49% 100%);color:#101a3a}
@media(max-width:800px){
 .fh-hero-inner{grid-template-columns:1fr;gap:22px}
 .fh-hero-copy h1{max-width:15ch}
 .fh-hero-visual{min-height:275px}
 .fh-hero-orbit{width:min(82vw,320px)}
 .fh-hero-core{width:116px;height:116px;border-radius:29px}
 .fh-hero-core strong{font-size:39px}
 .fh-hero-chip.chip-one{left:0;top:10%}
 .fh-hero-chip.chip-two{right:0;top:38%}
 .fh-hero-chip.chip-three{left:3%;bottom:5%}
}
@media(max-width:480px){
 .fh-page-hero{padding:42px 0 40px!important}
 .fh-hero-inner{gap:14px}
 .fh-hero-copy h1{font-size:clamp(2.35rem,11vw,3.1rem)!important}
 .fh-hero-lead{font-size:15px!important;line-height:1.7!important}
 .fh-hero-actions{gap:9px;margin-top:22px}
 .fh-hero-actions a{min-height:44px;padding:11px 15px;font-size:13px}
 .fh-hero-visual{min-height:245px;margin-top:2px}
 .fh-hero-orbit{width:min(78vw,285px)}
 .fh-hero-chip{min-width:132px;padding:9px 11px;border-radius:12px}
 .fh-hero-chip span{font-size:9px}
 .fh-hero-chip b{font-size:12px}
}
@media(prefers-reduced-motion:reduce){.fh-hero-actions a{transition:none}}


/* Premium brand directory cards — logo-led, detailed and responsive */
.brand-grid .fh-brand-card{
  display:block!important;
  min-width:0;
  height:100%;
  padding:0!important;
  border-radius:20px!important;
  text-align:left;
  white-space:normal;
  overflow:hidden;
  background:#fffefa!important;
}
.fh-brand-card[hidden]{display:none!important}
.fh-brand-card .fh-brand-card-head{
  display:flex;align-items:center;gap:16px;padding:22px 22px 18px;
  border-bottom:1px solid #e8e9ec;
  background:linear-gradient(120deg,rgba(26,95,168,.045),rgba(20,129,79,.035));
}
.fh-brand-logo-wrap,.fh-brand-logo-placeholder{
  flex:0 0 76px;width:76px;height:76px;border-radius:16px;
  display:flex;align-items:center;justify-content:center;overflow:hidden;
  border:1px solid #e3e5e9;background:#fff;
}
.fh-brand-logo-wrap img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;padding:8px}
.fh-brand-logo-placeholder{
  color:#fff;background:linear-gradient(145deg,#1a5fa8 0 49%,#14814f 50% 100%);
  font:700 32px/1 "Instrument Sans",system-ui,sans-serif;
}
.fh-brand-heading{min-width:0;flex:1}
.fh-brand-kicker{display:block;color:#14814f;font:700 10px/1.4 "Instrument Sans",system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.fh-brand-heading h3{margin:6px 0 0;color:#101a3a;font:700 22px/1.2 "Fraunces",Georgia,serif;overflow-wrap:anywhere}
.fh-brand-subcategory{margin:6px 0 0;color:#68718a;font-size:12px;line-height:1.5}
.fh-brand-description{padding:18px 22px 0}
.fh-brand-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;padding:0 22px 18px}
.fh-brand-detail{min-width:0;padding:14px 0 0}
.fh-brand-description .fh-brand-detail{padding:0 0 16px}
.fh-brand-detail span{display:block;margin-bottom:5px;color:#14814f;font:700 10px/1.4 "Instrument Sans",system-ui,sans-serif;letter-spacing:.09em;text-transform:uppercase}
.fh-brand-detail p{margin:0;color:#55607c;font-size:13px;line-height:1.65;overflow-wrap:anywhere;white-space:pre-line}
.fh-brand-card-footer{display:flex;justify-content:flex-start;padding:0 22px 20px}
.fh-brand-link{display:inline-flex;align-items:center;gap:8px;color:#1a5fa8!important;font-size:13px;font-weight:700;text-decoration:none!important}
.fh-brand-link:hover{text-decoration:underline!important;text-underline-offset:4px}
@media(max-width:600px){
 .brand-grid .fh-brand-card{border-radius:17px!important}
 .fh-brand-card .fh-brand-card-head{gap:12px;padding:17px 16px 15px}
 .fh-brand-logo-wrap,.fh-brand-logo-placeholder{flex-basis:62px;width:62px;height:62px;border-radius:13px}
 .fh-brand-heading h3{font-size:19px}
 .fh-brand-description{padding:15px 16px 0}
 .fh-brand-details{grid-template-columns:minmax(0,1fr);padding:0 16px 16px}
 .fh-brand-detail{padding-top:12px}
 .fh-brand-card-footer{padding:0 16px 17px}
}


/* Brand cards show concise summaries; complete profiles open in a dismissible dialog. */
.fh-brand-card-compact{cursor:pointer;min-height:0;display:flex;flex-direction:column;transition:transform .18s ease,box-shadow .18s ease}
.fh-brand-card-compact:hover,.fh-brand-card-compact:focus-visible{transform:translateY(-3px);box-shadow:0 16px 38px rgba(10,31,58,.14);outline:none}
.fh-brand-card-prompt{margin:18px 0 0;padding-top:12px;border-top:1px solid rgba(19,49,75,.12);font-size:.86rem;font-weight:700;color:#167a55;display:flex;justify-content:space-between;align-items:center}
.fh-brand-modal[hidden]{display:none!important}
.fh-brand-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:20px}
.fh-brand-modal-backdrop{position:absolute;inset:0;background:rgba(7,20,39,.72);backdrop-filter:blur(5px)}
.fh-brand-modal-dialog{position:relative;width:min(780px,100%);max-height:min(88vh,900px);overflow:auto;background:#fffdf8;color:#152b43;border-radius:22px;box-shadow:0 28px 90px rgba(0,0,0,.3);padding:clamp(22px,4vw,42px);outline:none}
.fh-brand-modal-close{position:sticky;top:0;float:right;z-index:2;width:42px;height:42px;border:0;border-radius:50%;background:#edf2f4;color:#17334b;font-size:30px;line-height:1;cursor:pointer;display:grid;place-items:center;margin:-8px -8px 8px 16px}
.fh-brand-modal-close:hover{background:#dcebe4;color:#126847}
.fh-brand-modal-head{display:flex;align-items:center;gap:18px;padding:6px 38px 22px 0;border-bottom:1px solid #e4e8e8}
.fh-brand-modal-head h2{margin:6px 0;font-size:clamp(1.5rem,3vw,2.15rem);line-height:1.18;color:#122d49}
.fh-brand-modal-head .fh-brand-logo-wrap,.fh-brand-modal-head .fh-brand-logo-placeholder{width:92px;height:92px;min-width:92px}
.fh-brand-modal-section{padding:22px 0 4px}
.fh-brand-modal-section h3{margin:0 0 8px;font-size:1.05rem;color:#126847}
.fh-brand-modal-section p{margin:0;line-height:1.75;white-space:pre-line;overflow-wrap:anywhere}
.fh-brand-modal-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
.fh-brand-modal-details .fh-brand-detail{padding:14px;border:1px solid #e4e8e8;border-radius:12px;background:#fff}
.fh-brand-modal-details .fh-brand-detail p{overflow-wrap:anywhere;white-space:pre-line}
.fh-brand-modal-footer{margin-top:22px}
body.fh-brand-modal-open{overflow:hidden}
@media(max-width:560px){.fh-brand-modal{padding:10px}.fh-brand-modal-dialog{max-height:92vh;padding:20px 16px;border-radius:17px}.fh-brand-modal-head{align-items:flex-start;gap:12px}.fh-brand-modal-head .fh-brand-logo-wrap,.fh-brand-modal-head .fh-brand-logo-placeholder{width:68px;height:68px;min-width:68px}.fh-brand-modal-details{grid-template-columns:1fr}.fh-brand-modal-close{width:38px;height:38px;font-size:27px}}


/* Premium brand directory cards: fixed header row, readable details below. */
.brand-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:22px!important;align-items:stretch}
.brand-grid .fh-brand-card-compact{display:flex!important;flex-direction:column;min-width:0;height:100%;padding:0!important;border:1px solid #e4e9ed!important;border-radius:20px!important;background:#fff!important;box-shadow:0 8px 24px rgba(16,35,58,.06)!important;overflow:hidden;white-space:normal!important;text-align:left!important}
.brand-grid .fh-brand-card-compact:hover,.brand-grid .fh-brand-card-compact:focus-visible{border-color:#b8d8c8!important;box-shadow:0 16px 34px rgba(16,35,58,.12)!important;transform:translateY(-3px)}
.brand-grid .fh-brand-card-compact .fh-brand-card-head{display:flex!important;align-items:flex-start!important;gap:16px!important;padding:22px!important;min-height:124px;border-bottom:1px solid #edf0f2;background:linear-gradient(135deg,#f7faf8,#fff)!important}
.brand-grid .fh-brand-card-compact .fh-brand-logo-wrap,.brand-grid .fh-brand-card-compact .fh-brand-logo-placeholder{flex:0 0 76px!important;width:76px!important;height:76px!important;min-width:76px!important;border-radius:15px!important}
.brand-grid .fh-brand-card-compact .fh-brand-heading{flex:1;min-width:0;padding-top:2px}
.brand-grid .fh-brand-card-compact .fh-brand-heading h3{margin:7px 0 0!important;font-size:clamp(19px,1.6vw,23px)!important;line-height:1.2!important;overflow-wrap:anywhere;word-break:normal}
.brand-grid .fh-brand-card-compact .fh-brand-kicker{font-size:10px!important;line-height:1.45;letter-spacing:.12em}
.fh-brand-card-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;padding:8px 22px 16px;flex:1}
.fh-brand-mini-item{min-width:0;padding-top:14px}
.fh-brand-mini-item span{display:block;margin-bottom:5px;color:#14814f;font-size:10px;line-height:1.4;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.fh-brand-mini-item p{margin:0;color:#526078;font-size:13px;line-height:1.5;overflow-wrap:anywhere;word-break:normal;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.fh-brand-card-prompt{margin:0!important;padding:15px 22px!important;border-top:1px solid #e9edef!important;background:#fbfcfb;display:flex;align-items:center;justify-content:space-between;gap:10px;color:#fff!important;font-size:14px!important;line-height:1.3;font-weight:700;background:#102f50!important}
.fh-brand-card-prompt span:first-child{min-width:0}
.fh-brand-card-prompt span:last-child{font-size:20px;flex:0 0 auto}
@media(max-width:900px){.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}.brand-grid .fh-brand-card-compact .fh-brand-card-head{gap:13px!important;padding:18px!important}.brand-grid .fh-brand-card-compact .fh-brand-logo-wrap,.brand-grid .fh-brand-card-compact .fh-brand-logo-placeholder{flex-basis:68px!important;width:68px!important;height:68px!important;min-width:68px!important}.fh-brand-card-summary{padding:6px 18px 15px;gap:0 12px}}
@media(max-width:600px){.brand-grid{grid-template-columns:minmax(0,1fr)!important;gap:16px!important}.brand-grid .fh-brand-card-compact{border-radius:18px!important}.brand-grid .fh-brand-card-compact .fh-brand-card-head{gap:16px!important;padding:18px!important;min-height:0}.brand-grid .fh-brand-card-compact .fh-brand-logo-wrap,.brand-grid .fh-brand-card-compact .fh-brand-logo-placeholder{flex-basis:72px!important;width:72px!important;height:72px!important;min-width:72px!important}.brand-grid .fh-brand-card-compact .fh-brand-heading h3{font-size:21px!important;line-height:1.22!important}.fh-brand-card-summary{grid-template-columns:repeat(2,minmax(0,1fr));padding:5px 18px 17px;gap:0 16px}.fh-brand-mini-item p{font-size:13px}.fh-brand-card-prompt{padding:15px 18px!important}}


/* Reference-matched Franchise Horizon brand directory */
.brand-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important;align-items:stretch}
.brand-grid .fh-brand-card-compact{box-sizing:border-box;display:flex!important;flex-direction:column;min-width:0;height:100%;padding:0!important;border:1px solid #e4e9ed!important;border-radius:20px!important;background:#fff!important;box-shadow:0 7px 24px rgba(15,39,65,.07)!important;overflow:hidden!important;text-align:left!important;white-space:normal!important;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.brand-grid .fh-brand-card-compact:hover,.brand-grid .fh-brand-card-compact:focus-visible{transform:translateY(-3px);border-color:#c8ded3!important;box-shadow:0 16px 34px rgba(15,39,65,.12)!important;outline:none}
.brand-grid .fh-brand-card-compact .fh-brand-card-head{box-sizing:border-box;display:flex!important;align-items:flex-start!important;gap:16px!important;padding:22px 22px 17px!important;min-height:116px;border:0!important;border-bottom:1px solid #edf0f2!important;background:#fff!important}
.brand-grid .fh-brand-card-compact .fh-brand-logo-wrap,.brand-grid .fh-brand-card-compact .fh-brand-logo-placeholder{box-sizing:border-box;flex:0 0 76px!important;width:76px!important;height:76px!important;min-width:76px!important;min-height:76px!important;border-radius:16px!important}
.brand-grid .fh-brand-card-compact .fh-brand-logo-wrap img{display:block;width:100%;height:100%;object-fit:contain;padding:7px}
.brand-grid .fh-brand-card-compact .fh-brand-heading{flex:1 1 auto;min-width:0;padding:1px 0 0}
.brand-grid .fh-brand-card-compact .fh-brand-heading h3{margin:0 0 10px!important;color:#102e50!important;font-family:"Fraunces",Georgia,serif!important;font-size:clamp(19px,1.5vw,23px)!important;line-height:1.18!important;font-weight:700!important;overflow-wrap:anywhere;word-break:normal}
.fh-brand-category-pill{display:inline-flex;align-items:center;max-width:100%;padding:7px 11px;border-radius:999px;background:#e8f4ee;color:#17643f;font-size:12px;font-weight:700;line-height:1.35;overflow-wrap:anywhere}
.brand-grid .fh-brand-card-compact .fh-brand-subcategory{margin:7px 0 0!important;color:#53617a;font-size:12px;line-height:1.45;overflow-wrap:anywhere}
.fh-brand-card-description{box-sizing:border-box;margin:0!important;padding:17px 22px 18px!important;color:#344661;font-size:14px!important;line-height:1.6!important;overflow-wrap:anywhere;white-space:normal;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:84px;border-bottom:1px solid #e9edef}
.fh-brand-card-summary{box-sizing:border-box;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;padding:2px 22px 18px!important;flex:1 1 auto;align-content:start}
.fh-brand-mini-item{box-sizing:border-box;min-width:0;padding-top:16px}
.fh-brand-mini-item span{display:block;margin:0 0 5px!important;color:#65748a!important;font-size:11px!important;line-height:1.3!important;font-weight:600!important;letter-spacing:0!important;text-transform:none!important}
.fh-brand-mini-item p{margin:0!important;color:#102e50!important;font-size:13px!important;line-height:1.45!important;font-weight:600;overflow-wrap:anywhere;word-break:normal;white-space:normal;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.brand-grid .fh-brand-card-prompt{box-sizing:border-box;display:flex!important;align-items:center;justify-content:space-between;gap:12px;margin:auto 0 0!important;padding:16px 22px!important;border:0!important;border-top:1px solid #e9edef!important;border-radius:0!important;background:#0d2d50!important;color:#fff!important;font-size:14px!important;line-height:1.3!important;font-weight:700!important;white-space:normal}
.brand-grid .fh-brand-card-prompt span:first-child{min-width:0}
.brand-grid .fh-brand-card-prompt span:last-child{flex:0 0 auto;font-size:21px;line-height:1}
@media(min-width:1400px){.brand-grid{gap:24px!important}.fh-brand-card-description{font-size:15px!important}}
@media(max-width:1050px){.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}.brand-grid .fh-brand-card-compact .fh-brand-card-head{padding:20px!important}.fh-brand-card-description{padding:16px 20px!important}.fh-brand-card-summary{padding:2px 20px 18px!important}.brand-grid .fh-brand-card-prompt{padding:15px 20px!important}}
@media(max-width:600px){.brand-grid{grid-template-columns:minmax(0,1fr)!important;gap:16px!important}.brand-grid .fh-brand-card-compact{border-radius:18px!important}.brand-grid .fh-brand-card-compact .fh-brand-card-head{gap:16px!important;padding:18px!important;min-height:0}.brand-grid .fh-brand-card-compact .fh-brand-logo-wrap,.brand-grid .fh-brand-card-compact .fh-brand-logo-placeholder{flex-basis:72px!important;width:72px!important;height:72px!important;min-width:72px!important;min-height:72px!important}.brand-grid .fh-brand-card-compact .fh-brand-heading h3{font-size:21px!important;line-height:1.2!important}.fh-brand-card-description{min-height:0;padding:15px 18px 16px!important;font-size:14px!important}.fh-brand-card-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;padding:0 18px 17px!important}.fh-brand-mini-item{padding-top:14px}.brand-grid .fh-brand-card-prompt{padding:15px 18px!important}}

/* Use the exact existing header logo in all interior page hero marks. */
.fh-hero-core.fh-hero-core-logo{width:190px!important;height:116px!important;min-width:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;transform:none!important;display:grid!important;place-items:center!important;overflow:visible!important}
.fh-hero-core.fh-hero-core-logo:before{content:"";display:block;width:100%;height:100%;background-image:url("assets/franchise-horizon-hero.webp");background-repeat:no-repeat;background-position:center;background-size:contain}
.fh-hero-core.fh-hero-core-logo strong,.fh-hero-core.fh-hero-core-logo span{display:none!important}
@media(max-width:800px){.fh-hero-core.fh-hero-core-logo{width:160px!important;height:98px!important}}


/* Page-specific FH visual tiles supplied on 30 October 2026. */
.fh-hero-core.fh-hero-core-logo{
  width:160px!important;height:160px!important;min-width:0!important;
  border-radius:0!important;background-color:transparent!important;
  background-repeat:no-repeat!important;background-position:center!important;
  background-size:contain!important;box-shadow:none!important;
  transform:none!important;display:block!important;overflow:visible!important;
}
.fh-hero-core.fh-hero-core-logo:before{display:none!important;content:none!important}
.fh-page-hero.fh-hero-about .fh-hero-core.fh-hero-core-logo{background-image:url("assets/hero-franchise-horizon.svg")!important}
.fh-page-hero.fh-hero-brands .fh-hero-core.fh-hero-core-logo{background-image:url("assets/hero-brand-growth.svg")!important}
.fh-page-hero.fh-hero-expertise .fh-hero-core.fh-hero-core-logo{background-image:url("assets/hero-our-expertise.svg")!important}
.fh-page-hero.fh-hero-presence .fh-hero-core.fh-hero-core-logo{background-image:url("assets/hero-wider-reach.svg")!important}
.fh-page-hero.fh-hero-leadership .fh-hero-core.fh-hero-core-logo{background-image:url("assets/hero-leadership.svg")!important}
.fh-page-hero.fh-hero-contact .fh-hero-core.fh-hero-core-logo{background-image:url("assets/hero-lets-connect.svg")!important}
@media(max-width:800px){.fh-hero-core.fh-hero-core-logo{width:136px!important;height:136px!important}}
@media(max-width:480px){.fh-hero-core.fh-hero-core-logo{width:124px!important;height:124px!important}}

/* About Us hero: use the supplied original Franchise Horizon wordmark. */
.fh-page-hero.fh-hero-about .fh-hero-core.fh-hero-core-logo{
  width:232px!important;height:120px!important;min-width:0!important;
  border-radius:0!important;background:transparent!important;
  box-shadow:none!important;transform:none!important;
  display:grid!important;place-items:center!important;overflow:visible!important;
}
.fh-page-hero.fh-hero-about .fh-hero-core.fh-hero-core-logo:before{
  content:""!important;display:block!important;width:100%!important;height:100%!important;
  background-image:url("assets/franchise-horizon-hero.webp")!important;
  background-repeat:no-repeat!important;background-position:center!important;
  background-size:contain!important;
}
.fh-page-hero.fh-hero-about .fh-hero-core.fh-hero-core-logo strong,
.fh-page-hero.fh-hero-about .fh-hero-core.fh-hero-core-logo span{display:none!important}
@media(max-width:800px){
  .fh-page-hero.fh-hero-about .fh-hero-core.fh-hero-core-logo{width:198px!important;height:104px!important}
}
@media(max-width:480px){
  .fh-page-hero.fh-hero-about .fh-hero-core.fh-hero-core-logo{width:174px!important;height:92px!important}
}


/* Brands hero: use the same original Franchise Horizon wordmark as About Us. */
.fh-page-hero.fh-hero-brands .fh-hero-core.fh-hero-core-logo{
  width:232px!important;height:120px!important;min-width:0!important;
  border-radius:0!important;background:transparent!important;
  box-shadow:none!important;transform:none!important;
  display:grid!important;place-items:center!important;overflow:visible!important;
}
.fh-page-hero.fh-hero-brands .fh-hero-core.fh-hero-core-logo:before{
  content:""!important;display:block!important;width:100%!important;height:100%!important;
  background-image:url("assets/franchise-horizon-hero.webp")!important;
  background-repeat:no-repeat!important;background-position:center!important;
  background-size:contain!important;
}
.fh-page-hero.fh-hero-brands .fh-hero-core.fh-hero-core-logo strong,
.fh-page-hero.fh-hero-brands .fh-hero-core.fh-hero-core-logo span{display:none!important}
@media(max-width:800px){
  .fh-page-hero.fh-hero-brands .fh-hero-core.fh-hero-core-logo{width:198px!important;height:104px!important}
}
@media(max-width:480px){
  .fh-page-hero.fh-hero-brands .fh-hero-core.fh-hero-core-logo{width:174px!important;height:92px!important}
}


/* Our Expertise hero: use the same original Franchise Horizon wordmark. */
.fh-page-hero.fh-hero-expertise .fh-hero-core.fh-hero-core-logo{
  width:232px!important;height:120px!important;min-width:0!important;
  border-radius:0!important;background:transparent!important;
  box-shadow:none!important;transform:none!important;
  display:grid!important;place-items:center!important;overflow:visible!important;
}
.fh-page-hero.fh-hero-expertise .fh-hero-core.fh-hero-core-logo:before{
  content:""!important;display:block!important;width:100%!important;height:100%!important;
  background-image:url("assets/franchise-horizon-hero.webp")!important;
  background-repeat:no-repeat!important;background-position:center!important;
  background-size:contain!important;
}
.fh-page-hero.fh-hero-expertise .fh-hero-core.fh-hero-core-logo strong,
.fh-page-hero.fh-hero-expertise .fh-hero-core.fh-hero-core-logo span{display:none!important}
@media(max-width:800px){
  .fh-page-hero.fh-hero-expertise .fh-hero-core.fh-hero-core-logo{width:198px!important;height:104px!important}
}
@media(max-width:480px){
  .fh-page-hero.fh-hero-expertise .fh-hero-core.fh-hero-core-logo{width:174px!important;height:92px!important}
}


/* Our Presence hero: use the same original Franchise Horizon wordmark. */
.fh-page-hero.fh-hero-presence .fh-hero-core.fh-hero-core-logo{
  width:232px!important;height:120px!important;min-width:0!important;
  border-radius:0!important;background:transparent!important;
  box-shadow:none!important;transform:none!important;
  display:grid!important;place-items:center!important;overflow:visible!important;
}
.fh-page-hero.fh-hero-presence .fh-hero-core.fh-hero-core-logo:before{
  content:""!important;display:block!important;width:100%!important;height:100%!important;
  background-image:url("assets/franchise-horizon-hero.webp")!important;
  background-repeat:no-repeat!important;background-position:center!important;
  background-size:contain!important;
}
.fh-page-hero.fh-hero-presence .fh-hero-core.fh-hero-core-logo strong,
.fh-page-hero.fh-hero-presence .fh-hero-core.fh-hero-core-logo span{display:none!important}
@media(max-width:800px){
  .fh-page-hero.fh-hero-presence .fh-hero-core.fh-hero-core-logo{width:198px!important;height:104px!important}
}
@media(max-width:480px){
  .fh-page-hero.fh-hero-presence .fh-hero-core.fh-hero-core-logo{width:174px!important;height:92px!important}
}


/* Leadership hero: use the same original Franchise Horizon wordmark. */
.fh-page-hero.fh-hero-leadership .fh-hero-core.fh-hero-core-logo{
  width:232px!important;height:120px!important;min-width:0!important;
  border-radius:0!important;background:transparent!important;
  box-shadow:none!important;transform:none!important;
  display:grid!important;place-items:center!important;overflow:visible!important;
}
.fh-page-hero.fh-hero-leadership .fh-hero-core.fh-hero-core-logo:before{
  content:""!important;display:block!important;width:100%!important;height:100%!important;
  background-image:url("assets/franchise-horizon-hero.webp")!important;
  background-repeat:no-repeat!important;background-position:center!important;
  background-size:contain!important;
}
.fh-page-hero.fh-hero-leadership .fh-hero-core.fh-hero-core-logo strong,
.fh-page-hero.fh-hero-leadership .fh-hero-core.fh-hero-core-logo span{display:none!important}
@media(max-width:800px){
  .fh-page-hero.fh-hero-leadership .fh-hero-core.fh-hero-core-logo{width:198px!important;height:104px!important}
}
@media(max-width:480px){
  .fh-page-hero.fh-hero-leadership .fh-hero-core.fh-hero-core-logo{width:174px!important;height:92px!important}
}


/* Contact Us hero: use the same original Franchise Horizon wordmark. */
.fh-page-hero.fh-hero-contact .fh-hero-core.fh-hero-core-logo{
  width:232px!important;height:120px!important;min-width:0!important;
  border-radius:0!important;background:transparent!important;
  box-shadow:none!important;transform:none!important;
  display:grid!important;place-items:center!important;overflow:visible!important;
}
.fh-page-hero.fh-hero-contact .fh-hero-core.fh-hero-core-logo:before{
  content:""!important;display:block!important;width:100%!important;height:100%!important;
  background-image:url("assets/franchise-horizon-hero.webp")!important;
  background-repeat:no-repeat!important;background-position:center!important;
  background-size:contain!important;
}
.fh-page-hero.fh-hero-contact .fh-hero-core.fh-hero-core-logo strong,
.fh-page-hero.fh-hero-contact .fh-hero-core.fh-hero-core-logo span{display:none!important}
@media(max-width:800px){
  .fh-page-hero.fh-hero-contact .fh-hero-core.fh-hero-core-logo{width:198px!important;height:104px!important}
}
@media(max-width:480px){
  .fh-page-hero.fh-hero-contact .fh-hero-core.fh-hero-core-logo{width:174px!important;height:92px!important}
}


/* Reliable original logo rendering for every inner-page hero. */
.fh-page-hero .fh-hero-core.fh-hero-core-logo{
  background:transparent!important;
  background-image:none!important;
}
.fh-page-hero .fh-hero-core.fh-hero-core-logo:before{
  content:none!important;
  display:none!important;
  background-image:none!important;
}
.fh-page-hero .fh-hero-core.fh-hero-core-logo .fh-hero-logo-img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  padding:0!important;
  margin:0!important;
}


/* Remove the legacy miniature FH mark underneath the original hero logo.
   The page-specific SVG background rules have higher specificity, so reset each page explicitly. */
.fh-page-hero.fh-hero-about .fh-hero-core.fh-hero-core-logo,
.fh-page-hero.fh-hero-brands .fh-hero-core.fh-hero-core-logo,
.fh-page-hero.fh-hero-expertise .fh-hero-core.fh-hero-core-logo,
.fh-page-hero.fh-hero-presence .fh-hero-core.fh-hero-core-logo,
.fh-page-hero.fh-hero-leadership .fh-hero-core.fh-hero-core-logo,
.fh-page-hero.fh-hero-contact .fh-hero-core.fh-hero-core-logo{
  background-image:none!important;
  background-color:transparent!important;
}
