/* Product detail composition inspired by the audited reference, scoped to dq_product. */
.single-dq_product .dq-product-detail--composed{background:#fff;color:var(--dq-primary-deep)}
.single-dq_product .dq-product-detail--composed .dq-product-detail-panel{padding:clamp(30px,4vw,56px) 0 64px;background:linear-gradient(180deg,#fbfdff 0,#f6fbf8 100%)}
.single-dq_product .dq-product-detail--composed .dq-detail-panel__grid{align-items:start;gap:clamp(26px,4vw,48px)}
.single-dq_product .dq-product-detail--composed .dq-detail-gallery{overflow:hidden;padding:0;border:1px solid #dce9e2;border-radius:28px;background:#fff;box-shadow:0 18px 48px rgba(0,70,35,.1)}
.single-dq_product .dq-product-detail--composed .dq-detail-gallery figure{margin:0;border-radius:27px 27px 0 0;background:#eef6f1}
.single-dq_product .dq-product-detail--composed .dq-detail-gallery figure img{display:block;width:100%;aspect-ratio:1;object-fit:cover}
.single-dq_product .dq-product-detail--composed .dq-detail-gallery__thumbs{gap:12px;padding:14px 0 0}
.single-dq_product .dq-product-detail--composed .dq-detail-gallery__thumbs button{flex-basis:92px;min-height:76px;border-radius:14px;border-color:#dbe7e0}
.single-dq_product .dq-product-detail--composed .dq-detail-gallery__thumbs img{width:82px;height:66px}
.single-dq_product .dq-product-detail--composed .dq-detail-panel__summary{padding:clamp(24px,3vw,36px);border:1px solid #dce9e2;border-radius:28px;background:#fff;box-shadow:0 18px 48px rgba(0,70,35,.08)}
.single-dq_product .dq-product-detail--composed .dq-library-eyebrow{display:inline-flex;margin:0 0 14px;padding:7px 12px;border-radius:999px;background:#eff8f2;color:var(--dq-primary);font-size:13px;font-weight:800}
.single-dq_product .dq-product-detail--composed .dq-detail-panel__summary h1{margin:0;color:var(--dq-primary-deep);font-size:clamp(31px,3.4vw,48px);line-height:1.16;letter-spacing:-.025em}
.single-dq_product .dq-product-detail--composed .dq-detail-panel__summary h1:after{content:"";display:block;width:38px;height:4px;margin-top:18px;border-radius:999px;background:linear-gradient(90deg,var(--dq-primary),#ff7a00)}
.single-dq_product .dq-product-detail--composed .dq-detail-panel__badge{margin:20px 0 0;padding:0;background:transparent;color:var(--dq-primary);font-weight:850}
.single-dq_product .dq-product-detail--composed .dq-detail-panel__text{margin:18px 0 0;padding:18px 20px;border:1px solid #dfe9e3;border-radius:18px;background:#f7faf8;color:#345446;font-size:16px;line-height:1.75}
.single-dq_product .dq-product-detail--composed .dq-detail-panel__specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}
.single-dq_product .dq-product-detail--composed .dq-detail-panel__specs>div{display:block;padding:13px 14px;border:1px solid #dce8e1;border-radius:14px;background:#f1f7f3}
.single-dq_product .dq-product-detail--composed .dq-detail-panel__specs dt{color:var(--dq-primary);font-size:12px;font-weight:850;text-transform:uppercase}
.single-dq_product .dq-product-detail--composed .dq-detail-panel__specs dd{margin:4px 0 0;color:var(--dq-primary-deep);font-size:14px;font-weight:750;text-align:left;line-height:1.45}
.single-dq_product .dq-product-detail--composed .dq-detail-panel__price{padding:17px 19px;border-color:#d7e5dc;border-radius:16px;background:#f7faf8}
.single-dq_product .dq-product-detail--composed .dq-detail-panel__price span{color:#60786d;font-size:13px}.single-dq_product .dq-product-detail--composed .dq-detail-panel__price strong{margin-top:3px;color:var(--dq-primary);font-size:18px}
.single-dq_product .dq-product-detail--composed .dq-detail-pattern__actions{gap:10px}.single-dq_product .dq-product-detail--composed .dq-detail-pattern__actions .dq-btn{flex:1;justify-content:center;min-height:50px;border-radius:999px;background:linear-gradient(135deg,var(--dq-primary),#067c36);box-shadow:0 10px 24px rgba(0,148,54,.2)}
.single-dq_product .dq-product-detail--composed .dq-detail-pattern__actions .dq-detail-pattern__link{display:inline-flex;flex:1;justify-content:center;align-items:center;min-height:50px;padding:0 18px;border:1px solid var(--dq-primary);border-radius:999px;color:var(--dq-primary);font-weight:800;text-decoration:none}
.single-dq_product .dq-product-detail--composed .dq-section--tabs{padding:clamp(46px,6vw,76px) 0;background:#fff}
.single-dq_product .dq-product-detail--composed .dq-section--tabs .dq-section-title{display:none}
.single-dq_product .dq-product-detail--composed .dq-tabs{overflow:hidden;border:1px solid #dce7e1;border-radius:24px;box-shadow:0 14px 40px rgba(0,70,35,.06)}
.single-dq_product .dq-product-detail--composed .dq-tabs__nav{gap:6px;padding:10px;border-bottom:1px solid #dce7e1;background:#f4f9f6}
.single-dq_product .dq-product-detail--composed .dq-tabs__nav button{padding:12px 22px;border-radius:999px;background:transparent;color:#526d60;font-size:15px}
.single-dq_product .dq-product-detail--composed .dq-tabs__nav button[aria-selected=true]{background:#fff;color:var(--dq-primary);box-shadow:0 6px 18px rgba(0,70,35,.1)}
.single-dq_product .dq-product-detail--composed .dq-tabs__panel{padding:clamp(24px,4vw,48px);color:#28483a;font-size:17px;line-height:1.82}.single-dq_product .dq-product-detail--composed .dq-tabs__panel h2{margin:36px 0 14px;color:var(--dq-primary-deep);font-size:clamp(25px,3vw,34px)}.single-dq_product .dq-product-detail--composed .dq-tabs__panel h2:first-child{margin-top:0}
.single-dq_product .dq-product-detail--composed .dq-product-spec-table{overflow:hidden;border:1px solid #dce8e1;border-radius:18px;background:#fff}
.single-dq_product .dq-product-detail--composed .dq-product-spec-table table{width:100%;border:0;border-collapse:collapse}
.single-dq_product .dq-product-detail--composed .dq-product-spec-table th,.single-dq_product .dq-product-detail--composed .dq-product-spec-table td{padding:15px 18px;border:0;border-bottom:1px solid #e5eee9;text-align:left;vertical-align:top}
.single-dq_product .dq-product-detail--composed .dq-product-spec-table tr:last-child th,.single-dq_product .dq-product-detail--composed .dq-product-spec-table tr:last-child td{border-bottom:0}
.single-dq_product .dq-product-detail--composed .dq-product-spec-table th{width:32%;background:#f4f9f6;color:var(--dq-primary);font-weight:850}
.single-dq_product .dq-product-detail--composed .dq-product-spec-table td{color:#28483a}
.single-dq_product .dq-product-detail--composed .dq-section--product_grid{padding:clamp(50px,7vw,82px) 0;background:linear-gradient(180deg,#f3f9f5,#fffaf4)}
.single-dq_product .dq-product-detail--composed .dq-section--product_grid .dq-section-title{text-align:center;font-size:clamp(29px,4vw,42px)}
.single-dq_product .dq-product-detail--composed .dq-section--product_grid .dq-card{overflow:hidden;border:1px solid #dce8e1;border-radius:22px;background:#fff;box-shadow:0 14px 36px rgba(0,70,35,.07)}
.single-dq_product .dq-product-detail--composed .dq-section--product_grid .dq-card img{display:block;width:100%;aspect-ratio:1;object-fit:contain;background:#edf5f0}
.single-dq_product .dq-product-detail--composed .dq-section--product_grid .dq-card h3{margin:18px 18px 8px;font-size:18px;line-height:1.4}.single-dq_product .dq-product-detail--composed .dq-section--product_grid .dq-product-contact{margin:0 18px 20px;color:var(--dq-primary);font-weight:850}
.single-dq_product .dq-product-detail--composed .dq-section--cta{padding:34px 0;background:#fff}
.single-dq_product .dq-product-detail--composed .dq-cta__inner{padding:clamp(26px,4vw,46px);border-radius:26px;background:linear-gradient(135deg,#073e25,#006d34);color:#fff;box-shadow:0 20px 55px rgba(0,70,35,.18)}
.single-dq_product .dq-product-detail--composed .dq-cta__inner h2{color:#fff}.single-dq_product .dq-product-detail--composed .dq-cta__inner p{color:#dff2e7}
@media(max-width:900px){.single-dq_product .dq-product-detail--composed .dq-detail-panel__grid{grid-template-columns:1fr}.single-dq_product .dq-product-detail--composed .dq-detail-gallery{max-width:680px;margin-inline:auto}.single-dq_product .dq-product-detail--composed .dq-section--product_grid .dq-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.single-dq_product .dq-product-detail--composed .dq-product-detail-panel{padding-top:22px}.single-dq_product .dq-product-detail--composed .dq-detail-gallery,.single-dq_product .dq-product-detail--composed .dq-detail-panel__summary{padding:10px;border-radius:20px}.single-dq_product .dq-product-detail--composed .dq-detail-panel__summary{padding:22px 18px}.single-dq_product .dq-product-detail--composed .dq-detail-panel__summary h1{font-size:29px}.single-dq_product .dq-product-detail--composed .dq-detail-panel__specs{grid-template-columns:1fr}.single-dq_product .dq-product-detail--composed .dq-detail-pattern__actions{align-items:stretch;flex-direction:column}.single-dq_product .dq-product-detail--composed .dq-tabs__nav{overflow-x:auto;flex-wrap:nowrap}.single-dq_product .dq-product-detail--composed .dq-tabs__nav button{white-space:nowrap}.single-dq_product .dq-product-detail--composed .dq-section--product_grid .dq-card-grid{grid-template-columns:1fr}.single-dq_product .dq-product-detail--composed .dq-cta__inner{border-radius:20px}}

/* Reference-aligned gallery rail, three benefit cards and three actions. */
.single-dq_product .dq-product-detail--composed .dq-detail-gallery figure[class*=is-view-] img,.single-dq_product .dq-product-detail--composed .dq-detail-gallery__thumbs button[class*=is-view-] img{transition:transform .25s ease}
.single-dq_product .dq-product-detail--composed .dq-detail-gallery .is-view-upper img{transform:scale(1.55);transform-origin:50% 18%}
.single-dq_product .dq-product-detail--composed .dq-detail-gallery .is-view-center img{transform:scale(1.5);transform-origin:50% 48%}
.single-dq_product .dq-product-detail--composed .dq-detail-gallery .is-view-lower img{transform:scale(1.55);transform-origin:50% 82%}
.single-dq_product .dq-product-detail--composed .dq-detail-gallery__rail{margin-top:0;padding:14px}
.single-dq_product .dq-product-detail--composed .dq-detail-gallery__thumbs{padding:0}
.single-dq_product .dq-product-detail--composed .dq-detail-gallery__thumbs button{min-height:88px;background:#edf5f0}
.single-dq_product .dq-product-detail--composed .dq-detail-panel__benefits{grid-template-columns:repeat(3,minmax(0,1fr));margin:16px 0 10px}
.single-dq_product .dq-product-detail--composed .dq-detail-panel__benefits>div{min-height:58px;border-color:#cbdff1;background:#eef6ff;color:#123e73}
.single-dq_product .dq-product-detail--composed .dq-detail-panel__actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}
.single-dq_product .dq-product-detail--composed .dq-detail-panel__actions .dq-detail-panel__action{width:100%;min-height:48px;padding:9px 11px;border:0;border-radius:999px;color:#fff;font-size:12px;font-weight:850;line-height:1.2;box-shadow:none}
.single-dq_product .dq-product-detail--composed .dq-detail-panel__actions .is-quote{background:linear-gradient(135deg,#ffb000,#ffc93f);color:#103568}
.single-dq_product .dq-product-detail--composed .dq-detail-panel__actions .is-zalo{background:#0867f2}
.single-dq_product .dq-product-detail--composed .dq-detail-panel__actions .is-phone{background:#0b3576}
.single-dq_product .dq-product-detail--composed .dq-detail-panel__action-note{margin-top:10px;border-color:#cbdff1;background:#eef6ff;color:#315b85}
@media(max-width:580px){.single-dq_product .dq-product-detail--composed .dq-detail-gallery{padding:0}.single-dq_product .dq-product-detail--composed .dq-detail-panel__benefits,.single-dq_product .dq-product-detail--composed .dq-detail-panel__actions{grid-template-columns:1fr}.single-dq_product .dq-product-detail--composed .dq-detail-gallery__rail{padding:10px}.single-dq_product .dq-product-detail--composed .dq-detail-gallery__thumbs button{min-height:74px}.single-dq_product .dq-product-detail--composed .dq-product-spec-table th,.single-dq_product .dq-product-detail--composed .dq-product-spec-table td{display:block;width:100%;padding:11px 14px}.single-dq_product .dq-product-detail--composed .dq-product-spec-table th{padding-bottom:4px;border-bottom:0}.single-dq_product .dq-product-detail--composed .dq-product-spec-table td{padding-top:2px}}
