/*  
    Styles for phone ≤ 767px
    Author:   Martin Stettler (http://dieweberei.ch/)
    Version:  12/11/2018 // BS V4.1.3
*/

/* ==========================================================================
   Browse Happy prompt lte IE 9
   ========================================================================== */

.browsehappy {
    margin: 3px 0;
    background: #CC0033;
    color: #FFF;
    padding: 8px; }

.browsehappy a {
    color: #FFF;
    text-decoration: underline; }

.browsehappy a:hover {
    text-decoration: none; }

/* ==========================================================================
   DEV STYLES
   ========================================================================== */
h3.card-header {
    border: 1px dashed #f227f9; }

/* ==========================================================================
   BASE STYLES
   ========================================================================== */

/* Bootstrap CSS Overrides */
html {
    font-family: sans-serif;
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -ms-overflow-style: scrollbar;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

body {
    margin: 0;
    font-family: 'Lato', Arial, sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
    color: #000;
    text-align: left;
    background-color: #FFF; }

h1, h2, h3, h4, h5, h6 {
    margin: 0; }

h1, 
h2,
h3 {
    font-size: 28px;
    font-size: calc(28px + (36 - 28) * (100vw - 320px)/(1440 - 320));
    line-height: 1.27;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding-bottom: 10px;
    border-bottom: 1px solid #000;
    margin-bottom: 25px; }

h3 {
    padding-bottom: 0;
    margin-bottom: 10px !important; }

.layout-dark h2 {
    color: #8b8a76;
    border-color: #d1d0c1; }

h3 {
    font-size: 21px;
    font-weight: 700;
    color: #8b8a76 !important;
    border-bottom: 0; }

.form h2,
.form h3 {
    text-align: left;
    border-bottom: 0; }

h4 {
    margin-bottom: 10px !important; }

p {
    margin-top: 0;
    margin-bottom: 25px; }

p:last-child {
    margin-bottom: 0; }

.main ul {
    margin: 0 0 25px 0;
    padding: 0; }

.main li {
    list-style: none;
    padding-left: 20px;
    font-size: 21px;
    text-transform: uppercase; }

.main li:before {
    position: relative;
    top: 0;
    left: -20px;
    height: 0;
    display: block;
    content: "–";
    color: #000; }

.layout-dark li {
   color: #d1d0c1; }

.layout-dark li:before {
    position: relative;
    top: 0;
    left: -20px;
    height: 0;
    display: block;
    content: "–";
    color: #d1d0c1; }

b,
strong {
    font-weight: 700;
    text-transform: uppercase; }

a,
a:hover,
.navbar,
.navbar-brand span,
.nav-link,
.nav-link:hover {
    -webkit-transition: all 0.5s;
        transition: all 0.5s;
        color: #000;
        text-decoration: none; }

.layout-dark a {
    color: #FFF; }

a:focus,
button:focus {
    outline: none; }

.layout-dark a,
.main a,
.email a:hover {
    border-bottom: 1px solid #000; }

.email a,
.main a:hover {
    border-bottom: 1px solid #FFF; }

.layout-dark a:hover {
    color: #d1d0c1;
    border-bottom: 1px solid #000; }

.card-header a {
    border: 0 !important; }

.main a[href$=".pdf"],
.main a[href$=".doc"] {
    border-bottom: 0; }

.main a[href$=".pdf"]:before,
.main a[href$=".doc"]:before {
    content: "";
    display: inline-block;
    width: 21px;
    height: 24px;
    background-image: url(../img/file-icon.svg);
    background-color: transparent;
    color: #000;
    position: relative;
    top: 1px;
    margin: 0px 10px 0 0;
    border-bottom: 0; }

/* ==========================================================================
   HEADER
   ========================================================================== */

header {
    position: relative;
    margin-bottom: 35px; }

header img  {
    width: 100%;
    height: auto; }

.title-container {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 3vw; }

.title {
    font-weight: 700;
    font-size: 16px;
    font-size: calc( 16px + (48 - 16) * (100vw - 320px)/(1440 - 320));
    color: #FFF;
    line-height: 1.05;
    text-shadow: 2px 2px 4px #000;
    text-transform: uppercase;
    letter-spacing: 1px;  }

.title span {
    font-size: 21px;
    font-size: calc( 21px + (74 - 21) * (100vw - 320px)/(1440 - 320));
    display: block;
    font-weight: 900;
    color: #ffea00; }

.header-internal {
    margin-top: 170px;
}

/* ==========================================================================
   NAVIGATION
   ========================================================================== */

/* Offcanvas menu
-------------------------------------------------- */
html,
body {
    overflow-x: hidden; } /* Prevent scroll on narrow devices */

.navbar {
    height: 50px;
    padding-top: 8px; }

@media (max-width: 1199.98px) {
    .offcanvas-collapse {
        position: fixed;
        top: 0;
        bottom: 0;
        right: 100%; /* left for collapse-left */
        right: -280px; /* left for collapse-left */
        width: 280px;
        padding-right: 10px;
        padding-left: 10px;
        overflow-y: auto;
        visibility: hidden;
        background-color: #d1d0c1;
        transition-timing-function: ease-in-out;
        transition-duration: .3s;
        transition-property: right, visibility; } /* left for collapse-left */

    .offcanvas-collapse.open {
        right: 0; /* left for collapse-left */
        visibility: visible; }

    .navbar-nav {
        margin-top: 60px; }
}

/* Hamburger
-------------------------------------------------- */
/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
    z-index: 1080;
    padding: 0; /* 15px 15px */
    display: inline-block;
    cursor: pointer;
    transition-property: opacity, filter;
    transition-duration: 0.15s;
    transition-timing-function: linear;
    font: inherit;
    color: inherit;
    text-transform: none;
    background-color: transparent;
    border: 0;
    margin: 0;
    overflow: visible; }

.hamburger-box {
    width: 40px;
    height: 24px;
    display: inline-block;
    position: relative; }

.hamburger-inner {
    display: block;
    top: 50%;
    margin-top: 1px; } /* -2px */

.hamburger-inner, 
.hamburger-inner::before, 
.hamburger-inner::after {
    width: 40px;
    height: 4px;
    background-color: #ffea00;
    /* border-radius: 4px; */
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease; }

.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
    background-color: #000; }
  
.hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; }

.hamburger-inner::before {
    top: -10px; }

.hamburger-inner::after {
    bottom: -10px; }

/* Spin */
.hamburger--spin .hamburger-inner {
    transition-duration: 0.22s;
    transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spin .hamburger-inner::before {
    transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; }

.hamburger--spin .hamburger-inner::after {
    transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spin.is-active .hamburger-inner {
    transform: rotate(225deg);
    transition-delay: 0.12s;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }

.hamburger--spin.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; }
  
.hamburger--spin.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg);
    transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

/* Bootstrap CSS Overrides */
a.navbar-brand {
    position: absolute;
    margin-left: 8px;
    margin-top: 10px;
    padding: 0;
    font-size: 20px;
    line-height: inherit;
    white-space: nowrap;
    text-indent: -9999px;
    z-index: 100; }

.navbar-brand span {   
    display: block;
    width: 110px;
    height: 127px;
    background-image: url(../img/berner-hunde-security.svg);
    background-size: 100% 100%; 
    background-repeat: no-repeat; }

@media (max-width: 320px) {
    .navbar-brand span {
        width: 90px;
        height: 104px; }
}

/* Workaround for Edge to prevent flickering svg when scaling */
@supports (-ms-ime-align: auto) {
    .navbar-brand span {
        background-image: url(../img/berner-hunde-security.png); }
}
/*
.navbar-brand.shrink span {
    -ms-transform: translateY(-165px);
        transform: translateY(-165px);
        height: 0; }*/

.navbar-light .navbar-brand {
    color: rgba(0, 0, 0, 0.9); }

.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {
    color: rgba(0, 0, 0, 0.9); }

.nav-link {
  display: block;
  font-weight: 700;
  font-size: 15px;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 0 !important;
  margin: 5px 12px;
  text-align: left;
  border-bottom: 1px solid transparent; }

.navbar-light .navbar-nav .nav-link {
    color: #000; }

.navbar-light .navbar-nav .nav-link:hover, 
.navbar-light .navbar-nav .nav-link:focus {
    color: #000;
    border-bottom: 1px solid #000; }

.navbar-light .navbar-nav .nav-link.disabled {
    color: #000; }

.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .nav-link.active {
    color: #000;
    border-bottom: 1px solid #000; }

.navbar-light .navbar-toggler {
    color: rgba(0, 0, 0, 0.5);
    border-color: rgba(0, 0, 0, 0.1); }

.bg-light {
    background-color: transparent !important; }

a.bg-light:hover, a.bg-light:focus,
button.bg-light:hover,
button.bg-light:focus {
    background-color: #dae0e5 !important; } 

.navbar-nav .nav-link {
    padding-right: 0;
    padding-left: 0; }

@media (min-width: 576px) {
    .navbar-expand-sm .navbar-nav .nav-link {
        padding-right: 8px;
        padding-left: 8px; }
}

.member {
   position: relative;
   margin-right: 48px; }

.member a:after {
    position:absolute;
    right: -48px;
    top: -3px;
    content: " ";
    display: inline-block;
    width: 40px;
    height: 40px;
    background-image: url(../img/bhs-login.svg);
    background-size: 100% 100%; 
    background-repeat: no-repeat; }

.member a:hover:after {
    background-image: url(../img/bhs-login2.svg); }

/* ==========================================================================
   MAIN CONTENT
   ========================================================================== */

.layout-bright,
.layout-dark,
.layout-collapse .layout-bright:last-child { 
    margin-bottom: 100px; }

#lead.layout-bright { 
    margin-bottom: 50px; }

.layout-collapse .layout-bright {
    margin-bottom: 20px; }

.layout-dark {
    background: #000;
    color: #FFF; }

.layout-dark .article-small {
    padding-top: 35px; }

.layout-bright .image-small,
.layout-dark .image-small {
    padding-left: 0;
    padding-right: 0; }

@media (max-width: 767px) {
    .article-small {
        order: 0;
        padding-bottom: 50px; }

    .image-small {
        order: 1; }
}

.article:last-child {
    margin-bottom: 0; }

/* Collapsing article 
    (https://disjfa.github.io/bootstrap-tricks/card-collapse-tricks/) 
*/

/* Bootstrap CSS Overrides */
/*.article-collapse:before {
    position: absolute;
    top: 15px;
    content: "–";
    color: #93ac2d; }
*/
.card {
    background-color: transparent;
    border: 0;
    border-radius: 0; }

/* Bootstrap CSS Overrides */
h4.card-header {
    border-bottom: 1px solid #000; }

i.open {
    font-size: 21px;
    color: #000 !important;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 700;
    padding: 2px 0;
    margin-top: 15px;
    text-decoration: none;
    font-style: normal; }

i.open:after {
    content: url(../img/collapse-arrow-2.svg);
    display: inline-block;
    width: 15px;
    height: 16px;
    float: right; }

.card-header,
.card-body {
    padding: 0;
    border: 0;
    background-color: transparent; }

.card-header .collapsed .open:after {
    content: url(../img/collapse-arrow-1.svg); }

.card-body {
    padding-top: 0;
    padding-bottom: 0; }

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    i.close:after { 
        background: none; }
}

#return-to-top {
    position: fixed;
    bottom: 90px;
    right: 15px;
    display: block;
    display: none;
    width: 20px;
    height: 20px;
    opacity: 1;
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDIzLjAuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAxNC45IDI2LjIiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDE0LjkgMjYuMjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsOiMxQTE3MUI7fQo8L3N0eWxlPgo8cG9seWdvbiBjbGFzcz0ic3QwIiBwb2ludHM9IjcuNSwwIDcuNSwwIDcuNCwwIDAsNy40IDEuOCw5LjIgNi4yLDQuOCA2LjIsMjYuMiA4LjcsMjYuMiA4LjcsNC44IDEzLjEsOS4yIDE0LjksNy40ICIvPgo8L3N2Zz4K");
    background-repeat: no-repeat;
    -webkit-transition: all 0.3s linear;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease; }

#return-to-top:hover {
    opacity: 0.8; }

/* Multi-template version (not block-tag): http://forum.grabaperch.com/forum/11-18-2015-bootstrap-carousel-template-for-perch */
#carousel a {
    border: none !important; }

.carousel {
    position: relative; }

.carousel-inner img {
    width: 100%;
    height: auto;
    border-left: 30px solid #000;
    border-right: 30px solid #000; }

/* Shadows */
.carousel-control.left,
.carousel-control.right {
    background-image: none;
    background: none;
    -webkit-transition: all 0.45s;
        -moz-transition: all 0.45s;
        -ms-transition: all 0.45s;
        -o-transition: all 0.45s;
        transition: all 0.45s; } 

/* Controls */
.carousel-control .icon-prev,
.carousel-control .icon-next {
    position: absolute;
    top: calc(50% - 56px); }

.carousel-control .icon-prev {
    left: -10px;
    width: 52px;
    height: 52px;
    margin: 0; }

.carousel-control .icon-next {
    right: -10px;
    width: 52px;
    height: 52px;
    margin: 0; }

.carousel-control .icon-prev:before {
    content: '';
    display: inline-block;
    width: 52px;
    height: 52px;
    background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%2223%22%20height%3D%2243%22%20viewBox%3D%220%200%2023%2043%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M22%2041l-20-20%2020-20%22%20stroke-width%3D%223%22%20stroke%3D%22%23fff%22%20fill%3D%22none%22%2F%3E%3C%2Fsvg%3E");
    background-repeat: no-repeat;
    background-size: 14px 25px;
    background-position: 16px 13px;
    text-indent: -9999px; }

.carousel-control .icon-next:before {
    content: '';
    display: inline-block;
    width: 52px;
    height: 52px;
    background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%2223%22%20height%3D%2243%22%20viewBox%3D%220%200%2023%2043%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M1%2041l20-20-20-20%22%20stroke-width%3D%223%22%20stroke%3D%22%23fff%22%20fill%3D%22none%22%2F%3E%3C%2Fsvg%3E");
    background-repeat: no-repeat;
    background-size: 14px 25px;
    background-position: 20px 13px;
    text-indent: -9999px; }

/* Fading */
.carousel-fade .carousel-inner .item {
  transition-property: opacity; }

.carousel-fade .carousel-inner .item,
.carousel-fade .carousel-inner .active.left,
.carousel-fade .carousel-inner .active.right {
  opacity: 0; }

.carousel-fade .carousel-inner .active,
.carousel-fade .carousel-inner .next.left,
.carousel-fade .carousel-inner .prev.right {
  opacity: 1; }

.carousel-fade .carousel-inner .next,
.carousel-fade .carousel-inner .prev,
.carousel-fade .carousel-inner .active.left,
.carousel-fade .carousel-inner .active.right {
  left: 0;
  transform: translate3d(0, 0, 0); }

.carousel-fade .carousel-control {
  z-index: 2; }

/* Caption */
.carousel-caption {
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    top: auto;
    width: 80%;
    padding: 25px 0 0 0;
    font-size: 16px;
    font-weight: 700;
    color: #000;
    text-align: left;
    text-shadow: none; }

.carousel-caption p {
    display: none; }

.num {
    margin-top: -25px;
    font-size: 16px;
    font-weight: 700;
    text-align: right; }

/* Indicators */
.carousel-indicators {
    display: none; }

/* Videos */
figure {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden; }

figure iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

/* ==========================================================================
   FORM
   ========================================================================== */

.form {
    border: 1px solid #000;
    padding: 30px 30px 0 30px; }

.help-block {
    margin: 0; }

.form-group {
  margin-bottom: 10px; }

#contact-form .form-group input,
#contact-form .form-group textarea {
    font-size: 16px;
    padding: 0;
    background-color: #FFF;
    font-weight: 700;
    border: 0;
    border-radius: 0;
    color: #000;
    box-shadow: 0;
    border-bottom: 1px solid #000; }

label {
    font-family:"Lato", Arial, sans-serif;
    font-weight: 700;
    font-size: 16px;
    padding: 0;
    margin-bottom: 0;
    text-align: left; }

.honeypot {
    display: none; }

#contact-form .list-unstyled li {   /* check default list-style on line 164 */
    padding-left: 0;
    background-color: transparent !important; }

#contact-form .list-unstyled li:before {
    content: ''; }

#success {
    font-family: 'Lato', Arial, sans-serif !important;
    font-weight: normal;
    color: #FFF;
    border: 0;
    border-radius: 0; }

.alert-success,
.alert-danger {
    border-radius: 0; }

.has-error input,
.has-error textarea {
    border-bottom: 1px solid #a3001a !important;
    margin-bottom: 5px; }

/* Error message */
#contact li {
    font-size: 16px;
    text-transform: none;
    color: #a3001a; }

p.has-error,
p.error {
    font-size: 16px;
    color: #a3001a;
    margin-top: 20px; }

.btn,
input.btn,
#logout li a {
    border-color: #000 !important;
    background-color: #000 !important;
    color: #FFF !important;
    border-radius: 0 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    font-weight: 900 !important;
    padding: 3px 20px !important;
    cursor: pointer !important;
    margin-top: 30px !important;
    padding-bottom: 30px;
    -webkit-transition: background linear 350ms !important; }

.btn:hover,
.btn:focus,
.btn:active,
.btn.active,
.open .dropdown-toggle.btn,
input.btn:hover,
#logout li a:hover {
    border-color: #000 !important;
    background-color: #000 !important;
    color: #d1d0c1 !important;
    -webkit-transition: background linear 350ms !important; }

#logout li {
    list-style: none;
    padding: 0; }

#logout li:before {
    left: 0;
    content: ""; }

/* ==========================================================================
   FOOTER
   ========================================================================== */

.bhs-dog span {
    display: block;
    width: 182px;
    height: 137px;
    background-image: url(../img/bhs-dog.svg);
    background-size: 100% 100%; 
    background-repeat: no-repeat; }

@media (max-width: 767px) {
    .bhs-dog {
        order: 1; } 

    .vcard {
        order: 0; }  

    .imprint {
        order: 2; }
}

.vcard {
    text-align: center;
    padding-bottom: 30px; }

.vcard div {
    display: block;
    margin: 0 auto;
    margin-bottom: 15px;
    width: 110px;
    height: 127px;
    background-image: url(../img/berner-hunde-security.svg);
    background-size: 100% 100%; 
    background-repeat: no-repeat; }

.org {
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 1px; }

.org,
.address,
.email {
    display: block; }

.tel a:hover {
    cursor: pointer; }

.imprint {
    background: #000;
    text-align: center;
    padding: 15px 0; }

.imprint a {
    color: #FFF;
    text-transform: uppercase; }

.imprint a:hover {
    color: #d1d0c1; }

.imprint a:after {
    content: '|';
    margin: 0 10px;
    color: #FFF; }

.imprint a:last-child:after {
    content: '';
    margin: 0; }

@media (max-width: 480px) {
    .imprint {
        font-size: 15px; }
}

/* ==========================================================================
   SELECTION
   ========================================================================== */

::-moz-selection {
    text-shadow: none;
    background: #333;
    color: #FFF; }

::selection {
    text-shadow: none;
    background: #333;
    color: #FFF; }

img::selection {
    background: 0 0; }

img::-moz-selection {
    background: 0 0; }

body {
    webkit-tap-highlight-color: #333; }

a[href^="tel"], 
a[href^="sms"]{
    color: inherit; 
    cursor: default; 
    text-decoration: none; }