/* Product-only layout reproduced from the supplied Catvithy reference. */
.woocommerce .cv-reference-product h1{font-family:var(--font-display);font-size:30px;font-weight:600;line-height:1.1;letter-spacing:-.01em;margin-top:12px}.woocommerce .cv-reference-product h2{font-family:var(--font-display);font-weight:600}.cv-reference-icon{flex-shrink:0;display:inline-block}.woocommerce .cv-reference-main{display:grid;grid-template-columns:minmax(0,1fr);gap:48px}.cv-reference-gallery,.cv-reference-summary{min-width:0}.woocommerce .cv-reference-product .cv-reference-gallery div.images{float:none;width:100%;margin:0}.woocommerce .cv-reference-product .woocommerce-product-gallery__wrapper{margin:0}.woocommerce .cv-reference-product .woocommerce-product-gallery__image{border-radius:24px;overflow:hidden;aspect-ratio:4/5}.woocommerce .cv-reference-product div.images .woocommerce-product-gallery__image img{width:100%;height:100%;aspect-ratio:4/5;object-fit:cover;max-height:none}.woocommerce .cv-reference-product div.images .flex-control-thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:12px;padding:0}.woocommerce .cv-reference-product div.images .flex-control-thumbs li{width:auto;float:none}.woocommerce .cv-reference-product div.images .flex-control-thumbs img{aspect-ratio:1;border-radius:12px;border:1px solid hsl(var(--border));opacity:1}.woocommerce .cv-reference-product div.images .flex-control-thumbs img.flex-active{border-color:hsl(var(--foreground))}.cv-reference-product .woocommerce-product-gallery__trigger{display:none!important}.cv-reference-price{font:600 30px/36px var(--font-display);color:hsl(var(--foreground))}.cv-reference-price>del{order:2;font:400 15px/24px var(--font-body);color:hsl(var(--muted-foreground));opacity:1}.cv-reference-price>ins{order:1;text-decoration:none}.cv-reference-price .cv-save-badge{order:3;border-radius:999px;background:hsl(var(--accent));color:hsl(var(--accent-foreground));padding:4px 12px;font:600 10px/16px var(--font-body);letter-spacing:.16em;text-transform:uppercase}.cv-reference-excerpt p{margin:0}.cv-reference-product .cv-reference-purchase form.cart{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin:0}.cv-reference-product .cv-reference-purchase .quantity{display:flex;align-items:center;border:1px solid hsl(var(--border));border-radius:999px;margin:0!important;float:none!important;height:48px}.cv-reference-product .quantity .qty{font:600 15px var(--font-display);width:40px;min-width:0;padding:0;border:0;background:none;appearance:textfield;min-height:0}.cv-reference-product .quantity .qty::-webkit-inner-spin-button,.cv-reference-product .quantity .qty::-webkit-outer-spin-button{appearance:none;margin:0}.cv-reference-product .cv-qty-step{display:grid;place-items:center;width:48px;height:48px;border-radius:999px;font-size:15px;flex-shrink:0}.cv-reference-product .cv-qty-step:hover{background:hsl(var(--secondary))}.woocommerce .cv-reference-product .single_add_to_cart_button{flex:1;border:0;background:hsl(var(--accent));color:hsl(var(--accent-foreground));border-radius:999px;padding:14px 28px;font:500 12px/20px var(--font-body);letter-spacing:.18em;text-transform:uppercase;height:48px;margin:0}.woocommerce .cv-reference-product form.cart .cv-buy-now{flex:0 0 100%;height:48px;border-radius:999px;border:1px solid hsl(var(--foreground)/.25);background:transparent;color:hsl(var(--foreground));margin:0;padding:14px 28px;font:500 12px/20px var(--font-body);letter-spacing:.18em;text-transform:uppercase}.cv-reference-product .single_variation_wrap,.cv-reference-product form.cart .variations,.cv-reference-product .woocommerce-variation{width:100%}.cv-reference-product .woocommerce-variation-add-to-cart{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px}.cv-reference-services li{display:flex;align-items:flex-start;gap:12px;font:400 13.5px/21.94px var(--font-body);color:hsl(var(--muted-foreground))}.cv-reference-services svg{margin-top:2px;color:hsl(var(--accent))}.woocommerce .cv-reference-product .cv-reference-details-title{font-size:22px;line-height:1.6}.cv-reference-description{font:400 14.5px/1.75 var(--font-body);color:hsl(var(--muted-foreground))}.cv-reference-description p{margin:12px 0 0}.cv-reference-description h2,.cv-reference-description h3,.cv-reference-description h4{margin-top:32px;font:600 16px/1.6 var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:hsl(var(--foreground))}.cv-reference-description ul,.cv-reference-description ol{margin:12px 0;padding-left:20px}.cv-reference-description li{margin-top:8px}.cv-reference-description img{max-width:100%;height:auto}.woocommerce .cv-reference-product .cv-reference-related-title{font-size:24px;line-height:1.6}.woocommerce .cv-reference-product ul.cv-reference-related{margin-top:40px}.cv-reference-summary .stock{font-size:13px}.cv-reference-purchase .quantity:has(input[type=hidden]){display:none}.cv-reference-product .woocommerce-variation-price{font-size:20px;margin-bottom:12px}
@media(min-width:768px){.woocommerce .cv-reference-product h1{font-size:36px;line-height:40px}.woocommerce .cv-reference-product .cv-reference-related-title{font-size:30px;line-height:36px}}
@media(min-width:1024px){.woocommerce .cv-reference-main{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:64px}.cv-reference-summary{position:sticky;top:128px;align-self:start}}
@media(max-width:380px){.cv-reference-product .cv-qty-step{width:36px}.cv-reference-product .quantity .qty{width:32px}.woocommerce .cv-reference-product .single_add_to_cart_button{padding-left:16px;padding-right:16px}}
/* Attribute cards from the supplied Style reference; native select is the source of truth. */
.cv-reference-product .variations tr.cv-options-enhanced{display:block;margin-bottom:24px}.cv-reference-product .variations tr.cv-options-enhanced>th.label,.cv-reference-product .variations tr.cv-options-enhanced>td.label{display:none}.cv-reference-product .variations tr.cv-options-enhanced>td.value{display:block;padding:0;width:100%;text-align:left}.cv-reference-product .cv-native-select{display:none!important}.cv-option-caption{font:400 13.5px/1.6 var(--font-body);color:hsl(var(--muted-foreground));margin-bottom:14px}.cv-option-caption strong{font-weight:500;color:hsl(var(--foreground))}.cv-option-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.cv-reference-product .cv-option-card{display:flex;flex-direction:column;gap:8px;min-width:0;text-align:left;border:1px solid hsl(var(--border));border-radius:16px;padding:14px 16px;background:transparent;color:hsl(var(--foreground));transition:border-color .15s,background-color .15s}.cv-reference-product .cv-option-card:hover:not(:disabled){border-color:hsl(var(--muted-foreground))}.cv-reference-product .cv-option-card[aria-pressed=true]{border-color:hsl(var(--foreground));background:hsl(var(--secondary))}.cv-reference-product .cv-option-card:focus-visible{outline:2px solid hsl(var(--accent));outline-offset:3px}.cv-reference-product .cv-option-card:disabled{opacity:.4;cursor:not-allowed}.cv-option-name{font:500 12.5px/1.5 var(--font-body);overflow-wrap:anywhere}.cv-option-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px}.cv-option-price:empty{display:none}.cv-option-current{font:600 15px/1.4 var(--font-display)}.cv-option-old{font:400 11px/1.4 var(--font-body);color:hsl(var(--muted-foreground))}.cv-reference-product .reset_variations{display:inline-block;margin-top:10px;font-size:12px;color:hsl(var(--muted-foreground))}.cv-has-selected-price .woocommerce-variation-price{display:none}.woocommerce .cv-reference-product .cv-buy-now:disabled{opacity:.5;cursor:not-allowed}@media(max-width:639px){.cv-option-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.cv-reference-product .cv-option-card{padding:12px}}
/* Full-width product story, feature cards and media, matching the full-page reference. */
.cv-reference-description>p,.cv-reference-description>.wp-block-paragraph{max-width:768px}.woocommerce .cv-reference-product .cv-reference-description h2,.woocommerce .cv-reference-product .cv-reference-description h3{font-family:var(--font-display);font-size:24px;font-weight:600;line-height:1.3;text-transform:none;letter-spacing:0;margin:28px 0 16px;color:hsl(var(--foreground))}.cv-reference-description .cv-feature-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;list-style:none;margin:0;padding:0;max-width:none}.cv-reference-description .cv-feature-cards>li{position:relative;margin:0;padding:16px 18px 16px 40px;border:1px solid hsl(var(--border));border-radius:16px;font-size:13px;line-height:1.6;color:hsl(var(--foreground))}.cv-reference-description .cv-feature-cards>li:before{content:'✓';position:absolute;left:16px;top:16px;color:hsl(var(--accent))}.cv-reference-description video{display:block;width:100%;height:auto;max-height:none;border-radius:24px;background:#111}.cv-reference-description .wp-video,.cv-reference-description .wp-video-shortcode{width:100%!important;max-width:100%}.cv-reference-description figure{margin:20px 0}.cv-reference-description iframe{max-width:100%;width:100%;aspect-ratio:16/9;height:auto;border:0;border-radius:24px}.cv-reference-description table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid hsl(var(--border));border-radius:16px;overflow:hidden;margin:20px 0 0;font-size:13px;line-height:1.6}.cv-reference-description table tr:nth-child(odd){background:hsl(var(--secondary)/.65)}.cv-reference-description table th,.cv-reference-description table td{padding:14px 20px;border:0;text-align:left;vertical-align:top;overflow-wrap:anywhere}.cv-reference-description table th:first-child,.cv-reference-description table td:first-child{width:30%;font:400 10px/1.6 var(--font-body);text-transform:uppercase;letter-spacing:.18em;color:hsl(var(--muted-foreground))}.cv-reference-description table td:not(:first-child){color:hsl(var(--foreground))}.cv-reference-description table strong{font-weight:600}.cv-reference-description figcaption{font-size:12px;margin-top:10px;color:hsl(var(--muted-foreground))}@media(max-width:639px){.cv-reference-description .cv-feature-cards{grid-template-columns:minmax(0,1fr)}.cv-reference-description table th,.cv-reference-description table td{padding:12px}.cv-reference-description table th:first-child,.cv-reference-description table td:first-child{width:37%}.cv-reference-description video,.cv-reference-description iframe{border-radius:16px}}
