
/* Canada Lawyer Search — Premium UI v1.1.0
   Canonical public filenames remain permanent.
   Presentation-only release. */

:root{
  --cl-ink:#092e3b;
  --cl-ink2:#173f4b;
  --cl-deep:#043d48;
  --cl-deeper:#022f39;
  --cl-teal:#076774;
  --cl-teal2:#099092;
  --cl-aqua:#1aa7a2;
  --cl-paper:#f4f8f7;
  --cl-paper2:#eef5f3;
  --cl-white:#fff;
  --cl-gold:#e4b94e;
  --cl-gold2:#f3d47c;
  --cl-goldbg:#fff5d6;
  --cl-mint:#eaf6f2;
  --cl-line:#d4e2df;
  --cl-muted:#647a80;
  --cl-shadow:0 30px 80px rgba(6,49,58,.17);
  --cl-shadow2:0 18px 48px rgba(7,52,60,.12);
  --cl-shadow3:0 9px 26px rgba(7,52,60,.08);
  --cl-serif:Georgia,"Times New Roman",serif;
  --cl-sans:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}

html{scroll-behavior:smooth}
body.cl-page{
  margin:0;
  background:
    radial-gradient(circle at 10% 0%,rgba(228,185,78,.075),transparent 28rem),
    linear-gradient(180deg,#f8fbfa,#f2f7f6 55%,#f7faf9);
  color:var(--cl-ink);
  font-family:var(--cl-sans);
  -webkit-font-smoothing:antialiased;
}

/* ---------- Brand / utility / nav ---------- */
.cl-page .topline,
.cl-page .topbar,
.cl-page .top,
.cl-page .top-note,
.cl-page .notice{
  min-height:27px;
  padding:5px 16px!important;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(90deg,#022f39,#064d59 52%,#033b46)!important;
  color:#dcebea!important;
  border:0!important;
  font-size:10px!important;
  letter-spacing:.025em;
}

.cl-page .site-header,
.cl-page .header{
  background:rgba(255,255,255,.975)!important;
  border-bottom:1px solid rgba(8,63,72,.10)!important;
  box-shadow:0 8px 28px rgba(3,42,51,.055)!important;
  backdrop-filter:blur(14px) saturate(130%);
}

.cl-page .header-inner,
.cl-page .site-header-inner,
.cl-page .header .inner,
.cl-page .header .wrap,
.cl-page .nav>.wrap{
  width:min(1180px,calc(100% - 36px))!important;
  max-width:none!important;
  margin-inline:auto!important;
}

.cl-page .brand{
  display:flex!important;
  align-items:center!important;
  gap:11px!important;
  color:#0d3140!important;
  font-family:var(--cl-serif)!important;
  font-size:19px!important;
  font-weight:800!important;
  letter-spacing:-.02em!important;
  text-decoration:none!important;
}

.cl-page .mark,
.cl-page .brand-mark{
  width:36px!important;height:36px!important;
  border:1px solid rgba(197,153,39,.72)!important;
  border-radius:50%!important;
  display:grid!important;place-items:center!important;
  background:linear-gradient(145deg,#fff,#f0f8f5)!important;
  color:#076161!important;
  box-shadow:0 5px 16px rgba(7,73,77,.09)!important;
}

.cl-page .site-header .brand img{display:none!important}
.cl-page .site-header .brand::before{
  content:"⚖️";
  width:36px;height:36px;flex:0 0 36px;
  border-radius:50%;
  display:grid;place-items:center;
  border:1px solid rgba(197,153,39,.72);
  background:linear-gradient(145deg,#fff,#f0f8f5);
  color:#076161;
  box-shadow:0 5px 16px rgba(7,73,77,.09);
  font:700 22px/1 var(--cl-serif);
}

.cl-page .nav a,
.cl-page .navlinks a{
  position:relative;
  color:#1b414c!important;
  text-decoration:none!important;
  font-size:11px!important;
  font-weight:850!important;
  transition:.18s ease;
}
.cl-page .nav a:hover,.cl-page .navlinks a:hover{color:#067778!important}
.cl-page .nav a.active::after,.cl-page .navlinks a.active::after{
  content:"";position:absolute;left:0;right:0;bottom:-11px;height:3px;border-radius:99px;
  background:linear-gradient(90deg,var(--cl-gold),#f1cd70);
}

/* ---------- Universal premium image-backed hero v1.2.0 ---------- */
.cl-page .hero,
.cl-page .profile-hero{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate;
  color:#fff!important;
  min-height:520px!important;
  background-image:
    linear-gradient(90deg,
      rgba(2,31,40,.97) 0%,
      rgba(3,48,58,.93) 28%,
      rgba(4,63,72,.78) 50%,
      rgba(4,64,71,.42) 67%,
      rgba(2,31,39,.16) 100%),
    linear-gradient(180deg,rgba(1,23,30,.08),rgba(1,23,30,.18)),
    url("canada-lawyer-header.jpg")!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
  box-shadow:inset 0 -90px 110px rgba(2,35,43,.18)!important;
}

.cl-page .hero::before,
.cl-page .profile-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    radial-gradient(circle at 76% 44%,rgba(10,176,176,.12),transparent 25rem),
    linear-gradient(115deg,rgba(3,45,54,.10),transparent 56%);
}

.cl-page .hero::after,
.cl-page .profile-hero::after{
  content:"";
  position:absolute;
  z-index:-1;
  pointer-events:none;
  width:760px;
  height:760px;
  right:-390px;
  top:-280px;
  border-radius:50%;
  border:1.4px solid rgba(235,190,74,.60);
  box-shadow:
    0 0 0 52px rgba(235,190,74,.025),
    0 0 0 104px rgba(235,190,74,.016);
}

.cl-page .hero>.wrap,
.cl-page .hero>.inner,
.cl-page .hero>.hero-inner,
.cl-page .hero .hero-grid,
.cl-page .profile-hero-inner{
  width:min(1220px,calc(100% - 48px))!important;
  max-width:none!important;
  margin-inline:auto!important;
  position:relative!important;
  z-index:2!important;
}

.cl-page .hero>.wrap,
.cl-page .hero>.inner,
.cl-page .hero>.hero-inner,
.cl-page .profile-hero-inner{
  padding-top:68px!important;
  padding-bottom:112px!important;
}

.cl-page .hero .hero-grid{
  padding-top:64px!important;
  padding-bottom:100px!important;
}

.cl-page .hero h1,
.cl-page .profile-hero h1{
  margin:10px 0 20px!important;
  width:min(720px,62%)!important;
  color:#fff!important;
  font-family:var(--cl-serif)!important;
  font-size:clamp(44px,5.1vw,72px)!important;
  font-weight:700!important;
  letter-spacing:-.045em!important;
  line-height:.97!important;
  text-wrap:balance;
  text-shadow:0 5px 34px rgba(0,0,0,.34)!important;
}

.cl-page .hero p,
.cl-page .hero-lead,
.cl-page .profile-hero p{
  width:min(690px,60%)!important;
  margin-bottom:18px!important;
  color:#e0eeec!important;
  line-height:1.65!important;
  font-size:15px!important;
  text-shadow:0 2px 18px rgba(0,0,0,.28);
}

.cl-page .eyebrow,
.cl-page .kicker,
.cl-page .hero-kicker,
.cl-page .section-tag,
.cl-page .tag,
.cl-page .search-kicker{
  color:#f0c557!important;
  font-size:10px!important;
  font-weight:950!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
}

.cl-page .hero-pills,
.cl-page .chips,
.cl-page .hero-points{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:9px!important;
  width:min(720px,62%)!important;
}

.cl-page .hero-pill,
.cl-page .chip,
.cl-page .hero-point,
.cl-page .pill{
  min-height:34px!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  padding:8px 13px!important;
  border:1px solid rgba(228,185,78,.55)!important;
  border-radius:999px!important;
  background:rgba(2,40,49,.50)!important;
  color:#fff!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 8px 22px rgba(0,0,0,.08)!important;
  backdrop-filter:blur(10px) saturate(120%);
}

.cl-page .hero-point b,
.cl-page .hero-pill b{
  color:#fff!important;
}
.cl-page .hero-point small{
  color:#bcd4d2!important;
}

/* Real photo replaces the old synthetic skyline decoration. */
.cl-page .hero .hero-inner::after,
.cl-page .profile-hero .profile-hero-inner::after{
  display:none!important;
}

/* Main search hero is intentionally taller and more cinematic. */
.cl-page.page-home .hero,
.cl-page.page-match .hero,
.cl-page.page-provider .hero{
  min-height:610px!important;
}
.cl-page.page-home .hero h1,
.cl-page.page-match .hero h1,
.cl-page.page-provider .hero h1{
  font-size:clamp(50px,5.6vw,78px)!important;
}

/* Directory/profile layouts keep text left and premium panel right. */
.cl-page .hero-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1.2fr) minmax(320px,.72fr)!important;
  gap:54px!important;
  align-items:center!important;
}
.cl-page .hero-grid h1,
.cl-page .hero-grid p{
  width:auto!important;
}

/* Existing directory helper card becomes a glass hero panel. */
.cl-page .hero-card{
  border:1px solid rgba(255,255,255,.34)!important;
  border-radius:20px!important;
  padding:23px!important;
  background:
    linear-gradient(180deg,rgba(248,252,251,.91),rgba(231,242,239,.84))!important;
  color:var(--cl-ink)!important;
  box-shadow:0 30px 76px rgba(0,0,0,.24)!important;
  backdrop-filter:blur(18px) saturate(135%);
}
.cl-page .hero-card strong{
  color:#123942!important;
  font-family:var(--cl-serif)!important;
  font-size:24px!important;
  line-height:1.08!important;
}
.cl-page .hero-card p{
  width:auto!important;
  color:#5a7278!important;
  text-shadow:none!important;
}

/* Firm profile facts become translucent premium glass. */
.cl-page .hero-facts{
  position:relative!important;
  z-index:3!important;
  border:1px solid rgba(255,255,255,.30)!important;
  border-radius:18px!important;
  padding:12px!important;
  background:rgba(5,50,59,.40)!important;
  box-shadow:0 24px 58px rgba(0,0,0,.18)!important;
  backdrop-filter:blur(14px) saturate(130%);
}
.cl-page .hero-fact{
  border:1px solid rgba(255,255,255,.17)!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
}
.cl-page .hero-fact span,
.cl-page .hero-fact small{
  color:#cfe2df!important;
}

/* Responsive hero behavior. */
@media(max-width:980px){
  .cl-page .hero,
  .cl-page .profile-hero{
    min-height:auto!important;
    background-position:68% center!important;
  }
  .cl-page .hero h1,
  .cl-page .profile-hero h1,
  .cl-page .hero p,
  .cl-page .profile-hero p,
  .cl-page .hero-pills,
  .cl-page .hero-points{
    width:min(760px,100%)!important;
  }
  .cl-page .premium-hero-card{
    position:relative!important;
    right:auto!important;
    top:auto!important;
    transform:none!important;
    width:min(620px,100%)!important;
    margin-top:26px!important;
  }
  .cl-page .hero-grid{
    grid-template-columns:1fr!important;
    gap:22px!important;
  }
}

@media(max-width:620px){
  .cl-page .hero,
  .cl-page .profile-hero{
    background-position:72% center!important;
  }
  .cl-page .hero::before,
  .cl-page .profile-hero::before{
    background:linear-gradient(90deg,rgba(2,31,40,.96),rgba(3,49,58,.85))!important;
  }
  .cl-page .hero>.wrap,
  .cl-page .hero>.inner,
  .cl-page .hero>.hero-inner,
  .cl-page .profile-hero-inner{
    width:min(100% - 28px,1220px)!important;
    padding-top:48px!important;
    padding-bottom:78px!important;
  }
  .cl-page .hero h1,
  .cl-page .profile-hero h1{
    font-size:clamp(38px,11vw,52px)!important;
  }
}

/* ---------- Floating intelligence card ---------- */
.cl-page .premium-hero-card{
  position:absolute!important;
  right:0!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:min(370px,34vw)!important;
  padding:20px!important;
  border:1px solid rgba(255,255,255,.32)!important;
  border-radius:19px!important;
  background:
    linear-gradient(180deg,rgba(245,252,250,.22),rgba(3,48,57,.48))!important;
  box-shadow:0 28px 72px rgba(0,0,0,.24)!important;
  backdrop-filter:blur(18px) saturate(135%);
  color:#fff!important;
}
.cl-page .premium-hero-card .phc-top{
  display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px
}
.cl-page .premium-hero-card .phc-label{
  color:var(--cl-gold)!important;font-size:9px;font-weight:950;letter-spacing:.13em;text-transform:uppercase
}
.cl-page .premium-hero-card .phc-badge{
  padding:6px 9px;border-radius:999px;background:#65c9ac;color:#073b3e;font-size:9px;font-weight:900
}
.cl-page .premium-hero-card h3{
  margin:0 0 12px;color:#fff!important;font:700 23px/1.08 var(--cl-serif)!important
}
.cl-page .premium-hero-card .phc-row{
  display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;
  margin-top:8px;padding:11px;border-radius:12px;
  background:rgba(255,255,255,.94);color:var(--cl-ink);
  box-shadow:0 9px 23px rgba(0,0,0,.11)
}
.cl-page .premium-hero-card .phc-icon{
  width:34px;height:34px;border-radius:50%;display:grid;place-items:center;
  background:#f0f7f5;color:#ad7a0d;font-weight:900
}
.cl-page .premium-hero-card .phc-row strong{display:block;font-size:11px}
.cl-page .premium-hero-card .phc-row small{display:block;color:#6b8085;font-size:9px;line-height:1.35;margin-top:2px}
.cl-page .premium-hero-card .phc-arrow{font-size:19px;color:#086b73}
.cl-page .premium-hero-card .phc-foot{
  margin-top:12px;padding-top:11px;border-top:1px solid rgba(255,255,255,.22);
  color:#d8e6e4;font-size:9px;line-height:1.45
}

/* ---------- Cards / controls / page body ---------- */
.cl-page .platform-match-shell,
.cl-page .search-shell,
.cl-page .lookup,
.cl-page .hero-card,
.cl-page .search-card{
  border:1px solid rgba(211,226,223,.98)!important;
  border-radius:20px!important;
  background:rgba(255,255,255,.985)!important;
  box-shadow:var(--cl-shadow)!important;
}
.cl-page .card,.cl-page .panel,.cl-page .profile,.cl-page .section,
.cl-page .ask,.cl-page .coverage,.cl-page .result,.cl-page .result-card{
  border-color:rgba(209,225,222,.98)!important;
  border-radius:16px!important;
  box-shadow:var(--cl-shadow3)!important;
}
.cl-page h2,.cl-page h3{letter-spacing:-.025em}
.cl-page .platform-match-shell h2,
.cl-page .search-card h2,
.cl-page .lookup h2,
.cl-page .panel h2{
  font-family:var(--cl-serif)!important;
}

.cl-page input,.cl-page select,.cl-page textarea{
  border:1px solid #cadbd8!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#173b46!important;
  box-shadow:inset 0 1px 2px rgba(7,47,55,.025)!important;
}
.cl-page input:focus,.cl-page select:focus,.cl-page textarea:focus{
  outline:0!important;border-color:#26918c!important;
  box-shadow:0 0 0 3px rgba(38,145,140,.12)!important
}

.cl-page .platform-match-btn,
.cl-page .btn.primary,
.cl-page .primary,
.cl-page .search-row button,
.cl-page .searchbox .btn{
  border:0!important;
  border-radius:10px!important;
  background:linear-gradient(135deg,#065663,#087d84)!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(6,99,106,.22)!important;
  font-weight:900!important;
}
.cl-page .platform-match-btn:hover,.cl-page .btn.primary:hover,.cl-page .primary:hover{
  filter:brightness(1.04);transform:translateY(-1px)
}
.cl-page .btn.gold,.cl-page .provider-band-btn{
  background:linear-gradient(135deg,#f8e9b1,#e4bb53)!important;
  color:#5b450b!important;
  border:1px solid rgba(187,142,28,.25)!important;
  box-shadow:0 8px 19px rgba(163,121,19,.13)!important
}
.cl-page .btn.soft{
  background:#f2f8f6!important;color:#285a60!important;border:1px solid #d8e5e2!important
}

.cl-page .tabs{display:flex;gap:8px!important;flex-wrap:wrap!important}
.cl-page .tab{
  border-radius:999px!important;border:1px solid #d5e3e0!important;
  background:#fff!important;color:#31555c!important;font-weight:850!important
}
.cl-page .tab.active{
  border-color:transparent!important;background:linear-gradient(135deg,#065662,#08787e)!important;
  color:#fff!important;box-shadow:0 7px 18px rgba(6,88,96,.16)!important
}

.cl-page .stats,.cl-page .stat-grid,.cl-page .metric-grid{position:relative;z-index:4}
.cl-page .stat{border-radius:14px!important}

/* ---------- Strong overlap / hierarchy by page ---------- */
.cl-home .hero{padding:62px 0 50px!important}
.cl-home .hero h1{font-size:clamp(52px,5.65vw,80px)!important;max-width:790px!important}
.cl-home .hero-inner{position:relative!important}
.cl-home .premium-hero-card{top:210px!important}
.cl-home .platform-match-shell{
  margin-top:48px!important;padding:27px!important;max-width:1120px!important
}
.cl-home .platform-match-shell h2{font-size:34px!important}

.cl-match .hero{padding:68px 0 96px!important}
.cl-match .hero .wrap{position:relative!important}
.cl-match .hero h1{font-size:clamp(50px,5.25vw,76px)!important;max-width:760px!important}
.cl-match main.wrap{margin-top:-58px!important;z-index:5!important}
.cl-match .search-card{padding:27px!important}

.cl-directory .hero{padding:64px 0 97px!important}
.cl-directory .hero-grid{
  display:grid!important;grid-template-columns:minmax(0,1.3fr) minmax(310px,.7fr)!important;
  gap:42px!important;align-items:center!important
}
.cl-directory .hero h1{font-size:clamp(53px,5.25vw,76px)!important}
.cl-directory .hero-card{
  padding:25px!important;border:1px solid rgba(255,255,255,.40)!important;
  background:rgba(255,255,255,.90)!important;color:var(--cl-ink)!important;
  box-shadow:0 28px 70px rgba(0,0,0,.20)!important;backdrop-filter:blur(17px)
}
.cl-directory .hero-card strong{
  display:block!important;color:var(--cl-ink)!important;font:700 28px/1.06 var(--cl-serif)!important
}
.cl-directory .hero-card p{color:#60777d!important}
.cl-directory .stats{margin-top:-46px!important;z-index:5!important}
.cl-directory .search-shell{margin-top:24px!important;padding:23px!important}

.cl-provider .hero{padding:68px 0 102px!important}
.cl-provider .hero .wrap{position:relative!important}
.cl-provider .hero h1{font-size:clamp(50px,5.2vw,75px)!important;max-width:760px!important}
.cl-provider .lookup-shell{margin-top:-58px!important;z-index:5!important}
.cl-provider .lookup{padding:27px!important}

/* Profiles */
.cl-lawyer-profile .hero,.cl-firm-profile .profile-hero{padding:62px 0 92px!important}
.cl-lawyer-profile .hero h1,.cl-firm-profile .profile-hero h1{
  font-size:clamp(49px,5vw,70px)!important;max-width:710px!important
}
.cl-lawyer-profile .page,.cl-firm-profile .profile-shell{
  position:relative!important;z-index:5!important;margin-top:-50px!important
}

/* Intelligence pages */
.cl-lawyer-intelligence .hero,.cl-firm-intelligence .hero{
  padding:68px 0 106px!important
}
.cl-lawyer-intelligence .hero h1,.cl-firm-intelligence .hero h1{
  font-size:clamp(51px,5.1vw,73px)!important;max-width:720px!important
}
.cl-lawyer-intelligence .page,.cl-firm-intelligence .page{
  position:relative!important;z-index:5!important;margin-top:-56px!important
}

/* Claim / Question pages */
.cl-lawyer-claim .hero,.cl-firm-claim .hero,
.cl-lawyer-question .hero,.cl-firm-question .hero{
  padding:64px 0 98px!important
}
.cl-lawyer-claim .hero h1,.cl-firm-claim .hero h1,
.cl-lawyer-question .hero h1,.cl-firm-question .hero h1{
  font-size:clamp(48px,4.9vw,70px)!important;max-width:750px!important
}
.cl-lawyer-claim .page,.cl-firm-claim .page,
.cl-lawyer-question .page,.cl-firm-question .page{
  position:relative!important;z-index:5!important;margin-top:-50px!important
}

/* Bring ordinary middle sections into same system */
.cl-page main section:not(.hero):not(.provider-band){
  position:relative;
}
.cl-home .steps,.cl-home .categories,.cl-home .map-section,.cl-home .directory-browse,
.cl-home .browse-results,.cl-home .interpretation{
  padding-top:54px!important;padding-bottom:54px!important
}
.cl-home .steps h2,.cl-home .categories h2,.cl-home .map-section h2,
.cl-home .directory-browse h2,.cl-home .browse-results h2,.cl-home .interpretation h2{
  font-family:var(--cl-serif)!important;
  font-size:clamp(30px,3vw,42px)!important;
  line-height:1.04!important
}

/* Footer / provider CTA */
.cl-page .provider-band{
  background:linear-gradient(105deg,#033842,#075b66 58%,#0a8584)!important;
  border-top:1px solid rgba(255,255,255,.08)!important
}
.cl-page .provider-band-inner{width:min(1180px,calc(100% - 48px))!important;margin:auto!important}
.cl-page footer,.cl-page .site-footer{
  background:linear-gradient(180deg,#043844,#032f3a)!important;color:#d8e7e5!important
}

/* Responsive */
@media(min-width:1000px){
  .cl-page .hero:has(.premium-hero-card) h1,
  .cl-page .hero:has(.premium-hero-card) p,
  .cl-page .hero:has(.premium-hero-card) .hero-pills,
  .cl-page .hero:has(.premium-hero-card) .hero-points,
  .cl-page .hero:has(.premium-hero-card) .chips,
  .cl-page .profile-hero:has(.premium-hero-card) h1,
  .cl-page .profile-hero:has(.premium-hero-card) p{
    max-width:700px!important
  }
}
@media(max-width:999px){
  .cl-page .premium-hero-card{
    position:relative!important;right:auto!important;top:auto!important;
    transform:none!important;width:100%!important;margin-top:25px!important
  }
  .cl-home .premium-hero-card{top:auto!important}
  .cl-directory .hero-grid{grid-template-columns:1fr!important}
  .cl-page .hero h1,.cl-page .profile-hero h1{font-size:clamp(39px,8vw,58px)!important}
}
@media(max-width:760px){
  .cl-page .header-inner,.cl-page .site-header-inner,.cl-page .header .wrap,
  .cl-page .hero>.wrap,.cl-page .hero>.inner,.cl-page .hero>.hero-inner,
  .cl-page .profile-hero-inner{width:min(100% - 24px,1180px)!important}
  .cl-page .nav,.cl-page .navlinks{gap:9px!important;overflow:auto!important;white-space:nowrap!important}
  .cl-page .premium-hero-card{padding:15px!important}
  .cl-page .hero::after,.cl-page .profile-hero::after{opacity:.55}
}


/* ---------- Image-backed hero finishing overrides v1.2.0 ---------- */
.cl-page .premium-hero-card{
  right:0!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:min(390px,34vw)!important;
  padding:21px!important;
  border:1px solid rgba(255,255,255,.38)!important;
  border-radius:21px!important;
  background:
    linear-gradient(180deg,rgba(236,247,244,.24),rgba(2,43,52,.62))!important;
  box-shadow:
    0 32px 82px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.16)!important;
  backdrop-filter:blur(20px) saturate(145%)!important;
}
.cl-page .premium-hero-card h3{
  color:#fff!important;
  font-family:var(--cl-serif)!important;
  font-size:26px!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
}
.cl-page .premium-hero-card .phc-row{
  border:1px solid rgba(255,255,255,.50)!important;
  background:rgba(255,255,255,.93)!important;
  color:#163941!important;
  box-shadow:0 9px 22px rgba(0,0,0,.10)!important;
}
.cl-page .premium-hero-card .phc-row strong{color:#123841!important}
.cl-page .premium-hero-card .phc-row small{color:#667d82!important}
.cl-page .premium-hero-card .phc-foot{color:#d2e4e1!important}
.cl-page .premium-hero-card .phc-badge{
  background:#68c8a8!important;
  color:#073b3e!important;
  box-shadow:0 4px 12px rgba(0,0,0,.10)!important;
}

/* Hero-adjacent shells overlap the photo like the target design. */
.cl-page .hero + .search-shell,
.cl-page .hero + .lookup-shell,
.cl-page .hero + .profile-shell,
.cl-page .profile-hero + .profile-wrap,
.cl-page .profile-hero + .shell,
.cl-page .hero + main > .shell:first-child{
  position:relative!important;
  z-index:5!important;
}

/* Global body gets polished white/paper transition below image heroes. */
.cl-page{
  background:
    radial-gradient(circle at 84% 10%,rgba(230,187,73,.045),transparent 28rem),
    linear-gradient(180deg,#f8fbfa 0%,#f2f7f6 58%,#f8faf9 100%)!important;
}

/* Stronger white nav to match the reference. */
.cl-page .site-header,
.cl-page .header{
  min-height:72px!important;
  background:rgba(255,255,255,.985)!important;
  border-bottom:1px solid rgba(5,53,63,.10)!important;
  box-shadow:0 8px 30px rgba(2,44,52,.07)!important;
}
.cl-page .brand{
  font-size:21px!important;
}

/* Refined active nav underline. */
.cl-page .nav a.active::after,
.cl-page .navlinks a.active::after{
  bottom:-13px!important;
  height:3px!important;
  background:linear-gradient(90deg,#d5a736,#f0cc6e)!important;
}


/* ==========================================================
   HERO POLISH v1.2.1
   Controlled visual refinement only.
   ========================================================== */

/* Shorter, more deliberate cinematic hero proportions */
.cl-page .hero,
.cl-page .profile-hero{
  min-height:460px!important;
  box-shadow:
    inset 0 -54px 75px rgba(2,35,43,.12),
    0 10px 34px rgba(3,45,54,.05)!important;
}

/* Preserve a clearer Parliament focal area on the right */
.cl-page .hero::before,
.cl-page .profile-hero::before{
  background:
    linear-gradient(90deg,
      rgba(2,31,40,.94) 0%,
      rgba(3,48,58,.88) 31%,
      rgba(4,61,69,.67) 52%,
      rgba(4,55,61,.28) 69%,
      rgba(2,27,32,.06) 100%),
    radial-gradient(circle at 76% 42%,rgba(247,214,128,.12),transparent 20rem)!important;
}

/* Wider editorial copy; fewer awkward line breaks */
.cl-page .hero h1,
.cl-page .profile-hero h1{
  width:min(820px,67%)!important;
  max-width:820px!important;
  font-size:clamp(46px,4.75vw,70px)!important;
  line-height:.985!important;
}
.cl-page .hero p,
.cl-page .hero-lead,
.cl-page .profile-hero p{
  width:min(760px,64%)!important;
  max-width:760px!important;
}
.cl-page .hero-pills,
.cl-page .hero-points,
.cl-page .chips{
  width:min(780px,66%)!important;
}

/* Larger, more substantial evidence card */
.cl-page .premium-hero-card{
  width:min(440px,36vw)!important;
  padding:25px!important;
  right:0!important;
  border-radius:23px!important;
}
.cl-page .premium-hero-card h3{
  font-size:29px!important;
  margin-bottom:14px!important;
}
.cl-page .premium-hero-card .phc-row{
  min-height:70px!important;
  padding:13px 14px!important;
}
.cl-page .premium-hero-card .phc-row strong{
  font-size:12px!important;
}
.cl-page .premium-hero-card .phc-row small{
  font-size:9.5px!important;
}

/* More premium, better-spaced navigation */
.cl-page .site-header,
.cl-page .header{
  min-height:78px!important;
}
.cl-page .header-inner,
.cl-page .site-header-inner,
.cl-page .header .wrap{
  width:min(1240px,calc(100% - 44px))!important;
  min-height:78px!important;
}
.cl-page .brand{
  font-size:22px!important;
  letter-spacing:-.025em!important;
}
.cl-page .nav,
.cl-page .navlinks{
  gap:22px!important;
}
.cl-page .nav a,
.cl-page .navlinks a{
  padding:10px 0!important;
}

/* HOME: hero contains only the editorial story + insight card.
   Search panels now sit on paper and overlap the image deliberately. */
.cl-home .hero{
  min-height:570px!important;
  padding:0!important;
}
.cl-home .hero>.hero-inner{
  padding-top:70px!important;
  padding-bottom:116px!important;
}
.cl-home .hero h1{
  width:min(810px,66%)!important;
  max-width:810px!important;
  font-size:clamp(49px,5vw,72px)!important;
}
.cl-home .hero-lead{
  width:min(735px,61%)!important;
  max-width:735px!important;
}
.cl-home .premium-hero-card{
  top:51%!important;
  width:min(445px,36vw)!important;
}
.cl-home .home-search-stack{
  position:relative!important;
  z-index:8!important;
  width:min(1120px,calc(100% - 48px))!important;
  margin:-82px auto 0!important;
}
.cl-home .platform-match-shell{
  max-width:none!important;
  width:100%!important;
  margin:0 0 16px!important;
  padding:28px 30px!important;
  border-radius:22px!important;
  box-shadow:
    0 30px 78px rgba(4,43,51,.19),
    0 1px 0 rgba(255,255,255,.82) inset!important;
}
.cl-home .advanced-search-shell{
  width:100%!important;
  margin:0!important;
  padding:24px 28px!important;
  border-radius:20px!important;
  box-shadow:0 20px 52px rgba(4,43,51,.12)!important;
}
.cl-home .metrics{
  margin-top:-2px!important;
}

/* Legal Match + Provider: reduce vertical excess and pull their cards upward */
.cl-match .hero,
.cl-provider .hero{
  min-height:520px!important;
}
.cl-match .hero .wrap,
.cl-provider .hero .wrap{
  padding-top:58px!important;
  padding-bottom:82px!important;
}
.cl-match main.wrap{
  margin-top:-78px!important;
}
.cl-provider .lookup-shell{
  margin-top:-78px!important;
}

/* Directory gets stronger two-column balance */
.cl-directory .hero{
  min-height:500px!important;
}
.cl-directory .hero-grid{
  grid-template-columns:minmax(0,1.16fr) minmax(360px,.84fr)!important;
  gap:52px!important;
}
.cl-directory .hero h1{
  max-width:720px!important;
  font-size:clamp(48px,4.8vw,68px)!important;
}
.cl-directory .hero-card{
  padding:28px!important;
  border-radius:22px!important;
}

/* Profile / intelligence / claim / question pages: shorter but still premium */
.cl-lawyer-profile .hero,
.cl-firm-profile .profile-hero,
.cl-lawyer-intelligence .hero,
.cl-firm-intelligence .hero,
.cl-lawyer-claim .hero,
.cl-firm-claim .hero,
.cl-lawyer-question .hero,
.cl-firm-question .hero{
  min-height:475px!important;
}
.cl-lawyer-profile .hero,
.cl-firm-profile .profile-hero{
  padding:0!important;
}
.cl-lawyer-profile .hero>.hero-inner,
.cl-firm-profile .profile-hero>.profile-hero-inner{
  padding-top:58px!important;
  padding-bottom:94px!important;
}
.cl-lawyer-intelligence .hero,
.cl-firm-intelligence .hero,
.cl-lawyer-claim .hero,
.cl-firm-claim .hero,
.cl-lawyer-question .hero,
.cl-firm-question .hero{
  padding-top:54px!important;
  padding-bottom:88px!important;
}

/* Responsive correction */
@media(max-width:999px){
  .cl-page .hero h1,
  .cl-page .profile-hero h1,
  .cl-page .hero p,
  .cl-page .profile-hero p,
  .cl-page .hero-pills,
  .cl-page .hero-points,
  .cl-page .chips{
    width:100%!important;
    max-width:760px!important;
  }
  .cl-page .premium-hero-card{
    width:100%!important;
    max-width:620px!important;
  }
  .cl-home .hero{
    min-height:auto!important;
  }
  .cl-home .home-search-stack{
    width:min(100% - 28px,1120px)!important;
    margin:-42px auto 0!important;
  }
}

@media(max-width:620px){
  .cl-page .site-header,
  .cl-page .header,
  .cl-page .header-inner,
  .cl-page .site-header-inner,
  .cl-page .header .wrap{
    min-height:66px!important;
  }
  .cl-home .hero>.hero-inner{
    padding-top:46px!important;
    padding-bottom:76px!important;
  }
  .cl-home .home-search-stack{
    margin:-28px auto 0!important;
  }
  .cl-home .platform-match-shell,
  .cl-home .advanced-search-shell{
    padding:18px!important;
  }
}


/* ==========================================================
   HERO REBALANCE v1.2.2
   Brings the live PHP pages back toward the approved
   page-should-look-like composition.
   ========================================================== */

.cl-page .hero,
.cl-page .profile-hero{
  min-height:0!important;
  background-image:
    linear-gradient(90deg,
      rgba(4,39,48,.96) 0%,
      rgba(5,55,64,.90) 35%,
      rgba(5,64,71,.62) 58%,
      rgba(4,48,55,.20) 78%,
      rgba(3,33,39,.08) 100%),
    url("canada-lawyer-header.jpg")!important;
  background-size:cover!important;
  background-position:center 46%!important;
  box-shadow:none!important;
}

/* Remove excess decorative rings that were making the hero feel busy. */
.cl-page .hero::after,
.cl-page .profile-hero::after{
  width:640px!important;
  height:640px!important;
  right:-360px!important;
  top:-330px!important;
  opacity:.52!important;
  box-shadow:none!important;
}

.cl-page .hero>.wrap,
.cl-page .hero>.inner,
.cl-page .hero>.hero-inner,
.cl-page .profile-hero-inner,
.cl-page .hero .hero-grid{
  width:min(1180px,calc(100% - 44px))!important;
  margin-inline:auto!important;
}

/* Balanced reference-like hero proportions */
.cl-page .hero>.wrap,
.cl-page .hero>.inner,
.cl-page .hero>.hero-inner,
.cl-page .profile-hero-inner{
  padding-top:54px!important;
  padding-bottom:82px!important;
}

.cl-page .hero h1,
.cl-page .profile-hero h1{
  width:min(700px,58%)!important;
  max-width:700px!important;
  margin:8px 0 18px!important;
  font-size:clamp(42px,4.25vw,64px)!important;
  line-height:1.00!important;
  letter-spacing:-.038em!important;
  text-wrap:balance!important;
}

.cl-page .hero p,
.cl-page .hero-lead,
.cl-page .profile-hero p{
  width:min(660px,56%)!important;
  max-width:660px!important;
  font-size:14px!important;
  line-height:1.62!important;
}

.cl-page .hero-pills,
.cl-page .hero-points,
.cl-page .chips{
  width:min(680px,58%)!important;
  gap:8px!important;
}

.cl-page .hero-pill,
.cl-page .chip,
.cl-page .hero-point,
.cl-page .pill{
  min-height:31px!important;
  padding:7px 11px!important;
  font-size:9px!important;
}

/* Strong right-side card, deliberately sized to match the reference. */
.cl-page .premium-hero-card{
  top:52%!important;
  right:0!important;
  transform:translateY(-50%)!important;
  width:390px!important;
  max-width:36%!important;
  padding:20px!important;
  border-radius:18px!important;
  background:
    linear-gradient(180deg,rgba(238,247,245,.25),rgba(6,55,63,.72))!important;
  border:1px solid rgba(255,255,255,.38)!important;
  box-shadow:0 24px 58px rgba(0,0,0,.28)!important;
}

.cl-page .premium-hero-card h3{
  font-size:23px!important;
  margin:5px 0 12px!important;
}
.cl-page .premium-hero-card .phc-row{
  min-height:58px!important;
  padding:11px 12px!important;
}
.cl-page .premium-hero-card .phc-foot{
  margin-top:10px!important;
}

/* HOME PAGE — compact cinematic hero, controlled overlap */
.cl-home .hero{
  min-height:500px!important;
}
.cl-home .hero>.hero-inner{
  padding-top:54px!important;
  padding-bottom:112px!important;
}
.cl-home .hero h1{
  width:min(690px,58%)!important;
  max-width:690px!important;
  font-size:clamp(44px,4.45vw,66px)!important;
}
.cl-home .hero-lead{
  width:min(650px,55%)!important;
  max-width:650px!important;
}
.cl-home .premium-hero-card{
  width:390px!important;
  max-width:35%!important;
  top:49%!important;
}
.cl-home .home-search-stack{
  width:min(1040px,calc(100% - 44px))!important;
  margin:-68px auto 0!important;
}
.cl-home .platform-match-shell{
  padding:24px 26px!important;
  margin:0 0 12px!important;
  border-radius:18px!important;
  box-shadow:0 24px 60px rgba(4,43,51,.16)!important;
}
.cl-home .advanced-search-shell{
  padding:21px 24px!important;
  border-radius:17px!important;
  box-shadow:0 16px 38px rgba(4,43,51,.10)!important;
}
.cl-home .metrics{
  width:min(1040px,calc(100% - 44px))!important;
  margin:0 auto!important;
}

/* Directory / provider / legal match use the same polished width and proportions. */
.cl-directory .hero,
.cl-provider .hero,
.cl-match .hero{
  min-height:470px!important;
}

.cl-directory .hero-grid{
  grid-template-columns:minmax(0,1.08fr) 380px!important;
  gap:48px!important;
  padding-top:54px!important;
  padding-bottom:76px!important;
}
.cl-directory .hero-grid h1,
.cl-directory .hero-grid p{
  width:auto!important;
  max-width:680px!important;
}
.cl-directory .hero-card{
  width:100%!important;
  padding:23px!important;
  border-radius:18px!important;
}

.cl-provider .hero .wrap,
.cl-match .hero .wrap{
  padding-top:54px!important;
  padding-bottom:78px!important;
}
.cl-provider .lookup-shell,
.cl-match main.wrap{
  margin-top:-56px!important;
}

/* Profile / intelligence / claim / question headers: elegant, not oversized. */
.cl-lawyer-profile .hero,
.cl-firm-profile .profile-hero,
.cl-lawyer-intelligence .hero,
.cl-firm-intelligence .hero,
.cl-lawyer-claim .hero,
.cl-firm-claim .hero,
.cl-lawyer-question .hero,
.cl-firm-question .hero{
  min-height:430px!important;
}
.cl-lawyer-profile .hero h1,
.cl-firm-profile .profile-hero h1,
.cl-lawyer-intelligence .hero h1,
.cl-firm-intelligence .hero h1,
.cl-lawyer-claim .hero h1,
.cl-firm-claim .hero h1,
.cl-lawyer-question .hero h1,
.cl-firm-question .hero h1{
  width:min(720px,60%)!important;
  max-width:720px!important;
  font-size:clamp(42px,4.2vw,62px)!important;
}

/* Give the Parliament itself a little more daylight/definition. */
.cl-page .hero::before,
.cl-page .profile-hero::before{
  background:
    radial-gradient(circle at 72% 44%,rgba(255,214,126,.16),transparent 18rem),
    linear-gradient(90deg,
      rgba(4,39,48,.34) 0%,
      rgba(4,47,55,.20) 50%,
      rgba(255,255,255,0) 78%)!important;
}

/* Cleaner nav — less cramped, stronger visual hierarchy */
.cl-page .site-header,
.cl-page .header{
  min-height:74px!important;
}
.cl-page .header-inner,
.cl-page .site-header-inner,
.cl-page .header .wrap{
  width:min(1180px,calc(100% - 44px))!important;
  min-height:74px!important;
}
.cl-page .brand{
  font-size:20px!important;
}
.cl-page .nav,
.cl-page .navlinks{
  gap:20px!important;
}

/* Responsive */
@media(max-width:980px){
  .cl-page .hero h1,
  .cl-page .profile-hero h1,
  .cl-page .hero p,
  .cl-page .profile-hero p,
  .cl-page .hero-pills,
  .cl-page .hero-points,
  .cl-page .chips{
    width:100%!important;
    max-width:720px!important;
  }
  .cl-page .premium-hero-card{
    position:relative!important;
    right:auto!important;
    top:auto!important;
    transform:none!important;
    width:min(100%,620px)!important;
    max-width:none!important;
    margin-top:24px!important;
  }
  .cl-home .hero{
    min-height:auto!important;
  }
  .cl-home .home-search-stack{
    width:min(100% - 28px,1040px)!important;
    margin:-42px auto 0!important;
  }
  .cl-directory .hero-grid{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:620px){
  .cl-page .hero,
  .cl-page .profile-hero{
    background-position:64% center!important;
  }
  .cl-page .hero>.wrap,
  .cl-page .hero>.inner,
  .cl-page .hero>.hero-inner,
  .cl-page .profile-hero-inner{
    width:min(100% - 28px,1180px)!important;
    padding-top:40px!important;
    padding-bottom:64px!important;
  }
  .cl-page .hero h1,
  .cl-page .profile-hero h1{
    font-size:clamp(36px,10vw,48px)!important;
  }
}


/* ==========================================================
   UNIFIED HERO COMPONENT v1.3.0
   Every canonical PHP page now marks its true hero element
   with .unified-hero.  This overrides page-specific legacy
   hero CSS without replacing dynamic markup or IDs.
   ========================================================== */

.cl-page .unified-hero{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
  min-height:470px!important;
  color:#fff!important;
  background-image:
    linear-gradient(90deg,
      rgba(3,35,44,.97) 0%,
      rgba(4,48,57,.91) 34%,
      rgba(5,61,68,.62) 58%,
      rgba(4,48,54,.20) 79%,
      rgba(2,28,33,.05) 100%),
    url("canada-lawyer-header.jpg")!important;
  background-size:cover!important;
  background-position:center 47%!important;
  background-repeat:no-repeat!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
  box-shadow:none!important;
}

.cl-page .unified-hero::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-1!important;
  pointer-events:none!important;
  background:
    radial-gradient(circle at 73% 43%,rgba(245,201,95,.15),transparent 18rem),
    linear-gradient(115deg,rgba(0,0,0,.08),transparent 62%)!important;
}

.cl-page .unified-hero::after{
  content:""!important;
  position:absolute!important;
  z-index:-1!important;
  pointer-events:none!important;
  width:610px!important;
  height:610px!important;
  right:-340px!important;
  top:-345px!important;
  border:1px solid rgba(231,185,69,.50)!important;
  border-radius:50%!important;
  opacity:.70!important;
  box-shadow:none!important;
}

/* Consistent content width across every hero structure */
.cl-page .unified-hero>.wrap,
.cl-page .unified-hero>.inner,
.cl-page .unified-hero>.hero-inner,
.cl-page .unified-hero>.profile-hero-inner,
.cl-page .unified-hero .hero-grid{
  width:min(1180px,calc(100% - 44px))!important;
  max-width:none!important;
  margin-inline:auto!important;
  position:relative!important;
  z-index:2!important;
}

/* Direct one-column hero wrappers */
.cl-page .unified-hero>.wrap,
.cl-page .unified-hero>.inner,
.cl-page .unified-hero>.hero-inner,
.cl-page .unified-hero>.profile-hero-inner{
  padding-top:54px!important;
  padding-bottom:82px!important;
}

/* All headline types */
.cl-page .unified-hero h1{
  width:min(700px,58%)!important;
  max-width:700px!important;
  margin:8px 0 18px!important;
  color:#fff!important;
  font-family:var(--cl-serif,Georgia,serif)!important;
  font-size:clamp(44px,4.45vw,66px)!important;
  font-weight:700!important;
  line-height:.99!important;
  letter-spacing:-.04em!important;
  text-wrap:balance!important;
  text-shadow:0 5px 28px rgba(0,0,0,.30)!important;
}

.cl-page .unified-hero p,
.cl-page .unified-hero .hero-lead{
  width:min(660px,56%)!important;
  max-width:660px!important;
  color:#dceae7!important;
  font-size:14px!important;
  line-height:1.63!important;
  text-shadow:0 2px 15px rgba(0,0,0,.23)!important;
}

/* Hero kickers */
.cl-page .unified-hero .eyebrow,
.cl-page .unified-hero .kicker,
.cl-page .unified-hero .hero-kicker{
  color:#efc45d!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.17em!important;
  text-transform:uppercase!important;
}

/* Pills / chips */
.cl-page .unified-hero .chips,
.cl-page .unified-hero .hero-pills,
.cl-page .unified-hero .hero-points{
  width:min(680px,58%)!important;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}
.cl-page .unified-hero .chip,
.cl-page .unified-hero .pill,
.cl-page .unified-hero .hero-pill,
.cl-page .unified-hero .hero-point{
  min-height:31px!important;
  display:inline-flex!important;
  align-items:center!important;
  padding:7px 11px!important;
  border:1px solid rgba(232,190,82,.50)!important;
  border-radius:999px!important;
  background:rgba(3,45,54,.47)!important;
  color:#fff!important;
  font-size:9px!important;
  font-weight:800!important;
  backdrop-filter:blur(8px)!important;
}

/* Standard glass evidence card on pages that already have one */
.cl-page .unified-hero .premium-hero-card{
  position:absolute!important;
  top:50%!important;
  right:0!important;
  transform:translateY(-50%)!important;
  width:390px!important;
  max-width:35%!important;
  padding:20px!important;
  border:1px solid rgba(255,255,255,.38)!important;
  border-radius:19px!important;
  background:linear-gradient(180deg,rgba(241,249,247,.25),rgba(5,53,61,.72))!important;
  box-shadow:0 26px 66px rgba(0,0,0,.28)!important;
  backdrop-filter:blur(18px) saturate(140%)!important;
  z-index:5!important;
}

/* Directory's legacy hero card becomes the same premium glass panel */
.cl-directory .unified-hero .hero-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 390px!important;
  gap:52px!important;
  align-items:center!important;
  padding-top:54px!important;
  padding-bottom:78px!important;
}
.cl-directory .unified-hero .hero-grid>div:first-child h1,
.cl-directory .unified-hero .hero-grid>div:first-child p{
  width:auto!important;
  max-width:700px!important;
}
.cl-directory .unified-hero .hero-card{
  width:100%!important;
  padding:22px!important;
  border:1px solid rgba(255,255,255,.44)!important;
  border-radius:19px!important;
  background:linear-gradient(180deg,rgba(248,252,251,.94),rgba(230,241,238,.88))!important;
  color:#15343d!important;
  box-shadow:0 28px 72px rgba(0,0,0,.28)!important;
  backdrop-filter:blur(18px) saturate(140%)!important;
}
.cl-directory .unified-hero .hero-card strong{
  display:block!important;
  margin-bottom:10px!important;
  color:#14353e!important;
  font-family:var(--cl-serif,Georgia,serif)!important;
  font-size:25px!important;
  line-height:1.08!important;
}
.cl-directory .unified-hero .hero-card p{
  width:auto!important;
  color:#647a80!important;
  text-shadow:none!important;
}

/* Firm profile has its own facts block — make it the premium right panel */
.cl-firm-profile .unified-hero .hero-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 390px!important;
  gap:52px!important;
  align-items:center!important;
}
.cl-firm-profile .unified-hero .hero-copy h1,
.cl-firm-profile .unified-hero .hero-copy p{
  width:auto!important;
  max-width:700px!important;
}
.cl-firm-profile .unified-hero .hero-facts{
  width:100%!important;
  margin:0!important;
  padding:14px!important;
  border:1px solid rgba(255,255,255,.38)!important;
  border-radius:19px!important;
  background:linear-gradient(180deg,rgba(244,251,249,.22),rgba(5,53,61,.62))!important;
  box-shadow:0 28px 70px rgba(0,0,0,.24)!important;
  backdrop-filter:blur(16px) saturate(135%)!important;
}
.cl-firm-profile .unified-hero .hero-fact{
  background:rgba(255,255,255,.91)!important;
  color:#173840!important;
  border:1px solid rgba(255,255,255,.45)!important;
}
.cl-firm-profile .unified-hero .hero-fact span{color:#708489!important}
.cl-firm-profile .unified-hero .hero-fact strong{color:#173840!important}

/* Avoid showing two competing right cards on the firm profile. */
.cl-firm-profile .unified-hero .premium-hero-card{
  display:none!important;
}

/* Provider page: explicit right panel size, same look as home */
.cl-provider .unified-hero{
  min-height:500px!important;
}
.cl-provider .unified-hero>.wrap{
  padding-top:58px!important;
  padding-bottom:90px!important;
}

/* AI Legal Match */
.cl-match .unified-hero{
  min-height:500px!important;
}
.cl-match .unified-hero>.wrap{
  padding-top:58px!important;
  padding-bottom:90px!important;
}

/* Interior lawyer/firm pages stay premium without becoming oversized */
.cl-lawyer-profile .unified-hero,
.cl-lawyer-intelligence .unified-hero,
.cl-lawyer-claim .unified-hero,
.cl-lawyer-question .unified-hero,
.cl-firm-profile .unified-hero,
.cl-firm-intelligence .unified-hero,
.cl-firm-claim .unified-hero,
.cl-firm-question .unified-hero{
  min-height:440px!important;
}

/* Navigation polish */
.cl-page .site-header,
.cl-page .header,
.cl-page header:not(.unified-hero){
  background:#fff!important;
}
.cl-page .site-header,
.cl-page .header{
  min-height:74px!important;
  border-bottom:1px solid rgba(4,51,60,.10)!important;
  box-shadow:0 8px 26px rgba(3,43,51,.06)!important;
}
.cl-page .header-inner,
.cl-page .site-header-inner,
.cl-page .header .wrap{
  width:min(1180px,calc(100% - 44px))!important;
}

/* Responsive */
@media(max-width:980px){
  .cl-page .unified-hero h1,
  .cl-page .unified-hero p,
  .cl-page .unified-hero .chips,
  .cl-page .unified-hero .hero-pills,
  .cl-page .unified-hero .hero-points{
    width:100%!important;
    max-width:720px!important;
  }
  .cl-page .unified-hero .premium-hero-card{
    position:relative!important;
    top:auto!important;
    right:auto!important;
    transform:none!important;
    width:min(100%,620px)!important;
    max-width:none!important;
    margin-top:24px!important;
  }
  .cl-directory .unified-hero .hero-grid,
  .cl-firm-profile .unified-hero .hero-grid{
    grid-template-columns:1fr!important;
    gap:24px!important;
  }
}
@media(max-width:620px){
  .cl-page .unified-hero{
    background-position:64% center!important;
  }
  .cl-page .unified-hero>.wrap,
  .cl-page .unified-hero>.inner,
  .cl-page .unified-hero>.hero-inner,
  .cl-page .unified-hero>.profile-hero-inner,
  .cl-page .unified-hero .hero-grid{
    width:min(100% - 28px,1180px)!important;
  }
  .cl-page .unified-hero h1{
    font-size:clamp(36px,10vw,48px)!important;
  }
}


/* ==========================================================
   LAW FIRM DIRECTORY v1.0.0
   Dedicated canonical firm-browse page.
   ========================================================== */
.cl-firm-directory .law-firm-directory-search-stack{
  width:min(1040px,calc(100% - 44px));
  margin:-66px auto 0;
  position:relative;
  z-index:8;
}
.cl-firm-directory .law-firm-directory-search-stack .search-shell{
  max-width:none;
  width:100%;
  padding:25px 27px;
  border-radius:19px;
  box-shadow:0 24px 60px rgba(4,43,51,.16);
}
.cl-firm-directory .hero{
  min-height:500px!important;
}
.cl-firm-directory .hero h1{
  width:min(700px,58%)!important;
}
.cl-firm-directory .metric{
  background:#fff;
}
.cl-firm-directory #browse-canada{
  padding-top:76px;
}
.cl-firm-directory #results-section{
  min-height:360px;
}
@media(max-width:980px){
  .cl-firm-directory .law-firm-directory-search-stack{
    width:min(100% - 28px,1040px);
    margin:-40px auto 0;
  }
}
@media(max-width:620px){
  .cl-firm-directory .law-firm-directory-search-stack{
    margin:-24px auto 0;
  }
  .cl-firm-directory .law-firm-directory-search-stack .search-shell{
    padding:18px;
  }
}


/* ==========================================================
   LAW FIRM DIRECTORY CORRECTIONS v1.0.1
   Dedicated layout and search semantics.
   ========================================================== */
.cl-firm-directory .site-header{
  position:relative!important;
  top:auto!important;
}

.cl-firm-directory .law-firm-directory-search-stack{
  margin:-48px auto 0!important;
}

.cl-firm-directory .law-firm-directory-search-stack + .wrap{
  width:min(1040px,calc(100% - 44px))!important;
  margin:18px auto 0!important;
}

.cl-firm-directory .metrics{
  width:100%!important;
  margin:0!important;
  position:relative!important;
  z-index:4!important;
  gap:12px!important;
}

.cl-firm-directory .metric{
  min-width:0!important;
  padding:17px 18px!important;
  border-radius:14px!important;
  box-shadow:0 12px 30px rgba(4,43,51,.09)!important;
}

.cl-firm-directory .metric strong{
  font-size:26px!important;
}

.cl-firm-directory .metric span{
  font-size:9px!important;
  line-height:1.3!important;
}

.cl-firm-directory #browse-canada{
  padding-top:58px!important;
}

.cl-firm-directory .firm-search-mode{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  margin:15px 0 16px;
}

.cl-firm-directory .firm-search-mode-label{
  margin-right:4px;
  color:#667c83;
  font-size:9px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.cl-firm-directory .firm-search-mode-option{
  display:inline-flex;
  align-items:center;
  cursor:pointer;
}

.cl-firm-directory .firm-search-mode-option input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.cl-firm-directory .firm-search-mode-option span{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:7px 12px;
  border:1px solid #ceddde;
  border-radius:999px;
  background:#fff;
  color:#48656c;
  font-size:9px;
  font-weight:900;
}

.cl-firm-directory .firm-search-mode-option.active span{
  border-color:#075968;
  background:#075968;
  color:#fff;
}

.cl-firm-directory .firm-directory-search-help{
  margin-top:12px;
  padding:10px 12px;
  border:1px solid #d7e6e3;
  border-radius:10px;
  background:#f4f9f8;
  color:#647b80;
  font-size:10px;
  line-height:1.45;
}

.cl-firm-directory .firm-directory-search-grid{
  grid-template-columns:minmax(0,1.65fr) minmax(150px,.7fr) minmax(170px,.8fr) auto!important;
  align-items:end!important;
}

.cl-firm-directory .quick-row{
  margin-top:12px!important;
}

.cl-firm-directory #results-section .result-list{
  max-width:920px;
}

.cl-firm-directory #results-section .firm-card{
  margin-bottom:12px;
}

@media(max-width:900px){
  .cl-firm-directory .firm-directory-search-grid{
    grid-template-columns:1fr 1fr!important;
  }
  .cl-firm-directory .firm-directory-search-grid .query-field{
    grid-column:1/-1!important;
  }
  .cl-firm-directory .firm-directory-search-grid .search-btn{
    width:100%!important;
  }
}

@media(max-width:620px){
  .cl-firm-directory .firm-directory-search-grid{
    grid-template-columns:1fr!important;
  }
  .cl-firm-directory .firm-directory-search-grid .query-field{
    grid-column:auto!important;
  }
  .cl-firm-directory .law-firm-directory-search-stack + .wrap{
    width:min(100% - 28px,1040px)!important;
  }
  .cl-firm-directory .metrics{
    grid-template-columns:1fr 1fr!important;
  }
}


/* ==========================================================
   AI LEGAL MATCH — DECISION EXPERIENCE v1.0.0
   Evidence-rich inspection shortlist; not a quality ranking.
   ========================================================== */
.cl-match .decision-section{
  width:min(1180px,calc(100% - 44px));
  margin:24px auto 10px;
  padding:28px;
  border:1px solid #d7e5e3;
  border-radius:22px;
  background:
    radial-gradient(circle at 92% 4%,rgba(215,176,77,.10),transparent 22rem),
    linear-gradient(180deg,#ffffff 0%,#f4f9f8 100%);
  box-shadow:0 20px 56px rgba(3,43,51,.10);
}
.cl-match .decision-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) 300px;
  gap:28px;
  align-items:start;
}
.cl-match .decision-head h2{
  max-width:760px;
  margin:6px 0 8px;
  color:#14363e;
  font-family:var(--cl-serif,Georgia,serif);
  font-size:clamp(30px,3vw,42px);
  line-height:1.04;
  letter-spacing:-.025em;
}
.cl-match .decision-head p{
  max-width:760px;
  margin:0;
  color:#667b80;
  line-height:1.58;
}
.cl-match .decision-guardrail{
  padding:17px 18px;
  border:1px solid #ead8a6;
  border-radius:15px;
  background:#fffaf0;
}
.cl-match .decision-guardrail strong{
  display:block;
  margin-bottom:5px;
  color:#163b43;
  font-size:12px;
}
.cl-match .decision-guardrail span{
  display:block;
  color:#7a715b;
  font-size:10px;
  line-height:1.45;
}
.cl-match .decision-context{
  display:flex;
  justify-content:space-between;
  gap:14px;
  margin:20px 0 12px;
  padding:11px 14px;
  border:1px solid #d5e4e1;
  border-radius:12px;
  background:#edf6f4;
  color:#36565d;
}
.cl-match .decision-context strong{
  color:#143b43;
  font-size:12px;
}
.cl-match .decision-context span{
  font-size:10px;
}
.cl-match .decision-shortlist{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
}
.cl-match .decision-card{
  min-width:0;
  padding:16px;
  border:1px solid #d9e5e3;
  border-radius:16px;
  background:#fff;
  box-shadow:0 8px 22px rgba(5,48,56,.06);
}
.cl-match .decision-card-top{
  display:flex;
  justify-content:space-between;
  gap:8px;
  align-items:flex-start;
  margin-bottom:10px;
}
.cl-match .decision-kind,
.cl-match .decision-state{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:5px 8px;
  border-radius:999px;
  font-size:8px;
  font-weight:900;
  line-height:1.2;
}
.cl-match .decision-kind{
  background:#e8f4f1;
  color:#175b59;
}
.cl-match .decision-state{
  max-width:60%;
  background:#fff6db;
  color:#725b17;
  text-align:right;
}
.cl-match .decision-card h3{
  margin:0 0 4px;
  color:#123841;
  font-family:var(--cl-serif,Georgia,serif);
  font-size:20px;
  line-height:1.08;
}
.cl-match .decision-card .muted{
  min-height:28px;
  font-size:9px;
}
.cl-match .decision-signal-row{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin:10px 0;
}
.cl-match .decision-signal-row span{
  padding:5px 7px;
  border:1px solid #d8e5e3;
  border-radius:999px;
  background:#f5faf9;
  color:#46666d;
  font-size:8px;
  font-weight:800;
}
.cl-match .decision-why{
  min-height:126px;
  padding:11px 12px;
  border-radius:11px;
  background:#f7faf9;
}
.cl-match .decision-why strong{
  display:block;
  margin-bottom:6px;
  color:#244b53;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.cl-match .decision-why ul{
  margin:0;
  padding-left:15px;
}
.cl-match .decision-why li{
  margin:0 0 5px;
  color:#64797e;
  font-size:9px;
  line-height:1.38;
}
.cl-match .decision-actions{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:11px;
}
.cl-match .decision-actions .btn{
  font-size:8px;
}
.cl-match .decision-method{
  margin-top:14px;
  padding-top:12px;
  border-top:1px solid #dce7e5;
  color:#6e7f83;
  font-size:9px;
  line-height:1.5;
}
.cl-match .decision-method strong{
  color:#31545b;
}
@media(max-width:1100px){
  .cl-match .decision-shortlist{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:760px){
  .cl-match .decision-head{
    grid-template-columns:1fr;
  }
  .cl-match .decision-shortlist{
    grid-template-columns:1fr;
  }
  .cl-match .decision-context{
    flex-direction:column;
  }
  .cl-match .decision-why{
    min-height:0;
  }
}


/* ==========================================================
   AI LEGAL MATCH HEADER HOTFIX v1.0.1
   Restores canonical brand + right-aligned platform navigation.
   ========================================================== */
.cl-match .site-header{
  height:auto!important;
  min-height:68px!important;
  display:block!important;
  position:relative!important;
  z-index:30!important;
  background:rgba(255,255,255,.98)!important;
}

.cl-match .site-header .header-inner{
  min-height:68px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:28px!important;
}

.cl-match .site-header .brand{
  flex:0 0 auto!important;
  white-space:nowrap!important;
}

.cl-match .site-header .nav{
  width:auto!important;
  height:auto!important;
  min-height:0!important;
  margin:0 0 0 auto!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:20px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  flex:0 1 auto!important;
}

.cl-match .site-header .nav a{
  flex:0 0 auto!important;
  white-space:nowrap!important;
}

@media(max-width:900px){
  .cl-match .site-header .header-inner{
    flex-wrap:wrap!important;
    gap:10px 18px!important;
    padding-top:10px!important;
    padding-bottom:10px!important;
  }
  .cl-match .site-header .nav{
    width:100%!important;
    margin-left:0!important;
    justify-content:flex-start!important;
    gap:14px!important;
    overflow-x:auto!important;
    padding-bottom:4px!important;
  }
}


/* ============================================================
   PLATFORM CONVERSION LAYER v1.0.0
   One low-friction professional path across discovery surfaces.
   ============================================================ */
.cl-page .conversion-band{
  margin-top:54px!important;
}
.cl-page .conversion-band .section-tag{
  color:#eed78d!important;
}
.cl-page .conversion-band h2{
  max-width:760px;
}
.cl-page .conversion-band p{
  max-width:820px;
}
.cl-provider .conversion-proof{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:-4px 0 16px;
}
.cl-provider .conversion-proof span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:6px 9px;
  border-radius:999px;
  border:1px solid #d5e4e1;
  background:#f3f9f7;
  color:#41666a;
  font-size:9px;
  font-weight:850;
}
.cl-provider .result .btn.primary{
  background:#086875!important;
  color:#fff!important;
  border-color:#086875!important;
}

/* APPROVED PROFILE ACTIVATION v1.0.0 */
.approved-profile-section{margin-top:18px;padding:22px;border:1px solid #cbded8;border-radius:16px;background:linear-gradient(180deg,#fbfefc 0%,#f0f8f5 100%);box-shadow:0 12px 30px rgba(13,62,62,.06)}
.approved-head{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:22px;align-items:start;padding-bottom:17px;border-bottom:1px solid #d9e8e3}
.approved-kicker{color:#21715f;font-size:9px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.approved-head h3{margin:5px 0 7px;color:#173f46;font-family:Georgia,"Times New Roman",serif;font-size:25px;line-height:1.08}
.approved-head p{margin:0;color:#687f83;font-size:10px;line-height:1.55}
.approved-provenance{padding:12px;border:1px solid #cfe0da;border-radius:11px;background:#fff}
.approved-provenance span,.approved-provenance small{display:block;color:#71878a;font-size:8px;text-transform:uppercase;letter-spacing:.06em}
.approved-provenance strong{display:block;margin:5px 0;color:#176656;font-size:9px;word-break:break-word}
.approved-group{margin-top:17px}.approved-group h4{margin:0 0 8px;color:#2d5a61;font-size:10px;text-transform:uppercase;letter-spacing:.07em}
.approved-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.approved-field{padding:11px 12px;border:1px solid #dae7e3;border-radius:10px;background:#fff}
.approved-field span{display:block;margin-bottom:5px;color:#7a8c8e;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.approved-field strong,.approved-field li{color:#294d53;font-size:10px;line-height:1.45}.approved-field ul{margin:0;padding-left:16px}.approved-field a{color:#176b5d;word-break:break-word}
.approved-sources{margin-top:17px;padding:12px;border:1px solid #d6e5e0;border-radius:10px;background:#fff}.approved-sources strong{display:block;margin-bottom:7px;color:#315b61;font-size:9px}.approved-sources a{display:block;margin:4px 0;color:#176b5d;font-size:9px;word-break:break-word}
.approved-guardrail{margin-top:15px;padding-top:12px;border-top:1px solid #d7e5e0;color:#74868a;font-size:9px;line-height:1.5}
@media(max-width:760px){.approved-head,.approved-fields{grid-template-columns:1fr}}

/* ==========================================================
   PLATFORM VISUAL CONSISTENCY v1.4.0
   Shared presentation layer only.
   Main Search is the visual master for primary platform pages.
   ========================================================== */

/* Common page frame */
.cl-page .header-inner,
.cl-page .site-header-inner,
.cl-page .header .wrap,
.cl-page header>.wrap.nav,
.cl-page .nav>.wrap{
  width:min(1180px,calc(100% - 44px))!important;
  max-width:none!important;
  margin-inline:auto!important;
}

/* Common cinematic hero */
.cl-home .unified-hero,
.cl-match .unified-hero,
.cl-directory .unified-hero,
.cl-firm-directory .unified-hero,
.cl-provider .unified-hero{
  min-height:500px!important;
  padding:0!important;
  background-image:
    linear-gradient(90deg,
      rgba(3,35,44,.97) 0%,
      rgba(4,48,57,.91) 34%,
      rgba(5,61,68,.61) 58%,
      rgba(4,48,54,.19) 79%,
      rgba(2,28,33,.05) 100%),
    url("canada-lawyer-header.jpg")!important;
  background-size:cover!important;
  background-position:center 47%!important;
  background-repeat:no-repeat!important;
}

.cl-home .unified-hero>.hero-inner,
.cl-match .unified-hero>.wrap,
.cl-provider .unified-hero>.wrap,
.cl-firm-directory .unified-hero>.hero-inner,
.cl-directory .unified-hero>.wrap.hero-grid{
  width:min(1180px,calc(100% - 44px))!important;
  max-width:none!important;
  margin-inline:auto!important;
  padding-top:42px!important;
  padding-bottom:106px!important;
  position:relative!important;
  z-index:2!important;
}

/* Same editorial proportions */
.cl-home .unified-hero h1,
.cl-match .unified-hero h1,
.cl-firm-directory .unified-hero h1,
.cl-provider .unified-hero h1,
.cl-directory .unified-hero h1{
  max-width:760px!important;
  font-size:clamp(44px,4.45vw,66px)!important;
  line-height:.99!important;
  letter-spacing:-.04em!important;
}

.cl-home .unified-hero .hero-lead,
.cl-match .unified-hero p,
.cl-firm-directory .unified-hero .hero-lead,
.cl-provider .unified-hero p,
.cl-directory .unified-hero p{
  max-width:700px!important;
}

/* One right-side hero-card position across pages */
@media(min-width:981px){
  .cl-home .unified-hero .premium-hero-card,
  .cl-match .unified-hero .premium-hero-card,
  .cl-firm-directory .unified-hero .premium-hero-card,
  .cl-provider .unified-hero .premium-hero-card{
    position:absolute!important;
    top:112px!important;
    right:0!important;
    transform:none!important;
    width:350px!important;
    max-width:30%!important;
  }

  .cl-home .unified-hero h1,
  .cl-match .unified-hero h1,
  .cl-firm-directory .unified-hero h1,
  .cl-provider .unified-hero h1{
    width:min(760px,64%)!important;
  }
  .cl-home .unified-hero .hero-lead,
  .cl-match .unified-hero p,
  .cl-firm-directory .unified-hero .hero-lead,
  .cl-provider .unified-hero p,
  .cl-home .unified-hero .hero-points,
  .cl-match .unified-hero .chips,
  .cl-firm-directory .unified-hero .hero-points,
  .cl-provider .unified-hero .hero-pills{
    width:min(700px,59%)!important;
    max-width:700px!important;
  }

  /* Lawyer Directory uses different markup; visually normalize it. */
  .cl-directory .unified-hero>.wrap.hero-grid{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 350px!important;
    gap:60px!important;
    align-items:start!important;
  }
  .cl-directory .unified-hero .hero-grid>div:first-child{
    min-width:0!important;
  }
  .cl-directory .unified-hero .hero-card{
    width:350px!important;
    max-width:350px!important;
    margin-top:70px!important;
    padding:20px!important;
    border:1px solid rgba(255,255,255,.38)!important;
    border-radius:18px!important;
    background:linear-gradient(180deg,rgba(238,247,245,.25),rgba(6,55,63,.72))!important;
    color:#fff!important;
    box-shadow:0 24px 58px rgba(0,0,0,.28)!important;
    backdrop-filter:blur(18px) saturate(135%)!important;
  }
  .cl-directory .unified-hero .hero-card strong{
    color:#fff!important;
    font-family:var(--cl-serif,Georgia,serif)!important;
    font-size:23px!important;
    line-height:1.08!important;
  }
  .cl-directory .unified-hero .hero-card p{
    color:#d8e7e4!important;
    font-size:11px!important;
    line-height:1.5!important;
  }
}

/* Gold trim language used across primary cards */
.cl-page .platform-match-shell,
.cl-page .advanced-search-shell,
.cl-match .search-card,
.cl-provider .lookup,
.cl-directory .search-shell,
.cl-firm-directory .search-shell{
  position:relative!important;
  overflow:hidden!important;
}
.cl-page .platform-match-shell::before,
.cl-page .advanced-search-shell::before,
.cl-match .search-card::before,
.cl-provider .lookup::before,
.cl-directory .search-shell::before,
.cl-firm-directory .search-shell::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:0!important;
  height:3px!important;
  background:linear-gradient(90deg,#d4a437,#f1d276 42%,rgba(241,210,118,0) 92%)!important;
  z-index:3!important;
  pointer-events:none!important;
}

.cl-page .metric,
.cl-directory .stat-grid .stat,
.cl-provider .stats .stat,
.cl-match .metric{
  position:relative!important;
  overflow:hidden!important;
}
.cl-page .metric::before,
.cl-directory .stat-grid .stat::before,
.cl-provider .stats .stat::before,
.cl-match .metric::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:0!important;
  bottom:0!important;
  width:3px!important;
  background:linear-gradient(180deg,#d7a83b,#f0d477)!important;
}

/* Gold section-label consistency */
.cl-page .section-tag,
.cl-page .section-kicker,
.cl-page .eyebrow,
.cl-page .kicker,
.cl-page .tag{
  color:#e6bb4f!important;
}

/* Common overlap width and position */
.cl-home .home-search-stack,
.cl-match .search-shell,
.cl-provider .lookup-shell,
.cl-firm-directory .advanced-search-shell{
  width:min(1040px,calc(100% - 44px))!important;
  max-width:1040px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.cl-home .home-search-stack{margin-top:-68px!important}
.cl-match .search-shell{margin-top:-68px!important}
.cl-provider .lookup-shell{margin-top:-68px!important}
.cl-firm-directory .advanced-search-shell{margin-top:-68px!important}

/* Lawyer-directory stats/search align to same 1040px canvas */
.cl-directory .stats>.wrap,
.cl-directory main>.wrap,
.cl-directory .search-shell{
  width:min(1040px,calc(100% - 44px))!important;
  max-width:1040px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.cl-directory .stats{margin-top:-46px!important}

/* Major body sections align to the same reading canvas */
.cl-home .section>.wrap,
.cl-match main.wrap,
.cl-provider main .section>.wrap,
.cl-provider .lookup-shell>.wrap,
.cl-firm-directory .section>.wrap,
.cl-firm-directory .wrap.section-wrap{
  width:min(1040px,calc(100% - 44px))!important;
  max-width:1040px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Shared conversion band */
.cl-page .provider-band,
.cl-page .conversion-band{
  margin-top:0!important;
  padding:44px 0!important;
  background:linear-gradient(105deg,#033842,#075b66 58%,#0a8584)!important;
  border-top:3px solid #d6aa40!important;
  color:#fff!important;
}
.cl-page .provider-band .section-wrap,
.cl-page .conversion-band .wrap,
.cl-page .provider-band-inner{
  width:min(1040px,calc(100% - 44px))!important;
  max-width:1040px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.cl-page .provider-band-inner{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:36px!important;
  align-items:center!important;
  padding:0!important;
}
.cl-page .provider-band h2,
.cl-page .conversion-band h2{
  color:#fff!important;
  font-family:var(--cl-serif,Georgia,serif)!important;
  font-size:30px!important;
  line-height:1.08!important;
}
.cl-page .provider-band p,
.cl-page .conversion-band p{color:#cfe0df!important}
.cl-page .provider-band-btn{
  background:linear-gradient(135deg,#f7e5a6,#e4b94e)!important;
  color:#51400b!important;
}

/* One footer system */
.cl-page footer,
.cl-page .site-footer,
.cl-page .footer{
  margin:0!important;
  padding:38px 0 30px!important;
  background:linear-gradient(180deg,#043844,#032f3a)!important;
  color:#d8e7e5!important;
  border-top:1px solid rgba(255,255,255,.08)!important;
}
.cl-page footer .footer-inner,
.cl-page .site-footer .footer-inner,
.cl-page .footer .footer-inner,
.cl-page .footer>.wrap{
  width:min(1040px,calc(100% - 44px))!important;
  max-width:1040px!important;
  margin:0 auto!important;
}
.cl-page footer .footer-inner,
.cl-page .site-footer .footer-inner,
.cl-page .footer .footer-inner{
  display:grid!important;
  grid-template-columns:1.5fr 1fr 1fr!important;
  gap:30px!important;
}
.cl-page footer h4,
.cl-page .site-footer h4,
.cl-page .footer h4{color:#fff!important;margin:0 0 8px!important}
.cl-page footer p,
.cl-page footer a,
.cl-page .site-footer p,
.cl-page .site-footer a,
.cl-page .footer p,
.cl-page .footer a{
  color:#bcd0d5!important;
  font-size:12px!important;
}
.cl-page footer a,
.cl-page .site-footer a,
.cl-page .footer a{display:block!important;margin:5px 0!important;text-decoration:none!important}
.cl-page .footer-bottom{
  width:min(1040px,calc(100% - 44px))!important;
  margin:24px auto 0!important;
  padding-top:16px!important;
  border-top:1px solid rgba(255,255,255,.10)!important;
  color:#92afb2!important;
  font-size:10px!important;
  text-align:left!important;
}

/* Provider page currently ends with an internal CTA: make it match the platform band. */
.cl-provider .cta{
  border-radius:18px!important;
  border-top:3px solid #d6aa40!important;
  background:linear-gradient(105deg,#033842,#075b66 58%,#0a8584)!important;
  box-shadow:0 18px 48px rgba(6,49,58,.12)!important;
}
.cl-provider .cta h2{color:#fff!important}
.cl-provider .cta .btn{background:linear-gradient(135deg,#f7e5a6,#e4b94e)!important;color:#51400b!important}

@media(max-width:980px){
  .cl-home .unified-hero>.hero-inner,
  .cl-match .unified-hero>.wrap,
  .cl-provider .unified-hero>.wrap,
  .cl-firm-directory .unified-hero>.hero-inner,
  .cl-directory .unified-hero>.wrap.hero-grid{
    padding-top:44px!important;
    padding-bottom:72px!important;
  }
  .cl-directory .unified-hero>.wrap.hero-grid{grid-template-columns:1fr!important;gap:22px!important}
  .cl-directory .unified-hero .hero-card{width:min(620px,100%)!important;max-width:620px!important;margin-top:10px!important}
  .cl-page .provider-band-inner{grid-template-columns:1fr!important;gap:18px!important}
}

@media(max-width:760px){
  .cl-page footer .footer-inner,
  .cl-page .site-footer .footer-inner,
  .cl-page .footer .footer-inner{grid-template-columns:1fr!important}
}
.cl-page .site-header .brand img{
  display:block!important;
}

.cl-page .site-header .brand::before{
  display:none!important;
  content:none!important;
}