/*
Theme Name: Berlin Kart Modern
Author: OpenAI
Description: Responsives Racing-Theme mit Buchungs-Timeline und Anfrage-Funnel für Berlin Kart.
Version: 1.1.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: berlin-kart-modern
*/
:root{--red:#ed3028;--deep:#a91419;--ink:#171715;--paper:#f4f3ee;--white:#fff;--muted:#747670;--line:#d9d9d2;--display:Impact,'Arial Narrow',sans-serif;--body:Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 var(--body)}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}.wrap{width:min(1200px,calc(100% - 48px));margin:auto}.eyebrow{font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:800}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 20px;background:var(--red);color:white;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;border:0;cursor:pointer;transition:.2s}.button:hover{background:var(--deep);transform:translateY(-2px)}.button.dark{background:var(--ink)}.site-header{position:absolute;z-index:5;top:0;left:0;width:100%;color:#fff}.header-inner{height:86px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff38}.brand-logo{width:225px;height:auto}.nav{display:flex;align-items:center;gap:24px;font-size:12px;font-weight:800;text-transform:uppercase}.nav a:hover{color:#ff6861}.menu-toggle{display:none;background:none;border:0;color:white;font-size:25px}
.hero{height:min(830px,100svh);min-height:650px;position:relative;display:flex;align-items:flex-end;color:white;background:#202622 url('https://cdn7.site-media.eu/images/1440x900/697609/_MG_0803.JPG') center 55%/cover no-repeat}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#111713e8,#1117138a 50%,#11171315),linear-gradient(0deg,#111713c9,transparent 60%)}.hero-content{position:relative;padding:150px 0 82px}.hero h1{font:clamp(70px,11vw,145px)/.84 var(--display);text-transform:uppercase;letter-spacing:-.03em;margin:18px 0 24px}.hero h1 span{color:#ff4038}.hero-copy{max-width:460px;color:#e2e4e0;font-size:17px;margin:0 0 28px}.hero-actions{display:flex;align-items:center;gap:24px}.text-link{font-size:12px;font-weight:800;text-transform:uppercase;border-bottom:1px solid #ffffff8c;padding:12px 0}.hero-stamp{position:absolute;right:max(calc((100% - 1200px)/2),24px);bottom:70px;border:1px solid #ffffff88;padding:18px 24px;transform:rotate(4deg);text-align:center}.hero-stamp strong{display:block;color:#ff4038;font:38px var(--display)}.hero-stamp span{font-size:9px;letter-spacing:.12em;text-transform:uppercase}
.ticker{background:var(--red);color:white;padding:12px;overflow:hidden;white-space:nowrap;font:20px var(--display);letter-spacing:.09em;text-transform:uppercase}.ticker b{padding:0 20px}
.section{padding:92px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:38px}.section h2{font:clamp(44px,6vw,72px)/.94 var(--display);text-transform:uppercase;margin:11px 0}.section-lead{max-width:410px;color:var(--muted);margin:0}.stats{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line);margin-top:45px}.stat{padding:25px 18px;border-right:1px solid var(--line)}.stat:first-child{padding-left:0}.stat:last-child{border:0}.stat strong{display:block;font:38px var(--display)}.stat span{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.dark-section{background:var(--ink);color:white}.track-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.track-photo{height:460px;background:url('https://cdn7.site-media.eu/images/1440x900/697605/_MG_0455.JPG') center/cover;position:relative}.track-photo:after{content:"752 M";position:absolute;bottom:16px;left:22px;color:#ff4038;font:55px var(--display)}.features{list-style:none;margin:25px 0;padding:0}.features li{padding:14px 0;border-bottom:1px solid #ffffff2e;color:#d4d6d2}.features li:before{content:"↗";color:#ff4038;margin-right:12px}
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.price-card{background:white;padding:24px;min-height:230px;display:flex;flex-direction:column;border-top:3px solid transparent}.price-card.featured{border-color:var(--red)}.price-card h3{font:28px var(--display);text-transform:uppercase;margin:0 0 5px}.duration{font-size:13px;color:var(--muted)}.amount{font:46px var(--display);margin:auto 0 12px}.amount small{font:12px var(--body);color:var(--muted)}.price-note{font-size:12px;color:var(--muted);margin-top:18px}
.event-band{padding:68px 0;background:var(--red);color:white}.event-inner{display:flex;align-items:center;justify-content:space-between;gap:35px}.event-inner h2{max-width:650px;margin:10px 0}.event-inner p{max-width:390px}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:190px;gap:12px}.gallery-tile{background-size:cover;background-position:center}.gallery-tile:first-child{grid-column:span 2;grid-row:span 2;background-image:url('https://cdn7.site-media.eu/images/1440x900/697609/_MG_0803.JPG')}.gallery-tile:nth-child(2){background-image:url('https://cdn7.site-media.eu/images/1440x900/697605/_MG_0455.JPG')}.gallery-tile:nth-child(3){background-image:url('https://cdn7.site-media.eu/images/1440x900/697594/_MG_0563.JPG')}.gallery-tile:nth-child(4){background-image:url('https://cdn7.site-media.eu/images/1440x900/621357/nsmail-10-1.jpg')}.gallery-tile:nth-child(5){background-image:url('https://cdn7.site-media.eu/images/1440x900/619619/IMG_1312.jpg')}.gallery-tile:nth-child(6){background-image:url('https://cdn7.site-media.eu/images/1440x900/697615/_MG_1023.JPG')}.gallery-tile:nth-child(7){background-image:url('https://cdn7.site-media.eu/images/1440x900/697612/_MG_0900.JPG')}.gallery-tile:nth-child(8){background-image:url('https://cdn7.site-media.eu/images/1440x900/697610/_MG_0887.JPG')}.gallery-tile:nth-child(9){background-image:url('https://cdn7.site-media.eu/images/1440x900/697604/_MG_0449.JPG')}.gallery-tile:nth-child(10){background-image:url('https://cdn7.site-media.eu/images/1440x900/783082/10171132_1424786081112385_2459480515361391429_n.jpg')}.gallery-tile:nth-child(11){background-image:url('https://cdn7.site-media.eu/images/1440x900/783081/10170993_1424796547778005_665039508998049444_n.jpg')}.gallery-tile:nth-child(12){background-image:url('https://cdn7.site-media.eu/images/1440x900/619465/1452560_526913977403830_87794525_n.jpg')}
.journey-section{background:var(--paper)}.journey-track{position:relative;padding-left:96px;max-width:900px;margin:55px auto 0}.journey-rail{position:absolute;left:33px;top:24px;bottom:24px;width:3px;background:repeating-linear-gradient(to bottom,var(--red) 0 13px,transparent 13px 21px);opacity:.45}.journey-kart{position:absolute;left:9px;top:0;width:52px;height:52px;z-index:2;transform:translateY(var(--journey-position,0));transition:transform .12s linear}.journey-kart img{width:100%;height:100%;object-fit:contain;border-radius:12px;box-shadow:0 8px 20px #17171526}.journey-step{position:relative;display:grid;grid-template-columns:1fr 48px;align-items:center;gap:24px;padding:30px 10px 30px 24px;border-bottom:1px solid var(--line);min-height:156px;transition:background .2s}.journey-step:hover,.journey-step.is-passed{background:white}.journey-number{position:absolute;left:-78px;top:31px;color:var(--deep);font:28px var(--display)}.journey-step h3{font:34px/1 var(--display);text-transform:uppercase;margin:7px 0}.journey-step p{max-width:590px;color:var(--muted);margin:0 0 10px}.journey-link{font-size:12px;font-weight:800;text-transform:uppercase;color:var(--deep)}.journey-check{height:38px;width:38px;border:1px solid var(--red);border-radius:50%;display:grid;place-items:center;font:17px var(--display);color:var(--deep)}
.booking-section{padding:105px 0}.booking-funnel{grid-template-columns:.82fr 1.18fr;gap:58px;align-items:start}.booking-intro h2{max-width:430px}.booking-intro>p,.booking-small{max-width:400px;color:#c9ccc7}.booking-small{font-size:12px}.contact-card{background:var(--red);color:white;padding:28px}.contact-card h3{font:31px var(--display);text-transform:uppercase;margin:0 0 12px}.contact-card p,.contact-card a{color:white}.funnel-panel{background:var(--paper);color:var(--ink);padding:32px;box-shadow:0 20px 60px #0003}.funnel-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}.funnel-heading h3{font:34px/1 var(--display);text-transform:uppercase;margin:7px 0}.funnel-step-label{font-size:12px;color:var(--muted);font-weight:800}.funnel-progress{height:5px;background:#dedfd8;margin:23px 0 10px}.funnel-progress-fill{display:block;height:100%;width:50%;background:var(--red);transition:width .25s}.funnel-progress-labels{display:flex;justify-content:space-between;margin-bottom:20px;color:#858780;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.funnel-progress-labels .is-current{color:var(--deep)}.form-feedback:empty{display:none}.form-feedback{padding:13px 16px;margin-bottom:18px;font-size:14px;font-weight:700}.form-feedback.is-success{background:#e5f2e6;color:#21552b}.form-feedback.is-error{background:#fde4e1;color:#8d211b}.funnel-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.funnel-fields[hidden]{display:none!important}.funnel-intro{grid-column:1/-1;display:flex;align-items:center;gap:11px}.funnel-intro p{margin:0;font-weight:800}.funnel-step-number{height:30px;width:30px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:white;font:17px var(--display)}.booking-form label{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:#41433e}.booking-form input:not([type=checkbox]),.booking-form select,.booking-form textarea{width:100%;padding:13px;border:1px solid #d2d3cc;background:white;margin-top:6px;color:var(--ink)}.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{outline:2px solid var(--red)}.booking-form textarea{min-height:90px}.optional{color:#858780;font-weight:500;letter-spacing:0;text-transform:none}.funnel-hint{grid-column:1/-1;font-size:12px;color:var(--muted);margin:0}.funnel-actions{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:8px}.funnel-actions .button{white-space:nowrap}.button-text{border:0;background:none;font-weight:800;cursor:pointer}.privacy-check{display:flex!important;align-items:flex-start;gap:10px;font-size:12px!important;line-height:1.45;letter-spacing:0!important;text-transform:none!important}.privacy-check input{width:18px;height:18px;margin-top:2px;accent-color:var(--red)}.privacy-check a{color:var(--deep);text-decoration:underline}.hp-field{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.contact-strip{padding:48px 0;background:white}.contact-strip-inner{display:flex;align-items:center;justify-content:space-between;gap:22px}.contact-strip h2{font:38px var(--display);text-transform:uppercase;margin:8px 0}.contact-phone{font:25px var(--display);color:var(--deep)}.contact-phone span{color:var(--red)}.contact-email{font-weight:700}
.site-footer{background:#121512;color:white;padding:54px 0 25px}.footer-top{display:flex;justify-content:space-between;gap:30px;padding-bottom:35px;border-bottom:1px solid #ffffff2e}.footer-bottom{display:flex;justify-content:space-between;padding-top:20px;color:#a3aaa2;font-size:11px}.footer-links{display:flex;gap:20px}.content-wrap{padding:130px 0 80px;min-height:65vh}.content{max-width:850px}.content h1{font:60px var(--display);text-transform:uppercase}.content p{color:#454943}.screen-reader-text{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0)}
.loader{position:fixed;inset:0;z-index:20;background:var(--ink);display:grid;place-items:center;color:white;transition:opacity .35s,visibility .35s;animation:loader-failsafe 1.8s ease forwards}.intro-seen .loader{display:none}.loader.is-hidden{opacity:0;visibility:hidden;pointer-events:none}@keyframes loader-failsafe{0%,78%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden;pointer-events:none}}.loader-mark{width:95px;height:95px;animation:kart-start .75s ease both}.loader-mark img{width:100%;height:100%}.loader-label{font:22px var(--display);letter-spacing:.12em;text-transform:uppercase;text-align:center}.loader-label span{color:var(--red)}@keyframes kart-start{0%{transform:translateX(-80vw)}100%{transform:translateX(0)}}
@media(max-width:800px){.wrap{width:calc(100% - 36px)}.header-inner{height:72px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--ink);padding:22px;flex-direction:column;align-items:flex-start}.nav.is-open{display:flex}.nav .button{width:100%}.hero{height:88svh;min-height:620px;background-position:58% center}.hero-content{padding-bottom:70px}.hero h1{font-size:clamp(68px,15vw,110px)}.section{padding:70px 0}.section-head{align-items:flex-start;flex-direction:column}.stats{grid-template-columns:1fr 1fr}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--line)}.track-grid,.booking-funnel{grid-template-columns:1fr;gap:35px}.track-photo{height:330px}.price-grid{grid-template-columns:1fr 1fr}.event-inner{align-items:flex-start;flex-direction:column}.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:155px}.gallery-tile:first-child{grid-column:span 2;grid-row:span 1}.journey-track{padding-left:72px;margin-top:36px}.journey-rail{left:23px}.journey-kart{left:3px;width:42px;height:42px}.journey-step{padding:24px 8px 24px 14px;min-height:0;grid-template-columns:1fr 40px;gap:12px}.journey-number{left:-60px;top:26px;font-size:23px}.journey-step h3{font-size:29px}.funnel-panel{padding:25px}.contact-strip-inner{align-items:flex-start;flex-direction:column}.contact-strip .button{width:100%}.footer-top,.footer-bottom{flex-direction:column}.footer-links{flex-wrap:wrap}}
@media(max-width:480px){.brand-logo{width:178px}.hero-actions{align-items:flex-start;flex-direction:column;gap:8px}.hero-copy{font-size:15px}.price-grid{grid-template-columns:1fr}.journey-track{padding-left:58px}.journey-rail{left:18px}.journey-kart{left:-1px;width:36px;height:36px}.journey-number{left:-49px;font-size:19px}.journey-step{grid-template-columns:1fr 30px;padding-left:8px}.journey-step h3{font-size:25px}.journey-check{height:30px;width:30px;font-size:14px}.funnel-panel{padding:20px 16px}.funnel-fields{grid-template-columns:1fr}.funnel-heading h3{font-size:27px}.funnel-step-label{font-size:10px}.funnel-actions .button{font-size:10px;padding:13px}.contact-strip h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.loader{animation:none;transition:none}.loader-mark{animation:none}.journey-kart{transition:none}}
