:root{color-scheme:light;--ink:#17201d;--muted:#6f7974;--paper:#f4f4ef;--line:#dfe4dc;--green:#1f6e56;--lime:#d8ef80;--radius:24px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.topline{background:#19231f;color:#e9eee9;font-size:12px;letter-spacing:.02em}.topline .wrap{display:flex;justify-content:space-between;gap:18px;padding:10px 0}.topline b{color:#d9ef82}.header{position:sticky;top:0;z-index:20;background:#f4f4efeb;backdrop-filter:blur(14px);border-bottom:1px solid #dfe4dc}.nav{display:flex;align-items:center;justify-content:space-between;min-height:74px;gap:22px}.brand{display:flex;align-items:center;gap:12px;font-size:17px;font-weight:800;letter-spacing:-.04em}.brandmark{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:var(--accent);color:white;font-size:13px;font-weight:900;letter-spacing:.03em}.navlinks{display:flex;align-items:center;gap:25px;color:#65716b;font-size:14px}.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:999px;background:var(--accent);color:white;font-weight:750;border:0;transition:transform .2s,filter .2s}.nav-cta:hover,.btn:hover{transform:translateY(-2px);filter:brightness(1.08)}.btn.light{background:#fff;color:var(--ink);border:1px solid var(--line)}.hero{position:relative;overflow:hidden;padding:70px 0 76px;background:radial-gradient(ellipse at 82% 35%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 40%),linear-gradient(135deg,#fafbf6,#eef0e8)}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:46px}.eyebrow{display:inline-flex;align-items:center;gap:9px;color:var(--accent);font-size:12px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.eyebrow:before{content:"";width:23px;height:2px;background:var(--accent)}h1{font-size:clamp(42px,6vw,74px);line-height:.99;letter-spacing:-.065em;margin:20px 0 22px;max-width:680px}h1 em{font-style:normal;color:var(--accent)}.lead{font-size:18px;color:#5b6861;max-width:550px;margin:0 0 30px}.actions{display:flex;gap:12px;flex-wrap:wrap}.proof{display:flex;gap:20px;margin-top:34px;color:#53615a;font-size:13px}.proof strong{display:block;color:var(--ink);font-size:20px;letter-spacing:-.04em}.visual{min-height:390px;border-radius:32px;background:var(--accent);position:relative;overflow:hidden;isolation:isolate;color:#fff;box-shadow:0 25px 70px #18201d25}.visual:before,.visual:after{content:"";position:absolute;z-index:-1;border-radius:50%;filter:blur(1px)}.visual:before{width:390px;height:390px;right:-75px;top:-95px;background:color-mix(in srgb,var(--accent2) 75%,white)}.visual:after{width:300px;height:300px;left:-95px;bottom:-140px;background:color-mix(in srgb,var(--accent) 68%,black)}.visual-label{position:absolute;top:24px;left:26px;font-size:11px;letter-spacing:.17em;font-weight:800;text-transform:uppercase}.visual-orbit{position:absolute;width:290px;height:290px;left:50%;top:51%;transform:translate(-50%,-50%) rotate(-14deg);border:1px solid #ffffff70;border-radius:48% 52% 50% 45%}.visual-orbit:before,.visual-orbit:after{content:"";position:absolute;border:1px solid #ffffff70;border-radius:50%}.visual-orbit:before{inset:27px 42px;transform:rotate(54deg)}.visual-orbit:after{inset:57px 14px;transform:rotate(-39deg)}.visual-word{position:absolute;inset:0;display:grid;place-items:center;text-align:center;font-size:clamp(56px,8vw,100px);line-height:.85;font-weight:950;letter-spacing:-.09em;text-shadow:0 6px 35px #0003}.visual-word span{font-size:13px;display:block;letter-spacing:.19em;margin-top:18px}.visual-stamp{position:absolute;bottom:22px;right:24px;width:90px;height:90px;border:1px solid #ffffff9c;border-radius:50%;display:grid;place-items:center;text-align:center;font-size:10px;line-height:1.2;letter-spacing:.12em;text-transform:uppercase;transform:rotate(12deg)}.section{padding:78px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px}.kicker{font-size:12px;color:var(--accent);font-weight:850;letter-spacing:.14em;text-transform:uppercase}.section h2{font-size:clamp(32px,4vw,48px);line-height:1.05;letter-spacing:-.055em;margin:10px 0 0}.section-head p{max-width:390px;color:var(--muted);margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{padding:24px;border:1px solid var(--line);border-radius:22px;background:#fff;min-height:175px}.card-no{color:var(--accent);font-size:12px;font-weight:900;letter-spacing:.1em}.card h3{font-size:20px;letter-spacing:-.035em;margin:18px 0 6px}.card p{font-size:14px;color:var(--muted);margin:0}.menu-card{padding:0;overflow:hidden}.menu-art{height:150px;background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent) 50%,var(--accent2)));position:relative;display:flex;align-items:center;justify-content:center;color:#fff}.menu-art:before{content:"";position:absolute;width:112px;height:112px;border-radius:50%;border:1px solid #ffffff9c;box-shadow:0 0 0 16px #ffffff10,0 0 0 33px #ffffff10}.menu-art span{position:relative;font-size:35px;font-weight:900;letter-spacing:-.06em}.menu-info{padding:20px}.menu-info h3{margin:0 0 6px}.menu-info p{color:var(--muted);font-size:14px;margin:0}.concept{font-size:10px!important;text-transform:uppercase;letter-spacing:.12em;color:var(--accent)!important;font-weight:850;margin-top:15px!important}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:36px;align-items:start}.contact-box{border-radius:28px;background:#1a2520;color:#fff;padding:30px;position:sticky;top:104px}.contact-box .kicker{color:var(--accent2)}.contact-box h2{font-size:32px;margin:10px 0 18px;letter-spacing:-.05em}.contact-line{padding:16px 0;border-top:1px solid #ffffff24}.contact-line small{display:block;color:#aeb9b2;font-size:11px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:4px}.contact-line a,.contact-line span{font-size:16px;font-weight:650}.contact-box .btn{width:100%;margin-top:12px;background:var(--accent2);color:#17201d}.note{border:1px solid #ead8a9;border-radius:20px;background:#fff9e9;padding:20px 22px;color:#66572f;font-size:14px}.footer{background:#19231f;color:#aeb9b2;padding:34px 0;font-size:13px}.footer .wrap{display:flex;justify-content:space-between;gap:20px;align-items:center}.footer strong{color:#fff}.footer a{color:#e3edb5}.directory-link{color:var(--accent);font-weight:700}.menu-toggle{display:none}.directory-hero{padding:60px 0 52px;background:radial-gradient(ellipse at 80% 0%,#dff0be,transparent 40%),linear-gradient(135deg,#f7f8f3,#ecefe8)}.directory-hero h1{max-width:760px}.stats{display:flex;gap:12px;margin:32px 0 0;flex-wrap:wrap}.stat{background:white;border:1px solid var(--line);border-radius:16px;padding:14px 18px;min-width:135px}.stat b{font-size:24px;display:block;line-height:1.1}.stat span{font-size:12px;color:var(--muted)}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 22px}.filter{border:1px solid var(--line);background:#fff;border-radius:99px;padding:10px 17px;color:#58635d;cursor:pointer;min-height:44px}.filter.active{background:#19231f;color:white;border-color:#19231f}.search{min-height:48px;padding:0 16px;border:1px solid var(--line);border-radius:14px;background:#fff;width:min(360px,100%);font:inherit}.directory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.lead-card{border:1px solid var(--line);border-radius:21px;background:#fff;padding:22px;display:flex;flex-direction:column;gap:10px;min-height:250px;transition:transform .2s,box-shadow .2s}.lead-card:hover{transform:translateY(-3px);box-shadow:0 16px 40px #26352c12}.lead-top{display:flex;justify-content:space-between;gap:10px;align-items:start}.lead-top h3{font-size:19px;line-height:1.15;letter-spacing:-.04em;margin:0}.tag{font-size:10px;color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,white);padding:7px 10px;border-radius:99px;font-weight:800;white-space:nowrap}.lead-card p{font-size:13px;color:var(--muted);margin:0}.lead-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:12px;border-top:1px solid var(--line)}.lead-foot a{font-size:13px;color:var(--accent);font-weight:750}.lead-foot small{font-size:11px;color:#89938d}.sources{font-size:13px;color:var(--muted)}.sources summary{cursor:pointer;color:var(--accent);font-weight:700}.sources a{overflow-wrap:anywhere}.filter-empty{padding:28px;text-align:center;color:var(--muted);background:#fff;border:1px dashed var(--line);border-radius:18px;grid-column:1/-1}.badge{font-size:10px;font-weight:850;color:#715f2b;background:#fff4d7;border:1px solid #f0dfb4;padding:7px 10px;border-radius:99px;display:inline-flex;align-items:center;gap:6px}@media(max-width:850px){.hero-grid,.split{grid-template-columns:1fr}.visual{min-height:300px}.cards,.directory-grid{grid-template-columns:repeat(2,1fr)}.contact-box{position:static}.section-head{align-items:start;flex-direction:column}.navlinks{gap:14px}}@media(max-width:600px){.wrap{width:min(100% - 28px,1160px)}.topline .wrap{font-size:10px}.topline .wrap span:last-child{display:none}.nav{min-height:64px}.brand{font-size:15px}.navlinks{display:none}.nav-cta{min-height:42px;padding:0 15px;font-size:13px}.hero{padding:48px 0 54px}.hero-grid{gap:30px}h1{font-size:48px}.lead{font-size:16px}.visual{min-height:260px;border-radius:24px}.proof{gap:14px}.proof strong{font-size:17px}.section{padding:58px 0}.cards,.directory-grid{grid-template-columns:1fr}.section-head p{font-size:14px}.footer .wrap{align-items:start;flex-direction:column}.stats{gap:8px}.stat{min-width:calc(50% - 5px)}.lead-card{min-height:220px}}

/* Category-specific artwork, clear keyboard focus, and reduced motion */
.visual{min-height:420px}
.visual-illustration{position:absolute;inset:56px 18px 58px;display:grid;place-items:center;pointer-events:none}
.visual-illustration img{display:block;width:min(100%,370px);height:100%;max-height:310px;object-fit:contain;filter:drop-shadow(0 18px 16px #1113)}
.visual-word{inset:auto auto 20px 26px;display:block;font-size:clamp(26px,4vw,38px);line-height:1;font-weight:950;letter-spacing:-.07em;text-align:left;text-shadow:0 2px 12px #0003}
.visual-word span{font-size:11px;letter-spacing:.15em;margin-top:7px}
.visual-stamp{width:76px;height:76px;right:20px;bottom:17px;background:#10182028;font-weight:800}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--accent,#1f6e56);outline-offset:3px}
@media(max-width:850px){.visual{min-height:330px}.visual-illustration{inset:42px 10px 52px}.visual-illustration img{max-height:260px}}
@media(max-width:600px){.visual{min-height:270px}.visual-illustration{inset:35px 8px 46px}.visual-illustration img{max-height:215px}.visual-word{font-size:25px;left:18px;bottom:16px}.visual-stamp{width:64px;height:64px;right:14px;bottom:12px;font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
