:root {
    --gbweb-spp-strap-size: 35px;
}
body.woocommerce-special-product .product.product-type-special{
    display: flex;
    flex-wrap: wrap;
}
body.woocommerce-special-product .product.product-type-special > *{
    flex-basis: 50%;
    flex-grow: 1;
}
body.woocommerce-special-product .product.product-type-special > .woocommerce-product-gallery{
    max-width: 400px;
    position: relative;
}
body.woocommerce-special-product .product.product-type-special > .woocommerce-product-gallery  > .woocommerce-product-gallery__wrapper{
    position: sticky;
}
.gbweb-special-product-image-wrapper{
    text-align: center;
}
.gbweb-special-product-image-wrapper .gbweb-special-product-pattern-placeholder{
    background-color: #f5f5f5;
    width: 400px;
    height: 800px;
    margin: 0 auto;
    padding: 40px 0;
    overflow: hidden;
}
.gbweb-special-product-image-wrapper .gbweb-special-product-outer{
    transform: rotate(45deg);
    width: 1000px;
    height: 1000px;
    left: -300px;
    position: absolute;
    top: 150px;
    overflow: hidden;
    text-align: center;
    padding: 0 90px 90px 0;
}
.gbweb-special-product-image-wrapper .gbweb-special-product-inner{
    transform: rotate(-45deg);
    width: 100%;
    height: 640px;
    position: relative;
    margin: -3% 18% 0 0;
}
.gbweb-special-product-image-wrapper .gbweb-special-product-inner .gbweb-special-product{
    overflow: hidden;
    width: 100%;
    height: 640px;
    position: relative;
}
.gbweb-special-product-image-wrapper .bg-wrap{
    background-image: url(../images/temp.webp);
    background-blend-mode: multiply;
}
.gbweb-special-product-image-wrapper .inner-wrap .gbweb-pattern-dup{
    display: inline-block;
    margin-top: 1px;
    height: 36px;
    vertical-align: top;
    overflow: hidden;
    margin-right: 38px;
    line-height: 33px;
}
.gbweb-special-product-image-wrapper .inner-wrap .gbweb-pattern-dup.pattern-img img{
    height: 90% !important;
    width: auto !important;
}

.gbweb-special-product-pattern-placeholder .gbweb-pattern-image-top{
    width: 230px;
    height: var(--gbweb-spp-strap-size);
    margin: 1px 0 0 0;
    padding: 0;
    position: absolute;
    top: 0;
    left: calc(50% - 115px);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, .2);
    text-align: center;
}
.gbweb-special-product-pattern-placeholder .gbweb-pattern-image-top img{
    margin: -1px auto 0 auto !important;
    height: 110% !important;
    width: auto !important;
}

.gbweb-special-product-pattern-placeholder .gbweb-pattern-image-bottom{
    width: 100px;
    margin: 1px 0 0 0;
    padding: 0;
    position: absolute;
    top: 100%;
    left: calc(50% - 50px);
    text-align: center;
}
.gbweb-special-product-pattern-placeholder .gbweb-pattern-image-bottom .inner-wrap{
    width: 37px;
    margin: -2px auto 0 auto;
    box-shadow: 0 3px 10px 0 rgba(0, 0, 0, .2);
    overflow: hidden;
}
.gbweb-special-product-pattern-placeholder .gbweb-pattern-image-bottom .inner-wrap .gbweb-pattern-dup{
    margin-right: 0;
}
.gbweb-special-product-pattern-placeholder .gbweb-pattern-image-bottom > img{
    margin: -10px auto 0 auto !important;
}
.gbweb-special-product-pattern-placeholder .gbweb-pattern-image-right{
    width: 2000px;
    height: var(--gbweb-spp-strap-size);
    margin: 0;
    padding: 0;
    position: absolute;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, .2);
    text-align: right;
    transform: rotate(-80deg);
    right: calc(50% - 95px);
    transform-origin: right top;
    overflow: hidden;
}
.gbweb-special-product-pattern-placeholder .gbweb-pattern-image-left{
    width: 2000px;
    height: var(--gbweb-spp-strap-size);
    margin: 0;
    padding: 0;
    position: absolute;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, .2);
    text-align: left;
    transform: rotate(80deg);
    left: calc(50% - 95px);
    transform-origin: left top;
    overflow: hidden;
}
.gbweb-special-product-pattern-placeholder .gbweb-pattern-dup{
    height: var(--gbweb-spp-strap-size);
}
.gbweb-special-product-image-wrapper .inner-wrap{
    width: 100%;
    height: 100%;
    background-color: #5f5f5fCC;
    display: block;
    position: relative;
}
.tm-extra-product-options #fonts-wrap ul.tmcp-ul-wrap.tm-element-ul-radio > li{
    flex-basis: calc(25% - calc(15px / 2));
    cursor: pointer;
}
.tm-extra-product-options #fonts-wrap ul.tmcp-ul-wrap.tm-element-ul-radio > li *{
    cursor: pointer;
}
.tm-extra-product-options #fonts-wrap ul.tmcp-ul-wrap.tm-element-ul-radio > li input[type="radio"]{
    opacity: 0;
}
.tm-extra-product-options #fonts-wrap ul.tmcp-ul-wrap.tm-element-ul-radio > li .tmcp-field-wrap-inner{
    width: 100%;
    height: 95px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 5px rgba(0,0,0,.5);
    font-size: 80%;
    padding: 10px;
}
.tm-extra-product-options #fonts-wrap ul.tmcp-ul-wrap.tm-element-ul-radio > li .tmcp-field-wrap-inner .tc-input-wrap{
    display: none;
}
.tm-extra-product-options #fonts-wrap ul.tmcp-ul-wrap.tm-element-ul-radio > li .tmcp-field-wrap-inner .tc-label{
    padding: 0 !important;
}
.tm-extra-product-options #fonts-wrap ul.tmcp-ul-wrap.tm-element-ul-radio > li .tmcp-field-wrap-inner .tc-label-wrap{
    display: block;
}
.tm-extra-product-options #fonts-wrap ul.tmcp-ul-wrap.tm-element-ul-radio > li .tmcp-field-wrap-inner .tc-input-wrap{
    width: 1px;
    overflow: hidden;
}
.tm-extra-product-options #fonts-wrap ul.tmcp-ul-wrap.tm-element-ul-radio > li .tmcp-field-wrap-inner .tc-label-text,
.tm-extra-product-options #fonts-wrap ul.tmcp-ul-wrap.tm-element-ul-radio > li .tmcp-field-wrap-inner .tm-epo-field-label{
    justify-content: center;
    align-items: center;
    text-align: center;
}
@media (min-width: 768px) {
    body.single-product.woocommerce-special-product div.product .summary {
        width: 70%;
    }
    body.single-product.woocommerce-special-product div.product .woocommerce-product-gallery {
        width: 30%;
    }
}