/* Laufreisen: an energetic, legible design for the public comparison. */
:root{--ink:#122d3d;--deep:#102e42;--paper:#f3f6f8;--muted:#526979;--line:#d9e3ea;--rust:#c34230;--lime:#bcebe0;--shadow:0 16px 42px #173a5120}
body{background:#f3f6f8;color:var(--ink)}
.site-header{position:relative;z-index:5;background:#fff;border-bottom:1px solid #e4eaf0;box-shadow:0 5px 25px #173a510b}
.header-inner{min-height:80px;gap:1rem;justify-content:space-between}
.brand{color:#112c3b;font-size:1.55rem;letter-spacing:-.065em;white-space:nowrap}
.brand-mark{width:2.55rem;height:2.55rem;border-radius:14px;background:transparent url('brand-mark.svg') center/contain no-repeat;font-size:0;flex:none}
.brand-accent,.footer-inner strong span{color:#e3533e}
.site-header .primary-nav{display:flex;align-items:center;justify-content:flex-end;gap:.4rem;margin:0}
.primary-nav>a,.primary-nav .more-nav summary{display:flex;align-items:center;min-height:46px;padding:.6rem .85rem;border-radius:10px;color:#244050;font-size:.92rem;font-weight:700;text-decoration:none;white-space:nowrap}
.primary-nav>a:hover,.primary-nav .more-nav summary:hover,.primary-nav .more-nav[open] summary{background:#edf4f6;text-decoration:none}
.primary-nav>a.nav-action{background:#143a4c;color:white;padding-inline:1.05rem}
.primary-nav>a.nav-action:hover{background:#20566a}
.more-nav{position:relative}.more-nav summary{list-style:none}.more-nav summary::-webkit-details-marker{display:none}.more-nav summary:after{content:'⌄';margin-left:.45rem;font-size:1rem}
.more-nav>div{position:absolute;right:0;top:calc(100% + .45rem);width:16rem;display:grid;gap:.15rem;padding:.6rem;background:#fff;border:1px solid #dce7eb;border-radius:15px;box-shadow:0 18px 42px #173a512b}
.more-nav>div a{display:block;padding:.65rem .75rem;border-radius:8px;color:#244050;font-weight:650;text-decoration:none}
.more-nav>div a:hover{background:#edf4f6;text-decoration:none}.more-nav .mobile-menu-link{display:none}
.public-intro{position:relative;overflow:hidden;background:radial-gradient(circle at 80% 10%,#317d8c 0,transparent 35%),linear-gradient(120deg,#102c42,#145b6b);padding:4.6rem 0 5.5rem}
.public-intro:before{content:'';position:absolute;right:-6rem;top:-12rem;width:30rem;height:30rem;border:1px solid #ffffff24;border-radius:50%;box-shadow:0 0 0 4rem #ffffff08,0 0 0 8rem #ffffff08;pointer-events:none}
.public-intro .shell{position:relative}.public-intro h1{font-weight:850;letter-spacing:-.06em}.public-intro h1 em{font-family:inherit;font-style:normal;font-weight:750;color:#9de3d6}.eyebrow{color:#a7eadc}
.race-distance{background:#ffdb87;color:#493000;border-radius:7px;padding:.45rem .7rem}
.public-content{padding-top:3.3rem}.section-kicker{color:#c34230}.public-form select{border-radius:11px;border:1px solid #aebfca}.public-form button,.public-content button[type=submit]{border-radius:11px;background:#d44e3a;color:#fff}.public-form button:hover,.public-content button[type=submit]:hover{background:#a93527}
.public-series-nav a{border-radius:999px!important;background:#e1f1ef;border:0!important;color:#154f51!important;padding:.7rem 1rem!important;text-decoration:none}
.public-series-nav a:hover{background:#cce9e3}.public-home>section{padding:1.5rem;border-radius:24px;background:#e6f1f1}.public-home>section:nth-child(even){background:#e8edf8}
.public-event-grid a.race-tile{border:0;box-shadow:0 10px 30px #173a5115}.public-event-grid .race-tile-art{background-image:var(--race-image),linear-gradient(135deg,#12556b,#349a9b)}
.public-event-grid .race-tile:nth-child(3n + 2) .race-tile-art{background-image:var(--race-image),linear-gradient(135deg,#355293,#7e91d7)}
.public-event-grid .race-tile:nth-child(3n) .race-tile-art{background-image:var(--race-image),linear-gradient(135deg,#a7473a,#ee9a6a)}
.provider-overview{margin:2rem 0 2.5rem;padding:clamp(1.1rem,3vw,2rem);background:#e3f0f1;border-radius:22px}
.provider-overview-grid{gap:1rem}.provider-overview-card,.simple-offer{border:0!important;border-top:4px solid #4bafa3!important;border-radius:15px!important;box-shadow:0 7px 22px #173a5110}
.provider-overview-card h4{font-size:1.08rem}.provider-prices strong{color:#122d3d}.provider-overview-card a{color:#a33428}
.provider-badges span{border-radius:999px!important;font-size:.8rem!important;padding:.4rem .7rem!important}.provider-badges .status-sold{background:#a62e39!important;color:white!important}.provider-badges .status-waiting{background:#ffe09b!important;color:#513300!important}.provider-badges .status-request{background:#215d82!important;color:white!important}
.offer-filter,.offer-details,.public-planner{background:white;border:1px solid #d7e4e9;border-radius:15px;padding:1.15rem 1.3rem;box-shadow:0 5px 20px #173a5109}
.event-guide{padding:clamp(1.3rem,3vw,2rem);background:#e9edf9;border-radius:22px}.event-guide-facts div{border:0;border-radius:12px;background:#fff}
.public-method{border-color:#d44e3a;background:#fff;border-radius:0 12px 12px 0;padding:1rem 1.25rem}.public-footer{background:#112f40;color:#deedf0;border:0}.public-footer .footer-inner,.public-footer .footer-inner strong{color:#deedf0}.public-footer a{color:#deedf0}
@media(max-width:700px){.header-inner{display:flex;min-height:68px;padding:.65rem 0;gap:.5rem}.brand{font-size:1.4rem}.brand-mark{height:2.35rem;width:2.35rem}.site-header .primary-nav{margin:0}.primary-nav>a{display:none}.more-nav .mobile-menu-link{display:block}.primary-nav .more-nav summary{background:#edf4f6;min-height:44px;padding:.5rem .8rem}.more-nav>div{position:absolute;right:0;width:min(18rem,calc(100vw - 2rem));max-height:70vh;overflow:auto}.public-intro{padding:3.2rem 0}.public-content{padding-top:2.2rem}.public-home>section{padding:1rem}.provider-overview{margin-inline:-.25rem}.provider-overview-grid{grid-template-columns:1fr}}
