
:root{--green:#164c3d;--ink:#19372f;--red:#ae352e;--paper:#faf8f2;--line:#d8dfd8}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 system-ui,sans-serif}header{max-width:1140px;margin:auto;padding:22px 28px;display:flex;align-items:center;justify-content:space-between}.brand{font-weight:800;letter-spacing:.04em}.brand span{color:var(--red)}a{color:inherit}header a{font-size:14px}.hero{background:var(--green);color:white;position:relative;overflow:hidden}.hero-inner{max-width:1140px;margin:auto;padding:65px 28px 72px;display:grid;grid-template-columns:1.6fr 1fr;gap:50px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:700;color:#d5e2c7}h1{font-size:clamp(32px,4.6vw,56px);line-height:1.1;letter-spacing:-.045em;margin:18px 0 24px}h1 span{color:#e8c789}p{margin:0 0 15px}.intro{max-width:530px;color:#e1eae3}.tags{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}.tags span{border:1px solid #668b76;border-radius:30px;padding:6px 13px;font-size:13px}.art{width:100%;max-width:340px;justify-self:center}.wrap{max-width:1140px;margin:auto;padding:40px 28px 64px;display:grid;grid-template-columns:300px 1fr;gap:38px}.route{border-top:1px solid var(--line);padding:24px 0}.route strong{display:block;font-size:30px;letter-spacing:-.04em}.route small{display:block;color:#5e6c62}.route .badge{display:inline-block;background:#e7eddf;border-radius:6px;padding:3px 9px;font-size:13px;margin:10px 0}.route:nth-child(3) .badge{background:#f5e5df}h2{font-size:25px;letter-spacing:-.025em;margin:0 0 12px}h3{font-size:16px;margin:0 0 17px}aside p{font-size:14px;color:#5c6d63}.note{font-size:13px;background:#f2ead7;border:1px solid #e0d2ac;padding:15px;border-radius:10px;margin-top:16px}.card{background:white;border:1px solid var(--line);border-radius:16px;padding:30px;box-shadow:0 12px 30px #183d2e08}.sub{font-size:14px;color:#607268;margin-bottom:24px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:19px}label{display:block;font-size:14px;font-weight:650}input,select{font:inherit;width:100%;height:47px;border:1px solid #c7d2c9;border-radius:7px;background:white;padding:9px 12px;margin-top:6px;color:var(--ink)}input:focus,select:focus{outline:3px solid #d9e8cf;border-color:var(--green)}input[readonly]{background:#f0f5ed;font-size:14px}.full{grid-column:1/-1}.section{border-top:1px solid #e4e9e3;margin-top:26px;padding-top:23px}.check{display:flex;gap:10px;align-items:start;font-weight:400;margin:14px 0}.check input{width:18px;height:18px;flex-shrink:0;margin-top:3px}.hint{font-size:12px;color:#69766d;margin-top:7px;font-weight:400}.captcha{padding:12px 15px;border:1px dashed #c7d2c9;border-radius:7px;font-size:13px;background:#fafbf8}button{font:inherit;font-weight:650;cursor:pointer;border:0;border-radius:8px;padding:12px 19px;background:var(--red);color:white}button:hover{filter:brightness(.94)}button:focus-visible{outline:3px solid #bcbb78;outline-offset:3px}.submit{width:100%;margin-top:10px}.secondary{background:#edf2e8;color:var(--green)}.success{background:#edf5e8;padding:22px;border-radius:9px;margin:20px 0}.hidden{display:none}.hp{position:absolute;left:-10000px}details{margin-top:24px;border-top:1px solid var(--line);padding-top:16px}summary{cursor:pointer;font-weight:650;font-size:14px}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px;margin:20px 0}th,td{text-align:left;border-bottom:1px solid var(--line);padding:9px;white-space:nowrap}.actions{display:flex;gap:10px;flex-wrap:wrap}footer{border-top:1px solid var(--line);max-width:1084px;margin:auto;padding:22px 0;font-size:12px;color:#68796d;display:flex;justify-content:space-between;gap:15px}dialog{max-width:540px;border:1px solid var(--line);border-radius:14px;padding:30px}dialog::backdrop{background:#12362e88}dialog button{margin-top:15px}.textlink{padding:0;background:none;color:var(--green);font-size:inherit;text-decoration:underline} @media(max-width:800px){.hero-inner{grid-template-columns:1fr;padding:42px 22px}.art{display:none}.wrap{grid-template-columns:1fr;padding:28px 20px;gap:15px}aside{display:grid;grid-template-columns:1fr 1fr;gap:14px}aside h2,aside>p,aside .note{grid-column:1/-1}.route{padding:15px 0}.card{padding:23px}footer{margin:0 20px}header{padding:19px 20px}}@media(max-width:480px){.grid{grid-template-columns:1fr}.full{grid-column:auto}header a{font-size:12px}.brand{font-size:13px}aside{gap:10px}.route strong{font-size:25px}footer{flex-direction:column}}

form button{margin-top:14px}a{overflow-wrap:anywhere}main.card{padding:30px}@media(max-width:800px){main.card{margin:20px!important}}
/* Laufinformationen und Spendenlauf */
.site-nav{display:flex;gap:22px;flex-wrap:wrap}.site-nav a{text-decoration:none;font-weight:650}
.hero-location{margin-top:22px;color:#e5ecdc;font-size:15px}
.charity-strip{max-width:1084px;margin:30px auto 0;padding:22px 28px;border:1px solid #d8dfd8;border-radius:14px;background:#fff;display:grid;grid-template-columns:240px 1fr;align-items:center;gap:30px}
.charity-strip img,.charity-logo{display:block;width:100%;height:auto;mix-blend-mode:multiply}.charity-strip h2{font-size:23px;margin-bottom:8px}.charity-strip p{font-size:15px}.charity-strip a{font-size:14px}.charity-logo{max-width:310px;margin:16px 0 22px}
.info-motto{font-size:clamp(23px,4vw,36px);line-height:1.3;font-weight:750;letter-spacing:-.025em;color:#164c3d}
.info-races{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:24px 0}.info-races>div{padding:22px;background:#f1f5ec;border:1px solid #d8dfd8;border-radius:10px}.info-cta{display:inline-block;background:#ae352e;color:#fff;padding:12px 20px;border-radius:8px;text-decoration:none;font-weight:650}
@media(max-width:800px){.charity-strip{margin:22px 20px 0;grid-template-columns:1fr;gap:15px;padding:20px}.charity-strip img{max-width:240px}.site-nav{gap:13px}.site-nav a{font-size:12px}}
@media(max-width:480px){.info-races{grid-template-columns:1fr}.site-nav{max-width:150px;justify-content:flex-end}.info-races>div{padding:18px}}

/* Motto und ergänzte Laufangaben */
.hero .hero-motto{max-width:620px;font-size:clamp(20px,2.5vw,29px);line-height:1.4;letter-spacing:-.02em;margin:24px 0 28px;color:#fff}
.hero-motto>span{font-weight:750}.hero-motto>em{font-family:Georgia,"Times New Roman",serif;font-weight:400;color:#e8c789;font-size:1.08em}
.route .birth-years{margin-top:3px;font-size:12px;color:#627268}.late-entry-note{display:inline-block;margin-top:8px;line-height:1.5}
