:root{--paper:#f4ecdc;--ink:#14213d;--orange:#e8590c;--cream:#fffaf0;--muted:#4a5468;--line:#14213d}
html{scroll-behavior:smooth;scroll-padding-top:72px}
body{font-family:'Public Sans',system-ui,sans-serif;background:var(--paper);color:var(--ink);font-size:1.05rem;line-height:1.6}
h1,h2,h3,h4,.brand{font-family:'Bricolage Grotesque',system-ui,sans-serif;letter-spacing:-.02em;line-height:1.05}
.navbar{background:var(--ink);border-bottom:4px solid var(--orange)}
.navbar .brand{color:#fff;font-weight:800;font-size:1.25rem;text-decoration:none}
.navbar .brand small{display:block;font-family:'Public Sans';font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:#f4b27f;font-weight:600}
.navbar .nav-link{color:#e9e6dd;font-weight:600;font-size:.95rem}
.navbar .nav-link:hover{color:var(--orange)}
.navbar-toggler{border-color:#fff8}.navbar-toggler-icon{filter:invert(1)}
.btn-wf{background:var(--orange);color:#fff;border:2px solid var(--ink);border-radius:4px;font-weight:700;padding:.7rem 1.4rem}
.btn-wf:hover{background:var(--ink);color:#fff}
.btn-ink{background:transparent;color:var(--ink);border:2px solid var(--ink);border-radius:4px;font-weight:700;padding:.7rem 1.4rem}
.btn-ink:hover{background:var(--ink);color:#fff}
.hero{padding:3rem 0 2.5rem;background:
 repeating-linear-gradient(90deg,transparent 0 38px,rgba(20,33,61,.05) 38px 40px),var(--paper)}
.hero h1{font-size:clamp(2.4rem,6.5vw,4.6rem);font-weight:800}
.hero h1 em{font-style:normal;color:var(--orange)}
.hero .lead{max-width:34rem;color:var(--muted)}
.tag{background:var(--cream);border:2px solid var(--ink);border-radius:6px;padding:1.4rem 1.5rem;position:relative;transform:rotate(1.5deg)}
.tag::before{content:"";position:absolute;top:12px;right:14px;width:16px;height:16px;border-radius:50%;border:2px solid var(--ink);background:var(--paper)}
.tag .k{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--orange)}
.tag .v{font-family:'Bricolage Grotesque';font-weight:800;font-size:1.35rem;line-height:1.2;margin-bottom:.8rem}
.tag .stamp{display:inline-block;border:3px solid var(--orange);color:var(--orange);font-family:'Bricolage Grotesque';font-weight:800;padding:.1rem .7rem;transform:rotate(-4deg);text-transform:uppercase;letter-spacing:.06em}
.road{background:var(--ink);color:#fff;border-top:4px solid var(--orange)}
.road .item{padding:.9rem 0;text-align:center;font-weight:600;font-size:.95rem}
.road b{font-family:'Bricolage Grotesque';font-size:1.7rem;color:var(--orange);margin-right:.35rem}
section{padding:4.5rem 0}
.eyebrow{font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--orange)}
h2{font-size:clamp(1.9rem,4vw,2.8rem);font-weight:800;margin-bottom:1rem}
.svc{background:var(--cream);border:2px solid var(--ink);border-radius:6px;padding:1.4rem;height:100%}
.svc .n{font-family:'Bricolage Grotesque';font-weight:800;color:var(--orange);font-size:.95rem}
.svc h3{font-size:1.4rem;margin:.2rem 0 .5rem}
.svc p{margin:0;color:var(--muted);font-size:.98rem}
.alt{background:var(--ink);color:#fff}
.alt h2{color:#fff}.alt p,.alt li{color:#d9dde7}
.facts li{padding:.45rem 0;border-bottom:1px dashed #fff4;list-style:none}
.facts{padding:0;margin:0}
.photo{background:#fff;border:2px solid var(--ink);border-radius:4px;padding:.6rem;max-width:340px}
.photo img{width:100%;height:auto;display:block}
.creds{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}
.creds a{background:#fff;border:2px solid var(--ink);border-radius:4px;padding:.5rem;display:flex}
.creds img{height:64px;width:auto}
.ids{font-size:.9rem;color:var(--muted)}
.contact-card{background:var(--cream);border:2px solid var(--ink);border-radius:6px;padding:1.6rem}
.contact-card a{color:var(--ink);font-weight:700}
.map{border:2px solid var(--ink);border-radius:6px;width:100%;height:100%;min-height:320px}
footer{background:var(--ink);color:#c9cfdc;padding:2rem 0;font-size:.9rem}
footer a{color:#f4b27f}
@media(max-width:767px){section{padding:3rem 0}.tag{transform:none;margin-top:1.5rem}.hero{padding-top:2rem}}
