@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,700;0,800;1,700&display=swap');
:root{--red:#b82127;--deep:#841519;--cream:#f7f1e5;--ink:#25221e;--line:#d6cbb9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit}a:focus-visible{outline:3px solid #e0aa3e;outline-offset:4px}.topbar{height:92px;padding:0 6.1%;display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--cream)}.brand{text-decoration:none;font-weight:700;line-height:1.05;font-size:11px;letter-spacing:.08em;display:flex;align-items:center;gap:10px}.brand-star{color:var(--red);font-size:39px}.topbar nav{display:flex;gap:36px}.topbar nav a,.nav-cta{font-size:12px;font-weight:700;text-decoration:none}.nav-cta{border-bottom:1px solid var(--red);padding-bottom:8px;color:var(--red)}.hero{background:var(--red);color:var(--cream);min-height:585px;display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden}.hero-copy{padding:96px 6vw 75px}.eyebrow,.label{font-size:10px;font-weight:700;letter-spacing:.18em}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#e7b965;margin-right:6px}.hero h1,h2{font-family:'Playfair Display',Georgia,serif;letter-spacing:-.055em;line-height:1.02}.hero h1{font-size:clamp(57px,6.5vw,96px);margin:26px 0 23px}.hero h1 em,h2 em{font-weight:700}.period{color:#f0c05d}.intro{max-width:470px;font-size:17px;line-height:1.6}.hero-actions{display:flex;gap:26px;align-items:center;margin-top:35px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;text-decoration:none;font-size:12px;font-weight:700;padding:16px 21px;min-height:50px}.light{background:var(--cream);color:var(--red)}.dark{background:var(--red);color:white}.text-link{font-size:12px;font-weight:700;text-decoration:none;border-bottom:1px solid #e8a6a5;padding-bottom:5px}.hero-note{font-size:11px;opacity:.74;margin-top:39px}.hero-art{position:relative;display:flex;align-items:center;justify-content:center;background:#a91b21}.art-ring{width:min(32vw,420px);height:min(32vw,420px);min-width:300px;min-height:300px;border:1px solid #ecb0a8;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;transform:rotate(-8deg)}.art-star{font-size:95px;line-height:.9;color:#f2c761}.art-words{font-weight:700;font-size:clamp(26px,3.2vw,48px);letter-spacing:-.06em;text-align:center;line-height:.95}.art-caption{position:absolute;bottom:35px;right:8%;font-size:10px;line-height:1.4;letter-spacing:.16em;text-align:right}.art-spark{position:absolute;top:55px;right:10%;font-size:56px;color:#f0c05d}.ticker{overflow:hidden;white-space:nowrap;background:#e7b85f;color:#76201d;font-size:10px;font-weight:700;letter-spacing:.2em;padding:13px 0;text-align:center}.section{padding:110px 6.1%}.section-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:55px}.section-head>p{max-width:380px;line-height:1.7;font-size:14px;color:#625d54}.label{color:var(--red);margin:0 0 25px}.section h2,.manifesto h2{font-size:clamp(44px,5vw,70px);margin:0}.section h2 em{color:var(--red)}.results-header{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:20px 0;font-size:10px;font-weight:700;letter-spacing:.13em}.place-card{display:grid;grid-template-columns:1fr 1fr;background:#fffaf0;border:1px solid var(--line)}.place-visual{background:#e7b85f;min-height:470px;padding:28px;display:flex;flex-direction:column;justify-content:space-between;color:#812024}.corner-mark,.visual-foot{font-size:10px;font-weight:700;letter-spacing:.15em}.visual-name{font-family:'Playfair Display',Georgia,serif;font-size:clamp(65px,9vw,135px);font-weight:800;line-height:.75;letter-spacing:-.08em}.visual-name span{font-style:italic}.visual-name i{font-size:.35em;font-style:normal;vertical-align:top;margin-left:10px}.place-info{padding:42px 45px;display:flex;flex-direction:column;align-items:flex-start}.card-top{width:100%;display:flex;justify-content:space-between;align-items:center}.pill{border:1px solid #d6c1ad;padding:8px 10px;font-size:9px;letter-spacing:.12em;font-weight:700}.index{font-size:10px;color:#8c8377}.place-info h3{font-family:'Playfair Display',Georgia,serif;font-size:48px;letter-spacing:-.05em;margin:32px 0 12px}.place-info h3 span{color:var(--red)}.address{font-size:13px;font-weight:700;line-height:1.6}.description{font-size:14px;line-height:1.7;max-width:520px;color:#514a42}.small-note{font-size:12px;line-height:1.6;color:#766b5e}.card-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:20px}.source-link,.subtle-link,.sources a{font-size:12px;font-weight:700;text-decoration-thickness:1px;text-underline-offset:4px}.subtle-link{font-weight:400;color:#665e54;margin-top:22px}.more-note{display:flex;align-items:center;gap:18px;margin-top:28px;font-size:13px;line-height:1.6;color:#625d54}.more-note span{font-size:34px;color:var(--red)}.products{background:#ece3d3}.product-box{border:1px solid #cabda9;background:#f7f1e5;padding:38px}.product-intro{display:flex;gap:18px;align-items:start}.product-symbol{font-size:40px;color:var(--red)}.product-intro h3{font-family:'Playfair Display',Georgia,serif;font-size:25px;margin:0}.product-intro p,.footnote{font-size:13px;line-height:1.6;color:#665d52}.chips{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0}.chips span{border:1px solid #c5b8a6;padding:10px 14px;font-size:12px;font-weight:700}.sources{display:flex;gap:20px;flex-wrap:wrap;margin-top:26px}.manifesto{background:#801b1e;color:var(--cream);padding:105px 6.1%;display:grid;grid-template-columns:1fr 1fr;gap:60px}.manifesto .label{color:#efbc72}.manifesto h2 em{color:#f1c776}.manifesto h2 span{color:#f1c776}.manifesto-copy{align-self:end;max-width:460px;font-size:14px;line-height:1.8}.manifesto-copy a{display:inline-block;margin-top:16px;font-weight:700;text-underline-offset:5px}footer{padding:35px 6.1%;display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:11px;color:#6e6458}footer a{font-weight:700;text-decoration:none}.footer-brand{color:var(--red);letter-spacing:.08em}footer p{line-height:1.6}@media(max-width:760px){.topbar{height:76px;padding:0 5%}.topbar nav{display:none}.nav-cta{font-size:11px}.hero{grid-template-columns:1fr}.hero-copy{padding:70px 6% 55px}.hero h1{font-size:clamp(53px,12vw,75px)}.intro{font-size:15px}.hero-art{min-height:340px}.art-ring{width:255px;height:255px;min-width:0;min-height:0}.art-star{font-size:68px}.art-words{font-size:32px}.art-spark{font-size:38px;top:25px}.art-caption{bottom:18px;font-size:8px}.section{padding:75px 6%}.section-head{display:block;margin-bottom:35px}.section-head>p{margin-top:25px}.place-card{grid-template-columns:1fr}.place-visual{min-height:310px}.visual-name{font-size:90px}.place-info{padding:30px 25px}.place-info h3{font-size:42px}.results-header{font-size:9px}.product-box{padding:25px}.manifesto{padding:75px 6%;grid-template-columns:1fr;gap:35px}footer{align-items:flex-start;flex-direction:column}.section h2,.manifesto h2{font-size:48px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.event-intro{margin:48px 0 25px;max-width:750px}.event-intro h3,.event-copy h3{font-family:'Playfair Display',Georgia,serif;letter-spacing:-.04em}.event-intro h3{font-size:27px;margin:0 0 10px}.event-intro p{font-size:13px;color:#625d54;line-height:1.7}.event-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.event-card{border:1px solid var(--line);background:#fffaf0}.event-art{min-height:220px;background:#e7b85f;color:#812024;padding:24px;display:flex;flex-direction:column;justify-content:space-between}.event-art.alternate{background:#d5a77e;color:#742426}.event-art>span{font-size:10px;font-weight:700;letter-spacing:.15em}.event-art strong{font-family:'Playfair Display',Georgia,serif;font-size:clamp(45px,5vw,68px);line-height:.84;letter-spacing:-.06em}.event-copy{padding:32px}.event-copy h3{font-size:37px;margin:28px 0 10px}.event-copy h3 span{color:var(--red)}.event-copy .card-actions{margin-top:26px}.event-copy .pill{display:inline-block;line-height:1.4}@media(max-width:760px){.event-grid{grid-template-columns:1fr}.event-copy{padding:25px}.event-art{min-height:180px}.event-art strong{font-size:54px}.event-intro{margin-top:40px}}
.directory-tools{display:flex;align-items:end;gap:18px;flex-wrap:wrap;padding:22px 0;border-top:1px solid var(--line)}.directory-tools label{font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:700}.directory-tools input{font:inherit;color:var(--ink);border:1px solid #bfb29f;background:#fffaf0;border-radius:0;padding:14px 16px;min-height:48px;width:min(100%,360px)}.directory-tools input:focus-visible{outline:3px solid #e0aa3e;outline-offset:2px}.directory-tools #result-count{font-size:12px;color:#625d54;margin-left:auto;padding-bottom:15px}.directory-note{font-size:12px;line-height:1.6;color:#665e54;max-width:850px;margin:0 0 30px}.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.directory-card{border:1px solid var(--line);background:#fffaf0;display:flex;min-height:175px}.directory-art{flex:0 0 95px;display:grid;place-items:center;background:#e7b85f;color:#812024}.directory-art span{font-family:'Playfair Display',Georgia,serif;font-size:31px;font-weight:800;letter-spacing:-.08em}.directory-art.tone-1{background:#dab5a0}.directory-art.tone-2{background:#d9c9a6}.directory-art.tone-3{background:#c9a49a}.directory-copy{padding:23px 18px;display:flex;flex-direction:column;align-items:flex-start}.directory-copy h3{font-family:'Playfair Display',Georgia,serif;font-size:22px;line-height:1.12;letter-spacing:-.04em;margin:0}.directory-copy p{font-size:12px;line-height:1.5;color:#665e54;margin:12px 0}.directory-copy a{font-size:12px;font-weight:700;color:var(--red);text-underline-offset:4px;margin-top:auto}.empty-state{padding:26px 0;color:#665e54}@media(max-width:1000px){.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.directory-grid{grid-template-columns:1fr}.directory-card{min-height:145px}.directory-art{flex-basis:85px}.directory-tools{display:grid;grid-template-columns:1fr auto}.directory-tools label{grid-column:1 / -1}.directory-tools input{width:100%;min-width:0}.directory-tools #result-count{margin:0;white-space:nowrap}}
