/*  Author:   Martin Stettler (http://dieweberei.ch/)
    Version:  22/04/2019 // BS v4.2.1
*/

/* ==========================================================================
   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
   ========================================================================== */
/*.row, nav {
    border: 1px dashed #f227f9; }

.col-md-4, .col-md-6{
    border: 1px dashed orange }

.navbar-brand,
.navbar-nav {
    border: 1px solid #f227f9; }


.dropdown {
    border: 1px solid green;
 }*/

/* ==========================================================================
   BASE STYLES
   ========================================================================== */
 @font-face{
            font-family:"Minion W01 Regular";
            src:url("../fonts/18597b82-9a06-46a3-b68b-c250c1105515.woff2") format("woff2"),
            url("../fonts/62100580-a2d1-4d98-bb14-d4c4c3f1a5ba.woff") format("woff"),
            url("../fonts/7ae8e168-1c29-4fcb-bb59-0043c943df3b.ttf") format("truetype");
    }

@font-face{
        font-family:"Minion W01 SmBd";
        src:url("../fonts/526fcf4d-1490-47a5-bb91-6c046f776e22.woff2") format("woff2"),
        url("../fonts/684d90d7-12e2-46fc-8776-cfa0c9bffeff.woff") format("woff"),
        url("../fonts/a6dc410d-45b6-4a66-8143-43f59c362a8b.ttf") format("truetype");
    }

 /*
This CSS resource incorporates links to font software which is the valuable copyrighted
property of Monotype Imaging and/or its suppliers. You may not attempt to copy, install,
redistribute, convert, modify or reverse engineer this font software. Please contact Monotype
Imaging with any questions regarding Web Fonts:  http://www.fonts.com
*/
    
/* 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:"Minion W01 Regular", Georgia, serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #58595b;
    text-align: left;
    background-color: #fff; }

h1, h2, h3, h4, h5, h6 {
    margin-top: 0;
    margin-bottom: 18px; 
    font-size: 22px;
    font-size: calc(22px +  (28 - 22) * (100vw - 320px)/(1280 - 320));
    font-family:"Minion W01 SmBd", Georgia, serif;
    font-weight: normal;}

.title-container h1{
    font-size: 30px;
    font-size: calc(30px +  (60 - 30) * (100vw - 320px)/(1280 - 320));
    text-shadow: 0px 3px 2px rgba(0, 0, 0, 0.4);
}

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

header h1,
.bg-grey p,
.bg-grey h1,
.bg-grey h2,
.bg-grey h3,
.bg-grey h4{
    color: #FFF;
}

ul {
    margin-top: 0;
    margin-bottom: 16px; }

b,
strong {
    font-family:"Minion W01 SmBd", Georgia, serif;
    font-weight: normal; }

a {
    text-decoration: none;
    color: #FFF;
}

.main a, .footer a{
    padding-bottom: 3px;
    border-bottom: 1px solid #fff;
}

.main a:hover, .footer a, .contact a{
    text-decoration: none;
    color: #fff;
    border-bottom: 1px solid #58595b;
}

.footer a:hover, .contact a:hover {
    text-decoration: none;
    border-bottom: 1px solid #fff;
}

a,
a:hover,
.footer a,
.footer a:hover,
.img-box img,
.img-box:hover img {
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
        transition: all 0.5s; }

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

/* ==========================================================================
   BRAND NAME
   ========================================================================== */

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

header{
    position: relative;}

.navbar-brand{
    display: block;
    background: url(../img/hpt-logo.svg) no-repeat;
    background-size: 100% 100%;
    width: 170px;
    height: 55px;
    text-indent: -9999px;
}

.title-container {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0; }
/* ==========================================================================
   NAVIGATION
   ========================================================================== */

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

body {
    padding-top: 100px; }

.border-btm{
    border-bottom: 2px solid #58595b;
}

@media (max-width: 1199.98px) {
    .offcanvas-collapse {
        position: fixed;
        top: 0;
        bottom: 0;
        right: 100%; /* left for collapse-left */
        right: -315px; /* left for collapse-left */
        width: 315px;
        padding-right: 16px;
        padding-left: 16px;
        overflow-y: auto;
        visibility: hidden;
        background-color: #FFF;
        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: 72px; }
}

/* 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:hover {
    opacity: 0.7; }

.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: #000;
    /* 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 */

.nav-link {
  display: block;
  font-family: "Aleo", "serif";
  font-size: 18px;
  padding: 12px 0; 
  width: 250px;
  border-top: 2px solid #58595b;
  margin-right: 24px;
  margin-left: 16px; }

.navbar-nav li:last-child .nav-link{
    margin-right: 0;
}

.navbar-light .navbar-nav .nav-link {
    color: rgba(0, 0, 0, 0.5);
    text-decoration: none; }

.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
    color: #c75264; }

.navbar-light .navbar-nav .nav-link.disabled {
    color: rgba(0, 0, 0, 0.3); }

.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: #c75264;
    font-weight: bold; }



.bg-light {
    background-color: #fff !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;}

.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    display: none;
    float: left;
    width: 282px;
    margin: 0; /* 2px 0 0 */
    font-size: 14px;
    text-align: left;
    list-style: none;
    background-clip: padding-box;
    border: 0;
    border-radius: 0; 
    background-color: rgba(255,255,255,0.9);}

/* Animate caret */
.dropdown-toggle[aria-expanded="true"]:after {
    transform: rotate(180deg); }

.dropdown-toggle:after {
    transition: 0.25s; }
    
.dropdown-item {
    display: block;
    width: 100%;
    padding: 4px 8px;
    clear: both;
    font-weight: 400;
    color: #58595b;
    text-align: inherit;
    white-space: nowrap;
    background-color: transparent;
    border: 0;
    border-bottom: 1px solid #58595b;
    text-decoration: none; 
    border-radius: 0 !important;
    width: 250px;
    margin-right: 16px;
    margin-left: 16px;
}

.dropdown-menu li:last-child .dropdown-item{
    border-bottom: 0}

.dropdown-item:hover, 
.dropdown-item:focus {
    color: #c75264;
    text-decoration: none;
    background-color: transparent;}

.dropdown-menu li.active a {
    color: #c75264;
    text-decoration: none;
    background-color: transparent;}

.
/* ==========================================================================
   MAIN CONTENT
   ========================================================================== */
.main{
    max-width: 1440px; }

.minus-margin{
    margin-top: 40px;
    margin-bottom: 40px;
}

.bg-grey{
    background-color: #58595b;
    color: #FFF;
}

.black-border{
    border: 1px solid #58595b;
}

.text-box, .img-box, .img-square{
    padding-right: 0;
    padding-left: 0;
}

.content-box:last-child, .hpt-page .content-box{
    margin-bottom: 55px;
}

.text-box {
    padding: 40px;
}

.text-box-large {
    padding: 55px;
}

.img-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%; }

.img-box { 
    overflow: hidden; }

.img-box:hover img { 
    -webkit-transform: scale(1.05);
        transform: scale(1.05); }

.detail-page .img-small,
.detail-page .img-large {
    width: 100%;
    height:auto;
    margin-bottom: 28px; }

.detail-page img {
   margin-bottom: 10px; }

.detail-page .img-small,
.detail-page .img-large{
    padding: 0;
}

.detail-page .text-box-large {
    margin-bottom: 40px;
    padding: 55px;
}

.caption {
  color: #58595b; }

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

#contact {
    position: relative;
    background: #FFF;
    color: #000; }

.help-block {
    margin: 0; }

#contact-form .form-group input,
#contact-form .form-group textarea {
    font-size: 18px;
    padding: 2px 5px; 
    height: auto;
    background-color: #FFF;
    border: 2px solid #58595b;
    border-radius: 0;
    font-weight: normal;
    color: #000;}

label {
    font-family:"Minion W01 Regular", Georgia, serif;
    font-weight: normal;
    font-size: 18px;
    padding-top: 5px;
    padding-left: 0px; }

.form-check-input {
  margin-top: 7px; }

.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:"Minion W01 Regular", Georgia, serif;
    font-weight: normal;
    color: #000;
    border: 0;
    border-radius: 0; }

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

.has-error input,
.has-error textarea {
    border: 2px solid #F00 !important;
    margin-bottom: 10px; }

.has-error .help-block {
  color: #ed2939; }

.btn {
    border-color: transparent;
    background-color: #58595b;
    font-size: 20px;
    padding: 4px 20px;
    color: #FFF;
    font-weight: 400;
    border-radius: 0;
    border: 0;
    -webkit-transition: background linear 300ms; }

.btn:hover,
.btn:focus,
.btn.active {
    border-color: transparent;
    background-color: #c75264;
    color: #FFF;
    -webkit-transition: background linear 300ms; }

.form-group {
    color: #58595b; }

.messages {
    background: #FFF;
    color: #000; }

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

footer {
   background-color: #58595b; }

.footer div{
    position: relative;
    padding:25px 60px 10px 60px;
    font-size: 14px;
}

.arrow-up{
    position: absolute;
    background: url(../img/arrow-up.svg) no-repeat;
    background-size: 100% 100%;
    right: 0;
    top: 25px;
    width: 30px;
    height: 40px;
}

/* ==========================================================================
   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; }