/* ==========================================================================
   DivaProd - Single Product Frontend (Responsive Two-Column)
   Desktop ≥960: two-column (media left sticky + info right)
   Tablet 768-959: narrower two-column
   Mobile <768: single stacked column
   ========================================================================== */

:root {
    --dp-black: #111;
    --dp-white: #fff;
    --dp-gray-50: #fafafa;
    --dp-gray-100: #f5f5f5;
    --dp-gray-200: #e5e5e5;
    --dp-gray-400: #a3a3a3;
    --dp-gray-600: #525252;
    --dp-gray-800: #262626;
    --dp-accent: #e63946;
    --dp-green: #10b981;
    --dp-wa: #25d366;
    --dp-radius: 8px;
    --dp-transition: 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    --dp-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

.divaprod-single *, .divaprod-single *::before, .divaprod-single *::after { box-sizing: border-box; }

.divaprod-single {
    font-family: var(--dp-font);
    color: var(--dp-black);
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    position: relative;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 1.25rem;
    --dp-page-pad: 1.25rem;
}

/* ---------- Scroll Reveal ---------- */
.dp-reveal { opacity: 1; transform: none; transition: none; }
.dp-reveal.dp-visible { opacity: 1; transform: none; }

/* ---------- Breadcrumbs ---------- */
/* Top padding clears the absolute-positioned header (logo 30px + 2rem vertical padding) */
.divaprod-breadcrumbs {
    padding: 4rem 0 0.75rem;
    font-size: 0.8125rem;
    color: var(--dp-gray-400);
}
.divaprod-breadcrumbs a {
    color: var(--dp-gray-600);
    text-decoration: none;
    transition: color var(--dp-transition);
}
.divaprod-breadcrumbs a:hover { color: var(--dp-black); }
.dp-bc-sep { margin: 0 0.4rem; }
.dp-bc-current { color: var(--dp-black); font-weight: 500; }

/* ===================================================================
   TWO-COLUMN LAYOUT
   =================================================================== */
.divaprod-layout {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
}

/* ---------- Media Column ---------- */
.divaprod-col-media {
    position: relative;
}

/* ---------- Product Badge ---------- */
.divaprod-product-badge {
    position: absolute;
    top: 0.75rem;
    left: 0.75rem;
    z-index: 10;
    padding: 0.35rem 1rem;
    border-radius: 100px;
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--dp-white);
}
.divaprod-badge--new { background: #3b82f6; }
.divaprod-badge--sale { background: var(--dp-accent); }
.divaprod-badge--bestseller { background: #f59e0b; }
.divaprod-badge--limited { background: #8b5cf6; }

/* ---------- Video Section ---------- */
.divaprod-video-section {
    width: 100%;
    background: #000;
    overflow: hidden;
    border-radius: var(--dp-radius);
    margin-bottom: 0.75rem;
}
.divaprod-video { display: block; width: 100%; max-height: 70vh; object-fit: cover; transition: opacity 0.4s ease; }
.divaprod-video.dp-media-fade { opacity: 0; }
.divaprod-video-placeholder { transition: opacity 0.4s ease; }
.divaprod-video-placeholder.dp-media-fade { opacity: 0; }
.divaprod-video-placeholder { width: 100%; overflow: hidden; }
.divaprod-video-placeholder img { width: 100%; height: auto; display: block; object-fit: cover; }
.divaprod-video-sound-btn {
    position: absolute;
    left: 1rem;
    top: 1rem;
    z-index: 12;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border: 0;
    border-radius: 50%;
    background: rgba(0,0,0,0.62);
    color: var(--dp-white);
    cursor: pointer;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}
@media (max-width: 767px) {
    .divaprod-video-sound-btn {
        right: 1rem;
        left: auto;
    }
}
.divaprod-video-sound-btn[aria-pressed="true"] .divaprod-video-sound-icon--muted { display: none; }
.divaprod-video-sound-btn[aria-pressed="false"] .divaprod-video-sound-icon--on { display: none; }

/* ---------- Main Image ---------- */
.divaprod-main-img-wrap {
    width: 100%;
    border-radius: var(--dp-radius);
    overflow: hidden;
    background: var(--dp-gray-100);
    margin-bottom: 0.5rem;
}
.divaprod-main-img {
    width: 100%;
    display: block;
    aspect-ratio: 2 / 3;
    object-fit: cover;
    transition: opacity 0.35s ease, transform 0.35s ease;
}
.divaprod-main-img.dp-media-fade { opacity: 0; transform: scale(0.98); }
.divaprod-main-img-wrap[data-lightbox="1"] .divaprod-main-img { cursor: zoom-in; }

/* ---------- Thumbnail Strip ---------- */
.divaprod-thumbstrip {
    display: flex;
    gap: 0.375rem;
    overflow-x: auto;
    padding-bottom: 0.25rem;
    margin-bottom: 0.75rem;
    scrollbar-width: thin;
    transition: opacity 0.3s ease;
}
.divaprod-thumbstrip.dp-media-fade { opacity: 0; }
.divaprod-thumb {
    flex: 0 0 auto;
    width: 56px;
    height: 56px;
    border-radius: 6px;
    overflow: hidden;
    border: 2px solid transparent;
    cursor: pointer;
    padding: 0;
    background: var(--dp-gray-100);
    transition: border-color var(--dp-transition), opacity var(--dp-transition);
    opacity: 0.6;
}
.divaprod-thumb.active { border-color: var(--dp-black); opacity: 1; }
.divaprod-thumb:hover { opacity: 1; }
.divaprod-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* ---------- Gallery Grid (additional) ---------- */
.divaprod-gallery { display: grid; grid-template-columns: 1fr 1fr; gap: 0.5rem; margin-bottom: 1rem; }
.divaprod-gallery img {
    width: 100%; border-radius: var(--dp-radius); display: block;
    transition: opacity 0.4s ease, transform 0.4s ease; aspect-ratio: 2 / 3; object-fit: cover;
}
.divaprod-gallery[data-lightbox="1"] img { cursor: zoom-in; }
.divaprod-gallery img.divaprod-fade-in { animation: dpFadeIn 0.35s ease forwards; }
@keyframes dpFadeIn { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: translateY(0); } }

/* ---------- Info Column ---------- */
.divaprod-col-info {
    padding-top: 0;
}

/* Mobile/tablet info block: hidden by default (desktop), shown <960px */
.divaprod-mobile-info { display: none; }

/* ---------- Title ---------- */
.divaprod-title {
    font-size: clamp(1.375rem, 3vw, 2rem);
    font-weight: 700;
    letter-spacing: -0.02em;
    margin: 0 0 0.5rem;
    line-height: 1.25;
}

/* ---------- Short Description ---------- */
.divaprod-short-desc {
    font-size: 0.9375rem;
    color: var(--dp-gray-600);
    margin: 0 0 1rem;
}

/* ---------- Price Block ---------- */
.divaprod-price-block {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1.25rem;
    flex-wrap: wrap;
}
.divaprod-price-current { font-size: 1.75rem; font-weight: 700; }
.divaprod-price-current small { font-weight: 400; font-size: 1rem; color: var(--dp-gray-400); }
.divaprod-price-old { font-size: 1.125rem; color: var(--dp-gray-400); text-decoration: line-through; }
.divaprod-discount-badge {
    background: var(--dp-accent); color: var(--dp-white);
    font-size: 0.75rem; font-weight: 700; padding: 0.2rem 0.6rem; border-radius: 100px;
}

/* ---------- Divider ---------- */
.divaprod-divider {
    border: none;
    border-top: 1px solid var(--dp-gray-200);
    margin: 0 0 1.25rem;
}

/* ---------- Label ---------- */
.divaprod-label {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--dp-gray-600);
    margin-bottom: 0.5rem;
}
.divaprod-label .divaprod-swatch-name {
    text-transform: none;
    font-weight: 500;
    letter-spacing: 0;
    color: var(--dp-black);
}

/* ---------- Swatches ---------- */
.divaprod-swatches { margin-bottom: 1.5rem; }
.divaprod-swatches-list { display: flex; flex-wrap: wrap; gap: 0.625rem; margin-bottom: 0.35rem; }
.divaprod-swatch {
    width: 34px; height: 34px; border-radius: 50%; border: 2px solid transparent;
    cursor: pointer; transition: border-color var(--dp-transition), box-shadow var(--dp-transition);
    outline: none; padding: 0; position: relative;
}
.divaprod-swatch::after {
    content: ""; position: absolute; inset: -4px; border-radius: 50%;
    border: 2px solid transparent; transition: border-color var(--dp-transition);
}
.divaprod-swatch.active::after, .divaprod-swatch:focus-visible::after { border-color: var(--dp-black); }
.divaprod-swatch:focus-visible { box-shadow: 0 0 0 3px rgba(0,0,0,0.15); }

.divaprod-swatch--oos { opacity: 0.4; cursor: not-allowed; }
.divaprod-swatch--oos::before {
    content: ""; position: absolute; top: 50%; left: -2px; right: -2px;
    height: 2px; background: var(--dp-accent); transform: rotate(-45deg); z-index: 1;
}

.divaprod-stock-status { font-size: 0.8125rem; font-weight: 600; padding: 0.15rem 0.5rem; border-radius: 4px; }
.divaprod-stock-status.dp-in-stock { color: var(--dp-green); }
.divaprod-stock-status.dp-out-of-stock { color: var(--dp-accent); }

/* ---------- Sizes ---------- */
.divaprod-sizes { margin-bottom: 1.5rem; }
.divaprod-sizes-list { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.divaprod-size-btn {
    min-width: 44px; height: 40px; padding: 0 0.875rem;
    border: 1.5px solid var(--dp-gray-200); border-radius: var(--dp-radius);
    background: var(--dp-white); font-size: 0.8125rem; font-weight: 600;
    cursor: pointer; transition: all var(--dp-transition); color: var(--dp-black); outline: none;
}
.divaprod-size-btn:hover { border-color: var(--dp-gray-400); }
.divaprod-size-btn.active { background: var(--dp-black); color: var(--dp-white); border-color: var(--dp-black); }
.divaprod-size-btn:focus-visible { box-shadow: 0 0 0 3px rgba(0,0,0,0.15); }

.divaprod-purchase-gallery {
    margin: 0 0 1.25rem;
}

.divaprod-purchase-gallery__main {
    display: block;
    width: 100%;
    padding: 0;
    border: 0;
    border-radius: var(--dp-radius);
    overflow: hidden;
    background: var(--dp-gray-100);
    cursor: zoom-in;
}

.divaprod-purchase-gallery__main img {
    width: 100%;
    aspect-ratio: 2 / 3;
    object-fit: cover;
    display: block;
}

.divaprod-purchase-gallery__thumbs {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.5rem;
    margin-top: 0.625rem;
}

.divaprod-purchase-gallery__thumb {
    width: 100%;
    aspect-ratio: 1 / 1;
    padding: 0;
    border: 2px solid transparent;
    border-radius: calc(var(--dp-radius) - 2px);
    overflow: hidden;
    background: var(--dp-gray-100);
    cursor: pointer;
    transition: border-color var(--dp-transition), opacity var(--dp-transition);
}

.divaprod-purchase-gallery__thumb.active,
.divaprod-purchase-gallery__thumb:focus-visible {
    border-color: var(--dp-black);
}

.divaprod-purchase-gallery__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* ---------- Quantity ---------- */
.divaprod-quantity { margin-bottom: 1.5rem; }
.divaprod-qty-wrap {
    display: inline-flex; align-items: center; border: 1.5px solid var(--dp-gray-200);
    border-radius: var(--dp-radius); overflow: hidden;
}
.divaprod-qty-btn {
    width: 40px; height: 40px; border: none; background: var(--dp-white);
    font-size: 1.125rem; cursor: pointer; transition: background var(--dp-transition);
}
.divaprod-qty-btn:hover { background: var(--dp-gray-100); }
.divaprod-qty-wrap input {
    width: 44px; height: 40px; border: none; text-align: center;
    font-size: 0.9375rem; font-weight: 600; font-family: var(--dp-font);
    background: var(--dp-white); transition: border-color var(--dp-transition);
    outline: none; color: var(--dp-black);
}
.divaprod-qty-input::-webkit-inner-spin-button { display: none; }

.divaprod-purchase-row {
    display: flex;
    align-items: stretch;
    gap: 0.875rem;
    margin: 0.875rem 0 1rem;
}

.divaprod-purchase-row .divaprod-quantity {
    flex: 0 0 auto;
    margin-bottom: 0;
}

.divaprod-purchase-row .divaprod-add-to-basket-btn {
    flex: 1;
    width: auto;
    margin: 0;
    height: 43px;
}

/* ---------- Add to List Button & Cart UI ---------- */
.divaprod-add-to-list-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-bottom: 1.5rem;
    background: var(--dp-black);
    color: var(--dp-white);
    border: none;
    padding: 0.875rem 1.25rem;
    border-radius: var(--dp-radius);
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: all var(--dp-transition);
}
.divaprod-add-to-list-btn:hover {
    background: var(--dp-gray-800);
}

.divaprod-cart-list {
    margin-bottom: 1.5rem;
    padding: 1rem;
    background: var(--dp-gray-50);
    border: 1px solid var(--dp-gray-200);
    border-radius: var(--dp-radius);
}
.divaprod-cart-list ul {
    list-style: none;
    padding: 0;
    margin: 0.5rem 0 0 0;
}
.divaprod-cart-list li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.625rem 0;
    border-bottom: 1px solid var(--dp-gray-200);
    font-size: 0.875rem;
    font-weight: 500;
}
.divaprod-cart-list li:last-child {
    border-bottom: none;
    padding-bottom: 0;
}
.divaprod-cart-list .dp-cart-item-remove {
    background: rgba(225, 29, 72, 0.1);
    border: none;
    color: #e11d48;
    border-radius: 4px;
    cursor: pointer;
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.25rem 0.5rem;
    transition: background var(--dp-transition);
}
.divaprod-cart-list .dp-cart-item-remove:hover {
    background: rgba(225, 29, 72, 0.2);
}

/* ---------- Variation Table ---------- */
.divaprod-variations-table-wrap {
    margin-bottom: 1.5rem;
    border: 1px solid var(--dp-gray-200);
    border-radius: var(--dp-radius);
    overflow: hidden;
    background: var(--dp-white);
}
.divaprod-var-table-title {
    font-size: 1rem;
    font-weight: 700;
    padding: 1rem;
    margin: 0;
    background: var(--dp-gray-50);
    border-bottom: 1px solid var(--dp-gray-200);
    color: var(--dp-black);
}
.divaprod-var-group {
    border-bottom: 1px solid var(--dp-gray-200);
}
.divaprod-var-group:last-child {
    border-bottom: none;
}
.divaprod-var-group-name {
    font-size: 0.9375rem;
    font-weight: 700;
    padding: 0.75rem 1rem;
    background: var(--dp-gray-50);
    color: var(--dp-black);
    border-bottom: 1px solid var(--dp-gray-200);
}
.divaprod-var-header {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--dp-gray-600);
    text-transform: uppercase;
    letter-spacing: 0.025em;
    border-bottom: 1px solid var(--dp-gray-200);
}
.divaprod-var-row {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 0.5rem;
    align-items: center;
    padding: 0.625rem 1rem;
    font-size: 0.875rem;
    cursor: pointer;
    transition: background var(--dp-transition);
    border-bottom: 1px solid var(--dp-gray-100);
}
.divaprod-var-row:last-child {
    border-bottom: none;
}
.divaprod-var-row:hover {
    background: var(--dp-gray-50);
}
.divaprod-var-row.active {
    background: #ecfdf5;
}
.divaprod-var-cell--size {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 500;
    color: var(--dp-black);
}
.divaprod-var-check {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: var(--dp-green);
    color: var(--dp-white);
    font-size: 0.75rem;
    line-height: 1;
    opacity: 0;
    transform: scale(0.8);
    transition: all var(--dp-transition);
}
.divaprod-var-row.active .divaprod-var-check {
    opacity: 1;
    transform: scale(1);
}
.divaprod-var-cell--price {
    text-align: center;
    font-weight: 600;
    color: var(--dp-black);
}
.divaprod-var-regular-price {
    display: block;
    color: var(--dp-gray-400);
    font-size: 0.8rem;
    font-weight: 500;
    line-height: 1.2;
}
.divaprod-var-cell--qty {
    display: flex;
    justify-content: flex-end;
}
.dp-var-qty-control {
    display: inline-flex;
    align-items: center;
    border: 1.5px solid var(--dp-gray-200);
    border-radius: var(--dp-radius);
    overflow: hidden;
}
.dp-var-qty-control .divaprod-qty-btn {
    width: 32px;
    height: 32px;
    font-size: 1rem;
    border: none;
    background: var(--dp-white);
    cursor: pointer;
    transition: background var(--dp-transition);
}
.dp-var-qty-control .divaprod-qty-btn:hover {
    background: var(--dp-gray-100);
}
.dp-var-qty-control input {
    width: 40px;
    height: 32px;
    border: none;
    text-align: center;
    font-size: 0.875rem;
    font-weight: 600;
    font-family: var(--dp-font);
    background: var(--dp-white);
    color: var(--dp-black);
    outline: none;
}

/* ---------- Table Summary ---------- */
.divaprod-table-summary {
    padding: 0.75rem 1rem;
    background: var(--dp-gray-50);
    border-top: 1px solid var(--dp-gray-200);
}
.divaprod-table-summary-inner {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}
.divaprod-table-summary-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--dp-white);
    border: 1px solid var(--dp-gray-200);
    color: var(--dp-gray-700);
}
.divaprod-table-summary-text {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}
.divaprod-table-count {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--dp-gray-700);
}
.divaprod-table-total {
    font-size: 1rem;
    font-weight: 700;
    color: var(--dp-black);
}

/* ---------- Sharing ---------- */
.divaprod-sharing {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1.5rem;
    padding: 0.875rem 1rem;
    background: var(--dp-gray-50);
    border-radius: var(--dp-radius);
    border: 1px solid var(--dp-gray-100);
}
.divaprod-trust-item {
    font-size: 0.8125rem;
    color: var(--dp-gray-600);
    white-space: nowrap;
}
.dp-check { color: var(--dp-green); margin-right: 0.25rem; font-weight: 700; }

/* ---------- Social Sharing ---------- */
.divaprod-sharing { margin-bottom: 1rem; }
.divaprod-share-btns { display: flex; gap: 0.5rem; }
.divaprod-share-btn {
    width: 36px; height: 36px; border-radius: 50%; display: flex;
    align-items: center; justify-content: center; border: 1.5px solid var(--dp-gray-200);
    background: var(--dp-white); color: var(--dp-gray-600); cursor: pointer;
    transition: all var(--dp-transition); text-decoration: none;
}
.divaprod-share-btn:hover { border-color: var(--dp-gray-400); color: var(--dp-black); }
.divaprod-share--fb:hover { color: #1877f2; border-color: #1877f2; }
.divaprod-share--x:hover { color: var(--dp-black); border-color: var(--dp-black); }
.divaprod-share--wa:hover { color: var(--dp-wa); border-color: var(--dp-wa); }
.divaprod-share--viber:hover { color: #7360f2; border-color: #7360f2; }
.divaprod-share--copy:hover { color: #8b5cf6; border-color: #8b5cf6; }

/* ===================================================================
   FULL-WIDTH SECTIONS BELOW LAYOUT
   =================================================================== */
.divaprod-below {
    max-width: 720px;
    margin: 2rem auto 0;
}

/* ---------- Section Title ---------- */
.divaprod-section-title { font-size: 1.25rem; font-weight: 700; margin: 0 0 1.25rem; }

/* ---------- Extra Section ---------- */
.divaprod-extra-section { margin-bottom: 3rem; }
.divaprod-extra-image { width: 100%; border-radius: var(--dp-radius); margin-bottom: 1rem; display: block; }
.divaprod-extra-desc { font-size: 0.9375rem; color: var(--dp-gray-600); line-height: 1.7; }
.divaprod-extra-desc p { margin: 0 0 0.75rem; }

/* Two-column layout when both image and description are present */
.divaprod-extra-section--split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem 3.5rem;
    align-items: center;
}
.divaprod-extra-section--split .divaprod-extra-image {
    margin-bottom: 0;
    border-radius: var(--dp-radius);
}
.divaprod-extra-section--split .divaprod-extra-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
@media (max-width: 768px) {
    .divaprod-extra-section--split {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    .divaprod-extra-section--split .divaprod-extra-image {
        margin-bottom: 0.75rem;
    }
}

/* ---------- Order Form ---------- */
.divaprod-order-section {
    background: var(--dp-gray-50); border-radius: calc(var(--dp-radius) * 2);
    padding: 2rem 1.5rem; margin-bottom: 2rem;
}
#divaprod-order-section, #divaprod-cross-section { scroll-margin-top: 80px; }
.divaprod-form-summary {
    display: flex; flex-wrap: wrap; gap: 1rem; margin-bottom: 1.5rem;
    font-size: 0.875rem; color: var(--dp-gray-600);
}
.divaprod-form-summary strong { color: var(--dp-black); }
.divaprod-form-field { margin-bottom: 1rem; }
.divaprod-form-field label {
    display: block; font-size: 0.8125rem; font-weight: 600;
    margin-bottom: 0.35rem; color: var(--dp-gray-800);
}
.divaprod-form-field input,
.divaprod-form-field textarea {
    width: 100%; padding: 0 0.875rem; border: 1.5px solid var(--dp-gray-200);
    border-radius: var(--dp-radius); font-size: 0.9375rem; font-family: var(--dp-font);
    background: var(--dp-white); transition: border-color var(--dp-transition);
    outline: none; color: var(--dp-black);
}
.divaprod-form-field input { height: 46px; }
.divaprod-form-field textarea { padding: 0.625rem 0.875rem; resize: vertical; min-height: 60px; }
.divaprod-form-field input:focus,
.divaprod-form-field textarea:focus { border-color: var(--dp-black); }
.divaprod-form-field input.dp-error,
.divaprod-form-field textarea.dp-error { border-color: var(--dp-accent); }

.divaprod-form-row { display: flex; gap: 1rem; }
.divaprod-form-field--half { flex: 1; }

/* ---------- GDPR Consent ---------- */
.divaprod-form-consent {
    margin-bottom: 1rem;
}
.divaprod-checkbox-label {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: var(--dp-gray-600);
    cursor: pointer;
    line-height: 1.4;
}
.divaprod-checkbox-label input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin-top: 0.1rem;
    flex-shrink: 0;
    accent-color: var(--dp-black);
    cursor: pointer;
}
.divaprod-checkbox-label input[type="checkbox"].dp-error {
    outline: 2px solid var(--dp-accent);
    outline-offset: 1px;
}

.divaprod-submit-btn {
    display: block; width: 100%; height: 52px; background: var(--dp-black);
    color: var(--dp-white); border: none; border-radius: var(--dp-radius);
    font-size: 1rem; font-weight: 600; font-family: var(--dp-font);
    cursor: pointer; transition: all var(--dp-transition); margin-top: 0.5rem; margin-bottom: 2rem;
}
.divaprod-submit-btn:hover { opacity: 0.85; }
.divaprod-submit-btn:disabled { opacity: 0.5; cursor: not-allowed; }

/* ---------- Related Products ---------- */
.divaprod-related { margin-bottom: 3rem; margin-top: 1rem; }
.divaprod-related-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0.75rem; }
.divaprod-related-card {
    text-decoration: none; color: inherit; display: block;
    border-radius: var(--dp-radius); overflow: hidden; background: var(--dp-white);
    box-shadow: 0 1px 4px rgba(0,0,0,0.06); transition: transform var(--dp-transition), box-shadow var(--dp-transition);
}
.divaprod-related-card:hover { transform: translateY(-3px); box-shadow: 0 6px 20px rgba(0,0,0,0.1); }
.divaprod-related-card__img { aspect-ratio: 9/16; overflow: hidden; position: relative; background: var(--dp-gray-100); }
.divaprod-related-card__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.divaprod-related-card__info { padding: 0.5rem 0.625rem; }
.divaprod-related-card__title { font-size: 0.75rem; font-weight: 600; margin-bottom: 0.2rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.divaprod-related-card__price { font-size: 0.8125rem; font-weight: 700; }

.divaprod-related-title__first { font-size: 1.5rem; font-weight: 800; }
.divaprod-related-title__rest { font-size: 1rem; font-weight: 400; }

.divaprod-old-price { text-decoration: line-through; color: var(--dp-gray-400); font-size: 0.8125rem; margin-right: 0.35rem; }
.divaprod-sale-price { color: var(--dp-accent); font-weight: 700; font-size: 0.875rem; }

/* ---------- Cross Product ---------- */
.divaprod-cross-section { margin-bottom: 3rem; margin-top: 1rem; }
.divaprod-cross-card {
    display: flex; gap: 1rem; align-items: flex-start;
    border-radius: var(--dp-radius); overflow: hidden; background: var(--dp-white);
    box-shadow: 0 1px 6px rgba(0,0,0,0.08); padding: 1rem;
    transition: box-shadow var(--dp-transition);
}
.divaprod-cross-card:hover { box-shadow: 0 4px 16px rgba(0,0,0,0.12); }
.divaprod-cross-card__img { flex-shrink: 0; width: 120px; border-radius: var(--dp-radius); overflow: hidden; }
.divaprod-cross-card__img-btn { display: block; width: 100%; padding: 0; border: 0; background: none; cursor: zoom-in; }
.divaprod-cross-card__img img { width: 100%; height: auto; display: block; aspect-ratio: 3/4; object-fit: cover; }
.divaprod-cross-card__info { flex: 1; min-width: 0; }
.divaprod-cross-card__title { font-size: 1rem; font-weight: 700; margin-bottom: 0.25rem; }
.divaprod-cross-card__desc { font-size: 0.8125rem; color: var(--dp-gray-500); margin-bottom: 0.5rem; line-height: 1.4; }
.divaprod-cross-card__price { margin-bottom: 0.75rem; }
.divaprod-cross-card__amount { font-size: 1rem; font-weight: 700; }
.divaprod-cross-add-btn {
    display: inline-flex; align-items: center; gap: 0.4rem;
    background: var(--dp-black); color: var(--dp-white); border: none;
    padding: 0.6rem 1.2rem; border-radius: var(--dp-radius); cursor: pointer;
    font-size: 0.875rem; font-weight: 600; transition: all var(--dp-transition);
}
.divaprod-cross-add-btn:hover { background: var(--dp-gray-800); transform: translateY(-1px); }
.divaprod-cross-add-btn.dp-cross-added {
    background: var(--dp-accent); color: var(--dp-white);
}
.divaprod-cross-add-btn.dp-cross-added:hover { opacity: 0.85; }

/* ---------- Floating Bar ---------- */
.divaprod-floating-bar {
    position: fixed; bottom: 1.5rem; right: 1.5rem; z-index: 9999;
    display: flex; flex-direction: column; gap: 0.5rem; align-items: flex-end;
}
.divaprod-floating-btn {
    background: var(--dp-black); color: var(--dp-white); text-decoration: none;
    font-size: 0.875rem; font-weight: 600; font-family: var(--dp-font);
    padding: 0.875rem 2rem; border-radius: 100px;
    box-shadow: 0 4px 24px rgba(0,0,0,0.18);
    transition: transform var(--dp-transition), box-shadow var(--dp-transition);
    display: flex; align-items: center; gap: 0.5rem;
}
.divaprod-floating-btn:hover { transform: translateY(-2px); box-shadow: 0 6px 32px rgba(0,0,0,0.25); color: var(--dp-white); }
.divaprod-floating-btn--wa { background: var(--dp-wa); }
.divaprod-floating-btn--wa:hover { color: var(--dp-white); }
.divaprod-floating-btn--viber { background: #7360f2; }
.divaprod-floating-btn--viber:hover { color: var(--dp-white); }

/* ---------- Sticky Bar ---------- */
.divaprod-sticky-bar {
    position: fixed; top: 0; left: 0; right: 0; z-index: 10001;
    background: rgba(255,255,255,0.95); backdrop-filter: blur(12px);
    border-bottom: 1px solid var(--dp-gray-200); padding: 0.625rem 0;
    transform: translateY(-100%); transition: transform 0.35s ease;
}
.divaprod-sticky-bar.dp-sticky-visible { transform: translateY(0); }
.divaprod-sticky-inner {
    max-width: 1280px; margin: 0 auto; padding: 0 1.25rem;
    display: flex; align-items: center; justify-content: space-between;
}
.divaprod-sticky-info { display: flex; align-items: center; gap: 1rem; }
.divaprod-sticky-info strong { font-size: 0.875rem; }
.divaprod-sticky-info span { font-size: 0.875rem; font-weight: 700; }
.divaprod-sticky-btn {
    background: var(--dp-black); color: var(--dp-white); text-decoration: none;
    font-size: 0.8125rem; font-weight: 600; padding: 0.5rem 1.5rem;
    border-radius: 100px; transition: opacity var(--dp-transition);
}
.divaprod-sticky-btn:hover { opacity: 0.85; color: var(--dp-white); }

/* ---------- Lightbox ---------- */
.divaprod-lightbox {
    position: fixed; inset: 0; z-index: 99999; background: rgba(0,0,0,0.92);
    display: flex; align-items: center; justify-content: center;
    animation: dpFadeIn 0.2s ease;
}
.divaprod-lightbox img {
    max-width: 90vw; max-height: 90vh; object-fit: contain; border-radius: 4px; user-select: none;
}
.divaprod-lb-close {
    position: absolute; top: 1rem; right: 1.25rem; background: none; border: none;
    color: #fff; font-size: 2.5rem; cursor: pointer; z-index: 2; line-height: 1;
}
.divaprod-lb-prev, .divaprod-lb-next {
    position: absolute; top: 50%; transform: translateY(-50%); background: rgba(255,255,255,0.15);
    border: none; color: #fff; font-size: 2rem; width: 48px; height: 48px;
    border-radius: 50%; cursor: pointer; display: flex; align-items: center; justify-content: center;
    transition: background var(--dp-transition);
}
.divaprod-lb-prev:hover, .divaprod-lb-next:hover { background: rgba(255,255,255,0.3); }
.divaprod-lb-prev { left: 1rem; }
.divaprod-lb-next { right: 1rem; }
.divaprod-lb-counter {
    position: absolute; bottom: 1.5rem; left: 50%; transform: translateX(-50%);
    color: rgba(255,255,255,0.7); font-size: 0.8125rem;
}

/* ---------- Toast ---------- */
.divaprod-toast {
    position: fixed; bottom: 2rem; left: 50%; transform: translateX(-50%);
    z-index: 99999; background: var(--dp-black); color: var(--dp-white);
    padding: 0.875rem 2rem; border-radius: 100px; font-size: 0.875rem;
    font-weight: 500; box-shadow: 0 8px 32px rgba(0,0,0,0.2);
    animation: dpToastIn 0.35s ease; font-family: var(--dp-font);
}
.divaprod-toast.dp-toast-success { background: var(--dp-green); }
.divaprod-toast.dp-toast-error { background: var(--dp-accent); }
@keyframes dpToastIn { from { opacity: 0; transform: translateX(-50%) translateY(12px); } to { opacity: 1; transform: translateX(-50%) translateY(0); } }

/* ===================================================================
   RESPONSIVE - TABLET (≥768px)
   =================================================================== */
@media (min-width: 768px) {
    .divaprod-layout {
        grid-template-columns: 1fr 1fr;
        gap: 2rem;
        align-items: start;
    }
    .divaprod-col-media {
        position: sticky;
        top: 5rem;
        align-self: start;
    }
    .divaprod-thumb { width: 52px; height: 52px; }
    .divaprod-related-grid { grid-template-columns: repeat(3, 1fr); }
}

/* ===================================================================
   RESPONSIVE - DESKTOP (≥960px)
   =================================================================== */
@media (min-width: 960px) {
    .divaprod-single {
        padding: 0 2rem;
        --dp-page-pad: 2rem;
    }
    .divaprod-layout {
        grid-template-columns: 55% 1fr;
        gap: 3rem;
        align-items: stretch;
    }
    
    /* Desktop Video Layout */
    .divaprod-video-section {
        aspect-ratio: 2 / 3;
    }
    .divaprod-video {
        width: 100%;
        height: 100%;
        max-height: none;
    }
    
    .divaprod-col-media { top: 5rem; }
    .divaprod-col-info {
        display: flex;
        flex-direction: column;
        min-height: calc(100vh - 6rem);
        padding-top: 0.5rem;
    }
    .divaprod-col-info .divaprod-trust-grid {
        margin-top: auto;
    }
    .divaprod-thumb { width: 64px; height: 64px; }
    .divaprod-gallery { grid-template-columns: 1fr 1fr; }
    .divaprod-below { max-width: 800px; }
    .divaprod-order-section { padding: 2.5rem 2rem; }
    .divaprod-related-grid { grid-template-columns: repeat(4, 1fr); }
}

/* ===================================================================
   RESPONSIVE - LARGE DESKTOP (≥1200px)
   =================================================================== */
@media (min-width: 1200px) {
    .divaprod-layout { gap: 4rem; }
    .divaprod-title { font-size: 2rem; }
}

/* ===================================================================
   RESPONSIVE - TABLET (<960px)
   =================================================================== */
@media (max-width: 959px) {
    /* Reorder elements: video -> title/description/price -> image */
    .divaprod-col-media {
        display: flex;
        flex-direction: column;
    }
    .divaprod-video-section {
        order: 1;
        aspect-ratio: 2 / 3;
        max-height: 70vh;
        width: 100%;
        position: relative;
        border-radius: 0;
        background: #000;
    }
    .divaprod-video-section .divaprod-video {
        width: 100%;
        height: 100%;
        max-height: none;
        object-fit: cover;
        position: absolute;
        top: 0;
        left: 0;
    }
    .divaprod-video-section .divaprod-video-placeholder {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
    }
    .divaprod-video-section .divaprod-video-placeholder img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    .divaprod-breadcrumbs { display: none; }
    .divaprod-main-img-wrap { order: 3; }
    .divaprod-thumbstrip { order: 4; }
    .divaprod-gallery { order: 5; }
    
    /* Move key info elements to media column on mobile/tablet */
    .divaprod-mobile-info {
        display: block;
        order: 2;
        padding: 1.5rem 0 1rem;
        border-bottom: 1px solid var(--dp-gray-200);
        margin-bottom: 1rem;
    }
    
    /* Hide duplicated elements in info column on mobile/tablet */
    .divaprod-col-info .divaprod-title,
    .divaprod-col-info .divaprod-short-desc,
    .divaprod-col-info .divaprod-price-block,
    .divaprod-col-info .divaprod-rating,
    .divaprod-col-info .divaprod-features-grid {
        display: none;
    }
}

/* ===================================================================
   RESPONSIVE - MOBILE (<768px)
   =================================================================== */
@media (max-width: 767px) {
    .divaprod-single {
        padding: 0 1rem;
        --dp-page-pad: 1rem;
    }
    .divaprod-video-section {
        width: calc(100% + 2rem);
        max-width: none;
        left: auto;
        transform: none;
        margin-left: -1rem;
        margin-right: -1rem;
    }
    .divaprod-gallery { grid-template-columns: 1fr; }
    .divaprod-related-grid { grid-template-columns: repeat(2, 1fr); }
    .divaprod-form-row { flex-direction: column; gap: 0; }
    .divaprod-order-section { padding: 1.5rem 1rem; }
    .divaprod-form-summary { flex-direction: column; gap: 0.35rem; }
    .divaprod-floating-bar { right: 1rem; bottom: 1rem; }
    .divaprod-floating-btn { padding: 0.75rem 1.5rem; font-size: 0.8125rem; }
    .divaprod-sticky-info strong { font-size: 0.75rem; max-width: 140px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .divaprod-below { margin-top: 1.5rem; }
    .divaprod-trust-badges { flex-direction: column; gap: 0.25rem; }
    
    .divaprod-mobile-info { padding: 1rem 0 0.75rem; }
    .divaprod-divider {
        margin: 0 0 0.875rem;
    }
    .divaprod-col-info .divaprod-divider {
        display: none;
    }
    .divaprod-quantity {
        margin-bottom: 0.75rem;
    }
    .divaprod-add-to-basket-btn {
        margin: 0.75rem 0 0.75rem;
    }
    .dp-var-qty-control .divaprod-qty-btn { width: 44px; height: 44px; }
    .divaprod-share-btn { width: 44px; height: 44px; }
    .divaprod-thumb { width: 60px; height: 60px; }
    .divaprod-lb-prev, .divaprod-lb-next { width: 48px; height: 48px; font-size: 2.25rem; }
}

/* ===================================================================
   VARIATION TABLE - HEADER & CELL FLEX PROPORTIONS
   Forces the header to use flex layout matching the data-row cells.
   =================================================================== */
.divaprod-var-header {
    display: flex !important;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    border-bottom: 1px solid var(--dp-gray-200);
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--dp-gray-600);
}
.divaprod-var-h-col:first-child  { flex: 2; min-width: 0; }
.divaprod-var-h-col:nth-child(2) { flex: 1; text-align: center; }
.divaprod-var-h-col:last-child   { flex: 1; text-align: right; }

/* Data-row cells */
.divaprod-var-cell--size  { flex: 2; min-width: 0; }
.divaprod-var-cell--price { flex: 1; }
.divaprod-var-cell--qty   { flex: 1; }

/* ===================================================================
   RATING
   =================================================================== */
.divaprod-rating {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}
.divaprod-stars {
    position: relative;
    display: inline-block;
    font-size: 1.125rem;
    line-height: 1;
}
.divaprod-stars-bg {
    display: block;
    color: #d1d5db;
    letter-spacing: 2px;
}
.divaprod-stars-fg {
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    white-space: nowrap;
    color: #f59e0b;
    letter-spacing: 2px;
}
.divaprod-rating-value {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--dp-black);
}
.divaprod-rating-count {
    font-size: 0.875rem;
    color: var(--dp-gray-600);
}

/* ===================================================================
   FEATURES GRID
   =================================================================== */
.divaprod-features-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.5rem 1rem;
    margin-bottom: 1.25rem;
}
.divaprod-feature-item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: var(--dp-gray-800);
}
.divaprod-feature-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    min-width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #ecfdf5;
    border: 1.5px solid var(--dp-green);
    color: var(--dp-green);
    flex-shrink: 0;
    font-size: 0.6875rem;
    font-weight: 700;
}

/* ===================================================================
   COLLAPSIBLE VARIATION GROUP TOGGLE
   =================================================================== */
.divaprod-var-group-toggle {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.875rem 1rem;
    background: var(--dp-gray-50);
    border: none;
    cursor: pointer;
    font-size: 0.9375rem;
    font-weight: 700;
    color: var(--dp-black);
    border-bottom: 1px solid var(--dp-gray-200);
    text-align: left;
    font-family: var(--dp-font);
}
.divaprod-var-group-toggle:hover { background: var(--dp-gray-100); }
.dp-group-chevron { transition: transform 0.25s ease; flex-shrink: 0; }
.divaprod-var-group.dp-collapsed .dp-group-chevron { transform: rotate(180deg); }
.divaprod-var-group-body.dp-hidden { display: none; }

/* ===================================================================
   SUMMARY BAR - OVERRIDE MOBILE STICKY TO INLINE
   =================================================================== */
@media (max-width: 959px) {
    .divaprod-table-summary {
        position: static !important;
        bottom: auto !important;
        left: auto !important;
        right: auto !important;
        z-index: auto !important;
        box-shadow: none !important;
        border-radius: 0 0 var(--dp-radius) var(--dp-radius);
    }
}
.divaprod-summary-details-toggle {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    margin-left: auto;
    flex-shrink: 0;
    background: none;
    border: none;
    cursor: pointer;
    font-size: 0.8125rem;
    color: var(--dp-gray-600);
    font-family: var(--dp-font);
    white-space: nowrap;
    padding: 0;
}
.dp-details-chevron { transition: transform 0.25s ease; }
.divaprod-summary-details-toggle.dp-open .dp-details-chevron { transform: rotate(180deg); }
.divaprod-summary-details-list {
    display: none;
    padding: 0.5rem 1rem 0.625rem;
    border-top: 1px solid var(--dp-gray-200);
    font-size: 0.8125rem;
    background: var(--dp-white);
}
.divaprod-summary-details-list.dp-open { display: block; }
.divaprod-summary-details-list ul { list-style: none; padding: 0; margin: 0; }
.divaprod-summary-details-list li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.3rem 0;
    color: var(--dp-gray-800);
    border-bottom: 1px solid var(--dp-gray-100);
    gap: 0.5rem;
}
.divaprod-summary-details-list li:last-child { border-bottom: none; }

/* ===================================================================
   ADD TO BASKET BUTTON
   =================================================================== */
.divaprod-add-to-basket-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.625rem;
    width: 100%;
    padding: 1rem 1.5rem;
    background: var(--dp-black);
    color: var(--dp-white);
    border: none;
    border-radius: var(--dp-radius);
    font-size: 1rem;
    font-weight: 700;
    cursor: pointer;
    margin: 0.875rem 0 1rem;
    transition: opacity var(--dp-transition);
    font-family: var(--dp-font);
    letter-spacing: -0.01em;
}
.divaprod-add-to-basket-btn:hover { opacity: 0.85; }
.divaprod-add-to-basket-btn:disabled { opacity: 0.5; cursor: not-allowed; }

/* ---------- Order Highlights ---------- */
.divaprod-order-highlights {
    display: flex;
    flex-wrap: nowrap;
    gap: 0.75rem;
    margin: 0.5rem 0 0.85rem;
}
.divaprod-order-highlight-card {
    flex: 1;
    min-width: 0;
}
.divaprod-order-highlight-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.7rem;
    min-height: 140px;
    padding: 1.25rem 1rem 1.1rem;
    border: 1px solid var(--dp-gray-200);
    border-radius: 18px;
    background: var(--dp-white);
    box-shadow: 0 2px 10px rgba(0,0,0,0.04);
    text-align: center;
}
.divaprod-order-highlight-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    color: var(--dp-black);
    font-size: 2rem;
    line-height: 1;
}
.divaprod-order-highlight-icon i { line-height: 1; }
.divaprod-order-highlight-text {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.35;
    color: var(--dp-black);
}

/* ===================================================================
   TRUST BAR
   =================================================================== */
.divaprod-trust-bar {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.625rem 1rem;
    margin-top: 1.5rem;
    padding: 1rem 1.25rem;
    background: #000000;
    border-radius: var(--dp-radius);
}
.divaprod-trust-bar-item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--dp-white);
    min-width: 0;
}
.divaprod-trust-bar-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: rgba(255,255,255,0.15);
    border-radius: 50%;
    flex-shrink: 0;
    color: var(--dp-white);
}
.divaprod-trust-bar-text {
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1.3;
}

.divaprod-trust-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0.75rem;
    padding: 1rem 0 0.5rem;
    border-top: 1px solid var(--dp-gray-200);
    margin-bottom: 0.5rem;
}
.divaprod-trust-grid-item {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}
.divaprod-trust-grid-icon {
    width: 32px;
    height: 32px;
    margin-bottom: 0.375rem;
    color: var(--dp-gray-600);
    flex-shrink: 0;
}
.divaprod-trust-grid-title {
    font-size: 0.8125rem;
    font-weight: 700;
    color: var(--dp-black);
    line-height: 1.3;
}
.divaprod-trust-grid-desc {
    font-size: 0.75rem;
    color: var(--dp-gray-600);
    line-height: 1.4;
}
@media (max-width: 480px) {
    .divaprod-trust-grid { grid-template-columns: 1fr; gap: 0.875rem; }
    .divaprod-trust-grid-item { flex-direction: row; align-items: flex-start; gap: 0.75rem; }
    .divaprod-trust-grid-icon { margin-bottom: 0; }
}

@media (max-width: 1100px) {
    .divaprod-trust-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 767px) {
    .divaprod-purchase-row {
        align-items: flex-end;
        gap: 0.75rem;
    }
    .divaprod-purchase-row .divaprod-quantity {
        flex: 0 0 124px;
    }
    .divaprod-purchase-row .divaprod-add-to-basket-btn {
        height: 43px;
        border-radius: 8px;
    }
    .divaprod-trust-grid {
        grid-template-columns: 1fr;
        gap: 0.875rem;
        padding: 1rem 0;
        margin-bottom: 1rem;
    }
    .divaprod-trust-grid-item {
        display: grid;
        grid-template-columns: 34px minmax(0, 1fr);
        grid-template-areas:
            "icon title"
            "icon desc";
        align-items: start;
        gap: 0.125rem 0.75rem;
    }
    .divaprod-trust-grid-icon {
        grid-area: icon;
        width: 28px;
        height: 28px;
        margin: 0;
    }
    .divaprod-trust-grid-title {
        grid-area: title;
        font-size: 0.875rem;
    }
    .divaprod-trust-grid-desc {
        grid-area: desc;
        font-size: 0.8125rem;
    }
    .divaprod-sharing {
        align-items: center;
        justify-content: space-between;
        gap: 0.75rem;
    }
    .divaprod-share-btns {
        flex: 1;
        justify-content: flex-end;
        flex-wrap: wrap;
    }
    .divaprod-order-highlights { gap: 0.5rem; }
    .divaprod-order-highlight-card {
        min-height: auto;
        padding: 0.75rem 0.45rem;
        border-radius: 14px;
        flex-direction: column;
        justify-content: center;
        text-align: center;
        gap: 0.45rem;
    }
    .divaprod-order-highlight-icon {
        width: 32px;
        height: 32px;
        font-size: 1.2rem;
        flex-shrink: 0;
    }
    .divaprod-order-highlight-text {
        font-size: 0.78rem;
        line-height: 1.25;
    }
}
