
:root{--ink:#171717;--muted:#999;--paper:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:#fff;color:var(--ink);font-family:Raleway,Arial,sans-serif;font-size:16px;line-height:1.8}a{color:inherit}button,input{font:inherit}button,.button{cursor:pointer}.wrap{max-width:1160px;margin:auto;padding:95px 28px}header{height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;position:absolute;top:0;width:100%;z-index:3;color:white;border-bottom:1px solid #ffffff26}header a{text-decoration:none}.brand{font-size:24px;font-weight:800;letter-spacing:2px}nav{display:flex;gap:32px}nav a{font-weight:600;font-size:14px}.menu{display:none}.hero{position:relative;height:760px;min-height:650px;max-height:1000px;background:#111;color:white;clip-path:polygon(0 0,100% 0,100% 88%,0 100%);overflow:hidden}.slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1.2s}.slide:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#000b,#0003)}.slide.active{opacity:1}.hero-content{position:relative;max-width:1160px;margin:auto;padding:170px 28px 100px}.hero-content>p:first-child,.eyebrow{letter-spacing:3px;font-size:13px;font-weight:600}h1{font-size:clamp(55px,7.5vw,104px);line-height:1.02;letter-spacing:-2px;font-weight:800;margin:20px 0}.subtitle{font-size:24px}.button,button{display:inline-block;background:#171717;border:1px solid #171717;color:white;padding:10px 24px;text-decoration:none;font-size:13px;font-weight:700;letter-spacing:.7px}.button:hover,button:hover{background:#555;color:white}.light{background:transparent;border-color:#fff}.slider-controls{position:absolute;bottom:120px;right:6%;display:flex;gap:5px}.slider-controls button{background:#0005;border-color:#ffffff80;padding:8px 14px}h2{font-size:40px;line-height:1.25;font-weight:700;margin:12px 0 22px}h3{font-size:22px;line-height:1.5;font-weight:600}p{margin:0 0 22px}.rule{display:block;width:80px;height:4px;background:#999;margin:22px 0 35px}.center{text-align:center}.centered{margin-left:auto;margin-right:auto}.about{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:50px}.about img{width:100%;max-height:720px;object-fit:contain}.about ul{padding-left:20px}.about li{margin-bottom:12px}.muted{color:#999}.bands{background:#f4f5f6}.band-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:55px;text-align:center}.band-grid img{width:100%;height:270px;object-fit:cover}.band-grid h3{font-size:20px;min-height:60px;margin-bottom:0}.band-grid .rule{width:100px;margin-top:10px;margin-bottom:24px}.tagline{font-size:12px;letter-spacing:1px;min-height:44px}.tour{background:linear-gradient(#000b,#000d),url('../img/simon-konzert-geschaerft.webp') center/cover;color:white;clip-path:polygon(0 7%,100% 0,100% 93%,0 100%);padding:70px 0}.event{display:flex;align-items:center;gap:35px;border-top:1px solid #8886;padding:26px 0}.event h3,.event p{margin:0}.event time{font-size:22px;font-weight:bold;white-space:nowrap}.event .button{margin-left:auto}.booking{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.booking img{width:100%;height:450px;object-fit:cover;filter:grayscale(1)}footer{padding:32px 6%;background:#151515;color:#bbb;display:flex;gap:24px;font-size:13px;flex-wrap:wrap}footer span{margin-right:auto}.admin{max-width:560px;padding:55px 25px;margin:auto}.admin.wide{max-width:900px}.admin label{display:block;margin-bottom:18px}.admin input:not([type=checkbox]){display:block;width:100%;padding:10px;border:1px solid #aaa;background:#fff}.admin h1{font-size:38px;line-height:1.2}.admin .event{justify-content:space-between}.admin .event form{margin:0}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #a77d2a;outline-offset:4px}@media(max-width:760px){header{height:75px}.brand{font-size:18px}.menu{display:block;background:transparent;border-color:#777}nav{display:none;position:absolute;top:75px;left:0;right:0;background:#171717;padding:25px}nav.open{display:flex;flex-direction:column;gap:15px}.hero{height:700px}.hero-content{padding-top:180px}.hero .slide{background-position:60% center}.wrap{padding:65px 24px}.about,.booking,.band-grid{grid-template-columns:1fr;gap:35px}.about img{max-height:500px}h2{font-size:32px}.band-grid img{height:300px}.band-grid h3{min-height:0}.tagline{min-height:0}.event{flex-wrap:wrap;gap:12px}.event time{width:100%}.event .button{margin-left:0}.booking img{height:350px}.slider-controls{bottom:110px}.tour{padding:50px 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.slide{transition:none}}

/* Verified against original HTML, Slider Revolution JSON and theme CSS, 2026-11-03. */
@font-face{font-family:Oswald;src:url('../fonts/oswald.woff2') format('woff2');font-weight:200 700;font-display:swap}
@font-face{font-family:Roboto;src:url('../fonts/roboto.woff2') format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:Raleway;src:url('../fonts/raleway.woff2') format('woff2');font-weight:400;font-display:swap}
:root{--accent:#aa3164;--muted:#787d85}body{font-family:Roboto,Arial,sans-serif;color:#787d85;font-size:18px;line-height:1.8}.wrap{max-width:1210px;padding-left:30px;padding-right:30px}h2,h3{color:#333539}.rule{background:var(--accent)}.button,button{background:var(--accent);border-color:var(--accent)}.button:hover,button:hover{background:#892550}a:focus-visible,button:focus-visible,input:focus-visible{outline-color:var(--accent)}
header{height:100px;padding:0 30px;border:0}.header-inner{width:1210px;max-width:100%;margin:auto;display:flex;justify-content:space-between;align-items:center}nav{gap:44px}nav a{font:700 20px/1.4 Roboto,Arial,sans-serif}nav a:first-child{border-bottom:2px solid #ffffffb3;padding-bottom:5px}.header-contact{display:flex;gap:24px;align-items:center;font-size:13px;font-weight:700}.header-contact a{display:inline-flex;align-items:center;gap:7px}.icon{width:18px;height:18px;fill:currentColor}.facebook{background:#ffffff40;border-radius:50%;width:36px;height:36px;justify-content:center}.facebook .icon{width:21px;height:21px}
.hero{height:calc(14vw + 630px);min-height:750px;max-height:none;background:linear-gradient(#0008,#0008),url('../img/klaviatur-hero.webp') center center/cover no-repeat;clip-path:polygon(0 0,100% 0,100% calc(100% - 100px),0 100%)}.hero-content{position:relative;max-width:1150px;height:500px;padding:0;margin:0 auto;top:14vw}h1{margin:0;letter-spacing:0}.hero h1{position:absolute;top:40px;left:0;margin:0;font-family:Oswald,sans-serif;font-size:154px;line-height:160px;letter-spacing:0}.hero h1 span{display:block}.simon{font-weight:700;color:white}.holliday{font-weight:300;color:var(--accent)}.hero .subtitle{position:absolute;left:6px;top:380px;font-size:33px;line-height:42px;font-weight:400;margin:0;color:white}.contact-box{position:absolute;right:62px;top:304.5px;width:323px;height:155px;border:3px solid #fff;text-align:center;color:white;text-decoration:none;padding:20px 10px 12px}.contact-number{display:flex;align-items:center;justify-content:center;gap:10px;font:400 28px/38px Oswald,sans-serif;white-space:nowrap}.contact-number img{object-fit:contain}.contact-caption{display:block;margin-top:14px;font-size:17px;line-height:26px;font-weight:500}.contact-caption strong{color:var(--accent);font-weight:500}
.about{align-items:end;gap:30px;padding-top:90px;padding-bottom:0}.about .eyebrow{font-family:Raleway,Arial,sans-serif;font-size:24px;line-height:34px;font-weight:400;letter-spacing:0;margin:0}.about .rule{margin:15px 0 40px}.about h2{font-family:Raleway,Arial,sans-serif;font-size:40px;line-height:50px;margin:0 0 20px}.about h3{font-size:22px;font-weight:400;line-height:34px}.about ul{list-style:none;margin:30px 0;padding:0}.about li{position:relative;margin:0;padding:13px 0 13px 30px;border-bottom:1px solid #e1e2e4}.about li:last-child{border:0}.about li:before{content:'›';position:absolute;left:0;top:19px;width:17px;height:17px;background:var(--accent);border-radius:50%;color:white;font:700 22px/15px Arial;text-align:center}.about h3.muted{font-size:18px;color:#999;margin:26px 0 80px}.about img{display:block;max-height:none;width:100%;align-self:end}.section-divider{max-width:1150px;margin:0 auto;border-top:3px dashed var(--accent)}.bands{background:white}.bands .wrap{padding-top:100px}.bands h2{font-size:34px;line-height:44px}.band-grid{background:#f5f6f7;padding:50px 20px}.band-grid h3{min-height:0;font-weight:700}.tagline{font-size:16px;letter-spacing:0}.light{background:transparent;border-color:white}.booking{align-items:start}.booking img{filter:none}
@media(min-width:1000px) and (max-width:1250px){.hero-content{max-width:1000px}.contact-box{right:14px}nav{gap:30px}.header-contact{gap:14px}.header-inner{max-width:1000px}}
@media(max-width:999px){header{height:80px}.header-inner{justify-content:flex-end}.menu{display:block;background:transparent;border:1px solid #ffffff80}nav{display:none;position:absolute;top:80px;left:0;right:0;background:#171717;padding:25px;z-index:5}nav.open{display:flex;flex-direction:column;gap:15px}.header-contact{display:none}.hero{height:960px;min-height:0}.hero-content{top:150px;width:600px;max-width:100%;height:680px}.hero h1{top:0;left:0;right:0;text-align:center;font-size:100px;line-height:110px}.hero .subtitle{top:250px;left:0;width:100%;text-align:center;font-size:28px;line-height:38px}.contact-box{top:400px;left:50%;right:auto;transform:translateX(-50%);width:400px;max-width:90%;height:155px}.about{align-items:center}.header-inner nav a:first-child{align-self:flex-start}}
@media(max-width:600px){.hero{height:850px;clip-path:polygon(0 0,100% 0,100% calc(100% - 50px),0 100%)}.hero-content{top:155px}.hero h1{font-size:86px;line-height:96px}.hero .subtitle{top:235px;font-size:clamp(18px,4.6vw,28px);line-height:1.45}.contact-box{top:365px;width:340px;height:155px}.contact-number{font-size:26px}.contact-caption{font-size:15px}.about{padding-top:65px;padding-left:24px;padding-right:24px}.about h2{font-size:32px}.about h3.muted{margin-bottom:30px}.section-divider{margin:0 24px}.band-grid{padding:35px 0}.about img{max-height:600px}.wrap{padding-left:24px;padding-right:24px}.admin h1{position:static}}

.booking{gap:60px;padding-top:100px;padding-bottom:120px}.booking h2{font-size:34px;line-height:44px}.booking h3{font-size:20px;line-height:32px;font-weight:400;margin-bottom:30px}.booking a{text-decoration:none}.booking .book-now{display:block;width:300px;max-width:100%;height:auto;object-fit:contain;margin-top:110px}.booking-form{padding-top:15px}.booking-form input:not([type=checkbox]),.booking-form textarea{width:100%;display:block;border:1px solid #e1e2e4;border-radius:2px;background:#fdfdfd;padding:10px 15px;margin-bottom:10px;color:#333539;font:400 16px/26px Roboto,Arial,sans-serif}.booking-form input::placeholder,.booking-form textarea::placeholder{color:#bfc1c4;opacity:1}.booking-form textarea{min-height:140px;resize:vertical}.consent{display:flex;align-items:start;gap:10px;margin:22px 0;font-size:14px;line-height:28px}.consent input{margin-top:7px;accent-color:var(--accent)}.booking-form button,.band-grid .button{background:var(--accent);border-color:var(--accent);border-radius:3px;letter-spacing:0;font:700 16px/26px Roboto,Arial,sans-serif;padding:8px 18px}.sr-only,.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.form-status:empty{display:none}.form-status{color:var(--accent)}@media(max-width:760px){.booking{padding-top:65px;padding-bottom:65px}.booking .book-now{margin-top:40px}.booking-form{width:100%;min-width:0}}
/* Divider and uncropped, taller band photographs – revision 2. */
.section-divider{display:block;width:calc(100% - 60px);max-width:1150px;height:0;min-height:0;margin:0 auto;border:0;border-top:3px dashed #aa3164;clear:both}
.about>img{height:auto;max-height:none;object-fit:contain;object-position:center top}
.band-grid img{display:block;width:100%;height:auto;aspect-ratio:333 / 300;object-fit:cover;object-position:center top}
@media(max-width:760px){.section-divider{width:calc(100% - 48px);margin:0 auto}.about>img{height:auto;max-height:none}.band-grid img{height:auto;aspect-ratio:333 / 300;object-position:center top}}

/* Original folded-arms portrait and band excerpts, revision 3. */
.about>img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;object-position:center bottom;align-self:end}
.band-grid article{display:flex;flex-direction:column;align-items:center}
.band-grid article>p:not(.tagline){flex:1;margin-bottom:26px}
.band-grid article>.button{margin-top:auto}
.band-grid .rule{width:120px}

/* Scroll-linked concert photograph, revision 4. */
.tour{position:relative;isolation:isolate;overflow:hidden;background:#111;clip-path:polygon(0 100px,100% 0,100% calc(100% - 100px),0 100%);padding:170px 25px;min-height:700px}
.tour-background{position:absolute;z-index:-1;inset:-22% 0;background:linear-gradient(rgba(0,0,0,.6),rgba(0,0,0,.6)),url('../img/simon-konzert-geschaerft.webp') center center/cover no-repeat;pointer-events:none}
.tour .wrap{position:relative;max-width:850px;padding:0;margin:auto}
.tour h2{color:#fff;font-size:34px;line-height:44px;margin:0 0 15px}
.tour .rule{margin:0 0 35px}
.tour .event h3{color:#fff}
@media(max-width:760px){.tour{padding:120px 24px;min-height:600px;clip-path:polygon(0 50px,100% 0,100% calc(100% - 50px),0 100%)}.tour .wrap{padding:0}.tour-background{background-position:42% center}}
@media(prefers-reduced-motion:reduce){.tour-background{transform:none!important}}

/* Original proportional slider grid: measured live at 984px viewport: 848.8px stage, 131px Oswald, 680.3px hero. */
.hero{height:auto;min-height:0;max-height:none;padding:0 0 130px;clip-path:polygon(0 0,100% 0,100% calc(100% - 100px),0 100%)}
.hero-content{box-sizing:content-box;position:relative;top:0;width:calc(100% - 120px);max-width:1150px;height:500px;padding:clamp(0px,calc(14vw - 12px),168px) 0 0;margin:0 auto}
.hero-stage{position:relative;width:1150px;height:500px;transform-origin:top left}
.hero h1{top:40px;left:0;right:auto;text-align:left;font-size:154px;line-height:160px}
.hero .subtitle{top:380px;left:6px;width:600px;font-size:33px;line-height:42px;text-align:left;font-weight:400}
.contact-box{top:304.5px;right:62px;left:auto;transform:none;width:323px;max-width:none;height:155px}
@media(min-width:778px) and (max-width:1239px){.hero-stage{width:1000px}.contact-box{right:14px;width:320px}}
@media(max-width:777px){.hero-content{width:calc(100% - 48px);max-width:600px;padding-top:100px;height:550px}.hero-stage{width:600px;height:550px}.hero h1{top:0;left:0;right:0;text-align:center;font-size:100px;line-height:110px}.hero .subtitle{top:230px;left:0;width:600px;text-align:center;font-size:28px;line-height:38px}.contact-box{top:365px;right:auto;left:100px;width:400px;height:155px}.hero{padding-bottom:100px}}
@media(max-width:479px){.hero-content{padding-top:85px;height:650px}.hero-stage{width:600px;height:650px}.hero h1{top:20px;font-size:86px;line-height:96px}.hero .subtitle{top:260px}.contact-box{top:425px}.hero{padding-bottom:80px;clip-path:polygon(0 0,100% 0,100% calc(100% - 50px),0 100%)}}

.band-grid article>p:not(.tagline){font-size:16px;line-height:28px}.band-grid .tagline{font-size:15px;line-height:24px}
/* Original vcpb-vz-jquery: fixed cover image, scroll factor .30; no horizontal autoplay. */
.tour{min-height:760px}.tour-background{inset:0;transform:none;background-attachment:fixed;background-size:cover;background-position:50% 0;background-repeat:no-repeat}
footer .cookie-settings{background:none;border:0;padding:0;color:inherit;font:inherit;letter-spacing:0;text-decoration:underline}
#cookie-settings{width:min(720px,calc(100% - 24px));max-width:none;max-height:calc(100% - 24px);overflow:auto;padding:clamp(14px,3vw,24px);border:0;border-radius:6px;color:#333539;font:15px/1.5 Roboto,Arial,sans-serif}
#cookie-settings h2{font-size:22px;margin:0 0 12px}
#cookie-settings p{margin:0 0 12px}
#cookie-settings .cookie-category{padding:9px 12px;margin:0 0 12px}
#cookie-settings .cookie-actions{display:flex;flex-wrap:wrap;gap:8px}
#cookie-settings .cookie-actions button{min-height:44px;padding:7px 12px;border-radius:6px;letter-spacing:0}
#cookie-settings::backdrop{background:#0008}
.cookie-notice{white-space:pre-line;overflow-wrap:anywhere}
@media(max-width:760px),(prefers-reduced-motion:reduce){.tour-background{background-attachment:scroll;background-position:center!important}.tour{min-height:600px}}

/* Simon & Simon detail page: original content and section order. */
.band-detail{font-size:16px;line-height:28px}.band-detail header{position:relative;background:#fff;color:#333539;height:100px}.band-detail nav a:first-child{border-bottom:0;padding-bottom:0}.band-detail nav a[href$="#bands"]{border-bottom:2px solid #aa3164;padding-bottom:5px}.band-detail .facebook{background:#787d8530}.band-detail .menu{color:#333539;border-color:#bbb}.detail-wrap{max-width:1200px;margin:0 auto;padding-left:25px;padding-right:25px}.detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:50px}.duo-intro{padding-top:20px;padding-bottom:40px}.band-detail h1{font:700 34px/44px Roboto,Arial,sans-serif;color:#333539;letter-spacing:0;margin:0 0 15px}.duo-intro .rule{width:200px;height:3px;margin:0 0 35px}.duo-subtitle{font-size:20px;line-height:32px;color:#333539;margin-bottom:25px}.duo-intro .duo-photo{padding-top:100px}.duo-photo img{display:block;width:330px;max-width:100%;height:auto;margin:0 auto}.duo-entertainment{background:#efefef;padding:75px 0 0}.duo-entertainment p{padding-bottom:50px;margin:0}.duo-members{padding-top:70px;padding-bottom:70px}.duo-members h2{font-size:24px;line-height:34px;margin:0 0 35px}.detail-list{list-style:none;padding:0;margin:0 0 40px}.detail-list li{position:relative;padding:13px 0 13px 30px;border-bottom:1px solid #e1e2e4}.detail-list li:last-child{border:0}.detail-list li:before{content:'›';position:absolute;left:0;top:18px;width:17px;height:17px;background:var(--accent);border-radius:50%;color:#fff;font:700 22px/15px Arial;text-align:center}.duo-members .button{font-size:16px;border-radius:3px;letter-spacing:0;display:inline-flex;gap:15px;align-items:center}.duo-reviews{padding:70px 15px 50px}.review-carousel{position:relative;padding-left:70px;padding-right:70px;max-width:900px}.review{margin:0;min-height:180px}.review[hidden]{display:none}.review blockquote{margin:0 0 22px;font:400 18px/30px Roboto,Arial,sans-serif}.review figcaption{text-align:right;font-style:italic}.review-arrow{position:absolute;top:45px;width:40px;height:40px;border-radius:50%;padding:0;font:400 32px/32px Arial;background:var(--accent);color:white}.review-arrow.previous{left:10px}.review-arrow.next{right:10px}.review-count{text-align:center;font-size:13px;color:#999;margin:20px 0 0}
@media(max-width:999px){.band-detail header{height:80px}.band-detail nav.open{color:#fff}.band-detail .header-inner{width:100%}}
@media(max-width:760px){.detail-columns{grid-template-columns:1fr;gap:35px}.duo-intro{padding-top:35px;padding-bottom:45px}.duo-intro .duo-photo{padding-top:0}.duo-intro>div:last-child{grid-row:1}.duo-subtitle{font-size:17px;line-height:29px}.duo-entertainment{padding-top:45px}.duo-entertainment p{padding-bottom:0}.duo-members{padding-top:45px;padding-bottom:25px}.review-carousel{padding-left:40px;padding-right:40px}.review-arrow.previous{left:0}.review-arrow.next{right:0}.review-arrow{width:30px;height:30px;font-size:26px}.review blockquote{font-size:16px;line-height:28px}.review{min-height:270px}.band-detail h1{font-size:30px;line-height:40px}}

/* Revision 8: portraits finish flush with the lower section boundary. */
.duo-intro{padding-bottom:0}
.duo-intro>.duo-photo,.duo-entertainment .duo-photo{align-self:end}
.duo-entertainment .duo-photo img{background:transparent}
@media(max-width:760px){.duo-intro{padding-bottom:0}.duo-intro>.duo-photo,.duo-entertainment .duo-photo{align-self:end}}

/* Revision 9: fine header contact row and subtle divider on detail pages. */
.band-detail header{border-bottom:1px solid #e1e2e4}
.band-detail .header-contact{font-size:13px;line-height:20px;font-weight:400;gap:24px;color:#787d85}
.band-detail .header-contact a{gap:8px;font-weight:400}
.band-detail .header-contact .icon{width:17px;height:17px;color:#333539;flex-shrink:0}
.band-detail .header-contact .facebook{width:36px;height:36px;background:#f1f2f3;justify-content:center}
.band-detail .header-contact .facebook .icon{width:20px;height:24px;color:#1877c9}

/* Rhythm detail: its own text, lineup, press reviews and original dark divider. */
.rhythm-intro{padding-top:90px;padding-bottom:40px;gap:50px}.rhythm-intro h1{font-size:34px;line-height:44px}.rhythm-intro .rule{width:200px;height:3px;margin:0 0 35px}.rhythm-subtitle{font-size:20px;line-height:32px;color:#333539;margin:0 0 25px}.rhythm-photo{display:block;width:100%;height:auto}.rhythm-intro h2{font-size:24px;line-height:34px;font-weight:300;margin:65px 0 20px}.rhythm-members ul{list-style:none;padding:0;margin:0}.rhythm-members li{position:relative;padding:12px 0 12px 25px;border-bottom:1px solid #e1e2e4;font-size:14px;line-height:24px}.rhythm-members li:last-child{border:0}.rhythm-members li:before{content:'›';position:absolute;left:0;top:17px;width:14px;height:14px;border-radius:50%;background:var(--accent);color:white;font:700 18px/12px Arial;text-align:center}.rhythm-copy{padding-top:145px;font-size:15px;line-height:28px}.rhythm-copy p{margin:0 0 24px}.rhythm-copy .button{display:inline-flex;align-items:center;gap:10px;font-size:16px;letter-spacing:0;border-radius:3px;margin-top:15px}.rhythm-divider{height:12px;width:100%;background:#05060a}.rhythm-reviews .review{min-height:150px}.rhythm-reviews figcaption{font-style:normal}.review-dots{display:flex;justify-content:center;gap:16px;margin-top:20px}.review-dot{width:10px;height:10px;padding:0;min-width:0;border:0;border-radius:50%;background:#999}.review-dot[aria-pressed="true"]{background:#333539}.review-dot:hover{background:#555}
@media(max-width:760px){.rhythm-intro{padding-top:45px;padding-bottom:40px;gap:35px}.rhythm-intro h1{font-size:28px;line-height:38px}.rhythm-subtitle{font-size:17px;line-height:29px}.rhythm-copy{padding-top:0}.rhythm-intro h2{margin-top:40px}.rhythm-reviews .review{min-height:230px}}

.armstrong-detail .rhythm-photo{object-fit:contain}

/* Revision 14: navigation remains visible while scrolling on every page. */
body>header{position:fixed;top:0;left:0;right:0;width:100%;z-index:100}
body.band-detail{padding-top:100px}
body.band-detail>header,body>header.is-scrolled{background:#fff;color:#333539;border-bottom:1px solid #e1e2e4;box-shadow:0 2px 8px #00000008}
body>header.is-scrolled .header-contact{color:#787d85;font-size:13px;font-weight:400}
body>header.is-scrolled .header-contact .icon{color:#333539}
body>header.is-scrolled .facebook{background:#f1f2f3}
body>header.is-scrolled .facebook .icon{color:#1877c9}
body>header.is-scrolled nav>a:first-child{border-bottom-color:#aa3164}
body>header.is-scrolled .menu{color:#333539;border-color:#bbb}
@media(max-width:999px){body.band-detail{padding-top:80px}body>header.is-scrolled nav.open{color:#fff}}

/* Revision 15: override older detail-page positioning; keep menu at viewport top. */
body.band-detail>header{position:fixed;top:0;bottom:auto;left:0;right:0;margin:0;transform:none;height:80px}
body.band-detail{padding-top:80px}
@media(max-width:999px){body.band-detail>header{height:70px}body.band-detail{padding-top:70px}.band-detail nav{top:70px}}

/* Legal pages: translucent cards and section grouping inspired by deschawue.de. */
.legal-detail{background:#f5f2f5;color:#656a73}.legal-shell{min-height:80vh;padding:55px 25px 80px;background:radial-gradient(ellipse at 10% 10%,#aa31641b,transparent 45%),radial-gradient(ellipse at 90% 60%,#d6c8e94d,transparent 50%)}.legal-glass{max-width:1180px;margin:auto;padding:40px;background:rgba(255,255,255,.62);border:1px solid #fff;border-radius:26px;box-shadow:0 20px 70px #3023320c;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.legal-hero{max-width:800px;margin-bottom:30px}.legal-hero h1{font:600 44px/1.2 Raleway,Roboto,sans-serif;letter-spacing:-1px;margin:12px 0 16px}.legal-hero h1 span{color:var(--accent)}.legal-hero>p:last-of-type{font-size:17px;line-height:29px}.legal-kicker{font:700 10px/18px Roboto,Arial,sans-serif;letter-spacing:1.6px;text-transform:uppercase;color:var(--accent);margin:0 0 5px}.legal-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0 0}.legal-tabs a{padding:8px 18px;border-radius:30px;text-decoration:none;font-size:14px;background:#fff9;border:1px solid #ddd5}.legal-tabs a[aria-current]{background:var(--accent);border-color:var(--accent);color:#fff}.legal-toc{margin:0 0 25px;padding:15px 20px;border-radius:14px;border:1px solid #fff;background:#ffffff70}.legal-toc summary{cursor:pointer;font-size:14px;color:#333539}.legal-detail .legal-toc nav{display:grid;position:static;gap:8px;grid-template-columns:1fr 1fr;background:none;padding:18px 0 0;color:inherit}.legal-toc nav a{font:400 13px/22px Roboto,sans-serif;border:0!important;padding:0!important;text-decoration:none}.legal-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.legal-card{min-width:0;padding:28px;border:1px solid #fff;border-radius:18px;background:#ffffffb8;box-shadow:0 6px 24px #33233304;scroll-margin-top:105px}.legal-card-wide{grid-column:1/-1}.legal-card-heading{display:flex;align-items:center;gap:14px;margin-bottom:22px}.legal-number{display:grid;place-items:center;flex-shrink:0;width:38px;height:38px;border-radius:12px;background:#aa316410;border:1px solid #aa316418;font:500 13px/1 Roboto,sans-serif;color:var(--accent)}.legal-card h2{font:500 20px/28px Roboto,sans-serif;margin:0;color:#333539}.legal-card p{font-size:14px;line-height:26px;margin-bottom:16px}.legal-card p:last-child{margin-bottom:0}.legal-card a{color:#91335c;text-underline-offset:3px;overflow-wrap:anywhere}.legal-cookie-link{border-radius:6px;font-size:13px;letter-spacing:0}.legal-detail .legal-toc nav a:hover{color:var(--accent)}
@media(max-width:760px){.legal-shell{padding:25px 15px 45px}.legal-glass{padding:22px 16px;border-radius:20px}.legal-hero h1{font-size:34px}.legal-grid{grid-template-columns:1fr;gap:14px}.legal-card{padding:22px}.legal-card-wide{grid-column:auto}.legal-detail .legal-toc nav{grid-template-columns:1fr}.legal-card{scroll-margin-top:90px}}
@supports not (backdrop-filter:blur(1px)){.legal-glass,.legal-card{background:#fff}}

/* CMS calendar and first-visit cookie notice. */
.calendar-nav{display:flex;justify-content:space-between;align-items:center;margin:40px 0 16px}.calendar-nav h3{color:#fff;font:400 22px/30px Roboto,sans-serif;margin:0}.calendar-nav>div{display:flex;gap:10px}.calendar-nav a{display:grid;place-items:center;border-radius:50%;background:#fff;color:#142333;text-decoration:none;width:42px;height:42px;font:400 32px/1 Arial}.calendar-events{border-radius:5px;overflow:hidden}.calendar-event{display:grid;grid-template-columns:65px 145px 1fr;gap:14px;background:#f1f1f1;color:#14212b;padding:25px 22px;border-left:4px solid var(--accent);border-bottom:1px solid #d4d4d4}.calendar-event:nth-child(even){background:#fff}.calendar-date b{display:block;font:800 36px/40px Roboto,Arial,sans-serif}.calendar-date span{display:block;font:700 13px/20px Roboto,Arial,sans-serif}.calendar-time{font-size:14px;white-space:nowrap;padding-top:2px}.calendar-time small{color:#787d85;margin-left:3px}.calendar-info h3{font:800 28px/34px Roboto,Arial,sans-serif!important;text-transform:uppercase;color:#17222b!important;margin:0 0 10px!important}.calendar-info p{font-size:18px;line-height:24px;margin:0;text-transform:uppercase}.calendar-info details{margin-top:14px;font-size:14px}.calendar-info details p{text-transform:none;font-size:15px;line-height:26px;margin-top:10px}.calendar-info a{color:var(--accent)}.calendar-empty{padding:24px;background:#ffffff15}.cookie-banner[hidden]{display:none}.cookie-banner{position:fixed;bottom:24px;right:24px;z-index:200;width:min(470px,calc(100% - 32px));background:#fffffff5;backdrop-filter:blur(18px);border:1px solid #eee;border-radius:18px;box-shadow:0 18px 80px #0004;color:#45434a;padding:25px;font:400 14px/24px Roboto,Arial,sans-serif}.cookie-banner h2{font-size:24px;line-height:32px;margin:5px 0 12px;color:#333539}.cookie-banner p{margin-bottom:15px}.cookie-eyebrow{font:700 10px/15px Roboto,sans-serif;letter-spacing:2px;color:var(--accent)}.cookie-banner a{color:var(--accent)}.cookie-banner button{border-radius:6px;letter-spacing:0;font-size:14px;padding:9px 15px}.cookie-banner [data-cookie-details]{background:none;color:#333539;border-color:#ddd;margin-left:7px}.cookie-category{display:block;padding:16px;background:#f5f1f3;border-radius:8px;margin-bottom:18px}.cookie-close{display:inline-block}.cookie-category input{accent-color:var(--accent)}
@media(max-width:760px){.calendar-event{grid-template-columns:55px 1fr;padding:20px 15px;gap:8px}.calendar-time{grid-column:2;grid-row:1}.calendar-info{grid-column:2}.calendar-date{grid-column:1;grid-row:1/3}.calendar-info h3{font-size:21px!important;line-height:28px!important}.calendar-info p{font-size:15px;line-height:23px}.calendar-nav h3{font-size:18px}.cookie-banner{right:16px;bottom:16px;padding:20px}}

/* Version 19: centred carousel controls, mobile navigation, subtle button feedback. */
.review-carousel{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;column-gap:24px;row-gap:28px;padding-left:10px;padding-right:10px}
.review-content{grid-column:2;grid-row:1;min-width:0}.review,.rhythm-reviews .review{min-height:0}
.review-carousel .review-arrow{position:static;top:auto;left:auto;right:auto;display:grid;place-items:center;align-self:center;width:40px;height:40px;padding:0;border:0;line-height:1;letter-spacing:0}
.review-arrow.previous{grid-column:1;grid-row:1}.review-arrow.next{grid-column:3;grid-row:1}
.review-arrow svg{width:23px;height:23px;display:block;fill:none;stroke:currentColor;stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round}
.review-dots,.review-count{grid-column:1/-1;grid-row:2;margin:0}
.mobile-menu-contact{display:none}
body>header #navigation a:focus-visible{color:var(--accent)}
@media(hover:hover) and (pointer:fine){body>header #navigation a:hover{color:#aa3164}}
.legal-version{font:400 13px/24px Roboto,Arial,sans-serif;color:#787d85;margin:25px 0 0;padding:0 5px}
@media(max-width:999px){
body>header .menu{display:grid;place-items:center;min-width:44px;min-height:44px;padding:10px;color:inherit;border:1px solid currentColor;border-radius:5px;background:transparent;touch-action:manipulation}
.hamburger-icon{display:flex;flex-direction:column;justify-content:space-between;width:23px;height:17px;position:relative}.hamburger-icon>span{display:block;height:2px;width:23px;background:currentColor;border-radius:2px}
.menu[aria-expanded="true"] .hamburger-icon>span{position:absolute;top:7px}.menu[aria-expanded="true"] .hamburger-icon>span:first-child{transform:rotate(45deg)}.menu[aria-expanded="true"] .hamburger-icon>span:nth-child(2){opacity:0}.menu[aria-expanded="true"] .hamburger-icon>span:last-child{transform:rotate(-45deg)}
body>header #navigation{top:100%;background:#fff;color:#333539;border-bottom:1px solid #e1e2e4;box-shadow:0 12px 20px #0001;padding:20px 24px max(24px,env(safe-area-inset-bottom));max-height:calc(100vh - 80px);max-height:calc(100dvh - 80px);overflow-y:auto;overscroll-behavior:contain}
body>header #navigation.open{display:flex;flex-direction:column;gap:4px;color:#333539}
body>header #navigation>a{padding:11px 0;font-size:18px;line-height:26px}
body>header #navigation>a:first-child{border:0;align-self:stretch}
body>header #navigation .mobile-menu-contact{display:flex;flex-direction:column;gap:4px;border-top:1px solid #e1e2e4;padding-top:18px;margin-top:16px}
body>header #navigation .mobile-menu-contact a{font:400 16px/24px Roboto,Arial,sans-serif;letter-spacing:0;padding:7px 0!important;border:0!important;color:#787d85;overflow-wrap:anywhere}
}
@media(max-width:600px){.review-carousel{grid-template-columns:36px minmax(0,1fr) 36px;column-gap:12px;padding-left:0;padding-right:0}.review-carousel .review-arrow{width:36px;height:36px}.review-arrow svg{width:21px;height:21px}}
:root{--ease-out:cubic-bezier(.23,1,.32,1)}
:is(.button,button:not(.menu):not(.review-dot):not(.cookie-settings)){transition:transform 160ms var(--ease-out);touch-action:manipulation}
@media(hover:hover) and (pointer:fine){:is(.button,button:not(.menu):not(.review-dot):not(.cookie-settings)):hover{transform:translateY(-2px)}}
:is(.button,button:not(.menu):not(.review-dot):not(.cookie-settings)):active{transform:scale(.97)}
@media(prefers-reduced-motion:reduce){:is(.button,button){transition:none!important;transform:none!important}}

/* Equal inner spacing on all four sides of the band overview. */
.band-grid{padding:20px}
@media(max-width:760px){.band-grid{padding:20px}}

/* Version 20: centred vector chevrons in tour month controls. */
.calendar-nav a{display:grid;place-items:center;padding:0;border:0;line-height:1;flex-shrink:0;touch-action:manipulation}
.calendar-nav a svg{display:block;width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round}

/* Version 21: magenta feedback on tour month navigation. */
@media(hover:hover) and (pointer:fine){.calendar-nav a:hover{background:#aa3164;color:#fff}}
.calendar-nav a:focus-visible,.calendar-nav a:active{background:#aa3164;color:#fff}
.calendar-nav a:focus-visible{outline:3px solid #fff;outline-offset:3px}

/* Version 23: compact, locally hosted Armstrong playlist. */
.detail-list>ul{list-style:none;margin:0;padding:0}.band-music{margin-top:45px;padding:24px;border:1px solid #e5dde2;border-radius:16px;background:linear-gradient(140deg,#fbf7f9,#fff);box-shadow:0 8px 25px #43233b06}
.band-music .music-eyebrow{font:700 10px/18px Roboto,sans-serif;letter-spacing:1.4px;color:var(--accent);margin:0 0 5px}.band-music h2{font:600 23px/32px Roboto,sans-serif;margin:0 0 18px;color:#333539}.band-track-list{display:flex;flex-direction:column;gap:8px}.band-track{display:flex;align-items:center;gap:12px;width:100%;text-align:left;border:1px solid #eadfe5;background:#fff;color:#4b4148;padding:12px;border-radius:9px;letter-spacing:0;font:400 14px/22px Roboto,sans-serif}.band-track .track-play{display:grid;place-items:center;width:30px;height:30px;flex-shrink:0;border-radius:50%;background:#aa316414;color:var(--accent);font-size:12px}.band-track>span:nth-child(2){flex:1;min-width:0;overflow-wrap:anywhere}.band-track small{font-size:11px;color:#9a8792}.band-track[aria-pressed="true"]{background:#aa3164;color:white;border-color:#aa3164}.band-track[aria-pressed="true"] .track-play{background:#fff;color:var(--accent)}.band-track[aria-pressed="true"] small{color:#fff}.band-music .music-now{font-size:12px;line-height:20px;text-transform:none;margin:18px 0 7px;color:#86737e}.band-music audio{display:block;width:100%;height:42px}.band-music .music-status{font-size:13px;color:#a12542;margin:12px 0 0}
@media(hover:hover) and (pointer:fine){.band-track:not([aria-pressed="true"]):hover{background:#faedf3;color:var(--accent);border-color:#d9a0b8}}
@media(max-width:600px){.band-music{padding:18px;margin-top:30px}.band-track{min-height:48px}}

/* Version 24: playlist-only public player. */
.band-music audio[hidden],.band-music .music-now[hidden]{display:none}

/* V27: public player shows only the title buttons. */
.band-music audio,.band-music .music-now{display:none!important}

/* V31: reject optional cookies while retaining essential functionality. */
.cookie-banner [data-cookie-reject],#cookie-settings [data-cookie-reject]{background:#fff;color:#aa3164;border:1px solid #aa3164;border-radius:6px;letter-spacing:0}.cookie-banner>section>div{display:flex;flex-wrap:wrap;gap:8px}.cookie-banner [data-cookie-details]{margin-left:0}

/* V33: larger mobile hero name, welcome text and contact card. */
@media(max-width:600px){
 .hero-content{width:calc(100% - 32px);max-width:600px;padding-top:96px}
 .hero-stage{width:600px;height:850px}
 .hero h1{top:20px;left:0;right:0;font-size:132px;line-height:145px;text-align:center}
 .hero .subtitle{top:350px;left:0;width:600px;font-size:40px;line-height:52px;text-align:center}
 .contact-box{top:560px;left:20px;right:auto;width:560px;height:190px;padding:24px 14px 18px}
 .contact-number{font-size:40px;line-height:52px;gap:14px}
 .contact-number img{width:42px;height:42px}
 .contact-caption{font-size:23px;line-height:34px;margin-top:16px}
 .hero{padding-bottom:90px}
}

/* Back-to-top links */
.back-to-top{display:inline-grid;place-items:center;flex:none;width:44px;height:44px;padding:0;line-height:1;text-decoration:none}
.back-to-top[hidden]{display:none}
.back-to-top svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.back-to-top{border-radius:4px;background:#766f76;color:white}
.back-to-top-floating{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:calc(max(24px,env(safe-area-inset-bottom)) + var(--cookie-space,0px));z-index:90}
.back-to-top-footer{align-self:center}
body>footer{align-items:center}
@media(hover:hover) and (pointer:fine){
 .back-to-top:hover{background:#aa3164;border-color:#aa3164;color:#fff}
}
.back-to-top:focus-visible{outline:2px solid currentColor;outline-offset:3px;box-shadow:0 0 0 5px #aa3164}
@media(max-width:760px){.back-to-top-floating{bottom:calc(max(16px,env(safe-area-inset-bottom)) + var(--cookie-space,0px))}}

