:root{--red:#b80925;--red-dark:#93051c;--ink:#192023;--muted:#64686c;--line:#e5e3df;--paper:#f8f7f4;--serif:Georgia,'Times New Roman',serif;--bs-primary:#b80925;--bs-body-color:#192023;--bs-body-font-family:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#fff;color:var(--ink);font:16px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a:hover{color:var(--red)}h1,h2,h3{line-height:1.15}h1,h2{font-family:var(--serif);font-weight:700;letter-spacing:-1.3px}h2{font-size:clamp(1.85rem,3vw,2.55rem)}h3{font-family:var(--serif);font-size:1.35rem;font-weight:700}p{color:var(--muted)}.container{width:min(1240px,calc(100% - 80px));max-width:1240px;margin-inline:auto;padding:0}.eyebrow{display:block;font-size:.7rem;font-weight:700;letter-spacing:2px;color:var(--red);margin-bottom:13px}.skip-link{position:absolute;top:-70px;left:20px;z-index:99;background:#fff;padding:12px}.skip-link:focus{top:5px}:focus-visible{outline:3px solid #286dba;outline-offset:4px}.preview-banner{background:#fff3d6;color:#65450e;text-align:center;padding:6px 16px;font-size:.8rem}.site-header{background:#fff}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:100px}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0;line-height:1}.brand-mark{width:35px;height:48px;color:var(--red)}.brand strong{display:block;color:var(--ink);font-size:2rem;font-weight:800;letter-spacing:-1.6px}.brand b{color:var(--red)}.brand small{display:block;color:var(--muted);font-size:.76rem;letter-spacing:.25px;margin-top:6px}.header-inner nav{display:flex;gap:32px;align-self:stretch;align-items:center}.header-inner nav a{position:relative;font-size:.86rem;padding-block:38px}.header-inner nav a[aria-current]{color:var(--red)}.header-inner nav a[aria-current]:after{content:'';height:2px;position:absolute;bottom:24px;left:0;right:0;background:var(--red)}.header-cta{border:1px solid var(--line);padding:10px 17px;font-size:.83rem;font-weight:700;border-radius:4px}.header-cta span{margin-left:18px;color:var(--red)}
.home-hero{position:relative;background:linear-gradient(90deg,rgba(255,245,219,.48),transparent 60%),url('../images/koeln-hero.svg') center 57%/cover no-repeat,#e9dfcd;min-height:674px}.hero-grid{display:grid;grid-template-columns:1fr 405px;gap:60px;padding-block:45px 48px;align-items:start;position:relative;z-index:1}.hero-copy{padding-top:17px}.hero-copy .eyebrow{font-size:.67rem;color:#292e2e}.hero-copy h1{font-size:clamp(4rem,6.4vw,6.1rem);line-height:.97;letter-spacing:-4px;margin:22px 0 19px}.hero-copy h1 span{color:var(--red)}.hero-copy>p{font-family:var(--serif);font-size:2rem;line-height:1.2;color:var(--ink)}.hero-rule{width:45px;height:3px;background:var(--red);margin:27px 0 15px}.hero-caption{font-size:.64rem;font-weight:700;letter-spacing:2.1px}.hero-location{position:absolute;bottom:17px;left:40px;color:white;text-shadow:0 1px 5px #000;font-size:.62rem;letter-spacing:2px;font-weight:700}.hero-location span{font-size:1rem;margin-right:7px}.calculator-card{background:#fff;padding:29px 28px 22px;border-radius:7px;box-shadow:0 12px 45px #2222}.calculator-heading .eyebrow{font-size:.6rem;letter-spacing:1.1px;margin-bottom:9px}.calculator-heading h2{font-size:1.8rem;letter-spacing:-.65px;margin-bottom:20px;scroll-margin-top:25px}.booking-steps{list-style:none;display:flex;justify-content:space-between;padding:0;margin:0 0 23px;gap:10px}.booking-steps li{display:flex;align-items:center;gap:7px;color:#8a8a8a;font-size:.76rem;position:relative;flex:1}.booking-steps li:not(:last-child):after{content:'';width:15px;height:1px;background:#d7d7d7;margin-left:auto}.booking-steps li span{background:#e9e7e4;border-radius:50%;width:24px;height:24px;display:grid;place-items:center;font-size:.75rem}.booking-steps li.active{color:var(--red)}.booking-steps li.active span{background:var(--red);color:#fff}.field{margin-bottom:13px}.field label,.form-label{display:block;font-size:.8rem;font-weight:600;margin-bottom:5px;color:var(--ink)}.form-control,.form-select{border:1px solid #dededb;border-radius:4px;min-height:44px;color:var(--ink);font-size:.88rem;padding:10px 12px;background-color:#fff;max-width:100%}.form-control:focus,.form-select:focus{border-color:var(--red);box-shadow:0 0 0 3px #b8092516}.form-control::placeholder{color:#86888a}.field-wrap{position:relative}.field-wrap>span{position:absolute;left:12px;top:8px;font-size:1.1rem;color:#8c8d8e}.field-wrap .form-control{padding-left:37px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px;min-width:0}.form-grid>*{min-width:0}.btn{font-weight:600;font-size:.88rem;padding:11px 18px;border-radius:4px;min-height:44px}.btn-primary{--bs-btn-color:#fff;--bs-btn-bg:var(--red);--bs-btn-border-color:var(--red);--bs-btn-hover-bg:var(--red-dark);--bs-btn-hover-border-color:var(--red-dark);--bs-btn-active-bg:var(--red-dark);--bs-btn-active-border-color:var(--red-dark);--bs-btn-disabled-bg:var(--red);--bs-btn-disabled-border-color:var(--red)}.calculator-submit{display:flex;align-items:center;justify-content:space-between;width:100%;margin:7px 0 13px;min-height:49px}.calculator-submit span{font-size:1.3rem}.calculator-note{font-size:.68rem;line-height:1.6;text-align:center;margin:0;color:#727577}.preview-hint{font-size:.72rem;background:#fff7e5;padding:9px;border-radius:4px;margin:12px 0 0}.section-heading{margin-bottom:35px}.section-heading h2{margin:0}.how-section{padding-block:53px 26px}.how-section>.section-heading{text-align:center}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.how-step{display:flex;gap:17px;align-items:flex-start;justify-content:center}.step-number{width:40px;height:40px;background:var(--red);color:#fff;display:grid;place-items:center;border-radius:50%;font-family:var(--serif);font-size:1.2rem;flex-shrink:0}.how-step h3{font-size:1.2rem;margin:0 0 7px}.how-step p{font-size:.83rem;line-height:1.6;margin:0}.email-note{text-align:center;font-size:.77rem;border-top:1px solid var(--line);margin:28px 0 0;padding-top:18px}.email-note span{margin-right:8px;font-size:1rem}.services-section{background:var(--paper);padding-block:55px 58px}.heading-row{display:flex;align-items:end;justify-content:space-between;gap:20px}.text-link{font-size:.86rem;font-weight:700;border-bottom:1px solid #b8092555;padding-bottom:5px;white-space:nowrap}.text-link span{color:var(--red);margin-left:18px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card{display:block;background:#fff;border:1px solid var(--line);border-radius:5px;overflow:hidden;transition:transform .18s,box-shadow .18s}.service-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #2221;color:var(--ink)}.service-art{height:195px;overflow:hidden}.airport-art{position:relative;background:#e3e7e7;display:flex;justify-content:center;flex-direction:column;padding:30px;color:#304a52}.airport-art>span:nth-child(2){font-size:4.5rem;font-weight:800;letter-spacing:-4px;line-height:1}.airport-art>span:first-child{position:absolute;right:30px;top:15px;font-size:4rem;font-weight:300}.airport-art small{letter-spacing:3px;font-size:.65rem;margin-top:12px}.city-art{background:url('../images/koeln-hero.svg') 48% 40%/cover}.business-art{display:flex;flex-direction:column;justify-content:center;background:#263b35;color:#f5f4e9;padding:30px}.business-art>span{font-family:var(--serif);font-size:1.65rem;line-height:1.18}.business-art small{letter-spacing:2px;font-size:.6rem;margin-top:20px;color:#ced8cd}.service-content{padding:22px}.service-content h3{font-size:1.35rem;display:flex;justify-content:space-between;gap:8px}.service-content h3 span{color:var(--red);font-family:Arial;font-size:1.15rem}.service-content p{font-size:.83rem;line-height:1.7;margin:12px 0 0}.cologne-section{padding-block:70px;display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.cologne-section h2{margin:0}.cologne-section p{font-size:.95rem;line-height:1.9}.faq-section{padding-block:15px 65px;display:grid;grid-template-columns:1fr 1.4fr;gap:80px}.faq-list details{border-bottom:1px solid var(--line);padding:18px 0}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{font-size:.94rem;font-weight:600;cursor:pointer;list-style:none;display:flex;gap:20px;justify-content:space-between}.faq-list summary:after{content:'+';color:var(--red);font-size:1.2rem}.faq-list details[open] summary:after{content:'−'}.faq-list details p{font-size:.88rem;margin:16px 0 0;line-height:1.8}.site-footer{background:var(--paper);border-top:1px solid var(--line)}.footer-top{display:flex;align-items:center;gap:45px;padding-block:30px}.footer-top .brand strong{font-size:1.55rem}.footer-top .brand-mark{width:27px;height:39px}.footer-top p{font-size:.82rem;margin:0}.cologne-signature{margin-left:auto;font-family:var(--serif);font-style:italic;color:var(--red);font-size:1.5rem}.footer-bottom{border-top:1px solid var(--line);padding-block:18px;display:flex;justify-content:space-between;font-size:.72rem;color:var(--muted);gap:20px}.footer-bottom nav{display:flex;gap:25px}.page-main{padding-block:55px 75px;min-height:65vh;background:var(--paper)}.page-intro{margin-bottom:35px;max-width:780px}.page-intro h1{font-size:clamp(2.5rem,4.5vw,3.8rem);margin:0 0 18px}.page-intro p{line-height:1.9}.panel{border:1px solid var(--line);background:white;padding:30px;border-radius:6px}.booking-layout{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start}.booking-layout .booking-steps{max-width:330px}.route-summary{padding-bottom:17px;border-bottom:1px solid var(--line);margin-bottom:20px}.route-point{color:var(--ink);font-size:1.1rem;font-weight:600;margin:12px 0;padding-left:25px;position:relative}.route-point:before{content:'○';color:var(--red);position:absolute;left:0}.route-point.destination:before{content:'⌖'}.detail-list{margin:0 0 25px}.detail-list>div{display:flex;gap:20px;justify-content:space-between;border-bottom:1px solid #f0eeeb;padding:9px 0;font-size:.86rem}.detail-list dt{color:var(--muted);font-weight:400}.detail-list dd{text-align:right;margin:0;overflow-wrap:anywhere}.price-box{border-top:1px solid var(--line);padding-top:20px;margin:20px 0}.price-box>span{display:block;color:var(--muted);font-size:.83rem}.price-box strong{font-family:var(--serif);font-size:3rem;letter-spacing:-2px}.fine-print{font-size:.8rem;line-height:1.7;color:var(--muted)}.route-option{display:flex;gap:12px;padding:15px;border:1px solid var(--line);border-radius:4px;cursor:pointer;margin-block:10px;font-size:.88rem;align-items:center}.route-option:has(input:checked){background:#fdf4f4;border-color:var(--red)}input[type=radio],input[type=checkbox]{accent-color:var(--red)}.route-option span{flex:1}.route-option small{display:block;color:var(--muted)}.route-option strong{white-space:nowrap}.map-placeholder{background:var(--paper);border:1px solid var(--line);border-radius:5px;padding:35px;margin-top:20px}.map-placeholder h3{font-size:1.3rem}.map-placeholder p{font-size:.88rem}.success-icon{width:55px;height:55px;border-radius:50%;background:#e6f3eb;color:#237445;display:grid;place-items:center;font-size:1.9rem;margin-bottom:20px}.status-pill{display:inline-block;border-radius:20px;padding:4px 12px;font-size:.74rem;font-weight:600;background:#fff0ce;color:#785214}.status-pill.confirmed{background:#e6f3eb;color:#216341}.status-pill.rejected{background:#fbe6e9;color:#942b3c}.status-pill.done{background:#e9ebed;color:#505458}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.article-grid article h2{font-size:1.55rem}.article-grid article p{font-size:.9rem;line-height:1.9}.content-section{margin-bottom:26px;scroll-margin-top:25px}.content-section h2{font-size:1.7rem}.content-section p{line-height:1.9}.legal-content{max-width:850px}.legal-content h2{font-size:1.5rem;margin:30px 0 15px}.alert{font-size:.88rem;overflow-wrap:anywhere}.admin-page{background:var(--paper)}.admin-header{background:white;border-bottom:1px solid var(--line)}.admin-header .header-inner{min-height:90px}.admin-header nav{display:flex;gap:24px;align-items:center}.admin-header nav a{font-size:.86rem}.admin-header .brand strong{font-size:1.7rem}.admin-main{padding-block:38px 70px}.admin-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.admin-heading h1{font-size:2.65rem;margin:0}.admin-heading p{margin:8px 0 0;font-size:.9rem}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:30px}.stat-card{border:1px solid var(--line);background:#fff;border-radius:5px;padding:20px 23px}.stat-card span{color:var(--muted);font-size:.82rem}.stat-card strong{display:block;font:700 2.5rem var(--serif);margin-top:8px}.stat-card:first-child{border-top:3px solid var(--red)}.order-list{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.order-card{background:white;border:1px solid var(--line);border-radius:6px;padding:25px}.order-card-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:17px}.order-card-head strong{font-size:.94rem}.order-card-head small{font-size:.72rem;color:var(--muted);margin-left:auto}.order-card h2{font:600 1rem/1.5 Arial;letter-spacing:0;margin:0 0 16px}.order-facts{display:grid;grid-template-columns:1fr 1fr;gap:7px 15px;font-size:.83rem;color:var(--muted);overflow-wrap:anywhere}.order-price{font-size:1.25rem;font-weight:700;text-align:right;margin-top:12px}.order-actions{border-top:1px solid var(--line);padding-top:17px;margin-top:15px;display:flex;gap:8px;flex-wrap:wrap}.order-actions form{display:contents}.order-actions .btn{font-size:.78rem;min-height:38px;padding:8px 12px}.mail-state{font-size:.73rem;margin-top:12px}.filter-bar{display:grid;grid-template-columns:200px 1fr auto;gap:12px;margin-bottom:25px}.login-panel{max-width:450px;margin:25px auto}.login-panel h1{font-size:2.5rem}.admin-footer{font-size:.75rem;color:var(--muted);padding-top:30px}.table td,.table th{vertical-align:middle;font-size:.85rem}.btn-link{color:var(--muted)}.empty-state{text-align:center;padding:65px 25px;background:#fff;border:1px dashed var(--line)}.edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px 20px}.edit-grid .full{grid-column:1/-1}.confirm-delete{max-width:650px}.form-check-label{font-size:.85rem;line-height:1.7}.form-check-label a{text-decoration:underline}.subtle-link{font-size:.83rem;text-decoration:underline;color:var(--muted)}
@media(min-width:1600px){.home-hero{background-position:center 53%;min-height:720px}.hero-grid{padding-block:60px}.hero-copy h1{font-size:6.5rem}}
@media(max-width:1100px){.container{width:calc(100% - 48px)}.header-inner{gap:20px}.header-inner nav{gap:20px}.header-cta{display:none}.hero-grid{grid-template-columns:1fr 370px;gap:25px}.hero-copy h1{font-size:5rem}.hero-copy>p{font-size:1.7rem}.calculator-card{padding:25px}.steps-grid{gap:22px}.cologne-section{gap:50px}.order-list{grid-template-columns:1fr}.admin-header .header-inner{flex-wrap:wrap;padding-block:18px}.admin-header nav{flex-wrap:wrap;gap:17px}}
@media(max-width:767px){.container{width:calc(100% - 36px)}.header-inner{min-height:80px;flex-wrap:wrap;padding-block:16px 0;gap:14px}.brand strong{font-size:1.6rem}.brand-mark{width:29px;height:41px}.header-inner nav{width:100%;justify-content:space-between;gap:12px}.header-inner nav a{padding:6px 0 17px;font-size:.78rem}.header-inner nav a[aria-current]:after{bottom:8px}.home-hero{background-size:auto 530px;background-position:45% top;background-color:var(--paper);min-height:0}.hero-grid{display:block;padding-block:27px 25px}.hero-copy{padding:0 0 100px}.hero-copy h1{font-size:4.5rem;letter-spacing:-3px;margin-block:17px}.hero-copy>p{font-size:1.55rem}.hero-copy .eyebrow{font-size:.56rem;letter-spacing:1.4px}.hero-rule{margin-block:17px 10px}.hero-caption{font-size:.55rem;letter-spacing:1.5px}.hero-location{display:none}.calculator-card{padding:25px 22px;max-width:470px;margin-inline:auto}.calculator-heading h2{font-size:1.85rem}.form-control,.form-select{font-size:1rem;min-width:0}.how-section{padding-block:38px 24px}.steps-grid{grid-template-columns:1fr;gap:25px;max-width:320px;margin:auto}.how-step{justify-content:start}.how-step p br{display:none}.email-note{font-size:.72rem;line-height:1.8}.section-heading{margin-bottom:25px}.heading-row{align-items:start;flex-direction:column}.service-grid,.article-grid{grid-template-columns:1fr}.services-section{padding-block:35px}.service-art{height:185px}.service-content{padding:22px}.cologne-section{grid-template-columns:1fr;gap:20px;padding-block:40px}.faq-section{display:block;padding-block:10px 40px}.footer-top{gap:20px;flex-wrap:wrap;padding-block:25px}.footer-top p{display:none}.cologne-signature{font-size:1.2rem}.footer-bottom{flex-wrap:wrap;gap:13px}.footer-bottom nav{gap:20px;flex-wrap:wrap}.booking-layout{grid-template-columns:1fr;gap:20px}.panel{padding:24px 20px}.page-main{padding-block:30px 45px}.page-intro h1{font-size:2.65rem}.page-intro p{font-size:.9rem}.stat-grid{grid-template-columns:1fr 1fr;gap:12px}.stat-card{padding:17px}.stat-card strong{font-size:2rem}.admin-heading{align-items:start;flex-direction:column}.admin-heading h1{font-size:2.2rem}.filter-bar{grid-template-columns:1fr}.order-card{padding:20px}.order-facts{grid-template-columns:1fr}.order-card-head small{width:100%;margin:0}.edit-grid{grid-template-columns:1fr}.admin-header .header-inner{padding-bottom:15px}.admin-header nav{width:100%;font-size:.8rem}.admin-header nav a{padding:0}.admin-header nav form{margin-left:auto}.detail-list>div{font-size:.8rem}.preview-banner{font-size:.7rem}.faq-list summary{font-size:.87rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.maps-shell{margin-top:20px}.maps-activate{margin-top:10px}.maps-notice{font-size:.8rem}.route-map{height:360px;border-radius:6px;margin-top:14px}.table-responsive{max-width:100%}.text-danger{color:#a52834!important}.text-muted{color:var(--muted)!important}.mb-4{margin-bottom:1.5rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:1rem}.mt-4{margin-top:1.5rem}.d-flex{display:flex}.gap-2{gap:.5rem}.gap-3{gap:1rem}.flex-wrap{flex-wrap:wrap}.w-100{width:100%}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
