@import "https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Barlow+Condensed:wght@400;600;700&display=swap";:root{--color-bg:#e6e5e1;--color-surface:#242628;--color-accent:#f8d018;--color-accent-hover:#e6c115;--color-text-light:#e6e5e1;--color-text-dark:#242628;--color-text-muted:#e6e5e180;--color-overlay:#242628d9;--color-overlay-solid:#242628f7;--font-display:"Bebas Neue", "Arial Black", sans-serif;--font-body:"Barlow Condensed", "Arial Narrow", sans-serif;--space-xs:8px;--space-sm:16px;--space-md:24px;--space-lg:48px;--space-xl:80px;--space-2xl:120px;--nav-height:72px;--container-px:clamp(24px, 5vw, 80px);--section-py:clamp(64px, 10vw, 120px);--border-radius:8px;--ease-out:cubic-bezier(.4, 0, .2, 1);--ease-snap:cubic-bezier(.34, 1.56, .64, 1);--duration:.35s;--duration-slow:.5s;--pattern-url:url(/pattern.png);--pattern-size:180px;--pattern-opacity:.04}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);color:var(--color-text-dark);background-color:var(--color-bg);font-weight:400;line-height:1.6;position:relative;overflow-x:hidden}body:before{content:"";background-image:var(--pattern-url);background-size:var(--pattern-size);opacity:var(--pattern-opacity);pointer-events:none;z-index:0;background-repeat:repeat;position:fixed;inset:0}a{color:inherit;text-decoration:none}ul,ol{list-style:none}img,video{max-width:100%;height:auto;display:block}button{font:inherit;cursor:pointer;background:0 0;border:none}.container{width:100%;max-width:1280px;padding:0 var(--container-px);margin:0 auto}.section-padding{padding-top:var(--section-py);padding-bottom:var(--section-py)}.accent-text{color:var(--color-accent)}.pattern-layer{background-image:var(--pattern-url);background-size:var(--pattern-size);opacity:var(--pattern-opacity);pointer-events:none;z-index:0;background-repeat:repeat;position:absolute;inset:0}.pattern-layer--light{filter:invert();opacity:.03}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page-stub{padding-top:var(--nav-height);text-align:center;min-height:60vh;padding-left:var(--container-px);padding-right:var(--container-px);justify-content:center;align-items:center;display:flex}.page-stub__title{font-family:var(--font-display);color:var(--color-text-dark);letter-spacing:.03em;font-size:clamp(48px,8vw,80px);line-height:1.1}.page-loader{justify-content:center;align-items:center;gap:var(--space-xs);background-color:var(--color-bg);flex-direction:column;height:100vh;display:flex}.page-loader__accent{font-family:var(--font-display);color:var(--color-accent);letter-spacing:.04em;font-size:48px;animation:1.2s ease-in-out infinite loader-pulse}.page-loader__text{font-family:var(--font-body);letter-spacing:.15em;text-transform:uppercase;color:var(--color-text-dark);opacity:.4;font-size:14px;font-weight:600}@keyframes loader-pulse{0%,to{opacity:1}50%{opacity:.3}}.events{padding:var(--section-py) 0}.events__header{text-align:center;margin-bottom:var(--space-lg)}.events__label{font-family:var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-xs);font-size:13px;font-weight:600}.events__title{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text-dark);font-size:clamp(40px,6vw,64px);line-height:1}.events__grid{gap:var(--space-md);grid-template-columns:repeat(3,1fr);display:grid}.events__card{border-radius:var(--border-radius);background-color:var(--color-surface);aspect-ratio:3/4;cursor:pointer;position:relative;overflow:hidden}.events__card-image{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease-out)}.events__card-placeholder{justify-content:center;align-items:center;gap:var(--space-sm);background:linear-gradient(160deg, var(--color-surface) 0%, #2e3033 50%, var(--color-surface) 100%);flex-direction:column;width:100%;height:100%;display:flex}.events__card-placeholder-icon{border:2px solid var(--color-accent);opacity:.5;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.events__card-placeholder-icon svg{fill:none;width:20px;height:20px;stroke:var(--color-accent);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.events__card-placeholder-text{font-family:var(--font-body);letter-spacing:.15em;text-transform:uppercase;color:var(--color-text-muted);font-size:13px;font-weight:600}.events__card:hover .events__card-image{transform:scale(1.05)}.events__card:hover .events__card-overlay{opacity:1}.events__card-overlay{padding:var(--space-md);opacity:.85;transition:opacity var(--duration) var(--ease-out);background:linear-gradient(#0000 0%,#2426284d 60%,#242628e6 100%);flex-direction:column;justify-content:flex-end;display:flex;position:absolute;inset:0}.events__card-date{background-color:var(--color-accent);color:var(--color-text-dark);font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;width:fit-content;margin-bottom:var(--space-xs);border-radius:3px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.events__card-name{font-family:var(--font-display);color:var(--color-text-light);letter-spacing:.02em;font-size:clamp(22px,2.5vw,28px);line-height:1.1}.events__card-location{font-family:var(--font-body);color:var(--color-text-muted);letter-spacing:.04em;margin-top:4px;font-size:13px;font-weight:400}@media (width<=900px){.events__grid{gap:var(--space-sm);grid-template-columns:1fr;max-width:400px;margin:0 auto}}@media (width>=901px) and (width<=1100px){.events__grid{gap:var(--space-sm);grid-template-columns:repeat(3,1fr)}}.park-bike{padding:var(--section-py) 0;overflow:hidden}.park-bike__inner{gap:var(--space-xl);grid-template-columns:1fr 1fr;align-items:center;display:grid}.park-bike__content{gap:var(--space-md);flex-direction:column;display:flex}.park-bike__label{font-family:var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent);align-items:center;gap:12px;font-size:13px;font-weight:700;display:flex}.park-bike__label:before{content:"";background-color:var(--color-accent);width:32px;height:2px;display:block}.park-bike__title{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text-dark);font-size:clamp(36px,5vw,56px);line-height:1}.park-bike__title span{color:var(--color-accent)}.park-bike__text{font-family:var(--font-body);color:var(--color-text-dark);opacity:.8;font-size:clamp(15px,1.2vw,17px);font-weight:400;line-height:1.75}.park-bike__cta{margin-top:var(--space-sm);font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-dark);border-bottom:2px solid var(--color-accent);width:fit-content;transition:gap var(--duration) var(--ease-snap), color var(--duration) var(--ease-out);align-items:center;gap:10px;padding-bottom:4px;font-size:14px;font-weight:700;display:inline-flex}.park-bike__cta:hover{color:var(--color-accent);gap:16px}.park-bike__cta-arrow{stroke:currentColor;fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px;transition:transform var(--duration) var(--ease-snap);display:inline-block}.park-bike__cta:hover .park-bike__cta-arrow{transform:translate(4px)}.park-bike__visual{position:relative}.park-bike__image-wrapper{border-radius:var(--border-radius);aspect-ratio:4/5;background-color:var(--color-surface);position:relative;overflow:hidden}.park-bike__image-wrapper:before{content:"";border-top:3px solid var(--color-accent);border-right:3px solid var(--color-accent);border-radius:0 var(--border-radius) 0 0;z-index:2;pointer-events:none;width:40%;height:40%;position:absolute;top:-6px;right:-6px}.park-bike__image{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease-out)}.park-bike__image-wrapper:hover .park-bike__image{transform:scale(1.03)}.park-bike__placeholder{justify-content:center;align-items:center;gap:var(--space-sm);background:linear-gradient(145deg, var(--color-surface) 0%, #2e3033 40%, #35383b 100%);flex-direction:column;width:100%;height:100%;display:flex}.park-bike__placeholder-icon{border:2px solid var(--color-accent);opacity:.4;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.park-bike__placeholder-icon svg{fill:none;width:24px;height:24px;stroke:var(--color-accent);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.park-bike__placeholder-text{font-family:var(--font-body);letter-spacing:.15em;text-transform:uppercase;color:var(--color-text-muted);font-size:13px;font-weight:600}.park-bike__badge{bottom:var(--space-md);left:calc(-1 * var(--space-md));background-color:var(--color-accent);color:var(--color-text-dark);padding:var(--space-sm) var(--space-md);border-radius:var(--border-radius);z-index:3;flex-direction:column;align-items:center;display:flex;position:absolute;box-shadow:0 8px 32px #0003}.park-bike__badge-number{font-family:var(--font-display);letter-spacing:.02em;font-size:36px;line-height:1}.park-bike__badge-label{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;opacity:.8;font-size:11px;font-weight:600}@media (width<=900px){.park-bike__inner{gap:var(--space-lg);grid-template-columns:1fr}.park-bike__visual{order:-1}.park-bike__badge{left:auto;right:var(--space-sm);bottom:var(--space-sm)}.park-bike__image-wrapper:before{top:-4px;right:-4px}}.tour-banner{background-color:var(--color-surface);padding:var(--section-py) 0;position:relative;overflow:hidden}.tour-banner:before{content:"";background:var(--color-accent);opacity:.06;pointer-events:none;width:45%;height:140%;position:absolute;top:-20%;right:-5%;transform:skew(-12deg)}.tour-banner:after{content:"";background:linear-gradient(90deg, transparent 0%, var(--color-accent) 20%, var(--color-accent) 80%, transparent 100%);height:3px;position:absolute;top:0;left:0;right:0}.tour-banner__inner{gap:var(--space-xl);z-index:1;grid-template-columns:1fr 1fr;align-items:center;display:grid;position:relative}.tour-banner__visual{justify-content:center;align-items:center;display:flex}.tour-banner__icon-block{justify-content:center;align-items:center;width:clamp(200px,22vw,300px);height:clamp(200px,22vw,300px);display:flex;position:relative}.tour-banner__ring{border:2px solid var(--color-accent);opacity:.2;border-radius:50%;position:absolute;inset:0}.tour-banner__ring--inner{opacity:.12;border-style:dashed;animation:30s linear infinite tour-ring-spin;inset:16px}@keyframes tour-ring-spin{to{transform:rotate(360deg)}}.tour-banner__icon-content{align-items:center;gap:var(--space-xs);text-align:center;flex-direction:column;display:flex}.tour-banner__icon-content svg{width:48px;height:48px;stroke:var(--color-accent);fill:none;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.tour-banner__icon-label{font-family:var(--font-display);letter-spacing:.06em;color:var(--color-accent);font-size:clamp(20px,2.5vw,28px);line-height:1.1}.tour-banner__icon-sub{font-family:var(--font-body);letter-spacing:.15em;text-transform:uppercase;color:var(--color-text-muted);font-size:12px;font-weight:600}.tour-banner__content{gap:var(--space-md);flex-direction:column;display:flex}.tour-banner__label{font-family:var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent);align-items:center;gap:12px;font-size:13px;font-weight:700;display:flex}.tour-banner__label:before{content:"";background-color:var(--color-accent);width:32px;height:2px;display:block}.tour-banner__title{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text-light);font-size:clamp(36px,5vw,60px);line-height:1}.tour-banner__title span{color:var(--color-accent)}.tour-banner__text{font-family:var(--font-body);color:var(--color-text-light);opacity:.7;max-width:540px;font-size:clamp(15px,1.2vw,17px);font-weight:400;line-height:1.75}.tour-banner__cta{margin-top:var(--space-sm);font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-dark);background-color:var(--color-accent);border-radius:var(--border-radius);width:fit-content;transition:background-color var(--duration) var(--ease-out), transform var(--duration) var(--ease-snap), box-shadow var(--duration) var(--ease-out);justify-content:center;align-items:center;gap:10px;padding:14px 32px;font-size:14px;font-weight:700;display:inline-flex;box-shadow:0 4px 20px #f8d01826}.tour-banner__cta:hover{background-color:var(--color-accent-hover);transform:translateY(-2px);box-shadow:0 8px 32px #f8d01840}.tour-banner__cta svg{stroke:currentColor;fill:none;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px;transition:transform var(--duration) var(--ease-snap)}.tour-banner__cta:hover svg{transform:translate(3px)}.tour-banner__bottom-line{background:linear-gradient(90deg, transparent 0%, var(--color-accent) 20%, var(--color-accent) 80%, transparent 100%);height:3px;position:absolute;bottom:0;left:0;right:0}@media (width<=900px){.tour-banner__inner{gap:var(--space-lg);text-align:center;grid-template-columns:1fr}.tour-banner__label{justify-content:center}.tour-banner__text{max-width:100%}.tour-banner__cta{align-self:center}.tour-banner__visual{order:-1}.tour-banner__icon-block{width:180px;height:180px}}.school-bikepark{padding:var(--section-py) 0}.school-bikepark__header{text-align:center;margin-bottom:var(--space-xl)}.school-bikepark__label{font-family:var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-xs);font-size:13px;font-weight:700}.school-bikepark__main-title{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text-dark);font-size:clamp(40px,6vw,64px);line-height:1}.school-bikepark__main-title span{color:var(--color-accent)}.school-bikepark__grid{gap:var(--space-lg);grid-template-columns:1fr 1fr;display:grid}.school-bikepark__card{background-color:var(--color-surface);border-radius:var(--border-radius);gap:var(--space-md);transition:transform var(--duration) var(--ease-out), box-shadow var(--duration) var(--ease-out);flex-direction:column;padding:clamp(32px,4vw,48px);display:flex;position:relative;overflow:hidden}.school-bikepark__card:hover{transform:translateY(-4px);box-shadow:0 16px 48px #00000026}.school-bikepark__card:before{content:"";background-color:var(--color-accent);height:3px;position:absolute;top:0;left:0;right:0}.school-bikepark__card:after{content:attr(data-index);font-family:var(--font-display);color:var(--color-text-light);opacity:.04;pointer-events:none;font-size:clamp(120px,14vw,180px);line-height:1;position:absolute;top:-10px;right:16px}.school-bikepark__card-icon{background:#f8d0181a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.school-bikepark__card-icon svg{width:24px;height:24px;stroke:var(--color-accent);fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.school-bikepark__card-title{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text-light);font-size:clamp(28px,3vw,36px);line-height:1.1}.school-bikepark__card-text{font-family:var(--font-body);color:var(--color-text-light);opacity:.65;font-size:clamp(14px,1.1vw,16px);font-weight:400;line-height:1.75}.school-bikepark__highlights{gap:var(--space-xs);padding-top:var(--space-sm);border-top:1px solid #e6e5e114;flex-wrap:wrap;margin-top:auto;display:flex}.school-bikepark__tag{font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent);background:#f8d01814;border:1px solid #f8d01826;border-radius:4px;padding:6px 12px;font-size:11px;font-weight:600}@media (width<=900px){.school-bikepark__grid{gap:var(--space-md);grid-template-columns:1fr}}.home__content{padding-top:var(--nav-height)}
