/* Stili personalizzati Easyposter estratti da 0allhome.css. */

/*aggiunti datalist me*/
.full-width-image {
    width: 100%; /* Larghezza massima */
    display: flex; /* Facoltativo: per centrare il contenuto */
    justify-content: center; /* Facoltativo */
    align-items: center; /* Facoltativo */
    overflow: hidden; /* Nasconde eventuali bordi indesiderati */
}

    .full-width-image img {
        width: 100%; /* Adatta l'immagine alla larghezza del contenitore */
        height: auto; /* Mantiene le proporzioni dell'immagine */
        object-fit: cover; /* Copre l'intera area senza distorsioni */
    }
 /*fine aggiunta datalist me*/

.validationerror {
    background-color: ivory;
    background-image: url(/images/validation/alert.png);
    background-position: right;
    background-repeat: no-repeat
}

a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    vertical-align: baseline
}

/*footer {
    padding: 0;
    border: 0;
    font: inherit;
    vertical-align: baseline
}*/

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block
}

body {
    /*  font-family: 'Open Sans',sans-serif;*/
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    line-height: 120% !important
}

ol, ul {
    list-style: none
}

blockquote, q {
    quotes: none
}

    blockquote:after, blockquote:before, q:after, q:before {
        content: none
    }

table {
    border-collapse: collapse;
    border-spacing: 0
}

p {
    line-height: 140%
}

.hidden {
    display: none
}

.fontprice, .prezzirepeater, .prezzischeda {
    font-family: 'open-sans',
}

.prezzirepeater, .prezzischeda {
    color: #e300a4;
    font-size: 20px
}

.prezzischeda {
    font-size: 20px !important;
    font-weight: 200
}

a, a:hover {
    /*color: #428ba9;*/
    color: #085878;
    text-decoration: none
}

    a:hover {
        color: gray
    }

.maiusc {
    text-transform: uppercase
}

.logo img {
    width: 100%;
    max-width: 300px
}

.logosmall img {
    height: 35px
}

.maincontainer {
    max-width: 1250px;
    margin: auto
}

.sitebody {
    margin-top: 120px 
/*    display: flex;
    align-items: stretch;
    min-height: 100vh;*/
}

.homecontainer {
    max-width: 2560px;
    margin: auto;
    background-color: #f8f8f8;
  /*  background-color: #d299a8;*/
}

.homebody {
    margin-top: 97px;
}

.infobar {
    background-color: #57595b;
    padding: 10px
}

    .infobar, .infobar a {
        color: #fff
    }

.menubar, .menubarsmall {
    background-color: #f8f8f8;
    border-bottom: solid 1px #dcdcdc;
    padding: 10px
}

.menubarsmall {
    padding: 5px;
    height: 50px
}

.linkmobilemenu {
    display: block;
    text-align: center;
    padding: 5px;
    border-bottom: dashed 1px #dcdcdc;
    margin: 0 0 5px;
    font-size: 13px;
    color: gray
}

.linkchatmobile, .linkchatsm {
    cursor: pointer
}

.linkchatsm {
    display: block;
    padding: 3px;
    background-color: #b8d432;
    color: #fff;
    border-radius: 3px;
    text-align: center
}

.menumobilewrapper a:last-child {
    border: none
}

.menumobilewrapper {
    position: fixed;
    width: 100%;
    z-index: 10000;
    top: 50px;
    padding: 10px;
    background-color: #f8f8f8;
    border-radius: 0 0 5px 5px;
    border-left: solid 1px #dcdcdc;
    border-right: solid 1px #dcdcdc;
    border-bottom: solid 1px #dcdcdc;
    display: none
}

h2.titoloprodotto {
    font-weight: 700;
    font-size: 18px !important;
    margin-bottom: 10px
}

#gridprezzo {
    margin-bottom: 20px
}

#gridprezzihtml {
    border: solid 1px gray
}

    #gridprezzihtml tbody td {
        font-size: 14px !important
    }

    #gridprezzihtml thead tr {
        background-color: #b9d433 !important;
        color: #000 !important
    }

    #gridprezzihtml tr:nth-child(even) {
        background-color: #f0f0f0
    }

    #gridprezzihtml td {
        padding: 5px
    }

    #gridprezzihtml th {
        padding: 5px;
        text-align: left
    }

    #gridprezzihtml tr:hover {
        background-color: #f6fecb
    }

header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10
}

.langflag {
    margin-left: 10px
}

.secondaryflag {
    opacity: .4
}

.bloccospaziato {
    margin-top: 25px;
    margin-bottom: 50px
}

.bloccoprodottohome {
    border: solid 1px #dcdcdc;
    margin: 5px 0;
    vertical-align: top;
    overflow: hidden
}

    .bloccoprodottohome:hover {
        box-shadow: 0 0 10px #478eb6
    }

.bloccoprodottohometesto a {
    color: #000
}

.bloccoprodottohometesto {
    text-align: center;
    padding: 10px 0;
    margin-top: 0;
    overflow: hidden;
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f7f7f7
}

.bloccoprodottohometesto h2 {
    margin: 0;
    line-height: 1.2
}

.bloccoprodottooverlay {
    position: absolute;
    top: -35px;
    left: 0;
    width: 100%;
    height: 35px;
    line-height: 200%;
    text-align: center;
    background-color: #8e286e;
    opacity: .8;
    color: #fff
}

.btn-greeneasyposter {
    background-color: #c63899;
    color: #fff;
    margin: 10px;
    padding: 5px 10px
}

.btn-blog {
    background-color: #8e286e;
    color: #fff;
    margin: 10px;
    padding: 3px 10px 3px 10px
}

.btn-celesteeasyposter {
    color: #000
}

.btn-darkgray {
    background-color: #666;
    color: #fff
}

.btn-lightgray {
    background-color: #dcdcdc;
    color: #000
}

.btn-loading {
    padding-left: 40px !important;
    background-image: url(/images/ajax/loadingsmall.gif) !important;
    background-repeat: no-repeat !important;
    background-position: 10px 6px !important
}

.btn-margin-left {
    margin-left: 15px
}

.btn-margin-right {
    margin-right: 15px
}

.btn.loading {
    padding-left: 45px;
    background-image: url(/images/ajax/loadingsmall.gif);
    background-position: 10px 5px;
    background-repeat: no-repeat
}

.titlebargreen {
    background-color: #428ba9;
    padding: 10px;
    color: #fff;
    font-weight: 700;
    font-size: 20px;
    margin: 40px 0
}

.boxcat:hover {
    box-shadow: 0 0 10px #478eb6
}

.bordato {
    border: solid 1px #dcdcdc !important
}

.padding-10 {
    padding: 10px
}

.margin-10 {
    margin: 10px
}

.padding-top-10 {
    padding-top: 10px
}

.padding-top-20 {
    padding-top: 20px
}

.padding-top-30 {
    padding-top: 40px
}

.padding-bottom-10 {
    padding-bottom: 10px
}

.padding-bottom-20 {
    padding-bottom: 20px
}

.padding-bottom-30 {
    padding-bottom: 40px
}

.margin-bottom-10 {
    margin-bottom: 10px
}

.margin-bottom-20 {
    margin-bottom: 20px
}

.margin-bottom-30 {
    margin-bottom: 30px
}

.reviewcontainer {
    margin: 20px auto
}

.telephonebar {
    padding-bottom: 5px;
    border-bottom: solid 1px #dcdcdc;
    margin: 0 15px 10px
}

.icotop {
    height: 25px;
    display: inline-block;
    background-repeat: no-repeat;
    padding-top: 3px;
    padding-left: 35px;
    color: #747474;
    font-size: 12px;
    margin-right: 20px
}

    .icotop a, .icotop a:hover {
        color: #747474 !important
    }

        .icotop a:hover {
            text-decoration: underline
        }

.icotoptel {
    background-image: url(/images/common/icotop_tel.png)
}

.icotopwhatsapp {
    background-image: url(/images/common/icotop_whatsapp.png)
}

.icotopmail {
    background-image: url(/images/common/icotop_mail.png)
}

.icotopfb, .icotopig {
    height: 30px;
    width: 30px;
    margin-right: 0;
    margin-left: 5px;
    padding-top: 3px;
    padding-left: 0;
    display: inline-block;
    background-repeat: no-repeat;
    background-image: url(/images/common/icotop_facebook.png)
}

.icotopig {
    background-image: url(/images/common/icotop_instagram.png)
}

.tendinaareacliente {
    display: none;
    position: absolute;
    background-color: #f8f8f8;
    width: 200px;
    min-height: 100px;
    top: 30px;
    left: 0;
    border-radius: 0 0 5px 5px;
    padding: 20px;
    font-size: 13px
}

    .tendinaareacliente a, .tendinaareaclientemin a {
        text-align: left !important;
        display: block;
        padding: 0 0 10px !important;
        margin: 0 0 10px !important;
        border: none !important;
        border-bottom: dashed 1px #dcdcdc !important
    }

        .tendinaareacliente a:last-child, .tendinaareaclientemin a:last-child {
            border: none !important
        }

.tendinaareaclientemin, .tendinacarrello {
    display: none;
    position: absolute;
    background-color: #f8f8f8;
    width: 200px;
    min-height: 100px;
    top: 25px;
    right: 0;
    border-radius: 0 0 5px 5px;
    padding: 20px;
    font-size: 13px
}

.tendinacarrello {
    width: 400px;
    top: 30px;
    z-index: 10000
}

.cartslide {
    position: relative
}

    .tendinacarrello .rigacarrellomin {
        margin-bottom: 5px;
        padding-bottom: 5px;
        border-bottom: dashed 1px #b9d433
    }

.btdelcart, .btn-goto-cart {
    display: block;
    text-align: center;
    padding: 5px !important;
    margin-top: 20px;
    border-radius: 5px;
    background-color: #b9d433;
    z-index: 1000;
    font-size: 12px !important
}

    .btdelcart:hover, .btn-goto-cart:hover {
        color: #000 !important
    }

.btdelcart {
    background-color: #dcdcdc;
    z-index: 10000;
    cursor: pointer
}


.cartbuttonmenutop {
    background-image: url(/images/common/cart.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 30px;
    padding-left: 50px !important;
    position: relative;
    border: none !important
}

.intestazionemenuprodotti {
    background-color: #b9d433;
    color: #000;
    font-size: 18px;
    font-weight: 700;
    padding: 10px
}

.menupromo {
    padding: 0 0 10px;
    background-color: #f0e59c;
    border: solid 1px #dcdcdc;
    color: #000;
    font-size: 20px
}

.menupromohead {
    text-align: center;
    padding: 10px;
    background-image: url(/images/common/offertehead.png);
    background-repeat: repeat-x;
    height: 50px
}

.gruppomenucliente {
    background-color: #b9d433;
    color: #fff;
    padding: 15px 7px 15px 10px;
    font-size: 18px;
    font-weight: 700
}

/*gestisce il menu a sinistra*/
.colonnasx {
    background-color: #f8f8f8;
}

.ico_categoria {
    width: 25px;
    height: 25px;
}

.gruppomenuprodotti {
    /*background-color: #8e4b8d;*/
    background-color: transparent;
    padding: 10px;
    font-size: 14px;
    border-radius: 5px 5px 5px 0;
    margin-bottom: 6px;
    cursor: pointer;
}

    .gruppomenuprodotti a {
        color: #333 !important;
        font-weight: 700;
        text-transform: uppercase !important;
        display: flex;
        align-items: center;
        gap: 8px;
    }

.gruppomenuprodotti.active {
        background-color: #8e4b8d;
    }

       .gruppomenuprodotti.active a {
            color: #fff !important;
        }

.menuprodottisubwrapper {
    padding: 8px 0 12px 12px;
}

.vocemenuprodotto {
    padding: 2px 0;
    position: relative
}

    .vocemenuprodotto a {
        display: block;
        padding: 2px 2px;
        color: #000;
        font-size: 15px
    }

.vocemenuofferta a {
    padding: 10px 0;
    margin: 0 7px;
    border-bottom: dashed 1px gray;
    font-size: 15px
}

.vocemenuofferta:last-child a {
    border-bottom: none
}

.vocemenucliente a {
    display: block;
    padding: 8px 10px;
    color: #000;
    border-bottom: solid 1px #dcdcdc;
    font-size: 14px
}

.menuclientesubwrapper {
    margin-bottom: 20px;
    border: solid 1px #dcdcdc;
    background-color: #fffdf3
}

.menuprodottisubwrapper {
    margin-bottom: 10px
}

    .menuclientesubwrapper .vocemenucliente:last-child a, .menuprodottisubwrapper .vocemenuprodotto:last-child a {
        border-bottom: none !important
    }


/*footer {
    margin: 50px 0 0;
    font-size: 14px;
    border-top: solid 1px gray
}*/

footer {
    padding: 0;
    border: 0;
    font: inherit;
    font-size: 15px;
	line-height: 200%;
    /*font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;*/
    vertical-align: baseline
}

    footer a {
        color: #57595b;  
    }

#footerlinkcontainer {
    background-color: #f2f2f2;
    padding-top: 25px
}

#footerend {
    background-color: #e0e0e0;
    padding: 0 20px;
    margin: 0 !important
}

.headermenu-sm a, .mainmenubig li a {
    display: block;
    color: #000;
    font-size: 15px;
    text-align: center;
    border-right: solid 1px #dcdcdc;
    padding: 8px 0
}

    .headermenu a:hover, .headermenu-sm a:hover {
        text-decoration: none;
        color: #b9d433
    }

.headermenu-sm {
    margin-top: 10px
}

    .headermenu-sm a {
        font-size: 13px;
        padding: 5px 0
    }

        .headermenu-sm a:last-child {
            border-right: none
        }
/*
data quiu*/

.newtag {
    position: absolute;
    left: -50px;
    top: 10px
}

.info {
    display: inline-block;
    background-image: url(/images/common/info.png);
    background-repeat: no-repeat;
    background-position: top right;
    cursor: pointer;
    padding: 0 25px 0 0;
    position: relative;
    overflow: visible
}

.popinfo {
    position: absolute;
    padding: 10px;
    background-color: #f0f0f0;
    border-radius: 5px;
    border: solid 1px gray;
    color: #000;
    font-size: 10px;
    text-transform: none;
    white-space: nowrap
}

.selected, .selectedquadro {
    background-image: url(/images/common/check.png);
    background-repeat: no-repeat;
    background-position: 3px 0
}

.selected {
    background-position: 5px 2px;
    border: dashed 1px #dcdcdc !important
}

.selectable img.selectedico {
    display: none;
    position: absolute
}

.infocartabox {
    border: dashed 1px #dcdcdc;
    padding: 20px
}

.selectedcarta {
    border: dashed 1px #dcdcdc !important
}

    .selectedcarta img.selectedico {
        position: absolute !important;
        top: 20px;
        left: 20px;
        display: block !important
    }

.selectable {
    vertical-align: top;
    cursor: pointer;
    padding: 10px;
    border: solid 1px #fff
}

.ajaxloading {
    display: none;
    width: 100%;
    height: 100%;
    text-align: center;
    vertical-align: middle;
    position: absolute;
    top: 0;
    left: 0;
    background-image: url(/images/common/oscurabianco.png)
}

.prodottoitem {
    margin-bottom: 25px;
    vertical-align: top
}

.boxdescprodotto {
    margin-top: 10px;
    text-align: justify;
    line-height: 130%;
    padding: 10px;
    font-size: 15px
}

    .boxdescprodotto h2, .boxdescprodotto h3 {
        font-weight: 700 !important;
        font-size: 17px !important
    }

    .boxdescprodotto h3 {
        font-size: 16px !important
    }

    .boxdescprodotto:empty {
        border: none !important;
        background-color: #fff !important
    }

    .boxdescprodotto a, .boxdescprodotto b {
        font-weight: 700 !important;
    }

.boxdescprodottowhite {
    margin-top: 20px;
    text-align: justify;
    line-height: 140%;
    margin-bottom: 30px
}

.boxdescbasso {
    text-align: justify;
    background-color: #fff;
    padding: 10px;
    font-size: 14px
}

.bordosotto {
    border-bottom: solid 1px #dcdcdc;
    padding-bottom: 20px
}

.darkbar {
    padding: 10px;
    /*background-color: #8e286e;*/
    /* background-color: #ababab;*/
    background-color: #b4b4b4;
    color: #000;
    text-transform: uppercase;
    margin: 0 0 10px;
    border-radius: 5px 5px 5px 0px
}

.lightbar {
    padding: 10px 15px 5px;
    background-color: #dcdcdc;
    color: #000;
    margin: 5px 0 20px;
    width: 100%;
    font-family: "Archivo Black",sans-serif;
    font-size: 14px
}

.lightbarnew, .lightbarprodotto {
    text-align: center;
    padding: 15px 0 10px 5px;
    color: #428ba9;
    margin: 5px 0 !important;
    width: 100%;
    font-weight: 700;
    font-size: 14px
}

.lightbarprodotto {
    text-align: left;
    margin: 5px 0 20px !important
}

.titolorosa {
    font-size: 15px;
    color: #428ba9
}

.imgsezione {
    max-width: 1250px;
    height: 230px;
    overflow: hidden;
    margin-bottom: 45px
}

.tableaccount {
    height: 50px;
    margin-bottom: 40px
}

.vocemenuareaclienti a {
    padding: 15px;
    display: block
}

.vocemenuareaclienti {
    border-top: solid 1px gray;
    border-bottom: solid 1px #000;
    border-left: solid 1px gray;
    border-right: solid 1px gray;
    background-color: #f0f0f0;
    border-radius: 10px 10px 0 0
}

    .vocemenuareaclienti:last-child {
        border-right: solid 1px #000
    }

    .vocemenuareaclienti:hover {
        background-color: #b9d433
    }

    .vocemenuareaclienti.attiva {
        background-color: #b9d433;
        color: #000
    }

.form-group label {
    margin-bottom: 5px;
    color: #428ba9;
    font-size: 14px !important;
    font-weight: 700
}

.btaddcarttrasp, .btn-cart {
    background-image: url(/images/common/addcartico1.png)
}

.btaddcarttrasp {
    height: 30px;
    padding-top: 7px;
    color: #e300a4;
    display: block;
    background-repeat: no-repeat;
    padding-left: 35px;
    background-position: 0 2px
}

.btn-cart {
    padding-left: 40px;
    background-position: 5px 2px;
    background-color: #fff;
    border: solid 1px #dcdcdc
}

.btn-cart, .btpromocart, .checked {
    background-repeat: no-repeat
}

.btpromocart {
    display: block;
    text-align: center;
    border-radius: 3px;
    padding: 10px;
    background-color: #b8d432;
    color: #fff;
    background-image: url(/images/common/addcarticobianca.png);
    background-position: 95% 5px
}

.checked {
    background-image: url(../images/common/check.png);
    background-position: 0 25px;
    z-index: 100000
}

.cartwrapper {
    border: solid 1px #dcdcdc
}

.cartheader {
    padding: 5px;
    font-size: 12px;
    text-transform: uppercase
}

.cartrowitem {
    border-bottom: dashed 1px #dcdcdc;
    margin-bottom: 10px;
    padding: 10px;
    font-size: 13px
}

    .cartrowitem:last-child {
        border-bottom: none !important
    }

.cartfooterwrapper {
    padding: 10px;
    border-left: solid 1px #dcdcdc;
    border-right: solid 1px #dcdcdc;
    border-bottom: solid 1px #dcdcdc
}

    #card-errors:empty, .cartfooterwrapper:empty {
        display: none
    }

.infospedizionewrapper {
    border: solid 1px #dcdcdc;
    padding: 10px;
    margin-bottom: 20px
}

.fqdrcontainer {
    margin: 10px
}

.faqdomanda {
    border: solid 1px #dcdcdc;
    padding: 10px 15px 10px 35px;
    cursor: pointer;
    background-image: url(/images/faq/arrowclose.png);
    background-repeat: no-repeat;
    background-position: 10px 10px
}

.faqgruppotitolo {
    font-size: 10pt;
    font-weight: 700;
    margin: 15px 0
}

.faqdomanda:hover {
    background-color: #f6ffd5
}

.faqrisposta {
    display: none;
    padding: 10px;
    line-height: 140%
}

.faqopen {
    background-image: url(/images/faq/arrowopen.png);
    background-repeat: no-repeat;
    background-color: #f6ffd5
}

.itemquadro {
    margin-bottom: 20px;
    padding: 3px;
    border: solid 1px #dcdcdc;
    text-align: center
}

    .itemquadro img {
        margin: auto
    }

.itemquadrolabel {
    background-color: #b9d433;
    text-align: center;
    padding: 5px;
    font-size: 12px;
    margin-top: 10px
}

.quadrocontainer {
    width: 100%
}

.quadroframe {
    background: url(/services/quadroimg.ashx) no-repeat center center;
    background-size: cover
}

.quadrowrapper {
    overflow: hidden
}

.quadromask {
    position: relative
}

.quadrolineamaschera {
    background-color: #fff;
    width: 8px;
    height: 100%;
    position: absolute
}

.imgtshirtwrapper img, .quadroimgmask, .tshirttipoicon img {
    width: 100%
}

.welcomebox {
    border-radius: 3px;
    border: solid 1px #eee;
    padding: 6px 15px;
    width: 100%;
    text-align: right;
    margin-bottom: 25px
}

.welcomeboxcolumn {
    background-color: #b9d433;
    padding: 20px;
    text-align: center;
    color: #fff;
    font-size: 13px;
    text-transform: uppercase
}

.divoffertaqta {
    background-color: #f6ffd5;
    padding: 10px;
    border: dashed 1px #e300a4;
    font-size: 14px
}

    .divoffertaqta h2 {
        font-weight: 700;
        margin-bottom: 10px;
        text-transform: uppercase
    }

.iconaattiva {
    border: solid 1px #e300f4 !important;
    color: #e300a4 !important
}

.tshirtcoloreicon {
    display: inline-block;
    margin: 10px 15px 0 0;
    padding: 1px;
   /* border: solid 1px #dcdcdc;*/
    width: 48px;
    height: 48px;
    cursor: pointer;
    vertical-align: top
}

    .tshirtcoloreicon:first-child {
        margin-left: 0 !important
    }

    .tshirtcoloreicon.hidden {
        display: none !important;
    }


.tshirttipoicon {
    width: 160px;
    height: 180px;
    display: inline-block;
    margin: 3px;
    padding: 1px;
    background-color: #fff;
    vertical-align: top;
    cursor: pointer
}

    .tshirttipoicon:hover {
        border-color: gray
    }

    .tshirttipoicon img {
        width: 100%
    }

.container-stampe {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-start;
}

.tshirttipostampa {
    width: 120px;
    height: 180px;
    display: inline-block;
    margin: 3px;
    padding: 1px;
    background-color: #fff;
    vertical-align: top;
    cursor: pointer
}
    .tshirttipostampa:hover {
        border-color: gray
    }
    .tshirttipostampa img {
        width: 100%
    }




.titolotshirttipomaglia {
    font-size: 12px !important;
    padding: 0 5px 5px 5px
}




.imgtshirtwrapper {
    max-width: 600px;
    position: relative;
    border: solid 1px #dcdcdc
}

    .imgtshirtwrapper img {
        width: 100%
    }

.imgtshirtoverlay {
    position: absolute;
    width: 100%
}

.tabletaglie {
    width: 100%;
    border: solid 1px gray
}

    .tabletaglie th {
        padding: 5px;
        border-bottom: solid 1px gray;
        text-align: center;
        background-color: #dcdcdc;
        font-weight: 700
    }

    .tabletaglie td {
        text-align: center;
        padding: 5px
    }

.filterlabel {
    width: 90px;
    display: inline-block
}

.ddlfiltro {
    width: 450px
}

.tbcerca {
    width: 440px
}

.boxtipofile {
    border: solid 1px #fff;
    cursor: pointer;
    padding-top: 10px;
    padding-bottom: 10px;
    position: relative
}

.boxtipofileselected {
    border: dashed 1px #dcdcdc
}

    .boxtipofileselected::after {
        content: "";
        width: 35px;
        height: 35px;
        display: inline-block;
        position: absolute;
        left: 5px;
        top: 5px;
        background-image: url(/images/common/check2.png);
        background-repeat: no-repeat;
        background-size: 35px
    }

.msgalertdiv {
    padding: 20px;
    text-align: center;
    border: dashed 2px #dcdcdc;
    margin: 10px 0;
    background-color: #f6fecb;
    display: none
}

.anteprimabox {
    padding: 10px;
    margin-top: 10px;
    margin-bottom: 20px;
    border: dashed 1px #dcdcdc;
    font-size: 60px;
    text-wrap: normal;
    line-height: normal;
    overflow: hidden
}

.numletterescritte {
    color: #000 !important
}

.bthelp {
    background-color: #f9e97c;
    border-radius: 3px;
    display: inline-block;
    margin-left: 10px;
    cursor: pointer;
    font-size: 10px;
    padding: 0 5px !important;
    text-align: center;
    color: gray !important
}

.cbeasywrapper {
    margin-top: 10px;
    margin-bottom: 10px
}

.cbeasy {
    display: inline-block;
    height: 25px;
    width: 25px;
    margin-right: 15px;
    border: solid 1px #dcdcdc;
    vertical-align: middle;
    cursor: pointer;
    background-color: #fff
}

.cbchecked {
    background-image: url(/images/common/check.png);
    background-repeat: no-repeat
}

.cblabel {
    cursor: pointer;
    font-size: 16px;
    display: inline-block !important
}

.bthelpdetail {
    font-size: 12px;
    padding: 10px;
    background-color: #f5faff;
    border: dashed 1px #dcdcdc;
    margin: 0 0 15px;
    display: none;
    border-radius: 5px
}

    .bthelpdetail[data-status=opened] {
        display: block !important
    }

.pricesummary {
    border: solid 1px #dcdcdc;
    margin-top: 20px
}

.pricesummarytitle {
    text-align: center;
    background-color: #e5e5e5;
    color: #000;
    text-transform: uppercase;
    padding: 10px;
    font-size: 12px;
    font-family: Oswald,sans-serif;
    font-weight: 700;
    white-space: nowrap
}

.btivawrapper {
    text-align: center;
    margin: 5px 0 15px;
    padding: 5px 0
}

.btivatextheader {
    font-size: 13px;
    margin-bottom: 10px
}

.btivapricesummary {
    padding: 5px;
    text-align: center;
    text-transform: uppercase;
    font-family: 'Archivo Black',sans-serif;
    font-size: 11px;
    cursor: pointer
}

.btivapricesummaryon {
    color: #fff;
    background-color: #478eb6;
    border: solid 1px #478eb6
}

    .btivapricesummaryon:hover {
        color: #fff !important
    }

.btivapricesummaryoff {
    color: gray;
    background-color: #fff;
    border: solid 1px #dcdcdc
}

    .btivapricesummaryoff:hover {
        color: gray !important
    }

.pricesummaryitem {
    padding: 10px 8px !important;
    border-bottom: solid 1px #dcdcdc
}

.dateselected {
    background-color: #eef6fe
}

.pricesummaryprice {
    font-size: 12px;
    font-weight: 700
}

/*.btncartbig {
    background-color: #e5e5e5;
    color: #000;
    margin: 0;
    font-family: Oswald,sans-serif;
    padding-left: 60px;
    background-image: url(/images/common/btcartnew.gif);
    background-repeat: no-repeat;
    background-position: -5px;
    height: 48px;
    vertical-align: middle;
    padding-top: 17px;
    width: 100%;
    max-width: 240px;
    overflow: hidden;
    white-space: nowrap;
    font-size: 11px;
    box-shadow: 3px 3px 4px gray
}*/

.btncartbig {
    background-color: #e5e5e5;
    color: #000;
    margin: 0;
    font-family: Oswald, sans-serif;
    background-image: url(/images/common/btcartnew.gif);
    background-repeat: no-repeat;
    background-position: -5px center; /* importante: center */
    padding-left: 60px;
    height: 48px;
    width: 100%;
    max-width: 240px;
    overflow: hidden;
    white-space: nowrap;
    font-size: 11px;
    box-shadow: 3px 3px 4px gray;
    display: flex;
    align-items: center; /* centra verticalmente */
    justify-content: center; /* centra orizzontalmente il testo */
    padding-top: 0; /* elimina lo spostamento */
    padding-bottom: 0; /* coerente */
}


    .btncartbig:hover {
        color: #428ba9 !important
    }

.btncartbig, .font-weight-bold {
    font-weight: 700 !important
}

.pricesummaryqta {
    padding: 15px;
    font-size: 12px;
    border-bottom: solid 1px #dcdcdc
}

    .pricesummaryqta input {
        width: 60px;
        margin: 10px auto
    }

.dataline {
    font-size: 12px;
    white-space: nowrap;
    overflow: hidden
}

    .dataline .cblabel {
        font-size: 12px !important
    }

.generalitem {
    cursor: pointer;
    padding: 5px;
    border-radius: 10px 10px 10px 0px;
    margin-bottom: 10px
}

.itemselected {
   background-color: #ffc4f5;
}

.generalitem img {
    border: solid 1px #dcdcdc
}

.selectableitemwrapper {
    padding: 1px !important;
    vertical-align: top;
   /* min-height: 220px*/
}

.generalitemtitle {
    font-size: 15px;
    text-align: center;
    margin: 5px 0;
    min-height: 40px
}

.linkistruzioni {
    background-color: #e5e5e5;
    color: #000;
    margin: 0;
    font-family: Oswald,sans-serif;
    font-weight: 700 !important;
    padding-left: 70px;
    background-image: url(/images/common/btistruzioni.gif);
    background-repeat: no-repeat;
    background-position: -10px -8px;
    height: 35px;
    vertical-align: middle;
    padding-top: 8px;
    width: 100%;
    display: inline-block;
    overflow: hidden;
    white-space: nowrap;
    font-size: 11px;
    box-shadow: 3px 3px 4px gray;
    text-transform: uppercase;
    border-radius: 5px;
    cursor: pointer
}

.linktemplate {
    font-family: Oswald,sans-serif;
    font-weight: 700 !important;
    padding-left: 70px;
    background-color: #e5e5e5;
    background-image: url(/images/common/btdownload.gif);
    background-repeat: no-repeat;
    background-position: -10px -8px;
    height: 35px;
    width: 100%;
    display: flex; /* cambia da inline-block */
    align-items: center; /* centra verticalmente */

    overflow: hidden;
    white-space: nowrap;
    font-size: 11px;
    box-shadow: 3px 3px 4px gray;
    text-transform: uppercase;
    border-radius: 5px;
    cursor: pointer;
    border: none; /* elimina bordo */
    outline: none; /* elimina bordo focus */
}


button.linktemplate:hover {
    color: #666; /* grigio */
}
button.linktemplate,
button.linktemplate:focus,
button.linktemplate:active {
    background-color: #e5e5e5 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: 3px 3px 4px gray !important; /* oppure none se non lo vuoi */
    -webkit-appearance: none;
    appearance: none;
}

.divcerca {
    position: relative
}

.searchdiv, .searchdivmobile {
    z-index: 9
}

.searchresult {
    position: absolute;
    background-color: #fff;
    width: 100%;
    border-radius: 0 0 10px 10px;
    left: 0;
    top: 30px;
    z-index: 8;
    border: solid 1px #dcdcdc;
    padding: 10px;
    display: none
}

    .searchresult a {
        display: block;
        padding-bottom: 2px;
        margin-bottom: 2px;
        color: gray;
        font-size: 12px;
        border-bottom: dashed 1px #dcdcdc
    }

        .formatoitem:last-child, .searchresult a:last-child {
            border: none
        }

#btsearch, #btsearchmobile {
    display: inline-block;
   /* background-color: #dcdcdc !important;
    color: gray !important*/
}

.emptysearch {
    border: dashed 1px #dcdcdc;
    text-align: center;
    padding: 20px
}

.welcomebox {
    display: none
}

.note {
    font-size: 12px;
    background-color: #f5faff;
    padding: 7px;
    margin-top: 7px;
    border: dashed 1px #dcdcdc
}

@media screen and (max-width:768px) {
    .welcomebox {
        display: inline-block
    }
}

@media screen and (max-width:667px) {
    .sitebody {
        margin-top: 65px
    }
}

@media screen and (max-width:575px) {
    .sitebody {
        margin-top: 20px
    }
}

.StripeElement {
    background-color: #fff;
    height: 40px;
    padding: 10px 12px;
    border-radius: 4px;
    box-shadow: 0 1px 3px 0 #e6ebf1;
    -webkit-transition: box-shadow 150ms ease;
    transition: box-shadow 150ms ease
}

.StripeElement--focus {
    box-shadow: 0 1px 3px 0 #cfd7df
}

.StripeElement--invalid {
    border-color: #fa755a
}

.StripeElement--webkit-autofill {
    background-color: #fefde5 !important
}

#card-errors {
    padding: 10px;
    font-size: 12px;
    border: solid 1px #dcdcdc;
    border-radius: 3px;
    background-color: #ffd3d3;
    margin: 10px -10px 0
}

#divcartacredito {
    display: none
}

.StripeElement {
    border: solid 1px #ccc
}

.lightboxlistitem h2 {
    font-size: 22px !important;
    border-bottom: dashed 1px #dcdcdc;
    padding-bottom: 15px;
    margin-top: 20px
}

    .lightboxlistitem h2 a {
        text-transform: uppercase;
        color: #000 !important
    }

.table-formati th {
    font-weight: 700;
    background-color: #eee;
    font-size: 14px
}

.table-formati td {
    font-size: 12px
}

.table-formati tr td:first-child, .table-formati tr td:last-child {
    font-weight: 700
}

.divselectorlist {
    overflow-y: auto;
    overflow-x: hidden;
    height: 400px;
    border: solid 1px #eee;
    padding: 10px;
    position: absolute;
    top: 85px;
    width: calc(100% - 30px);
    background-color: #fff;
    z-index: 1000;
    display: none
}

.formatoitem {
    padding: 5px;
    border-bottom: dashed 1px #dcdcdc;
    margin-bottom: 5px
}

    .formatoitem:hover {
        background-color: #eee;
        cursor: pointer
    }

.formatoiconawrapper {
    width: 40px;
    height: 40px;
    position: relative
}

.iconaformatocalcolata {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    background-color: #eee;
    border: solid 1px #dcdcdc
}

.formatotitlecentered {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%)
}

.formatoitemselected {
    border: solid 1px #dcdcdc;
    margin: 20px 0;
    padding: 5px
}

    .formatoitemselected:hover {
        border-color: #535355;
        cursor: pointer
    }

.formatselectorarrow {
    margin-top: 8px
}

.itemheight {
    height: 40px
}

.imgquadro {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%)
}

.imgquadrowrapper {
    width: 80%;
    position: relative;
    margin: 50px auto auto
}

.imgquadrocutter {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 300px
}

.imgborderwrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1
}

.bordoquadro {
    position: absolute;
    overflow: hidden
}

.bordoquadrotop {
    top: 0
}

.bordoquadrobottom {
    bottom: 0
}

.bordoquadroleft {
    left: 0
}

.bordoquadroright {
    right: 0
}

.bordoangolointerno {
    background-color: #fff;
    border: none
}

.bordoangolointerno1 {
    position: absolute;
    top: 0;
    left: 0
}

.bordoangolointerno2 {
    position: absolute;
    top: 0;
    right: 0
}

.bordoangolointerno3 {
    position: absolute;
    bottom: 0;
    right: 0
}

.bordoangolointerno4 {
    position: absolute;
    bottom: 0;
    left: 0
}

.flipvertical {
    transform: scaleY(-1);
}
/*.flipvertical {
    -moz-transform: scaleY(-1);
    -o-transform: scaleY(-1);
    -webkit-transform: scaleY(-1);
    transform: scaleY(-1);
    filter: FlipV;
    -ms-filter: FlipV
}*/

/*.fliphorizontal {
    -moz-transform: scaleX(-1);
    -o-transform: scaleX(-1);
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
    filter: FlipH;
    -ms-filter: FlipH
}*/

.fliphorizontal {
    transform: scaleX(-1);
}

.movetop {
    top: 0
}

.movebottom {
    bottom: 0
}

.moveleft {
    left: 0
}

.moveright {
    right: 0
}

.imgallungata {
    position: absolute
}

.imgbordi {
    width: 100%
}

.imgcenterxleft {
    left: 50%;
    transform: translateX(-50%)
}

.imgcenterxright {
    right: 50%;
    transform: translateX(50%)
}

.avvisorisoluzione {
    border: dashed 1px #dcdcdc;
    padding: 10px;
    line-height: 160%;
    color: gray;
    font-size: 12px;
    margin-bottom: 20px
}

.quadrooverlay {
    background-repeat: no-repeat
}

.quadrocornice, .quadrooverlay {
    display: none;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2
}

.quadrocornicebottom, .quadrocornicetop {
    background-repeat: repeat-x;
    height: 20px;
    position: absolute;
    left: 20px;
    width: calc(100% - 40px)
}

.quadrocornicetop {
    top: 0;
    background-image: url(/public/quadri/cornici/cornice1_top.jpg)
}

.quadrocornicebottom {
    background-image: url(/public/quadri/cornici/cornice1_bottom.jpg);
    bottom: 0
}

.quadrocorniceleft, .quadrocorniceright {
    background-repeat: repeat-y;
    width: 20px;
    position: absolute;
    top: 0;
    height: 100%
}

.quadrocorniceleft {
    right: 0;
    background-image: url(/public/quadri/cornici/cornice1_left.jpg)
}

.quadrocorniceright {
    background-image: url(/public/quadri/cornici/cornice1_right.jpg);
    left: 0
}

.quadrocornicecorner1, .quadrocornicecorner2 {
    position: absolute;
    top: 0;
    width: 20px;
    height: 20px
}

.quadrocornicecorner1 {
    left: 0;
    background-image: url(/public/quadri/cornici/cornice1_corner1.png)
}

.quadrocornicecorner2 {
    right: 0;
    background-image: url(/public/quadri/cornici/cornice1_corner2.png)
}

.quadrocornicecorner3, .quadrocornicecorner4 {
    position: absolute;
    bottom: 0;
    width: 20px;
    height: 20px
}

.quadrocornicecorner3 {
    right: 0;
    background-image: url(/public/quadri/cornici/cornice1_corner3.png)
}

.quadrocornicecorner4 {
    left: 0;
    background-image: url(/public/quadri/cornici/cornice1_corner4.png)
}

.imgformato {
    width: 100%
}

.lightboxlistitem {
    border: solid 1px #eee;
    padding: 20px;
    border-radius: 3px;
    margin-bottom: 20px
}

.lightboxlistitemtext {
    text-align: justify;
    line-height: 150%;
    color: gray;
    font-size: 16px
}

.starredbase, .starredvote {
    background-repeat: no-repeat;
    display: inline-block
}

.starredbase {
    margin: 20px 20px 20px 0;
    width: 120px;
    background-image: url(/images/common/starred_gray.png);
    height: 23px
}

.starredvote {
    background-image: url(/images/common/starred.png);
    height: 100%
}

.starredtext {
    display: inline-block;
    margin-top: 23px;
    vertical-align: top;
    font-size: 13px
}

.lightboxprezzostart {
    text-align: left;
    margin-top: 15px;
    margin-bottom: 15px;
    color: #e300a4;
    font-size: 16px
}

.barrato {
    text-decoration: line-through
}

.font-bold {
    font-weight: 700 !important
}

.lightboxslidetext {
    display: none;
    padding: 20px
}

.spedizioneiconatesto {
    background-image: url(/images/common/spedizioneicona.png);
    background-repeat: no-repeat;
    padding-left: 70px;
    height: 50px;
    font-size: 14px;
    vertical-align: central;
    padding-top: 15px
}

.table-formati {
    border: solid 1px #dcdcdc
}

.lightboxformatotext {
    font-size: 14px;
    margin: 10px 0 25px
}

#btloginpopup {
    width: 100%;
    margin-top: 25px;
    margin-bottom: 20px
}

.oscura {
    z-index: 1000;
    /*background-image: url(/images/common/oscura.png);*/
    position: absolute;
    height: 100%;
    top: 0;
    left: 0;
    width: 100%
}

#loginpopup {
    z-index: 1001;
    width: 300px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%)
}

.btn-registrati, .oscura {
    width: 100%
}

.popuptitolo {
    font-weight: 700;
    margin-bottom: 10px
}

#loginpopupcontainer {
    background-color: #fff;
    border-radius: 10px;
    /*box-shadow: rgba(62,62,62,.5) 5px 5px 10px;*/
    padding: 20px
}

.btpopchiudi {
    position: absolute;
    right: -20px;
    top: -20px;
    cursor: pointer
}

.errorlogred {
    font-size: 10px;
    padding-top: 20px;
    color: red
}

#infopopup {
    z-index: 1001;
    width: 300px;
    position: fixed;
    top: 50%;
    left: 50%;
    margin-left: -150px;
    margin-top: -150px;
    display: none
}

#infopopupcontainer {
    background-color: #fff;
    border-radius: 10px;
    box-shadow: rgba(62,62,62,.5) 5px 5px 10px;
    padding: 20px
}

#loadingpopup, .infopopbtncontainer {
    text-align: center;
    margin-top: 20px
}

    .infopopbtncontainer a {
        margin: 0 5px
    }

.messagepopupgliph {
    margin-bottom: 20px;
    text-align: center
}

.infopopmsg {
    font-size: 13px;
    text-align: center
}

#loadingpopup {
    z-index: 11;
    width: 250px;
    height: 70px;
    position: fixed;
    top: 50%;
    left: 50%;
    margin-left: -125px;
    margin-top: -35px;
    background-color: #fff;
    border-radius: 10px;
    box-shadow: rgba(62,62,62,.5) 5px 5px 10px;
    padding: 10px
}

#cartaddedpopup, #pop5iscritti {
    z-index: 1002;
    position: fixed;
    top: 50%;
    left: 50%
}

#pop5iscritti {
    background-color: #fff;
    border-radius: 10px;
    box-shadow: rgba(62,62,62,.5) 5px 5px 10px;
    transform: translate(-50%,-50%);
    padding: 15px;
    width: 400px;
    min-height: 300px
}

#cartaddedpopup {
    width: 350px;
    min-height: 180px;
    margin-left: -175px;
    margin-top: -150px
}

#cartaddedpopupcontainer {
    width: 350px;
    min-height: 180px;
    background-color: #fff;
    border-radius: 10px;
    box-shadow: rgba(62,62,62,.5) 5px 5px 10px;
    padding: 20px
}

.cartaddedpopupproduct, .cartaddedpopuptitle {
    text-align: center;
    font-size: 14px;
    padding: 10px
}

.cartaddedpopuptitle {
    font-weight: 700;
    margin-bottom: 10px
}

.cartaddedpopupproduct {
    background-color: #f1f1f1;
    border-radius: 5px;
    margin-bottom: 20px;
    min-height: 30px
}

.cookiebar {
    background-color: #363636;
    color: #fff;
    padding: 20px;
    display: none;
    z-index: 10000000;
    position: fixed;
    width: 100%;
    top: 0
}

    .cookiebar .container {
        margin: auto;
        width: 1100px
    }

    .cookiebar a {
        color: #ff6a00
    }

.btokcookies {
    border-radius: 3px;
    background-color: #ff6a00;
    color: #fff !important;
    padding: 5px;
    cursor: pointer;
    margin-right: 10px
}

.nascondi {
    display: none
}

.slide1 {
    text-decoration: none;
    font-size: 28px;
    line-height: 120%
}

.slide2 {
    text-decoration: none;
    font-size: 18px
}



/*servono per label griglia delle t-shirt*/
.grid-container {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 10px;
    margin: 20px;
    align-items: center;
}
/* Stile per ogni cella della griglia */
.grid-item {
    padding: 10px;
    border: 1px solid #ccc;
    text-align: center;
}
/* Stile per le celle di intestazione */
.grid-header {
    background-color: #f0f0f0;
    font-weight: bold;
}
/* Stile per le caselle di testo */
.grid-item input[type="text"] {
    width: 80%;
    padding: 5px;
}

/*css per plastificazione nella sezione adesivi*/
.plastificazione-grid {
    display: inline-grid; /* fondamentale */
    grid-template-columns: repeat(3, max-content);
    gap: 8px 30px;
    margin-top: 8px;
}

.plast-option {
    display: flex;
    align-items: center;
    min-height: 30px;
    cursor: pointer;
    margin: 0;
    padding: 4px 0;
    border-bottom: 1px solid #eee;
    color: #000 !important; /* testo nero */
    white-space: nowrap; /* una sola riga */
}

    .plast-option input[type="radio"] {
        margin-right: 8px;
        flex-shrink: 0; /* evita che si schiacci */
    }

/* Ripristina la formattazione HTML base dopo il reset CSS globale */
b,
strong {
    font-weight: 700 !important;
}

h2 {
    font-size: 22px;
    font-weight: 700;
    line-height: 130%;
    margin: 20px 0 12px;
}

h3 {
    font-size: 18px;
    font-weight: 700;
    line-height: 130%;
    margin: 18px 0 10px;
}

hr {
    border: 0;
    border-top: 1px solid #dcdcdc;
    margin: 22px 0;
}
