.pricetable {
    display: flex;
    align-items: stretch;
    position: relative;
    flex-wrap: wrap;
    margin-top: 10px;
}
.pricetable .pt-table,
.pricetable .pt-details {
    width: 100%;

}

@media screen and (min-width: 1024px) {
    .pricetable .pt-table {
        width: 75%;
    }
    .pricetable .pt-details {
        width: 25%;



    }
}

.pricetable .pt-input {
    position: relative;
}
.pricetable .pt-input .material-icons {
    position: absolute;
    top: 1rem;
    left: 1rem;
    z-index: 1;
    font-size: 18px;
    color: #1779ba;
}
.pricetable .pt-input input {
    box-shadow: none;
    cursor: pointer;
    border: 1px solid #e0e0e0;
    color: rgba(11, 18, 91, 0.7);
    font-weight: 600;
    padding: 1.5rem 2.75rem;
}
.pricetable .pt-input:after {
    content: "";
    display: block;
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 18px;
    height: 18px;
    background: center center / 18px 18px no-repeat url("data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHZpZXdCb3g9IjAgMCAxOCAxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNSA4bDQgLTVsNCA1em0wIDJsOCAwbC00IDV6IiBmaWxsPSIjNjY2Ii8+PC9zdmc+");
}

/*
<svg version="1.1" viewBox="0 0 18 18" xmlns="http://www.w3.org/2000/svg"><path d="M5 8l4 -4l4 4zm0 3l8 0l-4 4z" fill="rgba(11, 18, 91, 0.7)"/></svg>
*/

.pricetable table {
    margin: 0 !important;
  
}

.pricetable table,
.pricetable tbody,
.pricetable tfoot,
.pricetable tr,
.pricetable th {
    border: none;
    background: none;
}
.pricetable .pt-table {
    box-sizing: border-box;
    background: rgba(0, 0, 0, 0.02);
    /* border-left:1px solid  #ebebeb; */
}
.pricetable thead {
    text-transform: none;
    border-top:1px solid  #ebebeb;
    border-left:1px solid  #ebebeb;
    background: transparent;
    border-radius: 20px 0 0 0 ;


}
.pricetable th {
    vertical-align: middle;
    font-size: 13px;
}

.pricetable th.pt-nav {
    padding: .3rem 0 .5rem 0;
}

.pricetable th,
.pricetable td {
    text-align: center;
}

.pricetable td {
    background-color: white;
    border: 1px solid #ebebeb;
    color: #ccc;
    height: 50px;
}
.pricetable td.pt-lbl,
.pricetable td.pt-spc {
    background-color: #fafafa;
}
.pricetable th,
.pricetable td.pt-lbl {
    font-weight: 700;
    
    color: rgba(11, 18, 91, 0.7);
    font-size: 12px;
}
.pricetable th a[href] {
    color: inherit;
}
.pricetable td.pt-spc {
    width: 24px;
}

.pricetable td .pt-price,
.pricetable td .pt-price-from {
    display: inline-block;
}
.pricetable .pt-price {
    font-family: 'puffin-display';
    color: #0d1d5b;
    font-size: 14px;
    font-weight: bold;
}
.pricetable .pt-price {
    background:
    linear-gradient(to right, rgba(242, 146, 59, 0.4), rgba(242, 146, 59, 0.4)),
    linear-gradient(to right, #F2923B, #F2923B, #F2923B);
    background-size: 100% 0.096em, 0 0.096em;
    background-position: 100% 95%, 0 95%;
    background-repeat: no-repeat;
    transition: background-size 300ms, color 300ms ;
  }
  
  .pricetable .pt-price:hover{
    background-size: 0 0.1em, 100% 0.1em;
  }

.pricetable .pt-price-discount {
    color: #F2923B;
}
.pricetable .pt-price-from {
    font-size: .85em;
    color: rgba(11, 18, 91, 0.2);
    text-decoration: line-through;
}
.pricetable .pt-price-date {
    display: block;
    font-size: .85em;
    font-weight: 700;
    color: rgba(11, 18, 91, 0.4);
}
.pricetable td.pt-selectable:hover {
    background-color: #fafafa;
    cursor: pointer;
}
.pricetable td.pt-selected {
    border: 2px solid #F2923B;
}

.pricetable .pt-details {

    display: flex;
        align-items: flex-end;
        flex-direction: column;
        text-align: right;
        padding-left: 1rem;
        justify-content: center;
        padding: 20px 30px;
        background: rgba(0, 0, 0, 0.02);
        border: 1px solid rgba(0, 0, 0, 0.06);
        
        border-top: 0;
        border-radius: 0 0px 0px 0;

}
.pricetable .pt-details .headline {
    font-family: 'puffin-display';
    font-size: 1.25em;
    font-weight: bold;
    margin-bottom: 0;
    color: #0d1d5b;
    

}
.pricetable .pt-details .info {
    color: rgba(11, 18, 91, 0.7);
    margin-bottom: 0;
    line-height: 1.25;
    /* width: 66.66667%; */
}
.pricetable .pt-details .prices {
    text-align: right;
    color: rgba(11, 18, 91, 0.7);
    margin: 10px 0;
    line-height: 1.25;
    /* width: 33.33333%; */
}
.pricetable .pt-details .button {
    width: auto;
    white-space: nowrap;
    background-color: #F2923B;
    color: #ffffff !important;
}
.pricetable .pt-details .button:hover {
    background-color: #e1852e;
}
.pricetable .pt-details .pt-price {
    font-size: 18px;
}


.pricetable .pt-details.fixed {
    position: fixed;
    bottom: 20px;
    
    right: 20px;
    box-sizing: border-box;
    display: none;
    align-items: center;
    justify-content: space-between;
    
    padding: 10px 10px;
    z-index: 9999 !important;
    background: #fff;
    border:0;
    border-radius: 10px;
    box-shadow: 0px 5px 22px 0px rgba(0,0,0,0.2);
    transform: translate3d(0,0,0);

}
.pricetable .pt-details:not(.fixed) {
    /* display: none; */
}
.pricetable .pt-details.fixed .prices {
    display: none;
    /* width: 33.33333%; */
}
.pricetable .pt-details.fixed .info {
    font-size: 14px;
}

@media screen and (min-width: 1024px) {

.pricetable .pt-details.fixed {
 
    position: fixed;
    bottom: 20px;
    right: 20px;
    box-sizing: border-box;
    /* display: flex; */
    display: none;
    align-items: center;
    justify-content: space-between;
    flex-direction: column;
    padding: 20px 20px;
    z-index: 9999 !important;
    background: #fff;
    border:0;
    border-top: 0px solid #eee;
    box-shadow: 0px 5px 22px 0px rgba(0,0,0,0.2);
    transform: translate3d(0,0,0);

}
    .pricetable .pt-details:not(.fixed) {
        box-sizing: border-box;
        display: flex;
        align-items: flex-end;
        flex-direction: column;
        text-align: right;
        padding-left: 1rem;
        justify-content: center;
        padding: 20px 30px;
        background: rgba(0, 0, 0, 0.02);
        border: 1px solid rgba(0, 0, 0, 0.06);
        border-left:0;
        border-radius: 0 20px 20px 0;
    }

    .pricetable .pt-details .headline,
    .pricetable .pt-details .info,
    .pricetable .pt-details .prices {
        width: 100%;
        margin-bottom: 1rem;

    }
    .pricetable .pt-details.fixed .headline,
    .pricetable .pt-details.fixed .info,
    .pricetable .pt-details.fixed .prices {
        padding: 0 20px;
        margin-bottom: 0;
    }

    .pricetable .pt-details .headline {
        display: block;
    }
    .pricetable .pt-details .button {
        width: auto;
    }
    .pricetable .pt-details .button i {
        margin-right: 0;
    }
    .pricetable .pt-price {
        font-size: 18px;
    }
    .pricetable .pt-details.fixed .prices {
        display: block;
        /* width: 33.33333%; */
    }
    .pricetable .pt-details.fixed .info {
        font-size: 16px;
    }
    .pricetable td {
        background-color: white;
        border: 1px solid #ebebeb;
        color: #ccc;
        height: 70px;
    }
    .pricetable th,
    .pricetable td.pt-lbl {
        font-weight: 700;
        color: rgba(11, 18, 91, 0.7);
        font-size: 14px;
    }

}
.pricetable .pt-details.fixed:empty {
    display: none;
}

.pricetable .pt-preloader {
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    background-color: rgba(246, 246, 248, 0.9);
    opacity: 0;
    transition: opacity .2s;
    pointer-events: none;
}
.pricetable .pt-preloader:before,
.pricetable .pt-preloader:after {
    content: "";
    display: block;
    width: 32px;
    height: 32px;
    position: absolute;
    top: calc(50% - 16px);
    left: calc(50% - 16px);
    border-radius: 50%;
    border: 2px solid transparent;
}
.pricetable .pt-preloader:before {
    border-color: rgba(0, 0, 0, 0.05);
}
@keyframes pt-spinner {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}
.pricetable .pt-preloader:after {
    border-top-color: #F2923B;
}
.pricetable.loading .pt-preloader {
    opacity: 1;
}
.pricetable.loading .pt-preloader:after {
    animation: pt-spinner 1s linear infinite;
}

.pricetable .pt-foot {
    display: flex;
    justify-content: space-between;
    padding: 10px 0;
}
.pricetable .pt-foot a[href] {
    color: #F2923B;
}
.pricetable .pt-foot i.fas {
    font-size: 0.85em;
}
@media screen and (min-width: 768px) {
    .pricetable tfoot {
        display: none;
    }
}
