/* ==========================================================
   QINELLE PDP 2.0
   SAMPLE MODE V1

   Scope:
   body.qinelle-pdp2-sample-v1

   Products:
   14571
   33482
   8507

   Principle:
   Visual-only authority.
   No product content changes.
   No commerce logic changes.
   ========================================================== */


/* ==========================================================
   DESIGN TOKENS
   ========================================================== */

body.qinelle-pdp2-sample-v1 {

  --qpdp-bg:
    #ffffff;

  --qpdp-surface:
    #fffafa;

  --qpdp-surface-soft:
    #fcf8f7;

  --qpdp-text:
    #261f20;

  --qpdp-text-soft:
    #574c4f;

  --qpdp-muted:
    #76696c;

  --qpdp-border:
    rgba(150, 104, 115, .18);

  --qpdp-border-strong:
    rgba(115, 74, 84, .34);

  --qpdp-accent:
    #a66877;

  --qpdp-accent-soft:
    #f6e9ec;

  --qpdp-radius-lg:
    18px;

  --qpdp-radius-md:
    14px;

  --qpdp-radius-sm:
    10px;
}


/* ==========================================================
   MASTER PDP FRAME
   Elementor root:
   92c6c30
   ========================================================== */

body.qinelle-pdp2-sample-v1
.elementor-element-92c6c30 {

  width:
    min(100%, 1240px) !important;

  max-width:
    1240px !important;

  margin-left:
    auto !important;

  margin-right:
    auto !important;

  padding:
    128px 24px 38px !important;

  gap:
    48px !important;

  align-items:
    flex-start !important;
}


/* Gallery column */

body.qinelle-pdp2-sample-v1
.elementor-element-21d975e {

  width:
    56% !important;

  max-width:
    56% !important;

  margin:
    0 !important;

  padding:
    0 !important;
}


/* Buy box column */

body.qinelle-pdp2-sample-v1
.elementor-element-f97a294 {

  width:
    44% !important;

  max-width:
    44% !important;

  margin:
    0 !important;

  padding:
    0 !important;

  gap:
    12px !important;
}


/* ==========================================================
   GALLERY
   ========================================================== */

body.qinelle-pdp2-sample-v1
.elementor-element-9f9f5d3 {

  margin:
    0 !important;

  padding:
    0 !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-product-gallery {

  width:
    100% !important;

  margin:
    0 !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-product-gallery__wrapper {

  margin:
    0 !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-product-gallery__image a {

  display:
    block;

  overflow:
    hidden;

  border-radius:
    var(--qpdp-radius-lg);

  background:
    #faf8f7;
}


body.qinelle-pdp2-sample-v1
.woocommerce-product-gallery__image img {

  display:
    block !important;

  width:
    100% !important;

  height:
    auto !important;

  max-width:
    100% !important;

  margin:
    0 !important;

  border-radius:
    var(--qpdp-radius-lg) !important;
}


/* Thumbnails */

body.qinelle-pdp2-sample-v1
.elementor-element-9f9f5d3
.flex-control-nav.flex-control-thumbs {

  display:
    flex !important;

  flex-wrap:
    nowrap !important;

  align-items:
    stretch !important;

  gap:
    10px !important;

  overflow-x:
    auto !important;

  overflow-y:
    hidden !important;

  padding:
    12px 2px 5px !important;

  margin:
    0 !important;

  scrollbar-width:
    thin;

  -webkit-overflow-scrolling:
    touch;
}


body.qinelle-pdp2-sample-v1
.elementor-element-9f9f5d3
.flex-control-nav.flex-control-thumbs li {

  flex:
    0 0 82px !important;

  width:
    82px !important;

  max-width:
    82px !important;

  margin:
    0 !important;

  padding:
    0 !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-9f9f5d3
.flex-control-nav.flex-control-thumbs img {

  display:
    block !important;

  width:
    82px !important;

  height:
    102px !important;

  object-fit:
    cover !important;

  margin:
    0 !important;

  border:
    1px solid transparent !important;

  border-radius:
    10px !important;

  outline:
    none !important;

  opacity:
    .72 !important;

  transition:
    opacity .18s ease,
    border-color .18s ease,
    transform .18s ease;
}


body.qinelle-pdp2-sample-v1
.elementor-element-9f9f5d3
.flex-control-nav.flex-control-thumbs img:hover {

  opacity:
    1 !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-9f9f5d3
.flex-control-nav.flex-control-thumbs
.flex-active {

  opacity:
    1 !important;

  border-color:
    var(--qpdp-border-strong) !important;

  outline:
    none !important;

  transform:
    translateY(-1px);
}


/* ==========================================================
   TITLE
   ========================================================== */

body.qinelle-pdp2-sample-v1
.elementor-element-073aa60 {

  margin:
    0 !important;

  padding:
    0 !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-073aa60
.product_title,

body.qinelle-pdp2-sample-v1
.elementor-element-073aa60 h1 {

  margin:
    0 0 12px !important;

  color:
    var(--qpdp-text) !important;

  font-size:
    clamp(28px, 2.35vw, 31px) !important;

  line-height:
    1.22 !important;

  font-weight:
    600 !important;

  letter-spacing:
    -.015em !important;

  text-transform:
    none !important;
}


/* ==========================================================
   RATING
   ========================================================== */

body.qinelle-pdp2-sample-v1
.elementor-element-df483a5 {

  margin:
    0 0 7px !important;

  padding:
    0 !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-product-rating {

  display:
    flex !important;

  align-items:
    center !important;

  gap:
    9px !important;

  margin:
    0 !important;

  color:
    var(--qpdp-muted) !important;

  font-size:
    13px !important;

  line-height:
    1.4 !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-product-rating
.star-rating {

  margin:
    0 !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-review-link {

  color:
    var(--qpdp-muted) !important;

  font-size:
    13px !important;

  text-decoration:
    underline;

  text-decoration-color:
    rgba(118, 105, 108, .30);

  text-underline-offset:
    3px;
}


/* ==========================================================
   PRICE
   ========================================================== */

body.qinelle-pdp2-sample-v1
.elementor-element-1f4dd5b {

  margin:
    0 0 18px !important;

  padding:
    0 !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-1f4dd5b
.price {

  display:
    flex;

  flex-wrap:
    wrap;

  align-items:
    baseline;

  gap:
    4px;

  margin:
    0 !important;

  color:
    var(--qpdp-text) !important;

  font-size:
    22px !important;

  line-height:
    1.25 !important;

  font-weight:
    600 !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-1f4dd5b
.price del {

  color:
    #9c9294 !important;

  font-size:
    15px !important;

  font-weight:
    400 !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-1f4dd5b
.price ins {

  color:
    var(--qpdp-text) !important;

  text-decoration:
    none !important;
}


/* ==========================================================
   PURCHASE PANEL
   ========================================================== */

body.qinelle-pdp2-sample-v1
.elementor-element-65fed08 {

  margin:
    0 !important;

  padding:
    20px !important;

  background:
    rgba(255, 250, 250, .72) !important;

  border:
    1px solid var(--qpdp-border) !important;

  border-radius:
    var(--qpdp-radius-lg) !important;

  box-shadow:
    none !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f {

  margin:
    0 !important;

  padding:
    0 !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
.elementor-widget-container {

  margin:
    0 !important;

  padding:
    0 !important;
}


body.qinelle-pdp2-sample-v1
form.variations_form {

  width:
    100% !important;

  margin:
    0 !important;

  padding:
    0 !important;
}


body.qinelle-pdp2-sample-v1
table.variations {

  width:
    100% !important;

  margin:
    0 0 12px !important;

  padding:
    0 !important;

  border:
    0 !important;
}


body.qinelle-pdp2-sample-v1
table.variations tbody {

  display:
    block !important;

  width:
    100% !important;
}


body.qinelle-pdp2-sample-v1
table.variations tr {

  display:
    block !important;

  width:
    100% !important;

  margin:
    0 0 15px !important;

  padding:
    0 !important;
}


body.qinelle-pdp2-sample-v1
table.variations th,

body.qinelle-pdp2-sample-v1
table.variations td {

  display:
    block !important;

  width:
    100% !important;

  margin:
    0 !important;

  padding:
    0 !important;

  border:
    0 !important;
}


body.qinelle-pdp2-sample-v1
table.variations th.label {

  margin:
    0 0 8px !important;
}


body.qinelle-pdp2-sample-v1
table.variations label {

  color:
    var(--qpdp-text) !important;

  font-size:
    14px !important;

  line-height:
    1.3 !important;

  font-weight:
    600 !important;

  letter-spacing:
    .01em;
}


body.qinelle-pdp2-sample-v1
table.variations select {

  width:
    100% !important;

  min-height:
    44px !important;

  padding:
    0 12px !important;

  color:
    var(--qpdp-text) !important;

  background:
    #fff !important;

  border:
    1px solid var(--qpdp-border-strong) !important;

  border-radius:
    var(--qpdp-radius-sm) !important;

  font-size:
    14px !important;
}


/* ==========================================================
   VARIATION SWATCHES
   ========================================================== */

body.qinelle-pdp2-sample-v1
.cfvsw-swatches-container {

  display:
    flex !important;

  flex-wrap:
    wrap !important;

  align-items:
    center !important;

  gap:
    8px !important;

  margin:
    0 !important;
}


body.qinelle-pdp2-sample-v1
.cfvsw-swatches-option {

  display:
    inline-flex !important;

  align-items:
    center !important;

  justify-content:
    center !important;

  min-width:
    42px !important;

  min-height:
    42px !important;

  margin:
    0 !important;

  border:
    1px solid var(--qpdp-border-strong) !important;

  border-radius:
    10px !important;

  background:
    #fff;

  box-shadow:
    none !important;

  transition:
    border-color .18s ease,
    background .18s ease,
    transform .18s ease;
}


body.qinelle-pdp2-sample-v1
.cfvsw-swatches-option:hover {

  border-color:
    rgba(75, 48, 54, .55) !important;
}


body.qinelle-pdp2-sample-v1
.cfvsw-swatches-option.cfvsw-selected-swatch {

  background:
    var(--qpdp-accent-soft) !important;

  border-color:
    #67454e !important;

  box-shadow:
    0 0 0 2px rgba(166, 104, 119, .10) !important;
}


body.qinelle-pdp2-sample-v1
.cfvsw-swatches-option.cfvsw-swatches-disabled-option,

body.qinelle-pdp2-sample-v1
.cfvsw-swatches-option.disabled {

  opacity:
    .38 !important;
}


/* Color swatches should remain circles when plugin renders color */

body.qinelle-pdp2-sample-v1
.cfvsw-swatches-option.cfvsw-swatches-option-color {

  min-width:
    34px !important;

  width:
    34px !important;

  min-height:
    34px !important;

  height:
    34px !important;

  border-radius:
    999px !important;
}


/* ==========================================================
   SIZE CHART
   VISUAL ONLY — POSITION IS NOT CHANGED
   ========================================================== */

body.qinelle-pdp2-sample-v1
[class*="size-chart"] a,

body.qinelle-pdp2-sample-v1
[class*="size-chart"] button,

body.qinelle-pdp2-sample-v1
a[class*="size-chart"],

body.qinelle-pdp2-sample-v1
button[class*="size-chart"] {

  color:
    var(--qpdp-accent) !important;

  font-size:
    13px !important;

  font-weight:
    500 !important;

  text-decoration:
    underline !important;

  text-underline-offset:
    3px;
}


/* ==========================================================
   QUANTITY / ATC
   ========================================================== */

body.qinelle-pdp2-sample-v1
.single_variation_wrap {

  margin-top:
    8px !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-variation-add-to-cart {

  display:
    flex !important;

  flex-wrap:
    wrap !important;

  align-items:
    stretch !important;

  gap:
    10px !important;
}


body.qinelle-pdp2-sample-v1
.quantity {

  margin:
    0 !important;
}


body.qinelle-pdp2-sample-v1
.quantity .qty {

  min-height:
    52px !important;

  padding:
    0 10px !important;

  border:
    1px solid var(--qpdp-border-strong) !important;

  border-radius:
    10px !important;

  background:
    #fff !important;

  font-size:
    14px !important;
}


body.qinelle-pdp2-sample-v1
.single_add_to_cart_button {

  flex:
    1 1 220px !important;

  width:
    auto !important;

  min-height:
    52px !important;

  padding:
    14px 20px !important;

  margin:
    0 !important;

  border:
    0 !important;

  border-radius:
    12px !important;

  box-shadow:
    none !important;

  font-size:
    15px !important;

  line-height:
    1.2 !important;

  font-weight:
    600 !important;

  letter-spacing:
    .025em !important;

  transition:
    transform .15s ease,
    opacity .15s ease !important;
}


body.qinelle-pdp2-sample-v1
.single_add_to_cart_button:hover {

  transform:
    translateY(-1px);
}


body.qinelle-pdp2-sample-v1
.single_add_to_cart_button:disabled,

body.qinelle-pdp2-sample-v1
.single_add_to_cart_button.disabled {

  transform:
    none !important;
}


/* ==========================================================
   TRUST AREA
   ========================================================== */

body.qinelle-pdp2-sample-v1
.elementor-element-a8a3c00 {

  margin:
    2px 0 0 !important;

  padding:
    0 !important;
}


body.qinelle-pdp2-sample-v1
.hkrx-trust-row {

  display:
    grid !important;

  grid-template-columns:
    repeat(3, minmax(0, 1fr)) !important;

  gap:
    8px !important;

  margin:
    0 !important;
}


body.qinelle-pdp2-sample-v1
.hkrx-trust-pill {

  min-width:
    0 !important;

  padding:
    10px 7px !important;

  color:
    var(--qpdp-muted) !important;

  background:
    #fff !important;

  border:
    1px solid var(--qpdp-border) !important;

  border-radius:
    12px !important;

  font-size:
    11px !important;

  line-height:
    1.35 !important;

  text-align:
    center !important;
}


body.qinelle-pdp2-sample-v1
.hkrx-trust-icon {

  display:
    inline-block;

  margin-bottom:
    3px;

  font-size:
    14px !important;

  line-height:
    1 !important;
}


body.qinelle-pdp2-sample-v1
.hkrx-trust-note {

  margin:
    10px 0 0 !important;

  color:
    var(--qpdp-muted) !important;

  font-size:
    13px !important;

  line-height:
    1.5 !important;
}


body.qinelle-pdp2-sample-v1
.hkrx-wa-link {

  color:
    var(--qpdp-accent) !important;

  font-weight:
    500 !important;
}


/* ==========================================================
   SHORT DESCRIPTION + PRODUCT META
   Content untouched.
   Only visual hierarchy changes.
   ========================================================== */

body.qinelle-pdp2-sample-v1
.elementor-element-479a64b {

  display:
    flex !important;

  flex-direction:
    column !important;

  gap:
    0 !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-80920f2 {

  order:
    1 !important;

  margin:
    10px 0 0 !important;

  padding:
    0 !important;

  color:
    var(--qpdp-text-soft) !important;

  font-size:
    14px !important;

  line-height:
    1.65 !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-80920f2 p {

  margin:
    0 0 8px !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-80920f2 ul {

  margin:
    8px 0 0 18px !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-80920f2 li {

  margin-bottom:
    5px !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-167ef45 {

  order:
    2 !important;

  margin:
    14px 0 0 !important;

  padding:
    12px 0 0 !important;

  color:
    #999093 !important;

  border-top:
    1px solid var(--qpdp-border) !important;

  font-size:
    11px !important;

  line-height:
    1.5 !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-167ef45 a {

  color:
    inherit !important;
}


/* ==========================================================
   PRODUCT TABS
   ========================================================== */

body.qinelle-pdp2-sample-v1
.elementor-element-5b6c850 {

  width:
    min(100%, 1180px) !important;

  max-width:
    1180px !important;

  margin:
    30px auto 0 !important;

  padding:
    0 24px !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-a8a4e4e {

  margin:
    0 !important;

  padding:
    0 !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-tabs {

  margin:
    0 !important;

  padding:
    0 !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-tabs ul.tabs {

  display:
    flex !important;

  align-items:
    center !important;

  gap:
    28px !important;

  margin:
    0 0 24px !important;

  padding:
    0 !important;

  border:
    0 !important;

  border-bottom:
    1px solid var(--qpdp-border) !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-tabs ul.tabs::before,

body.qinelle-pdp2-sample-v1
.woocommerce-tabs ul.tabs::after {

  display:
    none !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-tabs ul.tabs li {

  margin:
    0 !important;

  padding:
    0 !important;

  border:
    0 !important;

  border-radius:
    0 !important;

  background:
    transparent !important;

  box-shadow:
    none !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-tabs ul.tabs li::before,

body.qinelle-pdp2-sample-v1
.woocommerce-tabs ul.tabs li::after {

  display:
    none !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-tabs ul.tabs li a {

  display:
    block !important;

  padding:
    0 0 12px !important;

  color:
    #74676a !important;

  font-size:
    14px !important;

  line-height:
    1.3 !important;

  font-weight:
    500 !important;

  border-bottom:
    2px solid transparent !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-tabs ul.tabs li.active a {

  color:
    var(--qpdp-text) !important;

  border-bottom-color:
    var(--qpdp-accent) !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-tabs .panel {

  margin:
    0 !important;

  padding:
    0 !important;

  color:
    var(--qpdp-text-soft) !important;

  font-size:
    15px !important;

  line-height:
    1.75 !important;
}


/* ==========================================================
   FACTORY TRUST
   Existing HTML stays untouched.
   ========================================================== */

body.qinelle-pdp2-sample-v1
.elementor-element-a86845c {

  width:
    min(100%, 1180px) !important;

  max-width:
    1180px !important;

  margin:
    50px auto 0 !important;

  padding:
    0 24px !important;
}


body.qinelle-pdp2-sample-v1
.qpd-factory-trust {

  margin:
    0 !important;

  padding:
    32px !important;

  background:
    var(--qpdp-surface-soft) !important;

  border:
    1px solid var(--qpdp-border) !important;

  border-radius:
    var(--qpdp-radius-lg) !important;
}


body.qinelle-pdp2-sample-v1
.qpd-ft-header {

  margin-bottom:
    20px !important;
}


body.qinelle-pdp2-sample-v1
.qpd-ft-title {

  margin-bottom:
    8px !important;
}


body.qinelle-pdp2-sample-v1
.qpd-ft-grid {

  gap:
    12px !important;

  margin-bottom:
    16px !important;
}


body.qinelle-pdp2-sample-v1
.qpd-ft-item {

  border-radius:
    12px !important;
}


body.qinelle-pdp2-sample-v1
.qpd-ft-item img {

  border-radius:
    12px !important;
}


body.qinelle-pdp2-sample-v1
.qpd-ft-stats {

  margin-top:
    18px !important;

  background:
    transparent !important;

  border:
    1px solid var(--qpdp-border) !important;

  border-radius:
    12px !important;
}


body.qinelle-pdp2-sample-v1
.qpd-ft-stat {

  background:
    rgba(255, 255, 255, .82) !important;
}


/* ==========================================================
   SERVICE ACCORDION
   ========================================================== */

body.qinelle-pdp2-sample-v1
.elementor-element-ab53372 {

  width:
    min(100%, 900px) !important;

  max-width:
    900px !important;

  margin:
    48px auto 0 !important;

  padding:
    0 24px !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-bbcb629 {

  border-top:
    1px solid var(--qpdp-border) !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-bbcb629
.e-n-accordion-item {

  border-bottom:
    1px solid var(--qpdp-border) !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-bbcb629
.e-n-accordion-item-title {

  padding:
    16px 2px !important;

  color:
    var(--qpdp-text) !important;

  font-size:
    14px !important;

  font-weight:
    500 !important;
}


/* ==========================================================
   CHILD SERIES / UPSELL / RELATED
   ========================================================== */

body.qinelle-pdp2-sample-v1
.elementor-element-9f32fca,

body.qinelle-pdp2-sample-v1
.elementor-element-83ccf92,

body.qinelle-pdp2-sample-v1
.elementor-element-80ff41d {

  width:
    min(100%, 1180px) !important;

  max-width:
    1180px !important;

  margin:
    50px auto 0 !important;

  padding:
    0 24px !important;
}


body.qinelle-pdp2-sample-v1
.upsells.products > h2,

body.qinelle-pdp2-sample-v1
.related.products > h2 {

  margin:
    0 0 22px !important;

  color:
    var(--qpdp-text) !important;

  font-size:
    24px !important;

  line-height:
    1.25 !important;

  font-weight:
    600 !important;

  letter-spacing:
    -.01em !important;

  text-transform:
    none !important;
}


body.qinelle-pdp2-sample-v1
.upsells.products ul.products,

body.qinelle-pdp2-sample-v1
.related.products ul.products {

  display:
    grid !important;

  grid-template-columns:
    repeat(4, minmax(0, 1fr)) !important;

  gap:
    22px !important;

  margin:
    0 !important;
}


body.qinelle-pdp2-sample-v1
.upsells.products ul.products::before,

body.qinelle-pdp2-sample-v1
.upsells.products ul.products::after,

body.qinelle-pdp2-sample-v1
.related.products ul.products::before,

body.qinelle-pdp2-sample-v1
.related.products ul.products::after {

  display:
    none !important;
}


body.qinelle-pdp2-sample-v1
.upsells.products ul.products li.product,

body.qinelle-pdp2-sample-v1
.related.products ul.products li.product {

  width:
    auto !important;

  max-width:
    none !important;

  margin:
    0 !important;

  padding:
    0 !important;
}


body.qinelle-pdp2-sample-v1
.upsells.products ul.products li.product img,

body.qinelle-pdp2-sample-v1
.related.products ul.products li.product img {

  display:
    block !important;

  width:
    100% !important;

  aspect-ratio:
    4 / 5 !important;

  object-fit:
    cover !important;

  margin:
    0 0 10px !important;

  border-radius:
    14px !important;
}


body.qinelle-pdp2-sample-v1
.upsells.products
.woocommerce-loop-product__title,

body.qinelle-pdp2-sample-v1
.related.products
.woocommerce-loop-product__title {

  display:
    -webkit-box !important;

  overflow:
    hidden !important;

  -webkit-box-orient:
    vertical !important;

  -webkit-line-clamp:
    2 !important;

  min-height:
    2.8em !important;

  margin:
    0 0 6px !important;

  color:
    var(--qpdp-text) !important;

  font-size:
    14px !important;

  line-height:
    1.4 !important;

  font-weight:
    500 !important;

  text-transform:
    none !important;
}


body.qinelle-pdp2-sample-v1
.upsells.products .price,

body.qinelle-pdp2-sample-v1
.related.products .price {

  font-size:
    14px !important;
}


/* ==========================================================
   TABLET
   ========================================================== */

@media
(max-width: 1024px)
and
(min-width: 768px) {

  body.qinelle-pdp2-sample-v1
  .elementor-element-92c6c30 {

    padding-left:
      20px !important;

    padding-right:
      20px !important;

    gap:
      28px !important;
  }


  body.qinelle-pdp2-sample-v1
  .elementor-element-21d975e {

    width:
      55% !important;

    max-width:
      55% !important;
  }


  body.qinelle-pdp2-sample-v1
  .elementor-element-f97a294 {

    width:
      45% !important;

    max-width:
      45% !important;
  }

}


/* ==========================================================
   MOBILE
   ========================================================== */

@media (max-width: 767px) {

  body.qinelle-pdp2-sample-v1
  .elementor-element-92c6c30 {

    width:
      100% !important;

    max-width:
      none !important;

    flex-direction:
      column !important;

    gap:
      20px !important;

    padding:
      0 14px 26px !important;
  }


  body.qinelle-pdp2-sample-v1
  .elementor-element-21d975e,

  body.qinelle-pdp2-sample-v1
  .elementor-element-f97a294 {

    width:
      100% !important;

    max-width:
      100% !important;

    margin:
      0 !important;

    padding:
      0 !important;
  }


  body.qinelle-pdp2-sample-v1
  .elementor-element-f97a294 {

    position:
      static !important;

    top:
      auto !important;
  }


  body.qinelle-pdp2-sample-v1
  .woocommerce-product-gallery__image a,

  body.qinelle-pdp2-sample-v1
  .woocommerce-product-gallery__image img {

    border-radius:
      14px !important;
  }


  body.qinelle-pdp2-sample-v1
  .elementor-element-9f9f5d3
  .flex-control-nav.flex-control-thumbs li {

    flex-basis:
      66px !important;

    width:
      66px !important;

    max-width:
      66px !important;
  }


  body.qinelle-pdp2-sample-v1
  .elementor-element-9f9f5d3
  .flex-control-nav.flex-control-thumbs img {

    width:
      66px !important;

    height:
      82px !important;

    border-radius:
      8px !important;
  }


  body.qinelle-pdp2-sample-v1
  .elementor-element-073aa60
  .product_title,

  body.qinelle-pdp2-sample-v1
  .elementor-element-073aa60 h1 {

    margin-bottom:
      9px !important;

    font-size:
      22px !important;

    line-height:
      1.28 !important;
  }


  body.qinelle-pdp2-sample-v1
  .elementor-element-1f4dd5b
  .price {

    font-size:
      20px !important;
  }


  body.qinelle-pdp2-sample-v1
  .elementor-element-65fed08 {

    padding:
      16px !important;

    border-radius:
      16px !important;
  }


  body.qinelle-pdp2-sample-v1
  .woocommerce-variation-add-to-cart {

    display:
      grid !important;

    grid-template-columns:
      74px minmax(0, 1fr) !important;

    gap:
      8px !important;
  }


  body.qinelle-pdp2-sample-v1
  .quantity .qty {

    width:
      74px !important;
  }


  body.qinelle-pdp2-sample-v1
  .single_add_to_cart_button {

    width:
      100% !important;

    min-height:
      52px !important;
  }


  body.qinelle-pdp2-sample-v1
  .hkrx-trust-row {

    grid-template-columns:
      repeat(3, minmax(0, 1fr)) !important;

    gap:
      5px !important;
  }


  body.qinelle-pdp2-sample-v1
  .hkrx-trust-pill {

    padding:
      8px 4px !important;

    font-size:
      10px !important;
  }


  body.qinelle-pdp2-sample-v1
  .elementor-element-5b6c850,

  body.qinelle-pdp2-sample-v1
  .elementor-element-a86845c,

  body.qinelle-pdp2-sample-v1
  .elementor-element-ab53372,

  body.qinelle-pdp2-sample-v1
  .elementor-element-9f32fca,

  body.qinelle-pdp2-sample-v1
  .elementor-element-83ccf92,

  body.qinelle-pdp2-sample-v1
  .elementor-element-80ff41d {

    width:
      100% !important;

    max-width:
      none !important;

    margin-top:
      36px !important;

    padding-left:
      14px !important;

    padding-right:
      14px !important;
  }


  body.qinelle-pdp2-sample-v1
  .woocommerce-tabs ul.tabs {

    gap:
      18px !important;

    overflow-x:
      auto !important;

    white-space:
      nowrap !important;

    scrollbar-width:
      none;
  }


  body.qinelle-pdp2-sample-v1
  .woocommerce-tabs ul.tabs::-webkit-scrollbar {

    display:
      none;
  }


  body.qinelle-pdp2-sample-v1
  .qpd-factory-trust {

    padding:
      20px 14px !important;

    border-radius:
      16px !important;
  }


  body.qinelle-pdp2-sample-v1
  .qpd-ft-grid {

    gap:
      6px !important;
  }


  body.qinelle-pdp2-sample-v1
  .upsells.products ul.products,

  body.qinelle-pdp2-sample-v1
  .related.products ul.products {

    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;

    gap:
      14px !important;
  }


  body.qinelle-pdp2-sample-v1
  .upsells.products > h2,

  body.qinelle-pdp2-sample-v1
  .related.products > h2 {

    font-size:
      21px !important;
  }

}


/* ==========================================================
   QINELLE PDP 2.0 V1.1A EXACT PURCHASE LAYOUT

   Real DOM:
   .woocommerce-variation-add-to-cart
      > size-tools-wrapper
      > #qinelle-size-modal
      > .e-atc-qty-button-holder
           > .quantity
           > .single_add_to_cart_button

   Purpose:
   Explicitly control the real Elementor ATC holder.
   ========================================================== */

@media (max-width: 767px) {


/* ----------------------------------------------------------
   PURCHASE CARD
   ---------------------------------------------------------- */

body.qinelle-pdp2-sample-v1
.elementor-element-65fed08 {
  position: relative !important;
  width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 14px !important;
  border-radius: 14px !important;
}


/* Remove Elementor widget inner padding authority */

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f,
body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f > .elementor-widget-container {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}


/* ----------------------------------------------------------
   VARIABLE FORM
   ---------------------------------------------------------- */

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
form.cart,

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
form.variations_form {
  display: block !important;
  position: static !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}


/* ----------------------------------------------------------
   VARIATIONS / SWATCH RHYTHM
   ---------------------------------------------------------- */

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
table.variations {
  width: 100% !important;
  margin: 0 0 6px !important;
}

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
table.variations tr {
  margin: 0 0 12px !important;
}

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
table.variations tr:last-child {
  margin-bottom: 2px !important;
}

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
.cfvsw-swatches-container {
  gap: 7px !important;
}

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
.cfvsw-swatches-option {
  min-width: 44px !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 5px 10px !important;
  font-size: 14px !important;
  border-radius: 10px !important;
}


/* ----------------------------------------------------------
   SINGLE VARIATION WRAPPER
   Critical: normal document flow.
   ---------------------------------------------------------- */

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
.single_variation_wrap {
  display: block !important;
  position: static !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  margin: 8px 0 0 !important;
  padding: 0 !important;
  inset: auto !important;
  transform: none !important;
  float: none !important;
  clear: both !important;
}

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
.single_variation:empty {
  display: none !important;
  min-height: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}


/* ----------------------------------------------------------
   MASTER PURCHASE ACTION WRAPPER

   V1.1 mistake was treating this as the Qty/ATC row.
   It actually contains:
   size tools + modal + real e-atc holder.
   ---------------------------------------------------------- */

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
.woocommerce-variation-add-to-cart.variations_button {
  display: block !important;
  position: static !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  margin: 8px 0 0 !important;
  padding: 0 !important;
  inset: auto !important;
  transform: none !important;
  float: none !important;
  clear: both !important;
}


/* ----------------------------------------------------------
   SIZE CHART + FIND MY SIZE
   This is the ACTUAL first direct child.
   Inline styles are intentionally overridden.
   ---------------------------------------------------------- */

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
.woocommerce-variation-add-to-cart.variations_button
> div:first-child {
  display: grid !important;
  grid-template-columns:
    minmax(0, 1fr)
    minmax(0, 1fr) !important;
  align-items: stretch !important;
  gap: 8px !important;
  position: static !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 0 10px !important;
  padding: 0 !important;
  inset: auto !important;
  transform: none !important;
  float: none !important;
  clear: both !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
.woocommerce-variation-add-to-cart.variations_button
> div:first-child > a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 42px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 9px 7px !important;
  border: 1px solid rgba(115, 74, 84, .24) !important;
  border-radius: 11px !important;
  background: #fff !important;
  color: #685c5f !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
  font-weight: 500 !important;
  text-align: center !important;
  white-space: nowrap !important;
  text-decoration: none !important;
}


/* Do not let the hidden modal reserve layout space. */

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
#qinelle-size-modal[style*="display:none"] {
  display: none !important;
}


/* ----------------------------------------------------------
   REAL QUANTITY + ADD TO CART HOLDER

   This is the selector V1.1 was missing.
   ---------------------------------------------------------- */

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
.e-atc-qty-button-holder {
  display: grid !important;
  grid-template-columns:
    64px
    minmax(0, 1fr) !important;
  grid-template-rows:
    50px !important;
  align-items: stretch !important;
  gap: 8px !important;

  position: static !important;

  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;

  min-height: 50px !important;
  height: auto !important;
  max-height: none !important;

  margin: 0 !important;
  padding: 0 !important;

  inset: auto !important;
  transform: none !important;

  float: none !important;
  clear: both !important;

  overflow: visible !important;
}


/* Quantity holder */

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
.e-atc-qty-button-holder
> .quantity {
  display: block !important;
  position: static !important;

  grid-column: 1 !important;
  grid-row: 1 !important;

  width: 64px !important;
  min-width: 64px !important;
  max-width: 64px !important;

  height: 50px !important;
  min-height: 50px !important;

  margin: 0 !important;
  padding: 0 !important;

  inset: auto !important;
  transform: none !important;

  float: none !important;
  clear: none !important;

  z-index: 1 !important;
}


/* Quantity input */

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
.e-atc-qty-button-holder
> .quantity
.qty {
  display: block !important;
  position: static !important;

  width: 64px !important;
  min-width: 64px !important;
  max-width: 64px !important;

  height: 50px !important;
  min-height: 50px !important;

  margin: 0 !important;
  padding: 0 6px !important;

  inset: auto !important;
  transform: none !important;

  border: 1px solid rgba(115, 74, 84, .30) !important;
  border-radius: 11px !important;

  background: #fff !important;

  font-size: 14px !important;
  line-height: 48px !important;
  text-align: center !important;
}


/* ATC button */

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
.e-atc-qty-button-holder
> .single_add_to_cart_button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  position: static !important;

  grid-column: 2 !important;
  grid-row: 1 !important;

  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;

  height: 50px !important;
  min-height: 50px !important;

  margin: 0 !important;
  padding: 0 16px !important;

  inset: auto !important;
  transform: none !important;

  float: none !important;
  clear: none !important;

  border-radius: 11px !important;

  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
  letter-spacing: .02em !important;
  text-align: center !important;

  z-index: 1 !important;
}


/* Preserve Woo disabled state rather than faking availability. */

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
.e-atc-qty-button-holder
> .single_add_to_cart_button.disabled,

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
.e-atc-qty-button-holder
> .single_add_to_cart_button:disabled {
  transform: none !important;
}


/* ----------------------------------------------------------
   REMOVE STRAY DEAD SPACE
   ---------------------------------------------------------- */

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
.reset_variations {
  margin: 5px 0 0 !important;
}

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
.woocommerce-variation-description,

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
.woocommerce-variation-availability {
  margin: 5px 0 !important;
}


/* ----------------------------------------------------------
   MOBILE TITLE / PRICE — retain good V1.1 changes
   ---------------------------------------------------------- */

body.qinelle-pdp2-sample-v1
.elementor-element-073aa60
.product_title,

body.qinelle-pdp2-sample-v1
.elementor-element-073aa60 h1 {
  margin-bottom: 8px !important;
  font-size: 20px !important;
  line-height: 1.28 !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-product-rating {
  gap: 7px !important;
  font-size: 12px !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-1f4dd5b {
  margin-bottom: 14px !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-1f4dd5b
.price {
  font-size: 19px !important;
}


/* ----------------------------------------------------------
   TRUST — compact secondary hierarchy
   ---------------------------------------------------------- */

body.qinelle-pdp2-sample-v1
.hkrx-trust-row {
  gap: 6px !important;
  margin-top: 10px !important;
}


body.qinelle-pdp2-sample-v1
.hkrx-trust-pill {
  min-height: 64px !important;
  padding: 7px 4px !important;
  border-radius: 10px !important;
  font-size: 9.5px !important;
  line-height: 1.28 !important;
}


body.qinelle-pdp2-sample-v1
.hkrx-trust-icon {
  margin-bottom: 2px !important;
  font-size: 13px !important;
}


body.qinelle-pdp2-sample-v1
.hkrx-trust-note {
  margin-top: 9px !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}


/* ----------------------------------------------------------
   SHORT DESCRIPTION
   ---------------------------------------------------------- */

body.qinelle-pdp2-sample-v1
.elementor-element-80920f2 {
  margin-top: 14px !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
}


/* ----------------------------------------------------------
   FLOATING CART
   Retain reduced mobile footprint.
   ---------------------------------------------------------- */

body.qinelle-pdp2-sample-v1
#moderncart-floating-cart {
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  min-height: 48px !important;
  right: 9px !important;
  bottom: 14px !important;
  transform: none !important;
  box-shadow: 0 5px 16px rgba(0,0,0,.12) !important;
}


body.qinelle-pdp2-sample-v1
#moderncart-floating-cart svg {
  width: 22px !important;
  height: 22px !important;
}


/* ----------------------------------------------------------
   WIDTH SAFETY
   ---------------------------------------------------------- */

body.qinelle-pdp2-sample-v1
.elementor-element-f97a294,

body.qinelle-pdp2-sample-v1
.elementor-element-65fed08,

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f,

body.qinelle-pdp2-sample-v1
.elementor-element-b057a1f
.elementor-widget-container {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

}

/* ==========================================================
   QINELLE PDP 2.0 V1.2 VISUAL RHYTHM

   Scope:
   body.qinelle-pdp2-sample-v1

   Visual polish only.
   Does NOT redefine:
   - .e-atc-qty-button-holder
   - quantity layout
   - ATC layout
   - Size Chart hook
   ========================================================== */


/* ==========================================================
   DESKTOP — TOP RHYTHM
   ========================================================== */

@media (min-width: 768px) {

body.qinelle-pdp2-sample-v1
.elementor-element-92c6c30 {
    padding-top: 112px !important;
    padding-bottom: 34px !important;
    gap: 44px !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-f97a294 {
    gap: 10px !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-073aa60
.product_title,

body.qinelle-pdp2-sample-v1
.elementor-element-073aa60 h1 {
    max-width: 16em;
    margin-bottom: 9px !important;
    font-size: 29px !important;
    line-height: 1.22 !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-df483a5 {
    margin-bottom: 4px !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-1f4dd5b {
    margin-bottom: 14px !important;
}


/* Long description readable width on desktop */

body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description {
    max-width: 840px;
    margin-left: auto !important;
    margin-right: auto !important;
}

}


/* ==========================================================
   SHARED — SHORT DESCRIPTION / META
   ========================================================== */

body.qinelle-pdp2-sample-v1
.elementor-element-80920f2 {
    color: #51484a !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-80920f2
.woocommerce-product-details__short-description {
    max-width: 58em;
}


body.qinelle-pdp2-sample-v1
.elementor-element-80920f2 ul {
    padding-left: 1.05em !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-80920f2 li {
    padding-left: .08em;
}


body.qinelle-pdp2-sample-v1
.elementor-element-167ef45 {
    opacity: .72;
}


body.qinelle-pdp2-sample-v1
.elementor-element-167ef45
.product_meta {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px 14px !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-167ef45
.detail-container {
    margin: 0 !important;
}


/* ==========================================================
   TABS
   ========================================================== */

body.qinelle-pdp2-sample-v1
.woocommerce-tabs {
    border-top: 0 !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-tabs ul.tabs {
    min-height: 42px;
}


body.qinelle-pdp2-sample-v1
.woocommerce-tabs ul.tabs li a {
    letter-spacing: .005em;
}


body.qinelle-pdp2-sample-v1
.woocommerce-tabs .panel {
    color: #4f4749 !important;
}


/* ==========================================================
   LONG-FORM DESCRIPTION TYPOGRAPHY
   ========================================================== */

body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description {

    color: #4d4547 !important;

    font-size: 15px !important;
    line-height: 1.72 !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description
> *:first-child {
    margin-top: 0 !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description
h2 {

    margin:
        34px 0 12px !important;

    color:
        #261f20 !important;

    font-size:
        clamp(22px, 2.1vw, 28px) !important;

    line-height:
        1.2 !important;

    font-weight:
        600 !important;

    letter-spacing:
        -.012em !important;

    text-transform:
        none !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description
h3 {

    margin:
        28px 0 9px !important;

    color:
        #302829 !important;

    font-size:
        clamp(18px, 1.7vw, 21px) !important;

    line-height:
        1.28 !important;

    font-weight:
        600 !important;

    letter-spacing:
        -.006em !important;

    text-transform:
        none !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description
h4 {

    margin:
        22px 0 8px !important;

    color:
        #342d2f !important;

    font-size:
        16px !important;

    line-height:
        1.35 !important;

    font-weight:
        600 !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description
p {

    margin:
        0 0 15px !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description
ul,

body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description
ol {

    margin:
        8px 0 18px 1.2em !important;

    padding:
        0 !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description
li {

    margin:
        0 0 7px !important;

    padding-left:
        .15em;
}


/* ==========================================================
   LONG-FORM IMAGES
   ========================================================== */

body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description
img {

    display:
        block;

    width:
        auto !important;

    max-width:
        100% !important;

    height:
        auto !important;

    margin:
        24px auto !important;

    border-radius:
        14px !important;
}


/* Prevent tiny supplier-style images from being stretched */

body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description
figure {

    max-width:
        100% !important;

    margin:
        24px auto !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description
figure img {

    margin:
        0 auto !important;
}


/* ==========================================================
   TABLES
   ========================================================== */

body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description
table {

    width:
        100% !important;

    max-width:
        100% !important;

    margin:
        20px 0 !important;

    border-collapse:
        collapse !important;

    font-size:
        13px !important;

    line-height:
        1.4 !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description
th,

body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description
td {

    padding:
        9px 8px !important;

    border:
        1px solid rgba(115,74,84,.14) !important;
}


/* ==========================================================
   FACTORY TRUST
   ========================================================== */

body.qinelle-pdp2-sample-v1
.qpd-factory-trust {

    box-shadow:
        none !important;
}


body.qinelle-pdp2-sample-v1
.qpd-ft-title {

    color:
        #2d2527 !important;

    letter-spacing:
        -.01em;
}


body.qinelle-pdp2-sample-v1
.qpd-ft-grid {

    align-items:
        stretch;
}


/* ==========================================================
   SERVICE ACCORDION
   ========================================================== */

body.qinelle-pdp2-sample-v1
.elementor-element-bbcb629
.e-n-accordion-item-title {

    min-height:
        50px;

    display:
        flex;

    align-items:
        center;

    justify-content:
        space-between;
}


/* ==========================================================
   RELATED / UPSELL CARDS
   ========================================================== */

body.qinelle-pdp2-sample-v1
.related.products,

body.qinelle-pdp2-sample-v1
.upsells.products {

    margin-top:
        0 !important;
}


body.qinelle-pdp2-sample-v1
.related.products
li.product,

body.qinelle-pdp2-sample-v1
.upsells.products
li.product {

    text-align:
        left !important;
}


body.qinelle-pdp2-sample-v1
.related.products
li.product
.woocommerce-loop-product__title,

body.qinelle-pdp2-sample-v1
.upsells.products
li.product
.woocommerce-loop-product__title {

    letter-spacing:
        0 !important;
}


/* ==========================================================
   MOBILE RHYTHM
   ========================================================== */

@media (max-width: 767px) {


/* Gallery → title */

body.qinelle-pdp2-sample-v1
.elementor-element-92c6c30 {

    gap:
        16px !important;

    padding-bottom:
        22px !important;
}


/* Title */

body.qinelle-pdp2-sample-v1
.elementor-element-073aa60
.product_title,

body.qinelle-pdp2-sample-v1
.elementor-element-073aa60 h1 {

    margin-bottom:
        6px !important;

    font-size:
        20px !important;

    line-height:
        1.25 !important;

    letter-spacing:
        -.012em !important;
}


/* Rating */

body.qinelle-pdp2-sample-v1
.elementor-element-df483a5 {

    margin:
        0 0 4px !important;
}


/* Price */

body.qinelle-pdp2-sample-v1
.elementor-element-1f4dd5b {

    margin:
        0 0 12px !important;
}


/* Purchase card outer rhythm only.
   DO NOT TOUCH inner ATC holder. */

body.qinelle-pdp2-sample-v1
.elementor-element-65fed08 {

    margin-top:
        0 !important;

    margin-bottom:
        0 !important;

    padding:
        13px !important;
}


/* Fit Tip / variation copy */

body.qinelle-pdp2-sample-v1
.elementor-element-65fed08
p {

    line-height:
        1.5;
}


/* Trust cards */

body.qinelle-pdp2-sample-v1
.hkrx-trust-row {

    margin-top:
        8px !important;

    gap:
        5px !important;
}


body.qinelle-pdp2-sample-v1
.hkrx-trust-pill {

    min-height:
        60px !important;

    padding:
        6px 3px !important;

    font-size:
        9px !important;

    line-height:
        1.25 !important;
}


/* WhatsApp / sizing help */

body.qinelle-pdp2-sample-v1
.hkrx-trust-note {

    margin:
        8px 0 0 !important;

    font-size:
        11.5px !important;

    line-height:
        1.4 !important;
}


body.qinelle-pdp2-sample-v1
.hkrx-wa-link {

    display:
        inline-flex !important;

    align-items:
        center !important;

    gap:
        5px !important;

    margin-top:
        2px !important;
}


/* Short description */

body.qinelle-pdp2-sample-v1
.elementor-element-80920f2 {

    margin-top:
        12px !important;

    font-size:
        13px !important;

    line-height:
        1.55 !important;
}


body.qinelle-pdp2-sample-v1
.elementor-element-80920f2 li {

    margin-bottom:
        5px !important;
}


/* Meta visually de-emphasized */

body.qinelle-pdp2-sample-v1
.elementor-element-167ef45 {

    margin-top:
        10px !important;

    padding-top:
        10px !important;

    font-size:
        10px !important;

    line-height:
        1.45 !important;

    opacity:
        .64;
}


/* Tabs */

body.qinelle-pdp2-sample-v1
.elementor-element-5b6c850 {

    margin-top:
        26px !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-tabs ul.tabs {

    gap:
        16px !important;

    margin-bottom:
        18px !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-tabs ul.tabs li a {

    padding-bottom:
        9px !important;

    font-size:
        12px !important;
}


/* Long-form body */

body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description {

    font-size:
        14px !important;

    line-height:
        1.66 !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description
h2 {

    margin:
        28px 0 10px !important;

    font-size:
        22px !important;

    line-height:
        1.18 !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description
h3 {

    margin:
        24px 0 8px !important;

    font-size:
        18px !important;

    line-height:
        1.25 !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description
h4 {

    margin:
        20px 0 7px !important;

    font-size:
        15px !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description
p {

    margin-bottom:
        13px !important;
}


body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description
img {

    margin:
        20px auto !important;

    border-radius:
        12px !important;
}


/* Tables: contain overflow rather than breaking viewport */

body.qinelle-pdp2-sample-v1
.woocommerce-Tabs-panel--description
table {

    font-size:
        11px !important;
}


/* Factory */

body.qinelle-pdp2-sample-v1
.elementor-element-a86845c {

    margin-top:
        32px !important;
}


body.qinelle-pdp2-sample-v1
.qpd-factory-trust {

    padding:
        18px 12px !important;
}


/* Service accordion */

body.qinelle-pdp2-sample-v1
.elementor-element-ab53372 {

    margin-top:
        32px !important;
}


/* Related / Upsell */

body.qinelle-pdp2-sample-v1
.elementor-element-83ccf92,

body.qinelle-pdp2-sample-v1
.elementor-element-80ff41d {

    margin-top:
        34px !important;
}


body.qinelle-pdp2-sample-v1
.related.products > h2,

body.qinelle-pdp2-sample-v1
.upsells.products > h2 {

    margin-bottom:
        16px !important;

    font-size:
        20px !important;
}


/* Floating cart stays secondary */

body.qinelle-pdp2-sample-v1
#moderncart-floating-cart {

    opacity:
        .92;
}

}

/* ==========================================================
   QINELLE PDP2 DESKTOP HEADER CLEARANCE V1

   Purpose:
   Keep PDP title / gallery below the desktop Qinelle header.

   No mobile effect.
   No purchase component effect.
   ========================================================== */

@media (min-width: 1025px) {

    body.qinelle-pdp2-sample-v1
    .elementor-element-92c6c30 {
        padding-top: 168px !important;
    }

}


/* ==========================================================
   QINELLE PDP2 DETAIL WIDTH MEDIA CLEANUP V1

   Customer-facing goals:
   1. Give long PDP content more horizontal breathing room.
   2. Let product photography use the width of its own module.
   3. Remove redundant media-only inner frames.
   4. Preserve content cards that contain real explanatory text.

   Does NOT touch purchasing controls.
   ========================================================== */


/* ----------------------------------------------------------
   A. DESKTOP — BREAK DETAIL/TABS OUT OF THE OLD NARROW COLUMN
   ---------------------------------------------------------- */

@media (min-width: 1025px) {

    body.qinelle-pdp2-sample-v1
    .woocommerce-tabs {

        position: relative !important;

        left: 50% !important;

        transform:
            translateX(-50%)
            !important;

        width:
            min(
                1180px,
                calc(100vw - 64px)
            )
            !important;

        max-width: none !important;

        margin-left: 0 !important;
        margin-right: 0 !important;
    }


    body.qinelle-pdp2-sample-v1
    .woocommerce-Tabs-panel {

        width: 100% !important;

        max-width: none !important;

        margin-left: auto !important;
        margin-right: auto !important;
    }


    /*
     * Many rebuilt PDP descriptions have one root wrapper.
     * Do not let that wrapper restore the old narrow width.
     */

    body.qinelle-pdp2-sample-v1
    #tab-description > div,

    body.qinelle-pdp2-sample-v1
    .woocommerce-Tabs-panel--description > div {

        width: 100% !important;

        max-width: none !important;
    }

}


/* ----------------------------------------------------------
   B. MEDIA — LET REAL PRODUCT IMAGES USE THEIR CONTAINER
   ---------------------------------------------------------- */

body.qinelle-pdp2-sample-v1
#tab-description img {

    max-width: 100% !important;

    height: auto !important;
}


/*
 * Standard WordPress / editorial media wrappers:
 * one outer content module is enough.
 */

body.qinelle-pdp2-sample-v1
#tab-description figure,

body.qinelle-pdp2-sample-v1
#tab-description .wp-block-image {

    width: 100% !important;

    max-width: none !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    padding: 0 !important;

    border: 0 !important;

    background: transparent !important;

    box-shadow: none !important;
}


body.qinelle-pdp2-sample-v1
#tab-description figure > img,

body.qinelle-pdp2-sample-v1
#tab-description .wp-block-image > img,

body.qinelle-pdp2-sample-v1
#tab-description > img {

    display: block !important;

    width: 100% !important;

    max-width: 100% !important;

    height: auto !important;

    margin: 0 !important;
}


/* ----------------------------------------------------------
   C. REMOVE REDUNDANT IMAGE-ONLY INNER BOXES
   ----------------------------------------------------------

   Important:
   This only matches a wrapper whose direct and only child is
   an image.

   Cards that contain headings, paragraphs, guidance or other
   buying information are NOT flattened.
   ---------------------------------------------------------- */

body.qinelle-pdp2-sample-v1
#tab-description
:where(
    div,
    p,
    figure
):has(> img:only-child) {

    width: 100% !important;

    max-width: none !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    padding: 0 !important;

    border: 0 !important;

    background: transparent !important;

    box-shadow: none !important;
}


body.qinelle-pdp2-sample-v1
#tab-description
:where(
    div,
    p,
    figure
):has(> img:only-child)
> img {

    display: block !important;

    width: 100% !important;

    max-width: 100% !important;

    height: auto !important;

    margin: 0 !important;
}


/* ----------------------------------------------------------
   D. MOBILE / TABLET

   Do NOT widen the page beyond the viewport.
   We only keep media clean and container-filling.
   ---------------------------------------------------------- */

@media (max-width: 1024px) {

    body.qinelle-pdp2-sample-v1
    .woocommerce-tabs {

        left: auto !important;

        transform: none !important;

        width: 100% !important;

        max-width: 100% !important;
    }


    body.qinelle-pdp2-sample-v1
    #tab-description figure > img,

    body.qinelle-pdp2-sample-v1
    #tab-description .wp-block-image > img,

    body.qinelle-pdp2-sample-v1
    #tab-description > img {

        width: 100% !important;

        max-width: 100% !important;
    }

}


/* ==========================================================
   QINELLE PDP2 DESKTOP PURCHASE ALIGNMENT V1

   Desktop action hierarchy:

   Size Chart | Find My Size
   Qty        | Add To Cart

   Mobile remains governed by the approved mobile authority.
   ========================================================== */

@media (min-width: 1025px) {

    /* ------------------------------------------------------
       Main Woo action area
       ------------------------------------------------------ */

    body.qinelle-pdp2-sample-v1
    .woocommerce-variation-add-to-cart.variations_button {

        display: block !important;

        width: 100% !important;

        margin:
            14px 0 0
            !important;

        padding:
            0 !important;

        position:
            static !important;
    }


    /* ------------------------------------------------------
       Row 1 — Size tools
       ------------------------------------------------------ */

    body.qinelle-pdp2-sample-v1
    .woocommerce-variation-add-to-cart.variations_button
    > div:first-child {

        display:
            grid !important;

        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            )
            !important;

        gap:
            10px !important;

        width:
            100% !important;

        margin:
            0 0 10px
            !important;

        padding:
            0 !important;

        position:
            static !important;
    }


    body.qinelle-pdp2-sample-v1
    .woocommerce-variation-add-to-cart.variations_button
    > div:first-child
    > a {

        display:
            flex !important;

        align-items:
            center !important;

        justify-content:
            center !important;

        width:
            100% !important;

        min-width:
            0 !important;

        min-height:
            44px !important;

        margin:
            0 !important;

        padding:
            0 12px !important;

        white-space:
            nowrap !important;
    }


    /* ------------------------------------------------------
       Row 2 — Quantity + Add To Cart
       ------------------------------------------------------ */

    body.qinelle-pdp2-sample-v1
    .e-atc-qty-button-holder {

        display:
            grid !important;

        grid-template-columns:
            64px minmax(0, 1fr)
            !important;

        gap:
            10px !important;

        align-items:
            stretch !important;

        width:
            100% !important;

        max-width:
            none !important;

        height:
            auto !important;

        min-height:
            48px !important;

        margin:
            0 !important;

        padding:
            0 !important;

        position:
            static !important;
    }


    body.qinelle-pdp2-sample-v1
    .e-atc-qty-button-holder
    > .quantity {

        display:
            block !important;

        width:
            64px !important;

        min-width:
            64px !important;

        height:
            48px !important;

        margin:
            0 !important;

        padding:
            0 !important;

        position:
            static !important;
    }


    body.qinelle-pdp2-sample-v1
    .e-atc-qty-button-holder
    > .quantity
    .qty {

        display:
            block !important;

        width:
            100% !important;

        height:
            48px !important;

        min-height:
            48px !important;

        margin:
            0 !important;

        text-align:
            center !important;
    }


    body.qinelle-pdp2-sample-v1
    .e-atc-qty-button-holder
    > .single_add_to_cart_button {

        display:
            flex !important;

        align-items:
            center !important;

        justify-content:
            center !important;

        width:
            100% !important;

        min-width:
            0 !important;

        height:
            48px !important;

        min-height:
            48px !important;

        margin:
            0 !important;

        position:
            static !important;
    }


    /* ------------------------------------------------------
       Availability rhythm
       ------------------------------------------------------ */

    body.qinelle-pdp2-sample-v1
    .woocommerce-variation-availability {

        margin:
            0 0 12px
            !important;
    }


    body.qinelle-pdp2-sample-v1
    .woocommerce-variation-availability
    p {

        margin:
            0 !important;
    }

}

