:root{--ink:#1b1426;--purple:#3f2379;--purple-d:#2b1658;--cream:#f7f2e8;--brass:#d9a441;--line:#ddd3bd}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{font-family:'Karla',sans-serif;background:var(--cream);color:var(--ink);font-size:1.08rem;line-height:1.65}
h1,h2,h3{font-family:'Zilla Slab',Georgia,serif;font-weight:700;line-height:1.08}
.topbar{background:var(--ink);color:#fff;font-size:.9rem;padding:.4rem 0}
.topbar a{color:var(--brass);font-weight:700;text-decoration:none}
.navbar{background:var(--cream);border-bottom:2px solid var(--ink)}
.navbar-brand{display:flex;align-items:center;gap:.6rem;font-family:'Zilla Slab',serif;font-weight:700;color:var(--purple-d)}
.navbar-brand img{height:41px;width:auto}
.nav-link{color:var(--ink);font-weight:500}.nav-link:hover{color:var(--purple)}
.btn-wf{background:var(--brass);color:var(--ink);font-weight:700;border-radius:3px;border:2px solid var(--ink)}
.btn-wf:hover{background:#c4912f;color:var(--ink)}
.btn-ghost{border:2px solid var(--ink);color:var(--ink);font-weight:700;border-radius:3px}
.btn-ghost:hover{background:var(--ink);color:#fff}
.kicker{letter-spacing:.16em;text-transform:uppercase;font-size:.8rem;font-weight:700;color:var(--purple)}
.kicker-light{color:var(--brass)}
.hero{position:relative;overflow:hidden;padding:5.5rem 0 5rem}
.hero h1{font-size:clamp(2.6rem,7vw,5.2rem);color:var(--purple-d);max-width:14ch;margin:.5rem 0 1.2rem}
.hero .lead{max-width:34rem}
.shoe{color:var(--purple);position:absolute;pointer-events:none}
.shoe-hero{width:min(520px,70vw);right:-90px;top:50%;transform:translateY(-50%) rotate(14deg);opacity:.14}
.shoe-band{width:340px;right:-40px;top:-30px;color:var(--brass);opacity:.25}
.ticker{background:var(--ink);color:var(--cream);overflow:hidden;white-space:nowrap;padding:.7rem 0;font-family:'Zilla Slab',serif;font-size:1.2rem}
.ticker-track{display:inline-block;animation:tick 40s linear infinite}
.ticker span{margin:0 1.4rem}.ticker span:after{content:"◆";color:var(--brass);margin-left:2.8rem}
@keyframes tick{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.ticker-track{animation:none}}
section{padding:4.5rem 0}
.sec-title{font-size:clamp(1.9rem,3.6vw,2.9rem);color:var(--purple-d);margin-bottom:1rem}
.intro{max-width:36rem}
.lines{background:#fff;border:2px solid var(--ink);box-shadow:8px 8px 0 var(--purple);padding:1.8rem;height:100%}
.lines h3{font-size:1.6rem;color:var(--purple-d)}.lines h3 i{color:var(--brass)}
.lines ul{list-style:none;padding:0;margin:1rem 0 0}
.lines li{padding:.55rem 0;border-top:1px dashed var(--line);font-weight:500}
.band{position:relative;overflow:hidden;background:var(--purple-d);color:#f1ecfa}
.about-copy p{max-width:44rem}
.contact{background:#fff;border-top:2px solid var(--ink)}
.card-info{background:var(--cream);border:2px solid var(--ink);padding:1.6rem;font-style:normal;margin:0}
.card-info a{color:var(--purple-d);font-weight:700}
.card-info hr{border-color:var(--line);opacity:1}
.hours td{padding:.1rem 1.4rem .1rem 0}
.map{width:100%;height:100%;min-height:340px;border:2px solid var(--ink)}
footer{background:var(--ink);color:#e9e4f3;padding:2rem 0}
footer a{color:var(--brass)}
footer .chip{background:#fff;padding:4px;border-radius:6px;height:62px;width:auto}
