.directory-visual-hero{position:relative;isolation:isolate;overflow:hidden;background:#10181d;color:#fff}
.directory-visual-image{position:absolute;inset:0;z-index:-2;display:block;width:100%;height:100%;object-fit:cover;object-position:center 52%}
.directory-visual-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#10181df7 0%,#10181deb 30%,#10181db8 48%,#10181d33 72%,#10181d08 100%)}
.directory-visual-inner{min-height:490px;display:flex;flex-direction:column}
.directory-visual-hero .breadcrumbs{margin:0;padding-block:24px;color:#dce4e9;font-size:.75rem}
.directory-visual-hero .breadcrumbs a{color:#fff}
.directory-visual-hero .breadcrumbs [aria-current]{color:#dce4e9}
.directory-visual-copy{width:min(62%,750px);padding:36px 0 66px;margin-block:auto}
.directory-visual-hero .eyebrow{color:#f3f5f6;font-size:.7rem;letter-spacing:.17em;margin:0 0 24px}
.directory-visual-hero h1{font-size:clamp(2.5rem,4.6vw,4.25rem);font-weight:800;line-height:1.08;letter-spacing:-.045em;margin:0;color:#fff;text-wrap:balance;max-width:none}
.directory-visual-hero h1 span{display:block;color:#d5dde2}
.directory-visual-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;margin-top:32px}
.directory-visual-actions .button{min-height:48px;gap:24px}
.directory-visual-link{display:inline-flex;align-items:center;gap:12px;min-height:48px;font-size:.875rem;color:#fff;text-decoration:underline;text-underline-offset:6px;text-decoration-color:#9daeb8}
.directory-visual-link:hover{color:#fff;text-decoration-color:#fff}
.directory-visual-hero a:focus-visible{outline:3px solid #fff;outline-offset:5px}
#directory-catalogue{scroll-margin-top:calc(var(--header-height) + var(--context-height) + 24px)}
@media(min-width:601px){.directory-visual-hero--engines .directory-visual-inner{min-height:540px}.directory-visual-hero--engines .directory-visual-image{object-position:center 24%}}
.home-brand-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.home-brand-drawing{--drawing-ink:#972e40;--drawing-tint:#f7eff0;position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #cfd6da;background:var(--drawing-tint);color:#26343c;transition:border-color .18s,box-shadow .18s}
.home-brand-drawing:nth-child(3n+2){--drawing-ink:#2e586c;--drawing-tint:#edf3f6}
.home-brand-drawing:nth-child(3n){--drawing-ink:#625542;--drawing-tint:#f5f2ec}
.home-brand-drawing .brand-wordmark{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:150px;padding:24px 18px;background-image:linear-gradient(#55616c09 1px,transparent 1px),linear-gradient(90deg,#55616c09 1px,transparent 1px);background-size:24px 24px}
.home-brand-drawing .brand-wordmark::before,.home-brand-drawing .brand-wordmark::after{content:"";position:absolute;width:12px;height:12px;border:1px solid var(--drawing-ink);opacity:.6}
.home-brand-drawing .brand-wordmark::before{top:12px;left:12px;border-width:1px 0 0 1px}
.home-brand-drawing .brand-wordmark::after{bottom:12px;right:12px;border-width:0 1px 1px 0}
.home-brand-drawing .brand-wordmark-main{font-size:clamp(1.7rem,3.6vw,3rem);font-weight:900;font-style:italic;line-height:1.1;letter-spacing:-.035em;text-transform:uppercase;text-align:center;overflow-wrap:anywhere;color:var(--drawing-ink)}
.home-brand-drawing .brand-wordmark-short .brand-wordmark-main{font-size:clamp(2.5rem,4.8vw,4.25rem)}
.home-brand-drawing .brand-wordmark-sub{font-size:.65rem;letter-spacing:.2em;font-weight:700;text-align:center;color:var(--drawing-ink)}
.home-brand-caption{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px 18px;border-top:1px solid #55616c26;font-size:.75rem;font-weight:600;background:#ffffff80}
.home-brand-caption>span:last-child{font-size:1rem;color:var(--drawing-ink)}
.home-brand-drawing:hover{border-color:var(--drawing-ink);box-shadow:0 4px 18px #19202712}
.home-brand-drawing:focus-visible{outline:3px solid #a51a2c;outline-offset:4px}
@supports(-webkit-text-stroke:1px #263840){.home-brand-drawing .brand-wordmark-main{color:transparent;-webkit-text-stroke:1.2px var(--drawing-ink);paint-order:stroke fill}}
@media(max-width:900px){.directory-visual-copy{width:min(78%,660px)}.directory-visual-hero::before{background:linear-gradient(90deg,#10181df7,#10181dda 45%,#10181d33)}.home-brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
    .directory-visual-image{height:310px;object-position:72% center}
    .directory-visual-hero::before{background:linear-gradient(180deg,#10181d80 0,#10181d12 95px,#10181df2 290px,#10181d 310px)}
    .directory-visual-inner{min-height:0}
    .directory-visual-hero .breadcrumbs{padding-block:20px}
    .directory-visual-copy{width:100%;margin-top:140px;padding:0 0 32px}
    .directory-visual-hero h1{font-size:clamp(2rem,8.5vw,3rem)}
    .directory-visual-hero .eyebrow{margin-bottom:16px}
    .directory-visual-actions{gap:8px 18px;margin-top:24px}
    .directory-visual-link{font-size:.8rem}
    .home-brand-grid{gap:10px}
    .home-brand-drawing .brand-wordmark{min-height:122px;padding:24px 10px}
    .home-brand-drawing .brand-wordmark-main{font-size:clamp(1.2rem,5.2vw,1.9rem)}
    .home-brand-drawing .brand-wordmark-sub{font-size:.55rem;letter-spacing:.12em}
    .home-brand-caption{font-size:.7rem;padding:12px 10px}
}
@media(prefers-reduced-motion:reduce){.home-brand-drawing{transition:none}}
@media(forced-colors:active){.home-brand-drawing .brand-wordmark-main{color:LinkText;-webkit-text-stroke:0}.directory-visual-hero::before{background:Canvas}.directory-visual-hero h1,.directory-visual-hero h1 span,.directory-visual-hero .eyebrow{color:CanvasText}}
