/* YHN Brand Directory 3.9.37 */
.yhn-bd{--bd-blue:#176ea8;--bd-ink:#2f3034;--bd-muted:#7b8088;--bd-line:#e8e9ec;--bd-pink:#ef2b7a;background:#fff;color:var(--bd-ink);padding:0 0 48px}
.yhn-bd-shell{width:min(1180px,calc(100% - 36px));margin:0 auto}
.yhn-bd-breadcrumb{display:flex;align-items:center;gap:8px;color:#8a8e94;font-size:12px;padding:18px 0 12px}.yhn-bd-breadcrumb a{color:#767b82}.yhn-bd-breadcrumb a:hover{color:var(--bd-blue)}
.yhn-bd-hero{display:grid;grid-template-columns:1fr 1.08fr;min-height:286px;border:1px solid #edf0f3;border-radius:18px;overflow:hidden;background:linear-gradient(110deg,#fffaf8 0,#fff 46%,#edf7fc 100%);box-shadow:0 14px 36px rgba(35,50,70,.06)}
.yhn-bd-hero-copy{padding:46px 50px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.yhn-bd-eyebrow,.yhn-bd-head>div>span{font-size:12px;font-weight:800;letter-spacing:.16em;color:var(--bd-blue)}
.yhn-bd-hero h1{font-family:Georgia,'Times New Roman',serif;font-size:46px;line-height:1.02;margin:9px 0 13px;color:#26272a}.yhn-bd-hero p{max-width:560px;color:#676c73;font-size:15px;line-height:1.72;margin:0 0 22px}.yhn-bd-btn{display:inline-flex;align-items:center;gap:12px;background:var(--bd-blue);color:#fff!important;border-radius:999px;padding:11px 18px;font-weight:750;font-size:13px;box-shadow:0 8px 18px rgba(23,110,168,.18)}
.yhn-bd-hero-art{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(219,239,249,.6))}.yhn-bd-hero-art:before,.yhn-bd-hero-art:after{content:"";position:absolute;width:70%;height:48%;background:#d9edf7;clip-path:polygon(0 68%,25% 42%,46% 61%,70% 26%,100% 58%,100% 100%,0 100%);bottom:0;left:-6%;opacity:.8}.yhn-bd-hero-art:after{left:36%;width:75%;background:#cfe5f2;opacity:.65}.yhn-bd-orb{position:absolute;width:90px;height:90px;border-radius:50%;background:#f8d9e6;right:18%;top:20%}.yhn-bd-hero-art i{position:absolute;width:54%;height:54%;border:1px solid rgba(23,110,168,.13);border-radius:50%;right:-6%;top:-16%}.yhn-bd-hero-art b{position:relative;z-index:2;font-size:38px;letter-spacing:.06em;color:#1670ac}.yhn-bd-hero-art small{position:relative;z-index:2;margin-top:5px;letter-spacing:.14em;color:#75808a;font-size:10px}
.yhn-bd .yhn-bl-trust{margin:12px 0 0}
.yhn-bd-section{padding-top:56px}.yhn-bd-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}.yhn-bd-head h2{font-size:30px;line-height:1.15;margin:6px 0 0;color:#45484d}.yhn-bd-head>a{color:var(--bd-blue);font-weight:700}.yhn-bd-head--directory>strong{font-size:14px;color:#7b8088;font-weight:650}
.yhn-bd-featured-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.yhn-bd-featured-card{position:relative;min-height:210px;border:1px solid rgba(42,66,87,.08);border-radius:18px;padding:26px 24px 20px;overflow:hidden;display:flex;flex-direction:column;color:#34363a!important;box-shadow:0 9px 25px rgba(30,45,60,.045);transition:transform .2s ease,box-shadow .2s ease}.yhn-bd-featured-card:hover{transform:translateY(-3px);box-shadow:0 15px 30px rgba(30,45,60,.09)}
.yhn-bd-featured-card:before{content:"";position:absolute;inset:0 0 auto 0;height:74px;background:linear-gradient(150deg,rgba(23,110,168,.11),transparent 70%)}.yhn-bd-featured-card:after{content:"";position:absolute;width:130px;height:80px;right:-10px;top:5px;background:rgba(23,110,168,.06);clip-path:polygon(0 76%,38% 36%,58% 60%,100% 20%,100% 100%,0 100%)}
.yhn-bd-tone-2{background:#fffdf7}.yhn-bd-tone-3{background:#fff9fb}.yhn-bd-tone-4{background:#f9fdfc}.yhn-bd-tone-5{background:#fbfbff}.yhn-bd-tone-6{background:#fbfcfd}.yhn-bd-card-index{position:absolute;right:18px;top:14px;font:700 38px/1 Georgia,serif;color:rgba(23,110,168,.09)}.yhn-bd-card-kicker{position:relative;z-index:1;font-size:10px;letter-spacing:.16em;color:#64839a;font-weight:800;margin-top:50px}.yhn-bd-featured-card>strong{position:relative;z-index:1;font-size:23px;line-height:1.15;margin:7px 0 5px}.yhn-bd-featured-card>small{position:relative;z-index:1;color:#949aa1;font-size:10px;letter-spacing:.11em}.yhn-bd-card-meta{margin-top:auto;padding-top:19px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px}.yhn-bd-card-meta em{font-style:normal;color:#838890}.yhn-bd-card-meta b{color:var(--bd-blue);font-size:10px;letter-spacing:.08em}
.yhn-bd-tools{display:grid;gap:15px;margin-bottom:20px}.yhn-bd-search{position:relative;display:block;max-width:520px}.yhn-bd-search svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:18px;height:18px;fill:none;stroke:#71808b;stroke-width:1.8}.yhn-bd-search input{width:100%;height:46px;padding:0 18px 0 46px;border:1px solid #e3e6e9;border-radius:999px!important;background:#fafbfc;box-shadow:none!important;font-size:14px}.yhn-bd-search input:focus{border-color:#9bc8e3;background:#fff}
.yhn-bd-letters{display:flex;gap:6px;flex-wrap:wrap}.yhn-bd-letters button{width:34px;height:34px;border:1px solid #e5e8eb;border-radius:9px;background:#fff;color:#62686f;font-size:12px;font-weight:700;padding:0;line-height:1}.yhn-bd-letters button:first-child{width:auto;padding:0 13px}.yhn-bd-letters button:hover:not(:disabled),.yhn-bd-letters button.is-active{border-color:#9dc9e4;background:#edf7fd;color:var(--bd-blue)}.yhn-bd-letters button:disabled{opacity:.3;cursor:default}
.yhn-bd-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.yhn-bd-list-card{min-height:82px;border:1px solid var(--bd-line);border-radius:14px;padding:13px 15px;display:flex;align-items:center;gap:12px;color:#303236!important;background:#fff;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.yhn-bd-list-card:hover{border-color:#b7d9ec;box-shadow:0 9px 22px rgba(34,58,78,.06);transform:translateY(-2px)}.yhn-bd-monogram{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;background:#edf7fd;color:var(--bd-blue);font:700 18px/1 Georgia,serif;flex:0 0 42px}.yhn-bd-list-copy{min-width:0;display:flex;flex-direction:column}.yhn-bd-list-copy strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}.yhn-bd-list-copy small{color:#9a9ea4;font-size:11px;margin-top:3px}.yhn-bd-list-arrow{margin-left:auto;color:#8ba7b9;font-size:17px}.yhn-bd-list-card[hidden]{display:none!important}.yhn-bd-empty{padding:28px;border:1px dashed #dfe4e8;border-radius:14px;text-align:center;color:#8a9096;background:#fbfcfd}
.yhn-bd-editorial{margin-top:58px;display:grid;grid-template-columns:1.15fr .85fr;min-height:250px;border:1px solid #eceff2;border-radius:18px;overflow:hidden;background:linear-gradient(105deg,#fffaf8,#fff 55%,#edf7fc)}.yhn-bd-editorial>div:first-child{padding:42px 46px}.yhn-bd-editorial h2{font-family:Georgia,'Times New Roman',serif;font-size:34px;line-height:1.12;margin:8px 0 13px;color:#36373a}.yhn-bd-editorial p{color:#72767d;line-height:1.7;max-width:680px}.yhn-bd-editorial a{display:inline-block;margin-top:8px;color:var(--bd-blue);font-weight:750}.yhn-bd-editorial-art{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;overflow:hidden}.yhn-bd-editorial-art:before{content:"";position:absolute;width:220px;height:220px;border-radius:50%;background:#f5dbe5;right:12%;top:-45%}.yhn-bd-editorial-art i{position:absolute;inset:auto 0 0;height:65%;background:#d9edf7;clip-path:polygon(0 75%,25% 40%,50% 67%,77% 25%,100% 55%,100% 100%,0 100%)}.yhn-bd-editorial-art b,.yhn-bd-editorial-art small{position:relative;z-index:1;color:#176ea8}.yhn-bd-editorial-art b{font-size:28px;line-height:1.05;letter-spacing:.04em}.yhn-bd-editorial-art small{margin-top:8px;font-size:10px;letter-spacing:.15em}
@media(max-width:900px){.yhn-bd-featured-grid,.yhn-bd-list{grid-template-columns:repeat(3,minmax(0,1fr))}.yhn-bd-hero-copy{padding:38px 34px}.yhn-bd-hero h1{font-size:38px}}
@media(max-width:640px){.yhn-bd{padding-bottom:28px}.yhn-bd-shell{width:calc(100% - 28px)}.yhn-bd-breadcrumb{padding-top:12px}.yhn-bd-hero{grid-template-columns:1fr;min-height:0;border-radius:16px}.yhn-bd-hero-copy{padding:30px 24px 26px}.yhn-bd-hero h1{font-size:38px}.yhn-bd-hero p{font-size:14px}.yhn-bd-hero-art{min-height:170px}.yhn-bd-hero-art b{font-size:32px}.yhn-bd-section{padding-top:42px}.yhn-bd-head{margin-bottom:17px;align-items:center}.yhn-bd-head h2{font-size:26px}.yhn-bd-head>a{font-size:13px}.yhn-bd-featured-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin:0 -14px;padding:0 14px 8px;scrollbar-width:none}.yhn-bd-featured-grid::-webkit-scrollbar{display:none}.yhn-bd-featured-card{flex:0 0 72vw;max-width:290px;min-height:190px;scroll-snap-align:start}.yhn-bd-tools{margin-bottom:16px}.yhn-bd-search{max-width:none}.yhn-bd-letters{flex-wrap:nowrap;overflow-x:auto;margin:0 -14px;padding:0 14px 7px;scrollbar-width:none}.yhn-bd-letters::-webkit-scrollbar{display:none}.yhn-bd-letters button{flex:0 0 34px}.yhn-bd-letters button:first-child{flex-basis:auto}.yhn-bd-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.yhn-bd-list-card{min-height:78px;padding:11px 10px;gap:9px}.yhn-bd-monogram{width:38px;height:38px;flex-basis:38px}.yhn-bd-list-copy strong{font-size:13px}.yhn-bd-list-arrow{display:none}.yhn-bd-editorial{grid-template-columns:1fr;margin-top:44px}.yhn-bd-editorial>div:first-child{padding:30px 24px}.yhn-bd-editorial h2{font-size:29px}.yhn-bd-editorial-art{min-height:170px}.yhn-bd .yhn-bl-trust{overflow:hidden}}


/* 3.9.36.2 — Brand Directory trust-strip icon size hotfix.
   The directory reuses the Brand Landing trust-strip markup, but deliberately
   remains visually self-contained. Lock the whole trust component here so
   SVGs can never inherit unrestricted global image/SVG sizing. */
.yhn-bd .yhn-pl-trust.yhn-bl-trust{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
  margin:12px 0 0!important;
  padding:12px!important;
  border:1px solid #f0e9eb!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 12px 30px rgba(45,25,31,.045)!important;
  overflow:visible!important;
}
.yhn-bd .yhn-pl-trust.yhn-bl-trust>div{
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  column-gap:10px!important;
  align-items:center!important;
  min-width:0!important;
  min-height:64px!important;
  padding:9px 13px!important;
  border-radius:13px!important;
}
.yhn-bd .yhn-pl-trust.yhn-bl-trust>div+div{border-left:1px solid #f3edef!important}
.yhn-bd .yhn-pl-trust.yhn-bl-trust>div>span{
  grid-row:1/3!important;
  display:grid!important;
  place-items:center!important;
  box-sizing:border-box!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  max-width:34px!important;
  max-height:34px!important;
  flex:0 0 34px!important;
  margin:0!important;
  padding:0!important;
  border-radius:50%!important;
  background:rgba(23,110,168,.065)!important;
  color:var(--bd-blue)!important;
  line-height:0!important;
  overflow:hidden!important;
}
.yhn-bd .yhn-pl-trust.yhn-bl-trust>div>span svg{
  display:block!important;
  box-sizing:content-box!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  max-width:18px!important;
  max-height:18px!important;
  margin:0!important;
  padding:0!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.65!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  transform:none!important;
}
.yhn-bd .yhn-pl-trust.yhn-bl-trust>div>strong{
  align-self:end!important;
  min-width:0!important;
  margin:0!important;
  font-size:11px!important;
  line-height:1.35!important;
  font-weight:650!important;
  color:#3d4146!important;
}
.yhn-bd .yhn-pl-trust.yhn-bl-trust>div>small{
  align-self:start!important;
  min-width:0!important;
  margin:0!important;
  color:#91878b!important;
  font-size:9.5px!important;
  line-height:1.35!important;
}
@media(max-width:900px){
  .yhn-bd .yhn-pl-trust.yhn-bl-trust{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .yhn-bd .yhn-pl-trust.yhn-bl-trust>div+div{border-left:0!important}
  .yhn-bd .yhn-pl-trust.yhn-bl-trust>div:nth-child(even){border-left:1px solid #f3edef!important}
}
@media(max-width:640px){
  .yhn-bd .yhn-pl-trust.yhn-bl-trust{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:2px!important;
    padding:7px!important;
    border-radius:15px!important;
    overflow:hidden!important;
  }
  .yhn-bd .yhn-pl-trust.yhn-bl-trust>div{
    grid-template-columns:27px minmax(0,1fr)!important;
    min-height:58px!important;
    padding:8px 7px!important;
    column-gap:7px!important;
  }
  .yhn-bd .yhn-pl-trust.yhn-bl-trust>div>span{
    width:26px!important;height:26px!important;min-width:26px!important;min-height:26px!important;max-width:26px!important;max-height:26px!important;flex-basis:26px!important;
  }
  .yhn-bd .yhn-pl-trust.yhn-bl-trust>div>span svg{
    width:16px!important;height:16px!important;min-width:16px!important;min-height:16px!important;max-width:16px!important;max-height:16px!important;
  }
  .yhn-bd .yhn-pl-trust.yhn-bl-trust>div>strong{font-size:9.5px!important}
  .yhn-bd .yhn-pl-trust.yhn-bl-trust>div>small{font-size:8px!important}
}

/* 3.9.50.0 — Compact, navigable A-Z directory. */
.yhn-bd-tools{
  position:sticky;
  top:0;
  z-index:35;
  margin:0 -12px 20px;
  padding:12px;
  border:1px solid rgba(227,230,233,.92);
  border-radius:16px;
  background:rgba(255,255,255,.94);
  box-shadow:0 10px 26px rgba(35,50,65,.065);
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
}
.admin-bar .yhn-bd-tools{top:32px}
.yhn-bd-more-wrap{text-align:center;margin:24px 0 0}
.yhn-bd-more-wrap[hidden]{display:none!important}
.yhn-bd-more{
  min-height:44px;
  padding:10px 22px;
  border:1px solid #9dc9e4;
  border-radius:999px;
  background:#fff;
  color:var(--bd-blue);
  font-size:12px;
  font-weight:800;
  cursor:pointer;
  transition:background .18s ease,border-color .18s ease,transform .18s ease;
}
.yhn-bd-more:hover{background:#edf7fd;border-color:#75b3d7;transform:translateY(-1px)}
.yhn-bd-more:focus-visible{outline:3px solid rgba(23,110,168,.22);outline-offset:3px}
@media(max-width:782px){.admin-bar .yhn-bd-tools{top:46px}}
@media(max-width:640px){
  .yhn-bd-tools{top:0;margin:0 -7px 16px;padding:9px 7px;border-radius:13px;gap:8px}
  .admin-bar .yhn-bd-tools{top:46px}
  .yhn-bd-search input{height:42px}
  .yhn-bd-result-status{display:none}
  .yhn-bd-more{width:100%;min-height:46px}
}


/* 3.9.37 — Brand Directory premium UX/SEO production polish */
.yhn-bd-directory-intro{
  max-width:680px;
  margin:7px 0 0;
  color:#81868d;
  font-size:12.5px;
  line-height:1.55;
}
.yhn-bd-head--directory{align-items:flex-end}
.yhn-bd-tools{
  position:sticky;
  grid-template-columns:minmax(280px,520px) minmax(0,1fr) auto;
  align-items:center;
  column-gap:14px;
}
.yhn-bd-letters{min-width:0}
.yhn-bd-result-status{
  margin:0;
  color:#899097;
  font-size:12px;
  font-weight:650;
  white-space:nowrap;
}
.yhn-bd-search input:focus-visible,
.yhn-bd-letters button:focus-visible,
.yhn-bd-featured-card:focus-visible,
.yhn-bd-list-card:focus-visible,
.yhn-bd-btn:focus-visible,
.yhn-bd-editorial a:focus-visible{
  outline:3px solid rgba(23,110,168,.22)!important;
  outline-offset:3px!important;
}
.yhn-bd-featured-card,
.yhn-bd-list-card{
  text-decoration:none!important;
}
.yhn-bd-featured-card>strong{overflow-wrap:anywhere}
.yhn-bd-list-card{content-visibility:auto;contain-intrinsic-size:82px}
.yhn-bd-hero-art,
.yhn-bd-editorial-art{user-select:none}
@media(prefers-reduced-motion:reduce){
  .yhn-bd-featured-card,.yhn-bd-list-card,.yhn-bd-btn{transition:none!important}
}
@media(max-width:900px){
  .yhn-bd-tools{grid-template-columns:1fr}
  .yhn-bd-result-status{justify-self:start}
}
@media(max-width:640px){
  .yhn-bd-head--directory{align-items:flex-start}
  .yhn-bd-head--directory>strong{padding-top:3px;white-space:nowrap}
  .yhn-bd-directory-intro{font-size:12px;line-height:1.5}
  .yhn-bd-tools{gap:11px}
  .yhn-bd-result-status{font-size:11.5px}
  .yhn-bd-featured-card{flex-basis:68vw;max-width:274px}
}
