/* Ficha de producto: galería estable y compra compacta, sin dependencias. */
.product-sheet { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); gap:42px; padding:8px 0 30px; align-items:start; }
.product-sheet {row-gap:22px;}
.gallery-column,.sheet-overview {display:contents;}
.product-gallery {grid-column:1;grid-row:1;}
.sheet-commercial {grid-column:2;grid-row:1;min-width:0;}
.product-sheet .key-features {grid-column:1;grid-row:2;margin-top:0;padding-top:20px;}
.product-sheet .sheet-wholesale {grid-column:2;grid-row:2;margin:0;padding:17px 20px;border:1px solid #d8e5f7;border-radius:10px;background:var(--wash);}
.sheet-wholesale h2 {font-size:1rem;line-height:1.4;letter-spacing:0;margin:0 0 8px;}
.product-sheet .key-features h2 {font-size:1rem;}
.product-sheet .sheet-wholesale>p {font-size:.74rem;line-height:1.65;}
.product-sheet .sheet-wholesale .wholesale-action-link {display:inline-flex;min-height:44px;padding:9px 16px;margin:10px 0;border:1px solid #b8d1f4;border-radius:8px;background:white;color:var(--blue-dark);text-decoration:none;font-size:.75rem;gap:10px;}
.product-sheet .sheet-wholesale .wholesale-action-link:hover {background:#e8f1ff;border-color:var(--blue);}
.product-sheet .sheet-wholesale .wholesale-action-link>svg:first-child {display:block;width:19px;height:19px;}
.product-sheet .sheet-wholesale .sheet-note {font-size:.61rem;margin:0;}
.commerce-indicators .immediate-delivery {background:#dcf5e9;color:#14623e;padding:5px 8px;border-radius:6px;font-weight:600;}
.commerce-indicators .immediate-delivery svg {color:currentColor;width:15px;height:15px;}
.product-sheet svg,.gallery-modal svg {width:21px;height:21px;flex-shrink:0;}
.product-sheet button,.gallery-modal button {font:inherit;cursor:pointer;}
.product-sheet [hidden],.gallery-modal [hidden] {display:none!important;}
.product-sheet .gallery-thumbs[hidden] {display:flex!important;visibility:hidden;pointer-events:none;}
.product-sheet .gallery-hint[hidden] {display:block!important;visibility:hidden;}
.gallery-column,.sheet-overview {min-width:0;}
.product-gallery {display:grid;grid-template-columns:56px minmax(0,1fr);gap:14px;align-items:start;}
.gallery-thumbs {display:flex;flex-direction:column;gap:9px;}
.gallery-thumb {padding:3px;width:54px;height:54px;border:1px solid #c4d1e2;border-radius:7px;background:white;flex-shrink:0;}
.gallery-thumb img {width:100%;height:100%;object-fit:contain;}
.gallery-thumb[aria-pressed="true"] {border:2px solid #0066ff;box-shadow:0 0 0 2px #e4efff;}
.gallery-display {min-width:0;text-align:center;grid-column:2;grid-row:1;}
.gallery-stage {display:block;position:relative;overflow:hidden;isolation:isolate;width:100%;max-width:440px;margin-inline:auto;aspect-ratio:1;border:1px solid #e3eaf3;border-radius:10px;background:white;padding:0;touch-action:manipulation;color:#174c82;}
.gallery-stage:disabled {cursor:default;}
.gallery-image {display:block;width:100%;height:100%;object-fit:contain;transform-origin:var(--zoom-x,50%) var(--zoom-y,50%);}
.gallery-zoom-icon {position:absolute;right:10px;bottom:10px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#f1f6ff;}
.gallery-stage:disabled .gallery-zoom-icon {display:none;}
.gallery-hint {font-size:.65rem;color:#18539a;margin-top:8px;}
.gallery-caption {font-size:.64rem;margin-top:5px;min-height:20px;color:#52657b;}
@media (hover:hover) and (pointer:fine) {.gallery-stage.is-zoomed .gallery-image {transform:scale(2);}.gallery-stage:not(:disabled) {cursor:zoom-in;}}
.sheet-heading .eyebrow {font-size:.66rem;margin:0 0 6px;}
.sheet-heading h1 {font-size:clamp(1.8rem,2.6vw,2.3rem);line-height:1.15;letter-spacing:-.035em;margin:0;}
.model-code {font-size:.69rem;color:#52657b;margin-top:7px;}
.sheet-description {font-size:.86rem;line-height:1.55;margin-top:10px;max-width:440px;}
.commerce-indicators {display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;margin-top:14px;}
.commerce-indicators>span {display:inline-flex;gap:7px;align-items:center;font-size:.68rem;}
.commerce-indicators .status {font-size:.66rem;}
.commerce-indicators svg {width:18px;height:18px;color:#0066ff;}
.sheet-price {display:flex;align-items:baseline;gap:14px;margin-top:7px;flex-wrap:wrap;}
.sheet-price strong {font-size:2.65rem;line-height:1.25;letter-spacing:-.05em;}
.sheet-price span {font-size:.68rem;color:#52657b;}
.installments {display:flex;align-items:center;gap:8px;font-size:.72rem;margin:7px 0 12px;color:#294965;}
.installments svg {width:19px;height:19px;}
.sheet-purchase>.button {min-height:46px;padding:11px 20px;font-size:.8rem;width:100%;max-width:390px;}
.purchase-trust {border-top:1px solid #dde5ee;margin-top:17px;padding-top:13px;}
.purchase-trust h2,.key-features h2 {font-size:.87rem;line-height:1.4;letter-spacing:0;margin:0 0 10px;}
.purchase-trust ul {padding:0;list-style:none;display:grid;gap:9px;margin:0;}
.purchase-trust li {display:flex;gap:11px;align-items:flex-start;}
.purchase-trust li>svg {color:#1264c0;width:19px;height:19px;margin-top:1px;}
.purchase-trust li>div {display:grid;grid-template-columns:116px 1fr;gap:9px;flex:1;font-size:.69rem;line-height:1.5;}
.purchase-trust strong {font-weight:600;}
.purchase-trust li span {color:#425b73;}
.sheet-wholesale {padding:12px 0 0;margin-top:13px;border-top:1px solid #dde5ee;}
.sheet-wholesale>strong {font-size:.77rem;}
.sheet-wholesale p {font-size:.68rem;line-height:1.5;margin-top:4px;max-width:430px;}
.sheet-wholesale .wholesale-action-link {font-size:.73rem;max-width:none;min-height:44px;}
.sheet-note {font-size:.61rem;line-height:1.6;color:#52657b;margin-top:3px;}
.key-features {border-top:1px solid #dde5ee;margin:16px 0 0 70px;padding-top:13px;}
.key-features ul {padding-left:17px;margin:0;display:grid;gap:5px;font-size:.71rem;line-height:1.55;color:#425b73;}
.key-features strong {font-weight:600;color:#152d43;}
.key-features p {font-size:.62rem;line-height:1.55;margin-top:9px;}
.key-features a {display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:.71rem;color:#0054c2;text-underline-offset:4px;font-weight:600;}
.gallery-modal {border:0;border-radius:12px;padding:18px 22px;max-width:1100px;width:calc(100% - 48px);height:min(880px,calc(100dvh - 40px));max-height:calc(100dvh - 40px);margin:auto;color:#112233;background:white;overflow:auto;overscroll-behavior:contain;}
.gallery-modal:not([open]) {display:none;}
.gallery-modal[open] {display:flex;flex-direction:column;}
.gallery-modal::backdrop {background:rgb(9 22 39 / .78);}
.gallery-modal-header {display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;}
.gallery-modal-header h2 {font-size:1rem;letter-spacing:0;}
.gallery-modal button {background:white;border:1px solid #bfccdc;border-radius:7px;color:#183b61;display:grid;place-items:center;}
.gallery-close,.gallery-prev,.gallery-next {width:44px;height:44px;}
.gallery-modal-stage {flex:1;min-height:100px;position:relative;display:grid;place-items:center;margin-top:8px;}
.gallery-modal-stage>img {position:absolute;inset:0;width:100%;height:100%;object-fit:contain;}
.gallery-prev,.gallery-next {position:absolute;top:calc(50% - 22px);}
.gallery-prev {left:0;}.gallery-next {right:0;}
.gallery-modal-caption {font-size:.74rem;text-align:center;margin:10px 0;flex-shrink:0;}
.gallery-modal-thumbs {display:flex;gap:9px;overflow-x:auto;padding:3px;flex-shrink:0;max-width:100%;margin-inline:auto;}
.gallery-modal-note {font-size:.63rem;text-align:center;margin-top:10px;flex-shrink:0;}
html {scrollbar-gutter:stable;}
html.gallery-open,html.gallery-open body {overflow:hidden;}
@media (max-width:1100px) {
 .product-sheet {gap:25px;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);}
 .product-gallery {grid-template-columns:48px minmax(0,1fr);gap:8px;}
 .gallery-thumb {width:46px;height:46px;}
 .key-features {margin-left:56px;}
 .purchase-trust li>div {grid-template-columns:1fr;gap:1px;}
 .gallery-hint span {display:none;}
}
@media (max-width:700px) {
 .product-sheet {display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding-top:3px;}
 .sheet-overview,.gallery-column,.sheet-commercial {display:contents;}
 .sheet-heading {grid-row:1;}
 .product-gallery {grid-row:2;display:flex;flex-direction:column;align-items:center;gap:7px;}
 .gallery-display {order:0;width:100%;}
 .gallery-stage {width:min(100%,190px);margin-inline:auto;}
 .gallery-thumbs {order:1;flex-direction:row;max-width:100%;overflow-x:auto;padding:3px;gap:8px;}
 .gallery-thumb {width:44px;height:44px;}
 .gallery-hint,.product-sheet .gallery-hint[hidden] {display:none!important;}
 .gallery-caption {font-size:.59rem;margin-top:3px;min-height:0;line-height:1.4;}
 .gallery-zoom-icon {width:27px;height:27px;right:5px;bottom:5px;}
 .gallery-zoom-icon svg {width:17px;height:17px;}
 .sheet-heading h1 {font-size:1.75rem;}
 .sheet-heading .eyebrow {font-size:.59rem;margin-bottom:4px;}
 .model-code {font-size:.61rem;margin-top:4px;}
 .sheet-description {font-size:.74rem;line-height:1.4;margin-top:6px;}
 .sheet-purchase {grid-row:3;}
 .commerce-indicators {margin-top:0;gap:10px;}
 .sheet-price {margin-top:6px;gap:13px;}
 .sheet-price strong {font-size:2.4rem;}
 .sheet-price span {font-size:.63rem;}
 .installments {font-size:.69rem;margin:5px 0 9px;}
 .sheet-purchase>.button {max-width:none;min-height:46px;font-size:.76rem;padding:10px 16px;}
 .purchase-trust {grid-row:4;margin-top:2px;padding-top:12px;}
 .purchase-trust li>div {grid-template-columns:107px 1fr;gap:8px;font-size:.67rem;}
 .product-sheet .sheet-wholesale {grid-column:1;grid-row:5;margin-top:0;padding:17px;}
 .sheet-note {grid-row:6;margin-top:0;}
 .product-sheet .key-features {grid-column:1;grid-row:7;margin:0;padding-top:17px;}
 .gallery-modal {width:calc(100% - 16px);height:calc(100dvh - 16px);max-height:calc(100dvh - 16px);padding:10px;border-radius:9px;}
 .gallery-modal-header h2 {font-size:.83rem;}
 .gallery-modal-caption {font-size:.68rem;}
 .gallery-modal-note {font-size:.59rem;}
}
@media (max-width:359px) {
 .sheet-heading h1 {font-size:1.55rem;}
 .gallery-stage {width:185px;}
 .purchase-trust li>div {grid-template-columns:1fr;gap:1px;}
}
@media (prefers-reduced-motion:reduce) {
 .product-sheet *,.gallery-modal * {transition:none!important;animation:none!important;scroll-behavior:auto!important;}
}
