/* Heikaya v6.20.17 — product-page gift wrapping redesign */
body.single-product .lumiere-gift-wrap,
body.single-product .lumiere-gift-wrap__style{
    box-sizing:border-box!important;
    width:100%!important;
    margin:14px 0 0!important;
    border:1px solid rgba(21,18,15,.15)!important;
    border-radius:0!important;
    background:#fffdf9!important;
    color:#15120f!important;
    box-shadow:none!important;
}
body.single-product .lumiere-gift-wrap__toggle{
    display:grid!important;
    grid-template-columns:24px minmax(0,1fr) auto!important;
    gap:13px!important;
    align-items:center!important;
    width:100%!important;
    margin:0!important;
    padding:16px!important;
    cursor:pointer!important;
}
body.single-product .lumiere-gift-wrap__toggle input{
    position:absolute!important;
    opacity:0!important;
    pointer-events:none!important;
}
body.single-product .lumiere-gift-wrap__control{
    display:grid!important;
    place-items:center!important;
    width:22px!important;
    height:22px!important;
    border:1px solid rgba(21,18,15,.45)!important;
    background:#fff!important;
    transition:.18s ease!important;
}
body.single-product .lumiere-gift-wrap__control i{
    width:8px!important;
    height:5px!important;
    border-left:1.5px solid transparent!important;
    border-bottom:1.5px solid transparent!important;
    transform:rotate(-45deg) translate(1px,-1px)!important;
}
body.single-product .lumiere-gift-wrap__toggle input:checked + .lumiere-gift-wrap__control{
    border-color:#15120f!important;
    background:#15120f!important;
}
body.single-product .lumiere-gift-wrap__toggle input:checked + .lumiere-gift-wrap__control i{
    border-color:#fffdf9!important;
}
body.single-product .lumiere-gift-wrap__copy{display:block!important;min-width:0!important}
body.single-product .lumiere-gift-wrap__copy small,
body.single-product .lumiere-gift-wrap__style-head small,
body.single-product .lumiere-gift-wrap__style-copy small{
    display:block!important;
    margin:0 0 4px!important;
    color:#777068!important;
    font:700 7px/1 Montserrat,Arial,sans-serif!important;
    letter-spacing:.15em!important;
    text-transform:uppercase!important;
}
body.single-product .lumiere-gift-wrap__copy b{
    display:block!important;
    color:#15120f!important;
    font:600 13px/1.25 Montserrat,Arial,sans-serif!important;
}
body.single-product .lumiere-gift-wrap__copy em{
    display:block!important;
    margin-top:5px!important;
    color:#6f6861!important;
    font:400 9.5px/1.45 Montserrat,Arial,sans-serif!important;
    font-style:normal!important;
}
body.single-product .lumiere-gift-wrap__price{
    align-self:start!important;
    color:#15120f!important;
    font:700 8px/1.2 Montserrat,Arial,sans-serif!important;
    letter-spacing:.08em!important;
    text-transform:uppercase!important;
    white-space:nowrap!important;
}
body.single-product .lumiere-gift-wrap__message{
    margin:0 16px 16px!important;
    padding:14px!important;
    border:1px solid rgba(21,18,15,.12)!important;
    background:#fff!important;
}
body.single-product .lumiere-gift-wrap__message[hidden]{display:none!important}
body.single-product .lumiere-gift-wrap__message-head{
    display:flex!important;
    justify-content:space-between!important;
    align-items:center!important;
    margin-bottom:9px!important;
}
body.single-product .lumiere-gift-wrap__message-head label{
    margin:0!important;
    color:#15120f!important;
    font:600 10px/1.2 Montserrat,Arial,sans-serif!important;
}
body.single-product .lumiere-gift-wrap__message-head span{
    color:#777068!important;
    font:700 7px/1 Montserrat,Arial,sans-serif!important;
    letter-spacing:.12em!important;
    text-transform:uppercase!important;
}
body.single-product .lumiere-gift-wrap__message textarea{
    display:block!important;
    width:100%!important;
    min-height:92px!important;
    margin:0!important;
    padding:12px!important;
    border:1px solid rgba(21,18,15,.14)!important;
    border-radius:0!important;
    background:#fffdf9!important;
    color:#15120f!important;
    box-shadow:none!important;
    font:400 11px/1.55 Montserrat,Arial,sans-serif!important;
    resize:vertical!important;
}
body.single-product .lumiere-gift-wrap__style{
    padding:16px!important;
    display:block!important;
}
body.single-product .lumiere-gift-wrap__style[hidden]{display:none!important}
body.single-product .lumiere-gift-wrap__style:not(.is-active){display:none!important}
body.single-product .lumiere-gift-wrap__style-head{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:14px!important;
    margin:0 0 14px!important;
}
body.single-product .lumiere-gift-wrap__style-head strong{
    display:block!important;
    color:#15120f!important;
    font:600 12px/1.3 Montserrat,Arial,sans-serif!important;
}
body.single-product .lumiere-gift-wrap__style-link{
    flex:0 0 auto!important;
    margin:0!important;
    padding:8px 11px!important;
    border:1px solid #15120f!important;
    background:#15120f!important;
    color:#fffdf9!important;
    font:700 7px/1 Montserrat,Arial,sans-serif!important;
    letter-spacing:.12em!important;
    text-decoration:none!important;
    text-transform:uppercase!important;
}
body.single-product .lumiere-gift-wrap__style-link:hover{
    background:#fffdf9!important;
    color:#15120f!important;
}
body.single-product .lumiere-gift-wrap__style-preview{
    display:grid!important;
    grid-template-columns:86px minmax(0,1fr)!important;
    gap:13px!important;
    align-items:center!important;
    margin:0!important;
    padding:13px!important;
    border:1px solid rgba(21,18,15,.12)!important;
    background:#fff!important;
}
body.single-product .lumiere-gift-wrap__style-thumbs{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:4px!important;
    width:86px!important;
}
body.single-product .lumiere-gift-wrap__style-thumbs>span{
    display:grid!important;
    place-items:center!important;
    width:41px!important;
    height:48px!important;
    overflow:hidden!important;
    background:#f5f2ed!important;
}
body.single-product .lumiere-gift-wrap__style-thumbs img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    background:#fff!important;
}
body.single-product .lumiere-gift-wrap__style-thumbs i{
    color:#777068!important;
    font:700 7px/1 Montserrat,Arial,sans-serif!important;
    font-style:normal!important;
}
body.single-product .lumiere-gift-wrap__style-name{
    display:block!important;
    margin:0!important;
    color:#15120f!important;
    font:600 10.5px/1.4 Montserrat,Arial,sans-serif!important;
}
body.single-product .lumiere-gift-wrap__style-name:empty:before{
    content:'No wrapping selected yet'!important;
    color:#777068!important;
    font-weight:500!important;
}
body.single-product .lumiere-gift-wrap__style-help{
    display:block!important;
    margin-top:5px!important;
    color:#777068!important;
    font:400 8.5px/1.45 Montserrat,Arial,sans-serif!important;
    font-style:normal!important;
}
body.single-product .lumiere-gift-wrap__style.has-selection .lumiere-gift-wrap__style-help{display:none!important}
body.single-product .lumiere-gift-wrap__notice{
    margin-top:10px!important;
    padding:9px 10px!important;
    border-left:2px solid #b42318!important;
    background:#fff5f4!important;
    color:#b42318!important;
    font:600 9px/1.45 Montserrat,Arial,sans-serif!important;
}
body.single-product .lumiere-gift-wrap__notice[hidden]{display:none!important}

/* Gift-wrap controls belong with the purchase controls on every viewport. */
body.single-product .lumiere-gallery-gift-wrap{display:none!important}

@media(max-width:767px){
    body.single-product .lumiere-gift-wrap,
    body.single-product .lumiere-gift-wrap__style{margin-top:12px!important}
    body.single-product .lumiere-gift-wrap__toggle{
        grid-template-columns:22px minmax(0,1fr)!important;
        gap:11px!important;
        padding:14px!important;
    }
    body.single-product .lumiere-gift-wrap__price{
        grid-column:2!important;
        margin-top:2px!important;
    }
    body.single-product .lumiere-gift-wrap__copy b{font-size:12px!important}
    body.single-product .lumiere-gift-wrap__copy em{font-size:9px!important}
    body.single-product .lumiere-gift-wrap__style-head{align-items:center!important}
    body.single-product .lumiere-gift-wrap__style-link{padding:8px 9px!important;font-size:6.5px!important}
    body.single-product .lumiere-gift-wrap__style-preview{grid-template-columns:74px minmax(0,1fr)!important;gap:10px!important;padding:10px!important}
    body.single-product .lumiere-gift-wrap__style-thumbs{width:74px!important}
    body.single-product .lumiere-gift-wrap__style-thumbs>span{width:35px!important;height:43px!important}
}

/* ============================================================
   Heikaya v6.20.18 — integrated product gift service
   The complete gift service is one clean panel beneath the LEFT gallery,
   not two separate boxes beside the purchase controls.
   ============================================================ */

body.single-product .lumiere-gallery-gift-wrap {
    display: block !important;
    width: 100% !important;
    margin: 18px 0 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(21,18,15,.15) !important;
    border-radius: 0 !important;
    background: #fffdf9 !important;
    box-shadow: none !important;
    overflow: hidden !important;
}

body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap,
body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__style {
    width: 100% !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__toggle {
    padding: 17px 18px !important;
}

body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__style {
    padding: 0 18px 18px !important;
    border-top: 1px solid rgba(21,18,15,.11) !important;
}

body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__style:not(.is-active) {
    display: none !important;
}

/* Remove the repeated second title. The action + selected options are enough. */
body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__style-head {
    justify-content: flex-end !important;
    margin: 0 !important;
    padding: 14px 0 12px !important;
}

body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__style-head > div {
    display: none !important;
}

body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__style-link,
body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__style-link:visited {
    padding: 9px 13px !important;
    border: 1px solid #15120f !important;
    background: #15120f !important;
    color: #fff !important;
    box-shadow: none !important;
    text-decoration: none !important;
}

body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__style-link:hover,
body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__style-link:focus-visible {
    border-color: #15120f !important;
    background: #fffdf9 !important;
    color: #15120f !important;
    box-shadow: none !important;
    outline-color: #15120f !important;
}

body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__style-preview {
    grid-template-columns: 104px minmax(0,1fr) !important;
    gap: 15px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__style-thumbs {
    width: 104px !important;
    gap: 6px !important;
}

body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__style-thumbs > span {
    width: 49px !important;
    height: 58px !important;
    border: 1px solid rgba(21,18,15,.10) !important;
    background: #fff !important;
}

body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__style-copy small {
    margin-bottom: 6px !important;
}

body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__style-name {
    font-size: 11px !important;
    line-height: 1.5 !important;
}

body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__message {
    margin: 16px 0 0 !important;
    padding: 16px 0 0 !important;
    border: 0 !important;
    border-top: 1px solid rgba(21,18,15,.11) !important;
    background: transparent !important;
}

body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__message textarea {
    min-height: 92px !important;
    border-color: rgba(21,18,15,.18) !important;
    background: #fff !important;
}

body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__notice {
    margin: 14px 0 0 !important;
}

/* Do not leave duplicate empty purchase-column spacing after JS relocates it. */
body.single-product .summary > .lumiere-gift-wrap,
body.single-product .summary > .lumiere-gift-wrap__style {
    margin-top: 12px !important;
}

@media (min-width: 901px) {
    body.single-product .woocommerce-product-gallery.lumiere-gallery-ready > .lumiere-gallery-gift-wrap,
    body.single-product .woocommerce-product-gallery > .lumiere-gallery-gift-wrap {
        grid-column: 1 / -1 !important;
        grid-row: 2 !important;
        float: none !important;
        clear: none !important;
        width: 100% !important;
        margin: 18px 0 0 !important;
    }
}

@media (max-width: 900px) {
    body.single-product .woocommerce-product-gallery > .lumiere-gallery-gift-wrap {
        width: 100% !important;
        margin: 14px 0 0 !important;
    }
}

@media (max-width: 767px) {
    body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__toggle {
        padding: 15px !important;
    }

    body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__style {
        padding: 0 15px 15px !important;
    }

    body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__style-head {
        padding: 13px 0 11px !important;
    }

    body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__style-preview {
        grid-template-columns: 88px minmax(0,1fr) !important;
        gap: 12px !important;
    }

    body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__style-thumbs {
        width: 88px !important;
        gap: 4px !important;
    }

    body.single-product .lumiere-gallery-gift-wrap .lumiere-gift-wrap__style-thumbs > span {
        width: 42px !important;
        height: 50px !important;
    }
}
/* Heikaya v6.20.20 — saved gift wrapping confirmation on product pages. */

body.single-product .lumiere-gift-wrap__saved[hidden] {
    display: none !important;
}

body.single-product .lumiere-gift-wrap__saved {
    display: grid !important;
    grid-template-columns: 34px minmax(0, 1fr) auto !important;
    gap: 12px !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 15px 18px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(21,18,15,.12) !important;
    background: #f6f3ed !important;
    color: #15120f !important;
    box-shadow: none !important;
}

body.single-product .lumiere-gift-wrap__saved-icon {
    position: relative !important;
    display: grid !important;
    place-items: center !important;
    width: 32px !important;
    height: 32px !important;
    border: 1px solid #15120f !important;
    border-radius: 50% !important;
    background: #15120f !important;
}

body.single-product .lumiere-gift-wrap__saved-icon i {
    position: relative !important;
    display: block !important;
    width: 12px !important;
    height: 7px !important;
    border-left: 1.7px solid #fffdf9 !important;
    border-bottom: 1.7px solid #fffdf9 !important;
    transform: translateY(-1px) rotate(-45deg) !important;
}

body.single-product .lumiere-gift-wrap__saved-copy {
    display: block !important;
    min-width: 0 !important;
}

body.single-product .lumiere-gift-wrap__saved-copy small,
body.single-product .lumiere-gift-wrap__saved-copy strong,
body.single-product .lumiere-gift-wrap__saved-copy span,
body.single-product .lumiere-gift-wrap__saved-copy em {
    display: block !important;
}

body.single-product .lumiere-gift-wrap__saved-copy small {
    margin: 0 0 4px !important;
    color: #6e6861 !important;
    font: 700 7px/1 Montserrat,Arial,sans-serif !important;
    letter-spacing: .15em !important;
    text-transform: uppercase !important;
}

body.single-product .lumiere-gift-wrap__saved-copy strong {
    margin: 0 !important;
    color: #15120f !important;
    font: 600 12px/1.3 Montserrat,Arial,sans-serif !important;
}

body.single-product .lumiere-gift-wrap__saved-choice {
    margin: 4px 0 0 !important;
    overflow: hidden !important;
    color: #15120f !important;
    font: 500 9.5px/1.4 Montserrat,Arial,sans-serif !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

body.single-product .lumiere-gift-wrap__saved-copy em {
    margin: 5px 0 0 !important;
    color: #6e6861 !important;
    font: 400 9px/1.45 Montserrat,Arial,sans-serif !important;
    font-style: normal !important;
}

body.single-product .lumiere-gift-wrap__saved-edit,
body.single-product .lumiere-gift-wrap__saved-edit:visited {
    align-self: center !important;
    padding: 8px 10px !important;
    border: 1px solid rgba(21,18,15,.30) !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #15120f !important;
    box-shadow: none !important;
    font: 700 7px/1 Montserrat,Arial,sans-serif !important;
    letter-spacing: .11em !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    transition: background .18s ease,color .18s ease,border-color .18s ease !important;
}

body.single-product .lumiere-gift-wrap__saved-edit:hover,
body.single-product .lumiere-gift-wrap__saved-edit:focus-visible {
    border-color: #15120f !important;
    background: #15120f !important;
    color: #fffdf9 !important;
    outline: none !important;
}

/* When a saved presentation exists, subtly strengthen the actual opt-in row. */
body.single-product .lumiere-gift-wrap.has-saved-selection .lumiere-gift-wrap__toggle {
    background: #fffdf9 !important;
}

body.single-product .lumiere-gift-wrap.has-saved-selection .lumiere-gift-wrap__toggle:hover {
    background: #fff !important;
}

@media (max-width: 767px) {
    body.single-product .lumiere-gift-wrap__saved {
        grid-template-columns: 30px minmax(0,1fr) !important;
        gap: 10px !important;
        padding: 14px 15px !important;
    }

    body.single-product .lumiere-gift-wrap__saved-icon {
        width: 29px !important;
        height: 29px !important;
    }

    body.single-product .lumiere-gift-wrap__saved-edit {
        grid-column: 2 !important;
        justify-self: start !important;
        margin-top: 2px !important;
        padding: 7px 9px !important;
    }

    body.single-product .lumiere-gift-wrap__saved-choice {
        white-space: normal !important;
    }
}
