/* Vetklinik Uhliská 1.0 – scoped to homepage; native ContentSlider remains authoritative */
:root{--vet-green:#173e35;--vet-cream:#f7f5ef;--vet-gold:#b79b6a}
body.vet-home #content-wrapper,body.vet-home #content,body.vet-home #content-body,body.vet-home #content-center{background:var(--vet-cream)}
body.vet-home #content{max-width:none;padding:0}
body.vet-home #content-body{margin:0}
body.vet-home #content-center{padding:0;max-width:100%;flex:0 0 100%}
body.vet-home .breadcrumb{display:none}
.vet-page{font-family:Arial,Helvetica,sans-serif;color:#23342e}
.vet-page *{box-sizing:border-box}
.vet-page a{text-decoration:none}
.vet-hero{position:relative;min-height:calc(100svh - 110px);background:var(--vet-green);color:#fff}
.vet-hero-fallback{min-height:calc(100svh - 110px);display:grid;grid-template-columns:1.05fr 1fr}
.vet-hero-image{display:flex;align-items:center;justify-content:center;min-height:480px;background:linear-gradient(145deg,#6f8d79,#2d5146 58%,#19362f);color:#dce9df;font-size:clamp(13px,1.3vw,18px);letter-spacing:.2em;text-align:center;padding:25px}
.vet-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(35px,6vw,110px)}
.vet-eyebrow{font-size:12px!important;letter-spacing:.22em;text-transform:uppercase;font-weight:700;color:var(--vet-gold);margin:0 0 22px}
.vet-hero h1{font-family:Georgia,serif;font-size:clamp(36px,4.4vw,76px);line-height:1.12;max-width:750px;color:#fff;margin:0 0 24px;font-weight:400}
.vet-hero-copy>p:not(.vet-eyebrow){font-size:clamp(16px,1.35vw,21px);line-height:1.6;color:#e5ede7;max-width:550px}
.vet-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px}
.vet-btn{display:inline-flex;align-items:center;justify-content:center;background:var(--vet-gold);color:#172f28!important;border:1px solid var(--vet-gold);padding:15px 25px;font-weight:700;min-height:48px;transition:background .2s}
.vet-btn:hover{background:#e0c895;color:#172f28!important}
.vet-btn-outline{background:transparent;color:#fff!important;border-color:#fff}
.vet-btn-outline:hover{background:#fff}
.vet-scroll{position:absolute;bottom:20px;left:50%;color:#fff!important;font-size:26px;z-index:2}
.vet-native-slider{width:100%;min-height:calc(100svh - 110px);overflow:hidden}
.vet-native-slider .carousel,.vet-native-slider .carousel-inner,.vet-native-slider .carousel-item{min-height:calc(100svh - 110px)}
.vet-native-slider img{max-width:100%;object-fit:cover}
.vet-intro{padding:clamp(65px,7vw,120px) clamp(20px,5vw,90px);max-width:1600px;margin:auto;text-align:center}
.vet-intro h2,.vet-topic h2,.vet-contact h2{font-family:Georgia,serif;font-size:clamp(32px,3vw,54px);font-weight:400;line-height:1.16}
.vet-intro>p:not(.vet-eyebrow){font-size:18px;color:#65756b}
.vet-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:55px;text-align:left}
.vet-service{display:block;background:#fff;color:#243b31!important;box-shadow:0 6px 28px rgba(10,32,22,.05);overflow:hidden}
.vet-service-media{aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;letter-spacing:.12em;font-size:12px;text-align:center;padding:20px}
.vet-dog{background:linear-gradient(145deg,#93a8a1,#45685b)}
.vet-horse{background:linear-gradient(145deg,#a99b82,#736a53)}
.vet-cow{background:linear-gradient(145deg,#96a38b,#52694f)}
.vet-service-copy{padding:30px}
.vet-service-copy>span{font-size:11px;letter-spacing:.12em;color:#7a8c7f;font-weight:700}
.vet-service-copy h3{font-family:Georgia,serif;font-size:28px;margin:12px 0}
.vet-service-copy p{min-height:55px;line-height:1.6}
.vet-service-copy strong{font-size:13px;color:#173e35}
.vet-topic{background:#fff;padding:clamp(60px,6vw,110px) clamp(24px,7vw,120px);display:grid;grid-template-columns:1fr 1.5fr;gap:8vw}
.vet-topic-content{font-size:17px;line-height:1.8;overflow-wrap:anywhere}
.vet-topic-content img{max-width:100%;height:auto}
.vet-contact{background:#173e35;color:#fff;display:flex;justify-content:space-between;gap:45px;padding:clamp(55px,6vw,100px) clamp(25px,7vw,120px)}
.vet-contact h2{color:#fff}
.vet-contact>div>p:not(.vet-eyebrow){color:#d5e2da;font-size:18px}
.vet-contact-actions{display:flex;flex-direction:column;gap:17px;align-items:flex-start;justify-content:center}
.vet-btn-light{background:#fff;border-color:#fff}
.vet-contact-email{color:#fff!important;text-decoration:underline!important}
.vet-contact-actions span{color:#d5e2da}
@media(max-width:991px){.vet-hero-fallback{grid-template-columns:1fr}.vet-hero-image{min-height:40svh}.vet-hero-copy{padding:45px 26px 80px}.vet-hero{min-height:auto}.vet-service-grid{grid-template-columns:1fr 1fr}.vet-topic{grid-template-columns:1fr;gap:25px}.vet-contact{flex-direction:column}.vet-native-slider,.vet-native-slider .carousel,.vet-native-slider .carousel-inner,.vet-native-slider .carousel-item{min-height:65svh}}
@media(max-width:620px){.vet-service-grid{grid-template-columns:1fr}.vet-service-media{aspect-ratio:16/9}.vet-intro{padding:65px 20px}.vet-service-grid{margin-top:30px}.vet-scroll{display:none}.vet-contact-actions{align-items:stretch}}
@media(prefers-reduced-motion:reduce){.vet-page *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* 1.1.0: Einheitliche Navigation, Buttons und Formularaktionen (alle Seiten) */
:root{--vet-ink:#23342e;--vet-focus:#b79b6a}
#header .menubar-section,#header .shopbar-section,#header .megamenu-section{background:#f7f5ef;color:var(--vet-ink)}
#header .navbar{background:#f7f5ef}
#header .navbar a,#header .menubar-section a,#header .shopbar-section a{color:#173e35}
#header .navbar a:hover,#header .navbar a:focus-visible,#header .menubar-section a:hover,#header .shopbar-section a:hover{color:#8b6c37}
#header .navbar .active>a,#header .navbar .active>.nav-link,#header .navbar .nav-link.active{color:#173e35;font-weight:700}
#header .dropdown-menu{background:#fff;border-color:#e4e5df}
#header .dropdown-menu a:hover,#header .dropdown-menu a:focus{background:#edf3ef;color:#173e35}
.btn-primary,.btn.btn-primary,button.btn-primary,input[type=submit].btn-primary{background-color:#173e35;border-color:#173e35;color:#fff}
.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary:not(:disabled):not(.disabled):active{background-color:#275d4d;border-color:#275d4d;color:#fff}
.btn-secondary,.btn.btn-secondary{background-color:#b79b6a;border-color:#b79b6a;color:#172f28}
.btn-secondary:hover,.btn-secondary:focus{background-color:#cbb184;border-color:#cbb184;color:#172f28}
.btn-outline-primary{color:#173e35;border-color:#173e35}
.btn-outline-primary:hover,.btn-outline-primary:focus{background-color:#173e35;border-color:#173e35;color:#fff}
a{color:#173e35}
a:hover{color:#8b6c37}
a:focus-visible,button:focus-visible,.btn:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b79b6a;outline-offset:2px}
#footer,#footer.footer-inverse{background:#173e35;color:#fff}
#footer a{color:#f4e9d6}
#footer a:hover{color:#fff}
@media(max-width:991px){#header .shopbar-section{background:#f7f5ef}}


/* 1.2.0: Clinic-only header/footer, no shop components */
.vet-site-header{position:relative;z-index:100;background:#f7f5ef;border-bottom:1px solid #e5e8e0}
.vet-header-inner{max-width:1600px;margin:0 auto;padding:12px clamp(18px,3.5vw,60px);min-height:88px;display:flex;align-items:center;gap:clamp(18px,3vw,52px)}
.vet-brand{display:flex;align-items:center;gap:13px;text-decoration:none!important;color:#173e35!important;flex-shrink:0}
.vet-brand-mark{display:grid;place-items:center;width:47px;height:47px;border:1.5px solid #b79b6a;border-radius:50%;font-family:Georgia,serif;font-size:30px;color:#173e35}
.vet-brand-name{font-size:17px;font-weight:500;letter-spacing:.09em;white-space:nowrap;line-height:1.15}
.vet-brand-name strong{font-weight:800}
.vet-brand-name small{display:block;font-size:10px;font-weight:400;letter-spacing:.06em;color:#64776b;margin-top:5px}
.vet-main-nav{display:flex;align-items:center;gap:clamp(12px,1.7vw,28px);margin-left:auto}
.vet-main-nav a{color:#173e35!important;text-decoration:none!important;font-weight:600;font-size:14px;white-space:nowrap}
.vet-main-nav a:hover,.vet-main-nav a:focus-visible{color:#947243!important}
.vet-header-actions{display:flex;align-items:center;gap:16px}
.vet-phone{font-weight:700;white-space:nowrap;color:#173e35!important;text-decoration:none!important;font-size:14px}
.vet-header-cta{background:#173e35;color:#fff!important;text-decoration:none!important;white-space:nowrap;padding:13px 18px;font-size:13px;font-weight:700;border:1px solid #173e35}
.vet-header-cta:hover,.vet-header-cta:focus-visible{background:#275d4d;color:#fff!important}
.vet-mobile-nav{display:none;position:relative;margin-left:auto}
.vet-mobile-nav summary{list-style:none;cursor:pointer;color:#173e35;font-weight:700;padding:10px}
.vet-mobile-nav summary::-webkit-details-marker{display:none}
.vet-mobile-nav nav{position:absolute;top:100%;right:0;min-width:235px;background:#fff;box-shadow:0 12px 28px rgba(0,0,0,.15);border:1px solid #dce4dc;display:flex;flex-direction:column;padding:8px;z-index:110}
.vet-mobile-nav nav a{display:block;padding:12px 14px;color:#173e35!important;text-decoration:none!important}
.vet-mobile-nav nav a:hover{background:#edf3ef}
#footer.footer-inverse{background:#173e35;color:#fff}
.vet-footer-inner{max-width:1600px;margin:0 auto;padding:50px clamp(20px,5vw,80px);display:grid;grid-template-columns:2fr 1fr 1.5fr;gap:35px;line-height:1.7}
.vet-footer-inner strong{letter-spacing:.08em}
.vet-footer-inner p{color:#d8e5dc;margin-top:12px}
.vet-footer-inner nav{display:flex;flex-direction:column;gap:7px}
.vet-footer-inner a{color:#f4e9d6!important;text-decoration:none!important}
.vet-footer-inner a:hover{text-decoration:underline!important}
@media(max-width:1250px){.vet-main-nav,.vet-header-cta{display:none}.vet-mobile-nav{display:block}.vet-header-actions{margin-left:auto}}
@media(max-width:650px){.vet-header-inner{min-height:74px;padding:10px 15px;gap:8px}.vet-brand-mark{width:37px;height:37px;font-size:25px}.vet-brand-name{font-size:13px}.vet-brand-name small{font-size:8px}.vet-phone{display:none}.vet-footer-inner{grid-template-columns:1fr;gap:15px;padding:38px 24px}}


/* 1.3.0: Smartstore native LanguageSelector im Footer */
.vet-footer-languages{border-top:1px solid rgba(255,255,255,.18);background:#12352c}
.vet-footer-languages-inner{max-width:1600px;margin:0 auto;padding:18px clamp(20px,5vw,80px);display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.vet-language-caption{font-size:13px;font-weight:600;letter-spacing:.04em;color:#e7eadf}
.vet-footer-languages .language-selector{display:inline-block;position:relative}
.vet-footer-languages .language-selector>.menubar-link{display:inline-flex;align-items:center;gap:10px;padding:9px 14px;border:1px solid rgba(255,255,255,.45);border-radius:4px;color:#fff!important;background:transparent;text-decoration:none}
.vet-footer-languages .language-selector>.menubar-link:hover,.vet-footer-languages .language-selector>.menubar-link:focus{background:#275d4d}
.vet-footer-languages .language-selector .dropdown-menu{min-width:245px;max-height:min(70vh,500px);overflow-y:auto;background:#fff;border:1px solid #dce4dc;box-shadow:0 12px 28px rgba(0,0,0,.2)}
.vet-footer-languages .language-selector .dropdown-item{display:flex;align-items:center;gap:5px;color:#173e35!important;white-space:normal}
.vet-footer-languages .language-selector .dropdown-item:hover{background:#edf3ef}
.vet-footer-languages .language-selector .dropdown-item.disabled{font-weight:700;background:#f7f5ef;opacity:1}
.vet-footer-languages .language-selector .dropdown-item .abbreviation{margin-left:auto;color:#66776e}
.vet-footer-languages .language-selector .dropdown-item img{width:20px;height:auto}

/* 1.4.0: topic-based navigation; existing homepage visual design retained. */
.vet-topic img{max-width:100%;height:auto}
.vet-topic-hours{margin-top:2rem}
.vet-topic-hours h2{color:#173e35}

.vet-topic-more{display:inline-block;margin-top:1rem;color:#173e35;font-weight:700;text-decoration:underline;text-decoration-color:#b79b6a;text-underline-offset:4px}

/* 1.8.0: austauschbare Bilddateien unter Content/images.
   Bei gleichem Dateinamen per FTP ersetzen, danach Cache leeren. */
.vet-hero-image{
  background:#173e35 url('images/hero-vetklinik.svg') center/cover no-repeat;
}
.vet-service-media.vet-dog{
  background:#45685b url('images/service-small-animals.svg') center/cover no-repeat;
}
.vet-service-media.vet-horse{
  background:#45685b url('images/service-horses.svg') center/cover no-repeat;
}
.vet-service-media.vet-cow{
  background:#45685b url('images/service-farm-animals.svg') center/cover no-repeat;
}
/* Auch bei aktivem Smartstore-ContentSlider bleibt ein Bild als Hintergrund. */
.vet-native-slider{
  background:#173e35 url('images/hero-vetklinik.svg') center/cover no-repeat;
}

/* 2.0.2: compact multilingual contact opening hours */
.vet-contact-hours{display:flex;flex-direction:column;gap:.22rem;line-height:1.45;max-width:26rem}
.vet-contact-hours strong{font-weight:700}
.vet-contact-hours small{font-size:.88em;opacity:.95}

/* Practice address from WordPress content export */
.vet-footer-address { margin-top: .6rem; }

/* 2.0.4: Standort im Footer */
.vet-footer-practice .vet-footer-address{display:inline-block;margin-top:.35rem;font-weight:600}
.vet-footer-distance{margin-top:.65rem;display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;font-size:.88rem}
#vet-distance-check{color:#f4e9d6;background:transparent;border:1px solid rgba(244,233,214,.65);border-radius:4px;padding:.35rem .65rem;cursor:pointer}
#vet-distance-check:disabled{opacity:.6}
