/* Dreamsetup Product Info Tiles v0.3.6 — visual refresh only */
/* The HTML, data attributes and click behaviour remain unchanged. */
.single-product .summary .ds-product-info-tiles,
.single-product .entry-summary .ds-product-info-tiles,
.single-product .summary.entry-summary .ds-product-info-tiles{
    display:grid !important;
    width:100% !important;
    max-width:100% !important;
    flex:0 0 100% !important;
    flex-basis:100% !important;
    min-width:100% !important;
}

.ds-product-info-tiles{
    --ds-purple:#9800ff;
    --ds-ink:#172033;
    --ds-muted:#7c8492;
    --ds-line:#e1e3e8;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0;
    margin:18px 0 8px;
    width:100% !important;
    max-width:100% !important;
    flex:0 0 100% !important;
    flex-basis:100% !important;
    align-self:stretch !important;
    box-sizing:border-box;
    clear:both;
    grid-column:1 / -1;
    border:1px solid var(--ds-line);
    border-radius:12px;
    background:#fff;
    overflow:hidden;
}

.ds-info-tile{
    position:relative;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:flex-start;
    gap:8px;
    width:100%;
    min-height:104px;
    padding:15px 18px 14px;
    border:0;
    border-left:1px solid var(--ds-line);
    border-radius:0;
    background:#fff;
    color:var(--ds-ink);
    text-align:left;
    box-shadow:none;
    box-sizing:border-box;
}
.ds-info-tile:first-child{border-left:0}
.ds-info-tile:nth-child(n+3){border-top:1px solid var(--ds-line)}
button.ds-info-tile{font:inherit;cursor:pointer}
a.ds-info-tile{font:inherit;text-decoration:none;color:var(--ds-ink);cursor:pointer}
.ds-info-tile--clickable{transition:background .18s ease,color .18s ease}
.ds-info-tile--clickable:hover{transform:none;box-shadow:none;background:#fcfbff}
.ds-info-tile--clickable:focus-visible{
    outline:2px solid rgba(152,0,255,.45);
    outline-offset:-3px;
    z-index:2;
}

/* Technical numbering — purely visual; no change to tile IDs or JS. */
.ds-info-tile::before{
    counter-increment:ds-info-tile;
    content:counter(ds-info-tile, decimal-leading-zero);
    display:block;
    color:#a2a8b2;
    font-size:10px;
    line-height:1;
    font-weight:700;
    letter-spacing:.14em;
}
.ds-product-info-tiles{counter-reset:ds-info-tile}

.ds-info-tile__icon{
    position:absolute;
    top:15px;
    right:17px;
    width:30px;
    height:30px;
    min-width:30px;
    border-radius:8px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#f5efff;
    font-size:16px;
    line-height:1;
    filter:grayscale(.75);
    opacity:.82;
}
.ds-info-tile__icon img.emoji{
    width:16px !important;
    height:16px !important;
    margin:0 !important;
}
.ds-info-tile__copy{
    display:flex;
    flex-direction:column;
    gap:4px;
    min-width:0;
    margin-top:1px;
    padding-right:34px;
}
.ds-info-tile__copy strong{
    color:var(--ds-ink);
    font-size:12px;
    line-height:1.25;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.045em;
}
.ds-info-tile__copy span{
    color:var(--ds-muted);
    font-size:12px;
    line-height:1.4;
    opacity:1;
}
.ds-info-tile__arrow{
    position:absolute;
    right:18px;
    bottom:14px;
    margin:0;
    color:var(--ds-purple);
    font-size:20px;
    line-height:1;
    opacity:.75;
    transition:transform .18s ease,opacity .18s ease;
}
.ds-info-tile--clickable:hover .ds-info-tile__arrow{transform:translateX(2px);opacity:1}

.ds-info-overlay{
    position:fixed;inset:0;background:rgba(0,0,0,.42);z-index:99998;
    opacity:0;transition:opacity .22s ease;
}
.ds-info-drawer{
    position:fixed;top:0;right:0;width:min(460px,92vw);height:100dvh;
    background:#fff;z-index:99999;box-shadow:-12px 0 40px rgba(0,0,0,.16);
    transform:translateX(105%);transition:transform .28s cubic-bezier(.2,.75,.25,1);
    overflow:auto;
}
.ds-info-drawer.is-open{transform:translateX(0)}
.ds-info-overlay.is-open{opacity:1}
.ds-info-drawer__close{
    position:absolute;
    top:18px;
    right:18px;
    width:44px;
    height:44px;
    padding:0;
    border:1px solid rgba(20,28,45,.12);
    border-radius:50%;
    background:#fff;
    color:#172033;
    font-family:Arial,sans-serif;
    font-size:27px;
    font-weight:400;
    line-height:42px;
    text-align:center;
    cursor:pointer;
    z-index:2;
    box-shadow:0 4px 14px rgba(0,0,0,.10);
    transition:background .18s ease,transform .18s ease,box-shadow .18s ease,color .18s ease;
}
.ds-info-drawer__close:hover{
    background:#172033;
    color:#fff;
    transform:scale(1.04);
    box-shadow:0 6px 18px rgba(0,0,0,.16);
}
.ds-info-drawer__close:focus-visible{
    outline:2px solid #172033;
    outline-offset:3px;
}
.ds-info-drawer__content{padding:78px 34px 42px}
.ds-info-panel__icon{font-size:30px;margin-bottom:14px}
.ds-info-panel h2{font-size:28px;line-height:1.15;margin:0 0 18px}
.ds-info-panel__body{font-size:15px;line-height:1.7}
.ds-info-panel__body p{margin:0 0 14px}

.ds-info-video{
    position:relative;
    width:100%;
    aspect-ratio:16/9;
    margin-top:22px;
    overflow:hidden;
    border-radius:14px;
    background:#111;
}
.ds-info-video iframe{
    display:block;
    width:100%;
    height:100%;
    border:0;
}

body.ds-drawer-open{overflow:hidden}

@media (max-width:767px){
    .ds-product-info-tiles{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}
    .ds-info-tile{min-height:108px;padding:15px 14px 14px}
    .ds-info-tile:nth-child(odd){border-left:0}
    .ds-info-tile:nth-child(n+3){border-top:1px solid var(--ds-line)}
    .ds-info-tile__icon{top:13px;right:13px}
    .ds-info-tile__copy{padding-right:28px}
    .ds-info-drawer{width:90vw;max-width:90vw;top:0;right:0}
    .ds-info-drawer__content{padding:74px 22px 34px}
    .ds-info-panel h2{font-size:24px}
}

@media (max-width:480px){
    .ds-product-info-tiles{grid-template-columns:1fr}
    .ds-info-tile{border-left:0 !important;min-height:88px;padding:14px}
    .ds-info-tile + .ds-info-tile{border-top:1px solid var(--ds-line)}
}
