:root,
[data-bs-theme=light] {
  --ar-primary: #3498db;
  --ar-primary-rgb: 52, 152, 219;
  --bs-primary: #3498db;
  --bs-primary-rgb: 52, 152, 219;
  --ar-secondary: #edf1f5;
  --ar-secondary-rgb: 237, 241, 245;
  --bs-secondary: #edf1f5;
  --bs-secondary-rgb: 237, 241, 245;
  --ar-warning: #edcb50;
  --ar-warning-rgb: 237, 203, 80;
  --bs-warning: #edcb50;
  --bs-warning-rgb: 237, 203, 80;
  --ar-info: #3f7fca;
  --ar-info-rgb: 63, 127, 202;
  --bs-info: #3f7fca;
  --bs-info-rgb: 63, 127, 202;
  --ar-success: #3fca90;
  --ar-success-rgb: 63, 202, 144;
  --bs-success: #3fca90;
  --bs-success-rgb: 63, 202, 144;
  --ar-danger: #ed5050;
  --ar-danger-rgb: 237, 80, 80;
  --bs-danger: #ed5050;
  --bs-danger-rgb: 237, 80, 80;
  --ar-light: #ffffff;
  --ar-light-rgb: 255, 255, 255;
  --bs-light: #ffffff;
  --bs-light-rgb: 255, 255, 255;
  --ar-dark: #12375c;
  --ar-dark-rgb: 18, 55, 92;
  --bs-dark: #12375c;
  --bs-dark-rgb: 18, 55, 92;
  --ar-link-color: #3498db;
  --ar-link-hover-color: #1b7fc2;
  --bs-link-color: #3498db;
  --bs-link-color-rgb: 52, 152, 219;
  --bs-link-hover-color: #1b7fc2;
  --ar-body-font-family: 'Open Sans', Arial, sans-serif;
  --ar-heading-font-family: 'Open Sans', Arial, sans-serif;
  --ar-root-font-size: 1rem;
  --ar-body-font-size: 1rem;
  --ar-border-width: 1px;
  --ar-border-radius: 0rem;
  --ar-border-radius-sm: calc(var(--ar-border-radius) * 0.75);
  --ar-border-radius-lg: calc(var(--ar-border-radius) * 1.25);
  --ar-border-radius-xl: calc(var(--ar-border-radius) * 1.5);
  --ar-border-radius-xxl: calc(var(--ar-border-radius) * 2.25);
}
[data-bs-theme=light] {
  --ar-body-bg: #ffffff;
  --bs-body-bg: #ffffff;
  --ar-body-bg-rgb: 255, 255, 255;
  --bs-body-bg-rgb: 255, 255, 255;
  --ar-body-color: #3c4446;
  --bs-body-color: #3c4446;
  --ar-body-color-rgb: 60, 68, 70;
  --bs-body-color-rgb: 60, 68, 70;
  --ar-secondary-color: #858c97;
  --bs-secondary-color: #858c97;
  --ar-heading-color: #12375c;
  --bs-heading-color: #12375c;
  --ar-border-color: #e3e9ef;
  --bs-border-color: #e3e9ef;
}
[data-bs-theme=light] .card {
  --ar-card-bg: #ffffff;
}
.btn-primary {
  --booost-btn-color: #fff;
  --booost-btn-hover-color: #fff;
  --ar-btn-bg: #3498db;
  --ar-btn-border-color: #3498db;
  --ar-btn-hover-bg: #1b7fc2;
  --ar-btn-hover-border-color: #1b7fc2;
  --ar-btn-active-bg: #1b7fc2;
  --ar-btn-active-border-color: #1b7fc2;
  --ar-btn-disabled-bg: #3498db;
  --ar-btn-disabled-border-color: #3498db;
}
.btn-outline-primary {
  --ar-btn-color: #3498db;
  --ar-btn-border-color: #3498db;
  --ar-btn-hover-bg: #3498db;
  --ar-btn-hover-border-color: #3498db;
  --ar-btn-active-bg: #3498db;
  --ar-btn-active-border-color: #3498db;
  --ar-btn-disabled-color: #3498db;
  --ar-btn-disabled-border-color: #3498db;
}
.btn-secondary {
  --booost-btn-color: #121519;
  --booost-btn-hover-color: #121519;
  --ar-btn-bg: #edf1f5;
  --ar-btn-border-color: #edf1f5;
  --ar-btn-hover-bg: #d4d8dc;
  --ar-btn-hover-border-color: #d4d8dc;
  --ar-btn-active-bg: #d4d8dc;
  --ar-btn-active-border-color: #d4d8dc;
  --ar-btn-disabled-bg: #edf1f5;
  --ar-btn-disabled-border-color: #edf1f5;
}
.btn-outline-secondary {
  --ar-btn-color: #edf1f5;
  --ar-btn-border-color: #edf1f5;
  --ar-btn-hover-bg: #edf1f5;
  --ar-btn-hover-border-color: #edf1f5;
  --ar-btn-active-bg: #edf1f5;
  --ar-btn-active-border-color: #edf1f5;
  --ar-btn-disabled-color: #edf1f5;
  --ar-btn-disabled-border-color: #edf1f5;
}
.btn-warning {
  --booost-btn-color: #121519;
  --booost-btn-hover-color: #121519;
  --ar-btn-bg: #edcb50;
  --ar-btn-border-color: #edcb50;
  --ar-btn-hover-bg: #d4b237;
  --ar-btn-hover-border-color: #d4b237;
  --ar-btn-active-bg: #d4b237;
  --ar-btn-active-border-color: #d4b237;
  --ar-btn-disabled-bg: #edcb50;
  --ar-btn-disabled-border-color: #edcb50;
}
.btn-outline-warning {
  --ar-btn-color: #edcb50;
  --ar-btn-border-color: #edcb50;
  --ar-btn-hover-bg: #edcb50;
  --ar-btn-hover-border-color: #edcb50;
  --ar-btn-active-bg: #edcb50;
  --ar-btn-active-border-color: #edcb50;
  --ar-btn-disabled-color: #edcb50;
  --ar-btn-disabled-border-color: #edcb50;
}
.btn-info {
  --booost-btn-color: #fff;
  --booost-btn-hover-color: #fff;
  --ar-btn-bg: #3f7fca;
  --ar-btn-border-color: #3f7fca;
  --ar-btn-hover-bg: #2666b1;
  --ar-btn-hover-border-color: #2666b1;
  --ar-btn-active-bg: #2666b1;
  --ar-btn-active-border-color: #2666b1;
  --ar-btn-disabled-bg: #3f7fca;
  --ar-btn-disabled-border-color: #3f7fca;
}
.btn-outline-info {
  --ar-btn-color: #3f7fca;
  --ar-btn-border-color: #3f7fca;
  --ar-btn-hover-bg: #3f7fca;
  --ar-btn-hover-border-color: #3f7fca;
  --ar-btn-active-bg: #3f7fca;
  --ar-btn-active-border-color: #3f7fca;
  --ar-btn-disabled-color: #3f7fca;
  --ar-btn-disabled-border-color: #3f7fca;
}
.btn-success {
  --booost-btn-color: #121519;
  --booost-btn-hover-color: #121519;
  --ar-btn-bg: #3fca90;
  --ar-btn-border-color: #3fca90;
  --ar-btn-hover-bg: #26b177;
  --ar-btn-hover-border-color: #26b177;
  --ar-btn-active-bg: #26b177;
  --ar-btn-active-border-color: #26b177;
  --ar-btn-disabled-bg: #3fca90;
  --ar-btn-disabled-border-color: #3fca90;
}
.btn-outline-success {
  --ar-btn-color: #3fca90;
  --ar-btn-border-color: #3fca90;
  --ar-btn-hover-bg: #3fca90;
  --ar-btn-hover-border-color: #3fca90;
  --ar-btn-active-bg: #3fca90;
  --ar-btn-active-border-color: #3fca90;
  --ar-btn-disabled-color: #3fca90;
  --ar-btn-disabled-border-color: #3fca90;
}
.btn-danger {
  --booost-btn-color: #fff;
  --booost-btn-hover-color: #fff;
  --ar-btn-bg: #ed5050;
  --ar-btn-border-color: #ed5050;
  --ar-btn-hover-bg: #d43737;
  --ar-btn-hover-border-color: #d43737;
  --ar-btn-active-bg: #d43737;
  --ar-btn-active-border-color: #d43737;
  --ar-btn-disabled-bg: #ed5050;
  --ar-btn-disabled-border-color: #ed5050;
}
.btn-outline-danger {
  --ar-btn-color: #ed5050;
  --ar-btn-border-color: #ed5050;
  --ar-btn-hover-bg: #ed5050;
  --ar-btn-hover-border-color: #ed5050;
  --ar-btn-active-bg: #ed5050;
  --ar-btn-active-border-color: #ed5050;
  --ar-btn-disabled-color: #ed5050;
  --ar-btn-disabled-border-color: #ed5050;
}
.btn-light {
  --booost-btn-color: #121519;
  --booost-btn-hover-color: #121519;
  --ar-btn-bg: #ffffff;
  --ar-btn-border-color: #ffffff;
  --ar-btn-hover-bg: #e6e6e6;
  --ar-btn-hover-border-color: #e6e6e6;
  --ar-btn-active-bg: #e6e6e6;
  --ar-btn-active-border-color: #e6e6e6;
  --ar-btn-disabled-bg: #ffffff;
  --ar-btn-disabled-border-color: #ffffff;
}
.btn-outline-light {
  --ar-btn-color: #ffffff;
  --ar-btn-border-color: #ffffff;
  --ar-btn-hover-bg: #ffffff;
  --ar-btn-hover-border-color: #ffffff;
  --ar-btn-active-bg: #ffffff;
  --ar-btn-active-border-color: #ffffff;
  --ar-btn-disabled-color: #ffffff;
  --ar-btn-disabled-border-color: #ffffff;
}
.btn-dark {
  --booost-btn-color: #fff;
  --booost-btn-hover-color: #fff;
  --ar-btn-bg: #12375c;
  --ar-btn-border-color: #12375c;
  --ar-btn-hover-bg: #001e43;
  --ar-btn-hover-border-color: #001e43;
  --ar-btn-active-bg: #001e43;
  --ar-btn-active-border-color: #001e43;
  --ar-btn-disabled-bg: #12375c;
  --ar-btn-disabled-border-color: #12375c;
}
.btn-outline-dark {
  --ar-btn-color: #12375c;
  --ar-btn-border-color: #12375c;
  --ar-btn-hover-bg: #12375c;
  --ar-btn-hover-border-color: #12375c;
  --ar-btn-active-bg: #12375c;
  --ar-btn-active-border-color: #12375c;
  --ar-btn-disabled-color: #12375c;
  --ar-btn-disabled-border-color: #12375c;
}
.accordion-button:not(.collapsed)::after {
  --ar-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='%233498db'%3e%3cpath%20d='M.5%206.3c.6-.6%201.6-.6%202.3%200l9.3%209.3%209.3-9.3c.6-.6%201.6-.6%202.3%200%20.6.6.6%201.6%200%202.3L13.3%2018.8c-.6.6-1.6.6-2.3%200L.8%208.5c-.9-.8-.9-1.6-.3-2.2z'/%3e%3c/svg%3e");
}
/* jauerling - booost.theme_custom_css (Phase C draft, measured on www.jauerling.at 2026-10-16,
   analysis/live-colors.md). Only what classes and registry values cannot do.
   @@custom.css loads before the theme: rules carry a body/section prefix for specificity.
   Light-only values are scoped to [data-bs-theme=light] or a band that is dark in both modes. */

/* headings: live uppercase, 30px, weight 500 (renders 400: the theme loads one Open Sans face),
   #12375c, letter-spacing -1px on h1 */
body .booost-layout :is(h1, h2, h3, h4, h5, h6),
body #content :is(h1, h2, h3, h4, h5, h6) { text-transform: uppercase; font-weight: 400; }
body #content :is(h1, .h1, h2, .h2) { font-size: 1.875rem; line-height: 1.2; }
body #content h1 { letter-spacing: -1px; }

/* centred h2 with the short bar under it (cloud19 pi-has-border pi-has-short-border) */
body #content .jau-heading-divider { padding-bottom: 1.25rem; margin-bottom: 2rem; position: relative; }
body #content .jau-heading-divider::after {
  content: ""; position: absolute; left: 50%; bottom: 0; width: 50px; height: 3px;
  margin-left: -25px; background: var(--ar-heading-color, #12375c);
}
body #content .text-start .jau-heading-divider::after,
body #content h1.jau-heading-divider::after { left: 0; margin-left: 0; }

/* photo bands: dark blue overlay 80 % (live rgba(18,55,92,.8)), same in both modes */
body #content .jau-band .parallax-overlay,
body #content .jau-band [class*="opacity-"].bg-dark { background-color: #12375c !important; opacity: .8 !important; }
/* Betriebszeiten band: live ~285 px high at 1440, text left in the container */
body #content .jau-band-short .jarallax { padding: 0 !important; }
body #content .jau-band-short .jarallax > .position-relative { margin: 0 auto !important; padding: 0 !important; }
body #content .jau-band-short .jarallax .my-5 { margin: 0 !important; padding: 0 !important; }
body #content .jau-band-short .jarallax .container { padding-top: 59px; padding-bottom: 70px; }
body #content .jau-band-short p { color: rgba(250,250,250,.7); }
body #content .jau-band-short a { color: #3498db; }
body #content .jau-band-short .lead { font-size: 1.25rem; }

/* icon boxes on the photo band: 60px primary square, white icon, hover orange-red (live #e75c39) */
body #content .jau-iconbox .jau-iconbox-icon {
  display: inline-flex !important; align-items: center; justify-content: center; width: 60px; height: 60px;
  margin-bottom: 0 !important; border-radius: 3px; background: #3498db; color: #fff !important; font-size: 32px;
}
body #content .jau-iconbox:hover .jau-iconbox-icon { background: #e75c39; }
body #content .jau-iconbox { position: relative; }
body #content .jau-iconbox .card-footer { position: static; padding: 0 !important; margin: 0 !important; }
body #content .jau-iconbox .card-footer a { position: absolute; inset: 0; opacity: 0; z-index: 4; }

/* image tiles (cards_image_zoom_view): live gradient over the lower part, title white 16px uppercase */
body #content .jau-tiles > span.bg-dark { background: linear-gradient(rgba(19,21,25,0) 55%, rgba(19,21,25,.7) 75%, rgba(19,21,25,.9) 100%) !important; opacity: 1 !important; }
body #content .jau-tiles .card-body { padding: 0 30px 53px !important; }
body #content .jau-tiles .card-body > span {
  background: none !important; color: #fff !important; text-transform: uppercase; font-size: 1rem;
  font-weight: 400 !important; line-height: 22px !important; padding: 0 !important; border-radius: 0 !important;
}
body #content .jau-tiles, body #content .jau-tiles img { border-radius: 0 !important; }

/* flag bullet lists (Highlights): 26px square #217dbb with a white flag */
body #content ul.jau-flags { list-style: none; padding-left: 0; font-size: 1.125rem; line-height: 1.5; }
body #content ul.jau-flags li { position: relative; padding-left: 40px; margin-bottom: .75rem; }
body #content ul.jau-flags li::before {
  content: ""; position: absolute; left: 0; top: 0; width: 26px; height: 26px; border-radius: 3px;
  background: #217dbb url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='white'%3E%3Cpath d='M3 1v14h1.5V9.5h8l-2-3.25 2-3.25h-8V1z'/%3E%3C/svg%3E") center/14px no-repeat;
}

/* tables (Tarife, Betriebszeiten): header row #4aa3df with #dcfafc text, rows ruled #eaeaea.
   The opening calendar is a plain kit table (no header colour): left out. */
body #content table:not(.opening-calendar *) thead th, body #content table:not(.opening-calendar *) thead td,
body #content table:not(.opening-calendar *) tr.jau-th td { background: #4aa3df; color: #dcfafc; }
[data-bs-theme=light] body #content table:not(.opening-calendar *) td { border-top: 1px solid #eaeaea; }

/* webcams */
body #content .jau-webcam { background: #000; }
/* kbit page = 16:9 image + two tab bars (62px, measured 300-640px wide);
   ratio-16x9 alone cut off the LIVE/9H/12H/15H bar */
body #content .jau-webcam.ratio { --ar-aspect-ratio: calc(56.25% + 62px); }

/* footer: live portlet headers are #12375c on the #12375c band (invisible) - kept that way;
   links white, bold, underlined */
body #footer .card-body > h2 { color: #12375c !important; }
body #footer ul.jau-footer-list { padding-left: 1.1rem; list-style: disc; margin: 0; }
body #footer ul.jau-footer-list li { line-height: 1.6; }
body #footer a:not(.btn) { color: #fff; font-weight: 600; text-decoration: underline; line-height: 1.6; }
body #footer a:not(.btn):hover { color: #fff; }
/* colophon: live "© 2026 »JAUerling Lift GesmbH«" grey with the company in primary */
body #ui-colophon .nav-link { color: rgba(255,255,255,.6); font-size: 1rem; }
body #ui-colophon .company { color: #3498db; }

/* hero logo on the before-header photos */
.jau-hero .jau-hero-logo { max-width: 40vw; height: auto; }

/* photo before the header: full viewport like live, logo centred */
body .jau-hero .jarallax { min-height: 100vh; display: flex; align-items: center; justify-content: center; }
body .jau-hero .jarallax > .position-relative { width: 100%; margin: 0 !important; padding: 0 !important; }

/* live tiles and slider images have square corners */
body #content .jau-tiles, body #content .jau-tiles * { border-radius: 0 !important; }
body #content .jau-gallery .swiper-slide, body #content .jau-gallery .swiper-slide * { border-radius: 0 !important; }

/* Flutlicht: Vimeo background video before the header, full viewport like live */
body .jau-video-row .jau-video-hero { position: relative; height: 100vh; overflow: hidden; background: #000; }
body .jau-video-row .jau-video-hero iframe {
  position: absolute; top: 50%; left: 50%; width: 177.78vh; height: 56.25vw; min-width: 100%; min-height: 100%;
  transform: translate(-50%, -50%); border: 0; pointer-events: none;
}
[data-bs-theme=light] body #content .text-dark-blue { color: #12375c; }

/* live content width 1040 px (cloud19 pi-section) instead of booost's 1296 */
@media (min-width: 1200px) {
  body .container, body .container-lg, body .container-xl, body .container-xxl { max-width: calc(1040px + var(--ar-gutter-x, 1.5rem)); }
}
/* counter band: content in the 1040 column, numbers centred in their thirds */
body #content .jau-band .jarallax > .position-relative { max-width: calc(1040px + 1.5rem); margin: 0 auto; padding: 2.5rem .75rem; }
body #content .jau-band .col.d-md-flex { justify-content: center !important; }

/* top bar: phone and mail side by side on the left (live), icons in the primary blue */
body #topbar > .container { justify-content: flex-start !important; column-gap: 50px; }
body #topbar .nav-link { color: #fff; font-size: 1rem; }
/* phone/email icons; a button (the opening calendar's icon link) keeps its own colours, hover included */
body #topbar :not(.btn) > svg, body #topbar :not(.btn) > .bi { color: #3498db; }
/* header social links: plain white icons, 22px (live), no button surface */
body #header .btn-icon { background: transparent !important; border: 0 !important; box-shadow: none !important; color: #fff !important; font-size: 1.375rem; }

/* home banner slider: live 500 px band, caption box rgba(0,0,0,.3) 630 px wide, primary "Mehr…" button */
body #content .jau-banner .container { padding-top: 110px !important; padding-bottom: 130px !important; margin-top: 0 !important; margin-bottom: 0 !important; }
body #content .jau-banner .swiper-slide div:has(> .slide-title) { background: rgba(0,0,0,.3); padding: 20px 20px 24px; max-width: 630px; margin-left: 17px; }
body #content .jau-banner .slide-description { background: none !important; padding: 0 !important; font-size: 1rem; }
body #content .jau-banner .slide-btn .btn { background: #3498db; border-color: #3498db; color: #fff; border-radius: 3px; }

/* icon band: four boxes in the 1040 column, band ~294 px like live */
body #content .mosaic-grid-row.jau-band .row { max-width: calc(1040px + 1.5rem); margin-left: auto; margin-right: auto; padding-top: 2.5rem; padding-bottom: 2.5rem; }

/* live omits tags under content (omit_tags) */
body #content div.d-flex:has(> a.nav-link[class*="tag-"]) { display: none !important; }
/* price tables (Tarife): legacy cloud19 classes */
body #content table.pricing th.pricing-head-base { background: #4aa3df; color: #dcfafc; font-weight: 400; padding: .6rem .75rem; border: 0; }
[data-bs-theme=light] body #content table.pricing td.header2, [data-bs-theme=light] body #content table.pricing td.header2 * { color: #12375c; }
body #content table.pricing td { padding: .45rem .75rem; }
body #content table[width="144"] { width: 100% !important; }
/* Kontakt photo band: live 1440x460 */
body #content .jau-band-photo .ratio { --bs-aspect-ratio: 32%; }

/* measured fixes 2026-10-16 (analysis/dev-colors.md vs live-colors.md) */
body #header .navbar-nav .nav-link { color: #fff; }
/* logo, nav and social icons share one row (2026-10-28): 12px link padding instead of live's 16px so
   "Skischule & Verleih" fits next to the logo; the menu collapses below xl (booost.header_css_class) */
@media (min-width: 1200px) { body #header .navbar-nav .nav-link { padding-left: .75rem !important; padding-right: .75rem !important; } }
body #header .navbar-nav .nav-link.active, body #header .navbar-nav .active > .nav-link {
  background: rgb(61,156,221); text-decoration: none !important; box-shadow: inset 0 -3px 0 #fff;
}
body #content .jau-banner .slide-btn .btn { border-radius: 3px !important; font-size: 1rem; }
body #content p.lead { font-size: 1.25rem; line-height: 1.75rem; }
body #content .jau-band-short h4 { font-size: 1.25rem; }
body #content .jau-tiles .card-body > span { font-size: 1rem !important; }
body #footer #ui-colophon .nav-link { color: #999 !important; font-weight: 400 !important; text-decoration: none !important; }
body #footer #ui-colophon .company { color: #3498db; }

/* dark mode: inline text colours from the legacy editor (#4d4d4d, #12375c) follow the theme */
html[data-bs-theme=dark] body #content [style*="color"]:not(.jau-bergfex-wrap *) { color: inherit !important; }
/* slider images 4:3 like live (the slider view ignores image_ratio) */
body #content .jau-gallery .swiper-slide img { aspect-ratio: 4 / 3; width: 100%; height: auto; object-fit: cover; }
/* "Betrieb heute": on small screens only the badges and the calendar icon, the label goes (live phones: VM/NM/AB without label) */
@media (max-width: 767.98px) { body #topbar .opening-today > .fw-semibold { display: none; } }
/* calendar button as high as the badges (btn-sm icon is 36px, the badges 24px) - 2026-11-03 */
body #topbar .opening-today .btn-icon { width: 1.5rem; height: 1.5rem; font-size: .75rem; }
/* Aktuelles (blog_view, entries carry jau-news-entry): live cloud19 blog_medium_image_view - images 4:3, a rule between entries.
   blog_view ignores image_ratio, so the ratio is set here */
body #content .row.g-0:has(.jau-news-entry) { border-bottom: 1px solid var(--ar-border-color, #eaeaea); padding-bottom: 2.5rem; margin-bottom: 2.5rem !important; }
body #content .row.g-0:has(.jau-news-entry) img { aspect-ratio: 4 / 3; object-fit: cover; }

body.template-folder_contents,
body[class*="controlpanel"],
body.template-sharing,
body.template-historyview {
  --ar-body-font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --ar-heading-font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}
#edit-zone { font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; }
