.offer-card{
    flex:auto;
    margin:35px auto;
    max-width:300px;
    min-width:270px;
    position:relative
}

.offer-card-ribbon{
    background-color:#d81e05;
    border-radius:10px;
    height:70px;
    position:absolute;
    text-align:center;
    top:-50px;
    transform:scale(.85);
    width:100%;
    z-index:0
}
.offer-card-icon-circle{
    background:#d81e05;
    border-radius:50%;
    height:60px;
    left:50%;
    position:absolute;
    top:-37px;
    transform:translateX(-50%);
    width:80px;
    z-index:1
}
.offer-card-icon{
    filter:invert(100%);
    left:50%;
    position:absolute;
    top:7px;
    transform:translateX(-50%)
}
.offer-card-body,
.offer-card-footer{
    background:#fff;
    border:1px solid #d6d6d6;
    border-radius:7px;
    box-shadow:1px 6px 10px -1px #e8e8e8;
    padding:0 15px;
    text-align:center;
    z-index:0
}
.offer-card-body{
    border-bottom-color:#fff;
    border-bottom-left-radius:0;
    border-bottom-right-radius:0;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    min-height:270px;
    position:relative
}
.offer-card-body-content{
    padding-top:40px
}
.offer-card-title,
.offer-card-price,
.offer-card-subtitle,
.offer-card-subtitle1,
.offer-card-subtitle2{
    font-size:14px;
    line-height:20px;
    margin:0 0 5px;
    padding:0 10px;
    text-align:center
}
.offer-card-price{
    color:#d81e05;
    display:-webkit-box;
    font-size:30px;
    margin:0 0 5px;
    max-width:100%;
    overflow:hidden;
    padding:0 10px;
    text-overflow:ellipsis;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical
}
.offer-card-summary{
    font-size:14px;
    margin:10px 0 0;
    padding-bottom:20px;
    text-transform:none;
    text-align:center
}
.offer-card-separator{
    background:repeating-linear-gradient(90deg,#ccc 0,#ccc 10px,transparent 0,transparent 15px) bottom;
    background-color:#fff;
    background-position:50%;
    background-repeat:no-repeat;
    background-size:100% 1px;
    height:20px;
    margin:-1px 10px;
    position:relative
}
.offer-card-separator:before,
.offer-card-separator:after{
    background:transparent;
    border:5px solid #fff;
    border-radius:50%;
    box-shadow:inset 0 0 0 1.3px #ccc;
    box-sizing:border-box;
    content:"";
    height:30px;
    position:absolute;
    width:30px;
    z-index:2
}
.offer-card-separator:before{
    clip:rect(0,auto,auto,15px);
    left:-24px;
    top:-5px
}
.offer-card-separator:after{
    clip:rect(15px,auto,auto,0);
    right:-24px;
    top:-5px;
    transform:rotate(90deg)
}
.offer-card-footer{
    border-top-color:#fff;
    border-top-left-radius:0;
    border-top-right-radius:0;
    padding-bottom:20px
}
.offer-card-buttons{
    display:flex;
    justify-content:center;
    margin-top:10px
}
.offer-btn-send,
.offer-btn-print{
    background:#d81e05;
    border:2px solid #d81e05;
    border-radius:5px;
    color:#fff;
    cursor:pointer;
    display:inline-block;
    font-size:9pt;
    padding:17px 5px;
    text-decoration:none;
    text-transform:uppercase;
    width:100%;
    text-align:center
}
.offer-btn-send:hover{
    background:#a61704;
    border-color:#a61704;
    color:#fff
}
.offer-btn-print{
    background:#fff;
    border:2px solid #d6d6d6;
    color:#000;
    margin-left:8px
}
.offer-btn-print:hover{
    background:#e6e6e6;
    border-color:#e6e6e6;
    color:#000
}


.offer-modal{
    position:fixed;inset:0;background:rgba(0,0,0,.55);
    display:none;justify-content:center;align-items:center;z-index:9999;padding:30px
}
.offer-modal.show{display:flex}
.offer-modal-box{
    background:#fff;width:550px;max-width:95%;
    padding:40px;border-radius:10px;text-align:center;position:relative
}
.offer-modal-close{
    position:absolute;top:10px;right:15px;
    font-size:28px;background:none;border:none;cursor:pointer
}
.offer-hidden,
.wpcf7-form input[name="offer"],
.wpcf7-form p:has(input[name="offer"]){display:none!important}
.print-modal-text{text-align:center;font-size:15px;line-height:22px}
.print-modal-text span{display:block;margin-bottom:4px}
.print-btn{
    width:100%;margin-top:22px;background:#d81e05;color:#fff;
    padding:14px;border:none;border-radius:5px;font-size:14px;font-weight:600;cursor:pointer
}