/* BERGSPORT JA Website V4.7.0 · Abschluss-Härtung */
:root{--focus:#f3d58b;--safe-bottom:env(safe-area-inset-bottom,0px)}
:focus-visible{outline:3px solid var(--focus);outline-offset:4px;border-radius:3px}
a,button,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}
img{height:auto}
.bja-breadcrumb{background:var(--cream,#f7f3ea);border-bottom:1px solid var(--line,#dfdbd0)}
.bja-breadcrumb__inner{width:var(--shell,min(1260px,calc(100% - 48px)));margin:auto;padding:14px 0;display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:.76rem;color:var(--stone,#6f6b61)}
.bja-breadcrumb a{font-weight:750;color:var(--ink,#171714)}.bja-breadcrumb span[aria-hidden]{opacity:.5}
.bja-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.bja-overview-card{position:relative;display:flex;min-height:310px;overflow:hidden;background:var(--black,#0d0e0c);color:#fff;isolation:isolate}
.bja-overview-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.82));z-index:1}
.bja-overview-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.22,1,.36,1)}
.bja-overview-card__content{position:relative;z-index:2;align-self:flex-end;padding:30px;width:100%}
.bja-overview-card small{display:block;margin-bottom:9px;color:var(--gold-light,#d9c79e);font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.bja-overview-card h3{margin:0 0 12px;font-size:clamp(1.7rem,2.5vw,2.45rem)}
.bja-overview-card p{margin:0;color:rgba(255,255,255,.72);font-size:.92rem}
.bja-overview-card:hover img{transform:scale(1.04)}
.bja-decision-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.bja-decision-card{padding:34px;border:1px solid var(--line,#dfdbd0);background:#fff;box-shadow:0 14px 38px rgba(22,20,15,.06)}
.bja-decision-card span{display:block;margin-bottom:14px;color:var(--gold-deep,#7d642e);font-size:.72rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.bja-decision-card h3{margin-bottom:13px}.bja-decision-card p{color:var(--stone,#6f6b61)}
.bja-decision-card__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.bja-faq-list{display:grid;gap:12px;max-width:980px;margin-inline:auto}
.bja-faq-list details{border:1px solid var(--line,#dfdbd0);background:#fff}
.bja-faq-list summary{position:relative;cursor:pointer;list-style:none;padding:22px 58px 22px 24px;font-weight:800;color:var(--ink,#171714)}
.bja-faq-list summary::-webkit-details-marker{display:none}
.bja-faq-list summary:after{content:"+";position:absolute;right:24px;top:50%;translate:0 -50%;font-family:Georgia,serif;font-size:1.7rem;color:var(--gold-deep,#7d642e)}
.bja-faq-list details[open] summary:after{content:"–"}
.bja-faq-list details>div{padding:0 24px 24px;color:var(--stone,#6f6b61);max-width:820px}
.bja-faq-list details>div p:last-child{margin-bottom:0}
.bja-fact-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line,#dfdbd0);background:#fff}
.bja-fact-strip article{padding:26px;border-right:1px solid var(--line,#dfdbd0)}.bja-fact-strip article:last-child{border-right:0}
.bja-fact-strip span{display:block;margin-bottom:8px;color:var(--gold-deep,#7d642e);font-size:.69rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.bja-fact-strip strong{display:block;font-family:Georgia,serif;font-size:1.35rem;font-weight:400;line-height:1.2}
.bja-team-intro{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}
.bja-team-intro__media{min-height:520px;overflow:hidden}.bja-team-intro__media img{width:100%;height:100%;object-fit:cover}
.bja-values{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.bja-value{padding:28px;border-top:2px solid var(--gold,#a58a4f);background:#fff}.bja-value h3{font-size:1.55rem}.bja-value p{color:var(--stone,#6f6b61);font-size:.9rem}
.bja-contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:30px}.bja-contact-panel{padding:36px;background:var(--black,#0d0e0c);color:#fff}.bja-contact-panel a{display:block;margin:10px 0;color:var(--gold-light,#d9c79e);font-weight:750}.bja-contact-panel p{color:rgba(255,255,255,.66)}
.bja-contact-map{min-height:100%;background:var(--cream,#f7f3ea);display:grid;place-items:center;padding:42px;text-align:center;border:1px solid var(--line,#dfdbd0)}
.bja-related{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.bja-related a{display:block;padding:24px;border:1px solid var(--line,#dfdbd0);background:#fff}.bja-related small{display:block;color:var(--gold-deep,#7d642e);font-weight:800;text-transform:uppercase;letter-spacing:.1em}.bja-related strong{display:block;margin-top:8px;font-family:Georgia,serif;font-size:1.4rem;font-weight:400}
.bja-mobile-quickbar{display:none}
.bja-production-note{padding:12px 16px;background:#171714;color:#fff;text-align:center;font-size:.78rem}.bja-production-note strong{color:var(--gold-light,#d9c79e)}
.footer__bottom span:last-child{white-space:nowrap}
@media(max-width:1050px){.bja-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bja-fact-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.bja-fact-strip article:nth-child(2){border-right:0}.bja-fact-strip article:nth-child(-n+2){border-bottom:1px solid var(--line,#dfdbd0)}.bja-values{grid-template-columns:repeat(2,minmax(0,1fr))}.bja-team-intro,.bja-contact-grid{grid-template-columns:1fr}.bja-related{grid-template-columns:1fr}}
@media(max-width:760px){body{padding-bottom:calc(66px + var(--safe-bottom))}.bja-overview-grid,.bja-decision-grid,.bja-values{grid-template-columns:1fr}.bja-overview-card{min-height:280px}.bja-fact-strip{grid-template-columns:1fr}.bja-fact-strip article,.bja-fact-strip article:nth-child(2){border-right:0;border-bottom:1px solid var(--line,#dfdbd0)}.bja-fact-strip article:last-child{border-bottom:0}.bja-team-intro{gap:34px}.bja-team-intro__media{min-height:360px}.bja-mobile-quickbar{position:fixed;left:0;right:0;bottom:0;z-index:999;display:grid;grid-template-columns:repeat(3,1fr);padding:8px 10px calc(8px + var(--safe-bottom));background:rgba(13,14,12,.97);box-shadow:0 -10px 30px rgba(0,0,0,.18)}.bja-mobile-quickbar a{display:grid;place-items:center;min-height:48px;color:#fff;font-size:.72rem;font-weight:800;text-align:center;border-right:1px solid rgba(255,255,255,.14)}.bja-mobile-quickbar a:last-child{border-right:0;color:var(--gold-light,#d9c79e)}.bja-breadcrumb__inner{width:min(100% - 32px,1260px)}}
@media(prefers-reduced-motion:reduce){.bja-overview-card img{transition:none}}
/* Standalone-Kontaktformular */
.contact-form{display:grid;gap:18px}.contact-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.contact-form label{display:grid;gap:8px;font-size:.82rem;font-weight:750;color:var(--ink,#171714)}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid var(--line,#dfdbd0);background:#fff;color:var(--ink,#171714);padding:14px 15px;border-radius:0}.contact-form textarea{resize:vertical;min-height:150px}.contact-form__full{grid-column:1/-1}.contact-form__check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start;gap:12px!important;font-weight:500!important}.contact-form__check input{width:auto;margin-top:4px}.contact-form__check a{text-decoration:underline}.contact-form__trap{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.contact-form__status{min-height:1.5em;margin:0}.contact-form__status.is-success{color:#1f6b45}.contact-form__status.is-error{color:#9a2c24}.contact-form button[disabled]{opacity:.65;cursor:wait}
@media(max-width:760px){.contact-form__grid{grid-template-columns:1fr}.contact-form__full{grid-column:auto}}

/* V4.7.1 · getrennte Markenlinks */
.brand-duo__home,.brand-duo__booking,.mobile-brand-duo>a,.footer-logo-panel>a,.carriage-brand>a{display:flex;align-items:center;line-height:0;border-radius:6px}
.brand-duo__home:focus-visible,.brand-duo__booking:focus-visible,.mobile-brand-duo>a:focus-visible,.footer-logo-panel>a:focus-visible,.carriage-brand>a:focus-visible{outline:3px solid #c9a75f;outline-offset:4px}
.footer-logo-panel>a,.carriage-brand>a{width:max-content;max-width:100%}


/* V6 CLEAN – ausschließlich angeforderte Logo- und Leistungen-Slider-Effekte auf Unterseiten */
.brand-duo__dornach,.mobile-brand-duo img:last-child{background:transparent!important}
.brand-duo a img,.mobile-brand-duo a img,.carriage-brand a img,.footer-logo-panel img,.brand img,.footer-brand img{
  transform-origin:center;transition:transform .34s cubic-bezier(.22,1,.36,1),filter .34s ease,opacity .34s ease
}
.brand-duo a:hover img,.brand-duo a:focus-visible img,.mobile-brand-duo a:hover img,.mobile-brand-duo a:focus-visible img,.carriage-brand a:hover img,.carriage-brand a:focus-visible img,.footer-logo-panel a:hover img,.footer-logo-panel a:focus-visible img,.brand:hover img,.brand:focus-visible img{
  transform:translateY(-2px) scale(1.025);filter:drop-shadow(0 9px 18px rgba(165,138,79,.18))
}
.brand-duo a:active img,.mobile-brand-duo a:active img,.carriage-brand a:active img,.footer-logo-panel a:active img,.brand:active img{transform:scale(.985)}
.image-story--leistungen .moment-track{scroll-snap-type:x mandatory;perspective:1200px;padding-block:8px 12px}
.image-story--leistungen .moment-card{scroll-snap-align:center;opacity:.78;transform:scale(.972) translateY(4px);filter:saturate(.88);transition:transform .58s cubic-bezier(.22,1,.36,1),opacity .45s ease,filter .45s ease,box-shadow .45s ease}
.image-story--leistungen .moment-track.is-ready .moment-card.is-current{opacity:1;transform:scale(1) translateY(-4px);filter:saturate(1);box-shadow:0 24px 58px rgba(0,0,0,.24)}
.image-story--leistungen .moment-card:hover,.image-story--leistungen .moment-card:focus-visible{opacity:1;transform:scale(1.012) translateY(-7px);filter:saturate(1.04)}
.image-story--leistungen .moment-card img{transition:transform .9s cubic-bezier(.22,1,.36,1)}
.image-story--leistungen .moment-card.is-current img,.image-story--leistungen .moment-card:hover img{transform:scale(1.035)}
@media(prefers-reduced-motion:reduce){.brand-duo a img,.mobile-brand-duo a img,.carriage-brand a img,.footer-logo-panel img,.brand img,.footer-brand img,.image-story--leistungen .moment-card,.image-story--leistungen .moment-card img{transition:none!important;transform:none!important}}


/* V6.0.1 PRAEZISIONSFIX — nur Logo-Transparenz/Glow + Fact-Strip-Kontrast */
:root{--bja-glow-gold:#c9a75f;--bja-glow-soft:rgba(201,167,95,.26)}

/* Bilddateien selbst bleiben transparent; keine weißen Karten hinter den Marken. */
.brand-duo__dornach,.mobile-brand-duo img:last-child,.carriage-brand img,.footer-logo-panel img{background:transparent!important;padding:0!important}
.footer-logo-panel{background:transparent!important;border:1px solid rgba(201,167,95,.24)!important;border-radius:12px!important;box-shadow:none!important;transition:border-color .32s ease,box-shadow .32s ease,transform .32s ease}
.carriage-brand{background:transparent!important;box-shadow:none!important;padding:0!important;overflow:visible!important}
.carriage-brand>a{padding:10px 12px!important;background:rgba(12,13,11,.16)!important;border:1px solid rgba(201,167,95,.18)!important;border-radius:10px!important;backdrop-filter:blur(3px)}

/* Bestehende Logo-Bewegung bleibt; zusätzlich leuchtet der Rand gold auf. */
.brand-duo a,.mobile-brand-duo>a,.carriage-brand>a,.footer-logo-panel>a{position:relative;isolation:isolate;transition:transform .34s cubic-bezier(.22,1,.36,1),filter .34s ease,box-shadow .34s ease,border-color .34s ease}
.brand-duo a:after,.mobile-brand-duo>a:after,.carriage-brand>a:after,.footer-logo-panel>a:after{content:"";position:absolute;inset:-4px;border:1px solid transparent;border-radius:10px;pointer-events:none;opacity:0;transition:opacity .32s ease,border-color .32s ease,box-shadow .32s ease}
.brand-duo a:hover:after,.brand-duo a:focus-visible:after,.mobile-brand-duo>a:hover:after,.mobile-brand-duo>a:focus-visible:after,.carriage-brand>a:hover:after,.carriage-brand>a:focus-visible:after,.footer-logo-panel>a:hover:after,.footer-logo-panel>a:focus-visible:after{opacity:1;border-color:rgba(201,167,95,.76);box-shadow:0 0 0 1px rgba(201,167,95,.12),0 0 14px rgba(201,167,95,.24),0 0 30px rgba(201,167,95,.17)}
.footer-logo-panel:has(img:first-child:hover){border-color:rgba(201,167,95,.76)!important;box-shadow:0 0 0 1px rgba(201,167,95,.10),0 0 16px rgba(201,167,95,.18)!important}
.footer-logo-panel>img:first-child{transition:transform .34s cubic-bezier(.22,1,.36,1),filter .34s ease}
.footer-logo-panel>img:first-child:hover{transform:translateY(-2px) scale(1.025);filter:drop-shadow(0 0 9px rgba(201,167,95,.34))}

/* Kontaktseite: weiße Box bleibt hell, Text ist immer sichtbar (nicht erst beim Markieren). */
.section--dark .bja-fact-strip{background:#fff!important;color:var(--ink,#171714)!important}
.section--dark .bja-fact-strip article{border-color:var(--line,#dfdbd0)!important}
.section--dark .bja-fact-strip span{color:var(--gold-deep,#7d642e)!important}
.section--dark .bja-fact-strip strong{color:var(--ink,#171714)!important;text-shadow:none!important;-webkit-text-fill-color:currentColor!important}

@media(prefers-reduced-motion:reduce){.brand-duo a,.mobile-brand-duo>a,.carriage-brand>a,.footer-logo-panel>a,.footer-logo-panel>img:first-child,.brand-duo a:after,.mobile-brand-duo>a:after,.carriage-brand>a:after,.footer-logo-panel>a:after{transition:none!important}}


/* V6.0.1 · Optimierungsrunde 1: transparente Markenflächen, Gold-Glow, Kontakt-Kontrast */
:root{--bja-logo-glow:rgba(201,167,95,.58);--bja-logo-glow-soft:rgba(201,167,95,.22)}
.brand-duo__dornach,.mobile-brand-duo img:last-child,.footer-logo-panel img,.carriage-brand img{background:transparent!important}
.footer-logo-panel{background:rgba(255,255,255,.035)!important;border-color:rgba(201,167,95,.30)!important;border-radius:14px;backdrop-filter:blur(8px)}
.footer-logo-panel>span{background:rgba(201,167,95,.36)!important}
.carriage-brand{background:transparent!important;box-shadow:none!important;padding:0!important}
.brand-duo__home,.brand-duo__booking,.logo-link--home,.logo-link--carriage,.mobile-brand-duo>a,.footer-logo-panel>a,.carriage-brand>a{position:relative;border-radius:10px;background:transparent!important;transition:transform .34s cubic-bezier(.22,1,.36,1),filter .34s ease,box-shadow .34s ease}
.brand-duo__home:after,.brand-duo__booking:after,.logo-link--home:after,.logo-link--carriage:after,.mobile-brand-duo>a:after,.footer-logo-panel>a:after,.carriage-brand>a:after{content:"";position:absolute;inset:-5px;border:1px solid rgba(201,167,95,0);border-radius:12px;opacity:0;pointer-events:none;box-shadow:0 0 0 rgba(201,167,95,0);transition:opacity .34s ease,border-color .34s ease,box-shadow .34s ease}
.brand-duo__home:hover:after,.brand-duo__home:focus-visible:after,.brand-duo__booking:hover:after,.brand-duo__booking:focus-visible:after,.logo-link--home:hover:after,.logo-link--home:focus-visible:after,.logo-link--carriage:hover:after,.logo-link--carriage:focus-visible:after,.mobile-brand-duo>a:hover:after,.mobile-brand-duo>a:focus-visible:after,.footer-logo-panel>a:hover:after,.footer-logo-panel>a:focus-visible:after,.carriage-brand>a:hover:after,.carriage-brand>a:focus-visible:after{opacity:1;border-color:var(--bja-logo-glow);box-shadow:0 0 12px var(--bja-logo-glow-soft),0 0 28px rgba(201,167,95,.17)}
.section--dark .bja-fact-strip{background:#fff!important}
.section--dark .bja-fact-strip article{border-color:rgba(165,138,79,.20)!important}
.section--dark .bja-fact-strip span{color:var(--gold-deep,#7d642e)!important}
.section--dark .bja-fact-strip strong{color:var(--ink,#171714)!important}
@media(prefers-reduced-motion:reduce){.brand-duo__home,.brand-duo__booking,.logo-link--home,.logo-link--carriage,.mobile-brand-duo>a,.footer-logo-panel>a,.carriage-brand>a,.brand-duo__home:after,.brand-duo__booking:after,.logo-link--home:after,.logo-link--carriage:after,.mobile-brand-duo>a:after,.footer-logo-panel>a:after,.carriage-brand>a:after{transition:none!important}}


/* ================================================================
   V4.7.6 – BERGSPORT JA Social Floater
   Ausschließlich Instagram + Google am rechten Seitenrand.
   ================================================================ */
.bja-social-floater{
  position:fixed;
  z-index:190;
  right:18px;
  top:50%;
  transform:translateY(-50%);
  display:flex;
  flex-direction:column;
  gap:8px;
}
.bja-social-floater__link{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border:1px solid rgba(165,138,79,.34);
  background:rgba(252,251,247,.94);
  color:#171714;
  box-shadow:0 10px 28px rgba(20,18,13,.13);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  transition:
    transform .28s cubic-bezier(.22,1,.36,1),
    border-color .28s ease,
    background .28s ease,
    color .28s ease,
    box-shadow .28s ease;
}
.bja-social-floater__link:hover,
.bja-social-floater__link:focus-visible{
  transform:translateX(-4px);
  border-color:#a58a4f;
  background:#171714;
  color:#d9c79e;
  box-shadow:0 14px 34px rgba(20,18,13,.20);
}
.bja-social-floater__link:focus-visible{
  outline:2px solid #a58a4f;
  outline-offset:3px;
}
.bja-social-floater__link svg{
  width:21px;
  height:21px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.bja-social-floater__link--google svg{
  width:22px;
  height:22px;
}
.bja-social-floater__link--google .bja-google-g{
  fill:currentColor;
  stroke:none;
  font-family:Arial,sans-serif;
  font-size:16px;
  font-weight:700;
}

@media(max-width:760px){
  .bja-social-floater{
    top:auto;
    right:10px;
    bottom:calc(78px + var(--safe-bottom,0px));
    transform:none;
    gap:6px;
  }
  .bja-social-floater__link{
    width:42px;
    height:42px;
    background:rgba(252,251,247,.96);
  }
}

@media(max-width:430px){
  .bja-social-floater{
    right:8px;
    bottom:calc(76px + var(--safe-bottom,0px));
  }
  .bja-social-floater__link{
    width:40px;
    height:40px;
  }
}

@media(prefers-reduced-motion:reduce){
  .bja-social-floater__link{transition:none!important}
}


/* V4.7.6.1 – schöneres Google-Symbol im Social Floater */
.bja-social-floater__link--google svg{
  width:20px;
  height:20px;
}
.bja-social-floater__link--google .bja-google-pin-dot{
  fill:currentColor;
  stroke:none;
}


/* ================================================================
   V4.7.6.2 – Floater unten rechts + separates Google-Profil
   ================================================================ */

/* Desktop jetzt wie Mobil unten rechts */
.bja-social-floater{
  top:auto !important;
  right:18px !important;
  bottom:22px !important;
  transform:none !important;
}

.bja-social-floater__link:hover,
.bja-social-floater__link:focus-visible{
  transform:translateY(-3px) !important;
}

/* Google-Profil / Bewertungen */
.bja-social-floater__link--google-profile svg{
  width:21px;
  height:21px;
}
.bja-social-floater__link--google-profile .bja-google-profile-star{
  fill:currentColor;
  stroke:none;
}

/* Mobil weiterhin oberhalb der festen unteren Schnellleiste */
@media(max-width:760px){
  .bja-social-floater{
    right:10px !important;
    bottom:calc(78px + var(--safe-bottom,0px)) !important;
  }
}
@media(max-width:430px){
  .bja-social-floater{
    right:8px !important;
    bottom:calc(76px + var(--safe-bottom,0px)) !important;
  }
}
