.glam-review-gallery,.gva-rs-product-reviews{box-sizing:border-box;max-width:1180px;margin:48px auto;padding:28px;background:#fff;color:#241d22;font-family:inherit}.glam-review-gallery *,.gva-rs-product-reviews *{box-sizing:border-box}.gva-rs-product-reviews{border-top:1px solid #eadfe4}.gva-rs-heading h2{margin:0 0 22px;font-size:clamp(24px,3vw,34px);letter-spacing:.02em}.gva-rs-summary{display:flex;gap:48px;align-items:center;padding:22px;background:#fcf8fa;border-radius:14px}.gva-rs-average{min-width:175px;text-align:center}.gva-rs-average strong{font-size:48px;line-height:1}.gva-rs-average>span{color:#8b7b83}.gva-rs-average small{display:block;margin-top:8px;color:#6f6168}.gva-rs-stars{display:inline-flex;gap:2px;color:#d8cbd0;font-size:20px;white-space:nowrap}.gva-rs-stars .is-filled{color:#b8863d}.gva-rs-breakdown{flex:1;max-width:540px}.gva-rs-bar{display:grid;grid-template-columns:42px 1fr 30px;align-items:center;gap:8px;width:100%;padding:3px 0;border:0;background:none;color:inherit;cursor:pointer;text-align:left}.gva-rs-bar i{height:8px;background:#eadfe4;border-radius:8px;overflow:hidden}.gva-rs-bar b{display:block;height:100%;background:#b8863d;border-radius:8px}.gva-rs-bar em{font-style:normal;color:#6f6168;font-size:13px}.gva-rs-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:24px 0;flex-wrap:wrap}.gva-rs-filters{display:flex;gap:8px;flex-wrap:wrap}.gva-rs-filters button,.gva-rs-load-more{border:1px solid #d9cbd1;border-radius:999px;padding:9px 14px;background:#fff;color:#362a31;cursor:pointer}.gva-rs-filters button.is-active,.gva-rs-filters button:hover,.gva-rs-load-more:hover{background:#362a31;color:#fff;border-color:#362a31}.gva-rs-sort{font-size:14px;color:#6f6168}.gva-rs-sort select{margin-left:6px;padding:9px 28px 9px 10px;border:1px solid #d9cbd1;border-radius:8px;background:#fff}.gva-rs-list{display:grid;gap:16px}.gva-rs-card{padding:20px;border:1px solid #eadfe4;border-radius:14px;background:#fff}.gva-rs-card header{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.gva-rs-card header strong{font-size:16px}.gva-rs-card time{margin-left:auto;color:#85757e;font-size:13px}.gva-rs-verified{padding:4px 8px;border-radius:999px;background:#eef7ef;color:#28743c;font-size:12px}.gva-rs-content{margin-top:12px;line-height:1.65}.gva-rs-content p{margin:0}.gva-rs-photos{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}.gva-rs-photo{padding:0;border:0;background:none;cursor:zoom-in}.gva-rs-photo img{display:block;width:82px;height:82px;object-fit:cover;border-radius:9px}.gva-rs-load-more{display:block;margin:24px auto 0}.gva-rs-write{margin-top:32px;border-top:1px solid #eadfe4;padding-top:18px}.gva-rs-write summary{display:inline-block;cursor:pointer;font-weight:600;padding:12px 18px;border-radius:999px;background:#362a31;color:#fff}.gva-rs-form{padding:22px 0}.gva-rs-lightbox{position:fixed;z-index:99999;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(26,18,22,.86)}.gva-rs-lightbox img{max-width:min(94vw,1100px);max-height:90vh;object-fit:contain}.gva-rs-lightbox button{position:absolute;top:16px;right:22px;border:0;background:none;color:#fff;font-size:34px;cursor:pointer}@media (max-width:700px){.glam-review-gallery,.gva-rs-product-reviews{margin:28px 0;padding:18px 14px}.gva-rs-summary{display:block;padding:16px}.gva-rs-average{margin-bottom:20px}.gva-rs-card{padding:16px}.gva-rs-card time{width:100%;margin-left:0}.gva-rs-toolbar{align-items:stretch}.gva-rs-sort{width:100%}.gva-rs-sort select{width:100%}}
.glam-review-gallery__head{display:flex;justify-content:space-between;align-items:center;gap:16px}.glam-review-gallery__head h2{margin:0}.glam-review-gallery__controls{display:flex;gap:8px}.glam-review-gallery__controls button{width:38px;height:38px;border:1px solid #d9cbd1;border-radius:50%;background:#fff;cursor:pointer;font-size:24px}.glam-review-gallery__viewport{overflow:hidden}.glam-review-gallery__track{display:flex;gap:14px;overflow-x:auto;scroll-behavior:smooth;padding:18px 0}.glam-review-card{flex:0 0 220px;padding:0;border:1px solid #eadfe4;border-radius:12px;background:#fff;text-align:left;overflow:hidden;cursor:pointer}.glam-review-card__image-wrap,.glam-review-card__image-wrap img{display:block;width:100%;height:180px;object-fit:cover}.glam-review-card__meta{display:grid;gap:4px;padding:12px}.glam-review-card__stars{color:#b8863d}.glam-review-card__product{font-weight:600}.glam-review-card__author{color:#85757e;font-size:13px}.glam-review-modal{position:fixed;z-index:99998;inset:0;display:flex;align-items:center;justify-content:center;padding:24px}.glam-review-modal__backdrop{position:absolute;inset:0;background:rgba(26,18,22,.86)}.glam-review-modal__dialog{position:relative;z-index:1;max-width:920px;width:100%;max-height:90vh;overflow:auto;background:#fff;border-radius:14px;padding:20px}.glam-review-modal__close{position:absolute;right:12px;top:8px;border:0;background:none;font-size:30px;cursor:pointer}.glam-review-modal__grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.glam-review-modal__photo img{width:100%;max-height:70vh;object-fit:contain}.glam-review-modal__productline{display:flex;gap:12px;align-items:center}.glam-review-modal__cta{display:inline-block;margin-top:18px;padding:10px 16px;border-radius:999px;background:#362a31;color:#fff;text-decoration:none}@media (max-width:700px){.glam-review-modal__grid{grid-template-columns:1fr}.glam-review-modal__photo img{max-height:45vh}}
/* 2.6.1: Author display rules must not override the HTML hidden attribute. */
.glam-review-modal[hidden],.gva-rs-empty[hidden],.glam-review-modal [hidden]{display:none!important}
.gva-rs-preview{display:inline-block;padding:4px 8px;border:1px solid #d9cbd1;border-radius:999px;font-size:12px;color:inherit}
.glam-review-modal__productline>img{width:56px;height:56px;object-fit:cover}
.glam-review-gallery__track{overscroll-behavior-x:contain}
.gva-rs-product-reviews .comment-form-rating select{max-width:100%;min-width:160px}
@media (prefers-reduced-motion:reduce){.glam-review-gallery__track{scroll-behavior:auto}}
.glam-review-modal__byline{display:flex;gap:.6em;flex-wrap:wrap;margin-top:8px}

/* Keep tab navigation visible; only confirmed duplicate CONTENT is hidden by JS. */
.gva-rs-theme-duplicate[hidden],.gva-rs-load-more[hidden],.gva-rs-load-error[hidden]{display:none!important}
.woocommerce-tabs #tab-reviews .gva-rs-product-reviews{margin:0;max-width:none;border-top:0}
a.gva-rs-load-more{width:fit-content;text-align:center;text-decoration:none}
.gva-rs-product-reviews[aria-busy="true"] .gva-rs-load-more{opacity:.6;pointer-events:none}
.gva-rs-load-error{margin-top:16px}


/* 2.6.3: Homepage gallery readability + controls. Scoped to this plugin. */
.glam-review-gallery{
    position:relative;
    max-width:1180px;
    margin:48px auto;
    padding:28px;
    background:#fff;
    color:#171717;
}
.glam-review-gallery__head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-bottom:2px;
}
.glam-review-gallery__head h2{
    margin:0!important;
    color:#111!important;
    font-size:clamp(26px,2.3vw,34px)!important;
    line-height:1.2!important;
    font-weight:500!important;
    letter-spacing:-.02em!important;
}
.glam-review-gallery__controls{
    display:flex;
    align-items:center;
    gap:10px;
    flex:0 0 auto;
}
.glam-review-gallery__controls[hidden]{display:none!important}
.glam-review-gallery__controls button{
    -webkit-appearance:none!important;
    appearance:none!important;
    display:grid!important;
    place-items:center!important;
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    max-height:44px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid #111!important;
    border-radius:999px!important;
    background:#111!important;
    color:#fff!important;
    box-shadow:none!important;
    cursor:pointer!important;
    line-height:1!important;
    opacity:1!important;
    transform:none!important;
    transition:background .2s ease,color .2s ease,transform .2s ease!important;
}
.glam-review-gallery__controls button:hover{
    background:#fff!important;
    color:#111!important;
    transform:translateY(-1px)!important;
}
.glam-review-gallery__controls button:focus-visible{
    outline:2px solid #111!important;
    outline-offset:3px!important;
}
.glam-review-gallery__controls button svg{
    display:block!important;
    width:22px!important;
    height:22px!important;
    margin:0!important;
    padding:0!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:2.25!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
    pointer-events:none!important;
}
.glam-review-gallery__viewport{overflow:hidden;outline:none}
.glam-review-gallery__track{
    display:flex;
    gap:18px;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-behavior:smooth;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
    -ms-overflow-style:none;
    padding:18px 0 4px;
}
.glam-review-gallery__track::-webkit-scrollbar{display:none}
.glam-review-card{
    position:relative;
    flex:0 0 clamp(270px,28vw,310px)!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    align-self:stretch!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    border:1px solid #e8e8e8!important;
    border-radius:16px!important;
    background:#fff!important;
    color:#171717!important;
    box-shadow:0 3px 14px rgba(0,0,0,.035)!important;
    text-align:left!important;
    text-transform:none!important;
    letter-spacing:normal!important;
    line-height:1.45!important;
    overflow:hidden!important;
    cursor:pointer!important;
    scroll-snap-align:start;
    transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.glam-review-card:hover{
    transform:translateY(-2px);
    border-color:#d7d7d7!important;
    box-shadow:0 8px 24px rgba(0,0,0,.075)!important;
}
.glam-review-card:focus-visible{
    outline:2px solid #111!important;
    outline-offset:3px!important;
}
.glam-review-card__image-wrap{
    display:block!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:#f5f5f5!important;
    box-shadow:none!important;
    overflow:hidden!important;
}
.glam-review-card__image-wrap img{
    display:block!important;
    width:100%!important;
    height:220px!important;
    min-height:220px!important;
    max-height:220px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    object-fit:cover!important;
}
.glam-review-card__meta{
    display:flex!important;
    flex:1 1 auto!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:9px!important;
    width:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:16px!important;
    border:0!important;
    border-radius:0!important;
    background:#fff!important;
    box-shadow:none!important;
    color:#171717!important;
}
.glam-review-card__stars,
.glam-review-card__product,
.glam-review-card__text,
.glam-review-card__byline,
.glam-review-card__author,
.glam-review-card__date{
    display:block!important;
    width:auto!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    text-decoration:none!important;
    text-transform:none!important;
    letter-spacing:normal!important;
}
.glam-review-card__stars{
    color:#b8863d!important;
    font-size:16px!important;
    line-height:1!important;
    white-space:nowrap!important;
}
.glam-review-card__product{
    color:#111!important;
    font-size:15px!important;
    line-height:1.35!important;
    font-weight:650!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
}
.glam-review-card__text{
    color:#444!important;
    font-size:14px!important;
    line-height:1.55!important;
    font-weight:400!important;
    white-space:normal!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:4!important;
    overflow:hidden!important;
}
.glam-review-card__byline{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    margin-top:auto!important;
    padding-top:4px!important;
}
.glam-review-card__author{
    color:#6f6168!important;
    font-size:12px!important;
    line-height:1.3!important;
    font-weight:700!important;
    white-space:normal!important;
}
.glam-review-card__date{
    color:#8b8b8b!important;
    font-size:11px!important;
    line-height:1.3!important;
    font-weight:400!important;
    white-space:nowrap!important;
}
.glam-review-card .gva-rs-preview{
    align-self:flex-start!important;
    margin:0!important;
    padding:4px 8px!important;
    border:1px solid #d9cbd1!important;
    border-radius:999px!important;
    background:#fff!important;
    color:#6f6168!important;
    font-size:11px!important;
    line-height:1.2!important;
}
@media (max-width:700px){
    .glam-review-gallery{margin:28px 0;padding:18px 14px}
    .glam-review-gallery__head{gap:12px;align-items:flex-start}
    .glam-review-gallery__head h2{font-size:25px!important}
    .glam-review-gallery__controls{gap:7px}
    .glam-review-gallery__controls button{
        width:40px!important;min-width:40px!important;max-width:40px!important;
        height:40px!important;min-height:40px!important;max-height:40px!important;
    }
    .glam-review-gallery__controls button svg{width:20px!important;height:20px!important}
    .glam-review-gallery__track{gap:12px;padding-top:14px}
    .glam-review-card{flex-basis:min(82vw,300px)!important}
    .glam-review-card__image-wrap img{height:205px!important;min-height:205px!important;max-height:205px!important}
    .glam-review-card__meta{padding:14px!important;gap:8px!important}
    .glam-review-card__text{-webkit-line-clamp:3!important}
}

/* 2.6.4: Product title in review modal stays clickable, without theme underline. */
.glam-review-modal .glam-review-modal__productline a[data-glam-product],
.glam-review-modal .glam-review-modal__productline a[data-glam-product]:hover,
.glam-review-modal .glam-review-modal__productline a[data-glam-product]:focus,
.glam-review-modal .glam-review-modal__productline a[data-glam-product]:active,
.glam-review-modal .glam-review-modal__productline a[data-glam-product]:visited {
    text-decoration: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}


/* 2.6.6: Keep the product CTA readable in all theme/link states. */
.glam-review-modal a.glam-review-modal__cta,
.glam-review-modal a.glam-review-modal__cta:link,
.glam-review-modal a.glam-review-modal__cta:visited,
.glam-review-modal a.glam-review-modal__cta:hover,
.glam-review-modal a.glam-review-modal__cta:focus,
.glam-review-modal a.glam-review-modal__cta:active {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 44px !important;
    padding: 10px 18px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #362a31 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    text-decoration: none !important;
    box-shadow: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    cursor: pointer !important;
}
.glam-review-modal a.glam-review-modal__cta:hover,
.glam-review-modal a.glam-review-modal__cta:focus-visible {
    filter: brightness(1.08);
    outline: 2px solid currentColor !important;
    outline-offset: 2px !important;
}


/* 2.6.7: Elegant luxury popup polish for GLAMAVERA. */
.glam-review-modal__dialog{
    max-width:980px !important;
    padding:26px 30px 30px !important;
    border:1px solid rgba(20,20,20,.08) !important;
    border-radius:4px !important;
    background:#fff !important;
    box-shadow:0 30px 90px rgba(0,0,0,.24) !important;
}
.glam-review-modal__grid{
    align-items:start !important;
    gap:30px !important;
}
.glam-review-modal__photo img{
    display:block !important;
    width:100% !important;
    border-radius:0 !important;
    background:#f7f7f7 !important;
}
.glam-review-modal__content{
    position:relative !important;
    min-width:0 !important;
    padding:8px 66px 24px 0 !important;
}
.glam-review-modal__productline{
    align-items:flex-start !important;
    gap:14px !important;
    margin:0 0 14px !important;
    min-width:0 !important;
}
.glam-review-modal__productline > img{
    width:48px !important;
    height:48px !important;
    flex:0 0 48px !important;
    object-fit:cover !important;
    border-radius:0 !important;
    background:#f5f5f5 !important;
}
.glam-review-modal .glam-review-modal__productline a[data-glam-product],
.glam-review-modal .glam-review-modal__productline a[data-glam-product]:hover,
.glam-review-modal .glam-review-modal__productline a[data-glam-product]:focus,
.glam-review-modal .glam-review-modal__productline a[data-glam-product]:active,
.glam-review-modal .glam-review-modal__productline a[data-glam-product]:visited{
    display:block !important;
    min-width:0 !important;
    color:#111 !important;
    font-size:18px !important;
    line-height:1.45 !important;
    font-weight:500 !important;
    letter-spacing:.01em !important;
    text-decoration:none !important;
    overflow-wrap:anywhere !important;
}
.glam-review-modal__stars{
    margin:14px 0 0 !important;
    color:#111 !important;
    font-size:16px !important;
    letter-spacing:2px !important;
}
.glam-review-modal__byline{
    display:flex !important;
    gap:8px !important;
    flex-wrap:wrap !important;
    margin:12px 0 8px !important;
    color:#4a4a4a !important;
    font-size:14px !important;
}
.glam-review-modal [data-glam-text]{
    margin-top:4px !important;
    color:#292929 !important;
    font-size:15px !important;
    line-height:1.7 !important;
}

/* Premium square close control. It has its own reserved space, so product text never sits underneath. */
.glam-review-modal__close{
    position:absolute !important;
    top:14px !important;
    right:14px !important;
    z-index:5 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:44px !important;
    min-width:44px !important;
    height:44px !important;
    min-height:44px !important;
    margin:0 !important;
    padding:0 0 3px !important;
    border:1px solid #111 !important;
    border-radius:2px !important;
    background:#111 !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    box-shadow:none !important;
    font-family:Arial,sans-serif !important;
    font-size:29px !important;
    font-weight:300 !important;
    line-height:1 !important;
    cursor:pointer !important;
    transition:transform .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease !important;
}
.glam-review-modal__close:hover,
.glam-review-modal__close:focus-visible{
    background:#fff !important;
    color:#111 !important;
    -webkit-text-fill-color:#111 !important;
    transform:translateY(-2px) !important;
    box-shadow:0 8px 20px rgba(0,0,0,.12) !important;
    outline:none !important;
}
.glam-review-modal__close:active{
    transform:translateY(0) scale(.97) !important;
}

/* Luxury rectangular product CTA: restrained, sharp and animated without looking playful. */
.glam-review-modal a.glam-review-modal__cta,
.glam-review-modal a.glam-review-modal__cta:link,
.glam-review-modal a.glam-review-modal__cta:visited,
.glam-review-modal a.glam-review-modal__cta:hover,
.glam-review-modal a.glam-review-modal__cta:focus,
.glam-review-modal a.glam-review-modal__cta:active{
    position:relative !important;
    z-index:2 !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:14px !important;
    min-height:48px !important;
    margin-top:22px !important;
    padding:0 20px !important;
    border:1px solid #111 !important;
    border-radius:2px !important;
    background:#111 !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    font-size:13px !important;
    line-height:1 !important;
    font-weight:600 !important;
    letter-spacing:.08em !important;
    text-transform:uppercase !important;
    text-decoration:none !important;
    box-shadow:none !important;
    opacity:1 !important;
    visibility:visible !important;
    cursor:pointer !important;
    transition:transform .2s ease,box-shadow .2s ease,background .2s ease,color .2s ease !important;
}
.glam-review-modal a.glam-review-modal__cta::after{
    content:'\2192' !important;
    display:inline-block !important;
    font-size:18px !important;
    line-height:1 !important;
    transition:transform .2s ease !important;
}
.glam-review-modal a.glam-review-modal__cta:hover,
.glam-review-modal a.glam-review-modal__cta:focus-visible{
    background:#fff !important;
    color:#111 !important;
    -webkit-text-fill-color:#111 !important;
    transform:translateY(-2px) !important;
    box-shadow:0 10px 24px rgba(0,0,0,.13) !important;
    outline:none !important;
}
.glam-review-modal a.glam-review-modal__cta:hover::after,
.glam-review-modal a.glam-review-modal__cta:focus-visible::after{
    transform:translateX(4px) !important;
}
.glam-review-modal a.glam-review-modal__cta:active{
    transform:translateY(0) !important;
    box-shadow:none !important;
}

@media (max-width:700px){
    .glam-review-modal{padding:12px !important;}
    .glam-review-modal__dialog{
        padding:18px 16px 20px !important;
        border-radius:3px !important;
    }
    .glam-review-modal__grid{gap:18px !important;}
    .glam-review-modal__content{
        padding:4px 0 8px !important;
    }
    .glam-review-modal__productline{
        padding-right:54px !important;
    }
    .glam-review-modal__close{
        top:10px !important;
        right:10px !important;
        width:40px !important;
        min-width:40px !important;
        height:40px !important;
        min-height:40px !important;
        font-size:27px !important;
    }
    .glam-review-modal a.glam-review-modal__cta,
    .glam-review-modal a.glam-review-modal__cta:link,
    .glam-review-modal a.glam-review-modal__cta:visited,
    .glam-review-modal a.glam-review-modal__cta:hover,
    .glam-review-modal a.glam-review-modal__cta:focus,
    .glam-review-modal a.glam-review-modal__cta:active{
        width:100% !important;
        min-height:50px !important;
    }
}
