@import url('https://fonts.googleapis.com/css2?family=Exo+2:wght@400;600;700&family=Russo+One&display=swap');
:root{--bg:#1a1f26;--ink:#f2f4f7;--accent:#ff7a18;--alt:#242b35;--line:#3a4452}
body{font-family:"Exo 2",sans-serif}h1,h2,h3,.tn-mark{font-family:"Russo One",sans-serif}

*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);line-height:1.55}
img{max-width:100%;display:block;height:auto;object-fit:cover;background:var(--alt)}
a{color:var(--accent)}
nav{display:flex;gap:1.2rem;flex-wrap:wrap}
nav a{color:var(--ink);font-weight:600;font-size:.92rem;text-decoration:none}
.btn{display:inline-block;background:var(--accent);color:var(--bg);padding:.8rem 1.2rem;font-weight:700;border:none;cursor:pointer;text-decoration:none}
.wrap{width:min(1120px,92%);margin:0 auto}
.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:var(--ink);color:var(--bg);padding:1rem 1.25rem}
.cookie-inner{max-width:1100px;margin:0 auto;display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between}
.cookie-banner a{color:var(--accent)}
.btn-cookie{cursor:pointer;font:inherit;padding:.55rem 1rem;border:none}
.btn-cookie.accept{background:var(--accent);color:var(--bg)}
.btn-cookie.reject{background:transparent;color:inherit;border:1px solid currentColor}
.contact-form{max-width:34rem;display:grid;gap:1rem}
.form-row{display:grid;gap:.35rem}
.form-row input,.form-row textarea{width:100%;padding:.75rem 1rem;border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit}
.hp-field{position:absolute;left:-9999px;opacity:0;height:0;width:0}
.field-error{color:#c62828;font-size:.875rem}
.form-success{padding:1.2rem;border:1px solid var(--accent);background:var(--alt)}


.tn-ridge{{display:flex;justify-content:space-between;align-items:center;padding:1rem 4%;border-bottom:2px solid var(--accent);position:sticky;top:0;background:rgba(26,31,38,.96);z-index:40}}.tn-mark{{color:var(--accent);text-decoration:none;font-size:1.1rem}}.tn-menu{{display:none;background:var(--accent);border:none;color:#1a1f26;padding:.4rem .55rem}}
.tn-km-hero{{padding:5rem 4%;display:flex;align-items:center;gap:2rem}}.tn-km-num{{font-size:clamp(4rem,15vw,8rem);color:var(--accent);line-height:1;font-family:"Russo One",sans-serif}}.tn-tag{{color:var(--accent);font-weight:700;text-transform:uppercase;font-size:.72rem}}.tn-sm{{padding:3rem 4%}}
.tn-routes{{padding:3rem 4%}}.tn-route-list{{display:grid;gap:1rem;margin-top:1rem}}.tn-route-list article{{display:flex;align-items:center;gap:1rem;border:1px solid var(--line);padding:1rem;background:var(--alt)}}.tn-km{{font-size:1.8rem;color:var(--accent);font-weight:700;min-width:5rem;font-family:"Russo One",sans-serif}}
.tn-gear{{padding:3rem 4%;background:var(--alt)}}.tn-gear ul{{line-height:2}}.tn-pace{{padding:3rem 4%}}.tn-pace-split{{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center}}.tn-pace-split img{{width:100%;min-height:220px;object-fit:cover}}
.tn-quote{{padding:3rem 4%;text-align:center;font-size:1.25rem;border-block:1px solid var(--line)}}.tn-cta{{padding:3rem 4%;text-align:center}}.tn-base{{padding:2rem 4%;border-top:1px solid var(--line);display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-top:2rem}}.tn-base a{{color:var(--accent);margin-left:1rem}}
@media(max-width:860px){{.tn-menu{{display:block}}nav{{display:none;position:absolute;right:4%;top:3.5rem;flex-direction:column;background:var(--bg);border:1px solid var(--line);padding:1rem}}nav.is-open{{display:flex}}.tn-ridge{{position:relative}}.tn-km-hero,.tn-pace-split{{flex-direction:column;align-items:flex-start}}.tn-pace-split{{grid-template-columns:1fr}}}}


.trailnotiz-contact-hero,.trailnotiz-legal-hero{padding:clamp(2.5rem,7vw,5rem) 4% 1.5rem}
.trailnotiz-contact-form,.trailnotiz-contact-hours,.trailnotiz-contact-topics,.trailnotiz-contact-legal,.trailnotiz-contact-alt,.trailnotiz-legal-1,.trailnotiz-legal-2,.trailnotiz-legal-3,.trailnotiz-legal-4,.trailnotiz-legal-5{padding:2.25rem 4%}
.trailnotiz-contact-hours,.trailnotiz-legal-2,.trailnotiz-legal-4{background:var(--alt)}
.contact-topics{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem}
.contact-topics article{border:1px solid var(--line);padding:1rem;background:var(--alt)}
@media(max-width:860px){.contact-topics{grid-template-columns:1fr}}

