/* CGB-01 Store. Independent product layout and interaction states. */
.cgb-product #product{width:100%;max-width:none;margin:0;padding:0 54px 54px;font:15px/1.5 Arial,Helvetica,sans-serif;color:var(--ink)}
.cgb-product .breadcrumbs{display:flex;flex-wrap:wrap;gap:12px;padding:25px 0;font-size:13px;color:#526771}
.cgb-product .breadcrumbs a{color:var(--blue)}
.cgb-product .pdp-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:50px;align-items:start}
.cgb-product .pdp-gallery{min-width:0;position:sticky;top:24px}
.cgb-product .pdp-hero{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1.2;min-height:460px;padding:25px;overflow:hidden;border-radius:5px;background:var(--merchandise-surface);isolation:isolate}
.cgb-product .pdp-hero-picture{display:block;position:relative;width:100%;height:100%}
.cgb-product #pdp-image,.cgb-product .pdp-image-outgoing{display:block;width:100%;height:100%;max-height:650px;object-fit:contain;mix-blend-mode:darken}
.cgb-product #pdp-image{cursor:zoom-in}
.cgb-product .pdp-image-outgoing{position:absolute;inset:0;pointer-events:none}
.cgb-product .pdp-caption{display:none}
.cgb-product .pdp-prev,.cgb-product .pdp-next{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:36px;height:36px;padding:0;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--blue);display:grid;place-items:center}
.cgb-product .pdp-prev{left:12px}.cgb-product .pdp-next{right:12px}
.cgb-product .pdp-prev:disabled,.cgb-product .pdp-next:disabled{opacity:.4;cursor:default}
.cgb-product .pdp-thumb-track{position:relative;min-width:0}
.cgb-product .pdp-thumbs{display:flex;gap:12px;padding:15px 2px;overflow-x:auto;scrollbar-width:thin}
.cgb-product .pdp-thumbs>button{flex:0 0 80px;position:relative;display:grid;place-items:center;border:2px solid var(--line);border-radius:5px;padding:3px;background:var(--merchandise-surface)}
.cgb-product .pdp-thumbs>button[aria-pressed=true]{border-color:var(--blue)}
.cgb-product .pdp-thumbs img{width:70px;height:70px;object-fit:contain;mix-blend-mode:darken}
.cgb-product .pdp-thumb-prev,.cgb-product .pdp-thumb-next{display:none}
.cgb-product .pdp-gallery-reviews{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:10px 0;font-size:13px;color:#526771}
.cgb-product .pdp-gallery-reviews a,.cgb-product .pdp-review-add{color:var(--blue)}
.cgb-product .pdp-review-add{border:0;padding:0;background:none;font:inherit}
.cgb-product .pdp-inline-icon{vertical-align:middle}
.cgb-product .pdp-stars{color:var(--orange);letter-spacing:1px}
.cgb-product .pdp-configuration{min-width:0}
.cgb-product .pdp-heading .eyebrow{margin-bottom:12px;font-size:11px}
.cgb-product .pdp-heading h1{margin:0 0 18px;padding:0;border:0;font-size:38px;line-height:1.13;letter-spacing:-1px}
.cgb-product .pdp-actions{display:flex;gap:10px;margin-bottom:18px}
.cgb-product .pdp-actions>button{position:relative;display:grid;place-items:center;width:40px;height:40px;padding:8px;border:1px solid var(--line);border-radius:5px;background:#fff}
.cgb-product .pdp-actions img{display:block;width:20px;height:20px;max-width:100%;max-height:100%}
.cgb-product .pdp-action-tooltip{position:absolute;z-index:5;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);visibility:hidden;opacity:0;pointer-events:none;white-space:nowrap;background:var(--ink);color:#fff;padding:7px 10px;border-radius:5px;font:12px/1.4 Arial}
.cgb-product .pdp-actions>button:is(:hover,:focus-visible) .pdp-action-tooltip{visibility:visible;opacity:1}
.cgb-product .pdp-meta{margin:0 0 22px;color:#526771;font-size:14px;line-height:1.7}
.cgb-product .pdp-meta-sku{font-weight:700}
.cgb-product .pdp-meta-separator{padding-inline:4px}
.cgb-product .pdp-methods{display:flex;gap:10px;margin:0 0 20px}
.cgb-product .pdp-methods>button{position:relative;flex:1;min-width:0;text-align:left;border:2px solid var(--line);border-radius:5px;padding:14px;background:#fff;color:var(--blue);font:inherit}
.cgb-product .pdp-methods strong{display:block;font-size:17px;line-height:1.3}
.cgb-product .pdp-methods small{display:block;margin-top:7px;font-size:12px;line-height:1.4}
.cgb-product .pdp-methods>button[aria-pressed=true]{border-color:var(--blue);background:var(--surface)}
.cgb-product .pdp-method-info{display:none}
.cgb-product .pdp-method-tooltip{position:absolute;z-index:5;top:calc(100% + 8px);left:0;width:270px;max-width:80vw;visibility:hidden;opacity:0;pointer-events:none;padding:14px;background:var(--ink);color:#fff;border-radius:5px;font:13px/1.5 Arial}
.cgb-product .pdp-methods>button:last-child .pdp-method-tooltip{left:auto;right:0}
.cgb-product .pdp-methods>button:is(:hover,:focus-visible) .pdp-method-tooltip{visibility:visible;opacity:1}
.cgb-product .pdp-tiers{max-width:100%;overflow-x:auto;margin-bottom:20px;scrollbar-width:thin}
.cgb-product .pdp-tiers table{width:100%;min-width:480px;border-collapse:collapse;font-size:13px}
.cgb-product .pdp-tiers :is(th,td){border:1px solid var(--line);padding:10px 8px;text-align:center;white-space:nowrap;font-weight:400}
.cgb-product .pdp-tiers th,.cgb-product .pdp-tiers tr:first-child td{background:var(--surface);color:var(--blue)}
.cgb-product .pdp-tiers button{border:0;background:none;color:var(--blue);padding:0;font:inherit;cursor:pointer}
.cgb-product .pdp-tiers button:is(:hover,:focus-visible){text-decoration:underline;text-underline-offset:3px}
.cgb-product .pdp-step{border-top:1px solid var(--line);padding:20px 0;margin:0}
.cgb-product .pdp-step>h2{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;margin:0 0 18px;padding:0;background:none;font-size:21px;line-height:1.35;letter-spacing:-.4px;color:var(--blue)}
.cgb-product .pdp-step>h2>span{min-width:22px;margin-right:5px}
.cgb-product .pdp-step>h2>small{font:400 13px/1.5 Arial;color:#526771;letter-spacing:0}
.cgb-product .pdp-step>h2 i{font-style:normal}
.cgb-product fieldset{border:0;padding:0;margin:0 0 18px;min-width:0}
.cgb-product legend{font-size:14px;font-weight:700;color:var(--ink);margin-bottom:10px;padding:0}
.cgb-product .pdp-step-body,.cgb-product .pdp-print-body{padding:0}
.cgb-product .pdp-swatch{position:relative;display:inline-grid;place-items:center;width:30px;height:30px;min-width:30px;padding:0;margin:5px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #bdcbd2;vertical-align:middle}
.cgb-product .pdp-swatch-fill{display:block;width:100%;height:100%;border-radius:inherit}
.cgb-product .pdp-swatch[aria-pressed=true]{box-shadow:0 0 0 2px var(--blue)}
.cgb-product .pdp-swatch[aria-pressed=true]::after{content:'✓';position:absolute;color:#fff;font:700 14px Arial;text-shadow:0 1px 2px #000}
.cgb-product .pdp-swatch:not(.pdp-swatch-dark)[aria-pressed=true]::after{color:var(--ink);text-shadow:0 1px 2px #fff}
.cgb-product .pdp-swatch-text{width:auto;height:auto;min-height:30px;min-width:70px;padding:7px;border-radius:5px;font-size:12px;background:#fff;color:var(--ink)}
.cgb-product .pdp-swatch-text[aria-pressed=true]::after{display:none}
.cgb-product .pdp-full-color{background:conic-gradient(#c60031,#dfb800,#31a650,#007eb2,#822c88,#c60031)}
.cgb-product .pdp-quantity{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.cgb-product .pdp-quantity label{display:block;min-width:0;border:1px solid var(--line);border-radius:5px;padding:12px 8px;background:var(--surface);color:#526771;font-size:13px;text-align:center}
.cgb-product .pdp-quantity label>span{display:block;margin-bottom:7px}
.cgb-product .pdp-quantity output{display:block;color:var(--orange);font:700 23px/1.4 Arial}
.cgb-product #pdp-qty{width:100%;min-width:0;height:33px;border:1px solid var(--line);border-radius:3px;padding:0;text-align:center;color:var(--ink);background:#fff;font:700 23px/1.4 Arial}
.cgb-product .pdp-print-row{display:grid;grid-template-columns:135px minmax(0,1fr);gap:16px;align-items:start;margin-bottom:16px}
.cgb-product .pdp-print-row>span{padding-top:10px;font-size:14px}
.cgb-product .pdp-print-row>div{display:flex;gap:8px;flex-wrap:wrap;min-width:0}
.cgb-product .pdp-print-row button{flex:1;min-height:40px;border:1px solid var(--line);border-radius:5px;padding:10px 12px;background:#fff;color:var(--ink);font:14px/1.3 Arial}
.cgb-product .pdp-print-row button[aria-pressed=true]{border-color:var(--blue);background:var(--surface);color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue)}
.cgb-product #pdp-artwork{padding:16px;border:1px dashed #8c9da6;border-radius:5px;background:var(--surface)}
.cgb-product #pdp-artwork>div>button{flex:none;min-height:40px;padding:10px 16px}
.cgb-product #pdp-filename{display:flex;flex-direction:column;gap:0;flex-basis:100%;min-width:0;font-size:13px}
.cgb-product #pdp-filename:empty{display:none}
.cgb-product .pdp-uploaded-file{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
.cgb-product .pdp-uploaded-file:last-child{border-bottom:0;padding-bottom:0}
.cgb-product .pdp-file-name{min-width:0;overflow-wrap:anywhere;line-height:1.5}
.cgb-product .pdp-file-actions{display:flex;flex:none;gap:12px}
.cgb-product #pdp-filename .pdp-file-actions button{flex:none;min-height:32px;padding:4px 0;border:0;border-radius:0;background:none;color:var(--blue);font-size:13px;text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.cgb-product .pdp-uploaded-file{align-items:flex-start;flex-direction:column;gap:4px}}
.cgb-product .pdp-proof{margin:14px 0 0;text-align:center;color:#526771;font-size:13px}
.cgb-product .pdp-checkout{border-top:1px solid var(--line);margin-top:5px;padding-top:20px}
.cgb-product #pdp-status{font-size:14px;line-height:1.5;margin-bottom:14px;color:#526771}
.cgb-product #pdp-status:empty{display:none}
.cgb-product #pdp-status[data-error=true],.cgb-product .pdp-step-error,.cgb-product .mage-error,.cgb-product .message.error{color:#9b2c19}
.cgb-product .pdp-step-error{margin:10px 0;padding:10px 12px;border:1px solid #e4b7ae;border-radius:5px;background:#fff5f2;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.cgb-product [aria-invalid=true]{border-color:#9b2c19!important}
.cgb-product .pdp-cart-actions{display:flex;flex-direction:column;gap:12px}
.cgb-product .pdp-order,.cgb-product .contact-submit,.cgb-product .pdp-review-submit{border:0;border-radius:5px;background:var(--orange);color:#fff;min-height:48px;padding:14px 22px;font:700 16px/1.3 Arial}
.cgb-product .pdp-order{width:100%;min-height:52px}
.cgb-product .pdp-order svg{display:none}
.cgb-product .pdp-artwork-help{align-self:center;display:flex;align-items:center;gap:6px;border:0;padding:3px;background:none;color:var(--blue);font:14px/1.4 Arial}
.cgb-product .pdp-artwork-help svg{display:none}
.cgb-product .pdp-text-option label{display:block;font-size:14px}
.cgb-product .pdp-text-option input{display:block;width:100%;margin-top:8px;border:1px solid var(--line);border-radius:5px;padding:12px;font:inherit}
.cgb-product .pdp-text-option a{display:inline-block;margin-top:10px;color:var(--blue);font-size:14px}
/* Native content fragments inherit CGB typography and measured table geometry. */
.cgb-product #pdp-lower{margin-top:48px;padding-top:32px;border-top:1px solid var(--line);font:15px/1.6 Arial;color:var(--ink)}
.cgb-product #pdp-lower h2{font-size:28px;line-height:1.25;margin:0 0 25px}
.cgb-product #pdp-lower p{margin:0 0 15px}
.cgb-product #pdp-lower .grid-1,.cgb-product #pdp-lower .grid-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:stretch}
.cgb-product #pdp-lower .grid-2{margin-top:24px}
.cgb-product #pdp-lower .grid-1>.data,.cgb-product #pdp-lower .grid-2>.data{min-width:0;padding:20px;border:1px solid var(--line);border-radius:5px;background:#fff}
.cgb-product #pdp-lower .productinfodetailsadditionalInfoTab{grid-column:1/-1}
.cgb-product #pdp-lower .table-wrapper,.cgb-product #pdp-lower .grid-container{max-width:100%;overflow-x:auto}
.cgb-product #pdp-lower table{width:100%;border-collapse:collapse;table-layout:fixed;font:14px/1.6 Arial;overflow-wrap:anywhere}
.cgb-product #pdp-lower table :is(th,td){padding:10px;border:0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-weight:400}
.cgb-product #pdp-lower table th{width:38%;color:#526771;background:var(--surface)}
.cgb-product #pdp-lower .product-name-cell{width:auto;background:none;padding:0 0 18px;color:var(--blue)}
.cgb-product #pdp-lower .product-name-cell h2{font-size:22px;margin:0}
.cgb-product #pdp-lower .table-caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.cgb-product #pdp-lower .grid-container table{min-width:360px;table-layout:auto}
.cgb-product #pdp-lower .grid-container .gridheader{font-weight:700;background:var(--surface);color:var(--blue)}
.cgb-product #pdp-lower .grid-container .gridheader em{font-style:normal}
.cgb-product #pdp-lower .block-title{margin-bottom:18px}
.cgb-product #pdp-lower .block-title strong{font:700 22px/1.3 Arial;color:var(--blue)}
.cgb-product #pdp-lower .additional-attributes :is(p,div){margin-bottom:0}
.cgb-product #pdp-lower .items{list-style:none;padding:0;margin:0}
.cgb-product .review-item{padding:18px 0;border-bottom:1px solid var(--line)}
.cgb-product .review-item:last-child{border-bottom:0;padding-bottom:0}
.cgb-product .review-header{margin-bottom:10px}
.cgb-product .review-ratings{margin-top:5px}
.cgb-product .rating-result{position:relative;width:100px;height:23px;overflow:hidden;font:19px/23px Arial;letter-spacing:1px;color:#c3cdd2}
.cgb-product .rating-result::before,.cgb-product .rating-result>span::before{content:'★★★★★';white-space:nowrap}
.cgb-product .rating-result>span{position:absolute;left:0;top:0;height:23px;overflow:hidden;color:var(--orange)}
.cgb-product .rating-result>span>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.cgb-product .review-content{height:24px;overflow:hidden;line-height:24px}
.cgb-product .pdp-read-more{border:0;padding:5px 0;background:none;color:var(--blue);font:13px Arial}
.cgb-product .pdp-review-pages{display:flex;gap:8px;padding-top:18px}
.cgb-product .pdp-review-pages:empty{display:none}
.cgb-product .pdp-review-pages button{min-width:32px;height:32px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--blue);font:14px Arial}
.cgb-product .pdp-review-pages button[aria-current=page]{background:var(--blue);border-color:var(--blue);color:#fff}
.cgb-product .shipping-estimation-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.cgb-product .shipping-estimation-fields .item{position:relative;min-width:0}
.cgb-product .shipping-estimation-fields :is(.item-full-width,.item-street-main){grid-column:1/-1}
.cgb-product .shipping-estimation-fields :is(input,select){width:100%;height:46px;border:1px solid var(--line);border-radius:5px;padding:13px 10px 6px;background:#fff;color:var(--ink);font:14px Arial}
.cgb-product .shipping-estimation-fields select{appearance:none;-webkit-appearance:none;padding-right:42px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23163143' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:16px 16px;background-position:right 14px center}
.cgb-product .shipping-estimation-fields label{position:absolute;top:14px;left:10px;background:#fff;color:#526771;font-size:13px;pointer-events:none;transition:top .15s,font-size .15s}
.cgb-product .shipping-estimation-fields input:is(:focus,:not(:placeholder-shown))~label,.cgb-product .shipping-estimation-fields select:is(:focus,:valid)~label{top:-7px;padding-inline:4px;font-size:11px}
.cgb-product #get_shipping{margin-top:18px;border:0;border-radius:5px;padding:13px 24px;background:var(--orange);color:#fff;font:700 14px Arial;min-height:42px}
.cgb-product [aria-busy=true]{cursor:progress}
.cgb-product #get_shipping[aria-busy=true]::after{content:'';display:inline-block;width:16px;height:16px;border:2px solid #fff;border-top-color:transparent;border-radius:50%;animation:cgb-product-spin .8s linear infinite}
@keyframes cgb-product-spin{to{transform:rotate(360deg)}}
.cgb-product .google-autocomplete-dropdown{position:absolute;z-index:10;top:100%;left:0;right:0;max-height:240px;overflow:auto;border:1px solid var(--line);border-radius:5px;background:#fff;box-shadow:0 8px 20px #16314318}
.cgb-product .google-autocomplete-item{padding:10px;cursor:pointer;font-size:14px}
.cgb-product .google-autocomplete-item:is(:hover,[aria-selected=true]){background:var(--surface)}
.cgb-product #tab-shipping-estimate-results{margin-top:20px;max-width:100%;overflow-x:auto}
.cgb-product #tab-shipping-estimate-results table{min-width:400px}
.cgb-product .tab-rate-button{cursor:pointer}
.cgb-product .tab-rate-button[aria-selected=true]{background:var(--surface);outline:2px solid var(--blue);outline-offset:-2px}
.cgb-product .mage-error{font-size:12px;margin-top:5px}
/* A native related-product carousel needs a fixed card stride, not flex gaps. */
.cgb-product .pdp-related{position:relative;padding-top:30px;margin-top:32px;border-top:1px solid var(--line)}
.cgb-product .pdp-related-viewport{overflow:hidden}
.cgb-product .pdp-related-grid{display:flex;width:100%;gap:0;will-change:transform}
.cgb-product .pdp-related-grid>a{flex:0 0 calc(100% / var(--related-columns,5));min-width:0;display:flex;flex-direction:column;gap:5px;padding:12px;color:var(--blue);font:13px/1.5 Arial}
.cgb-product .pdp-related-grid img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:var(--merchandise-surface);mix-blend-mode:darken;border-radius:5px}
.cgb-product .pdp-related-grid strong{font-size:15px;line-height:1.3}
.cgb-product .pdp-related-rating{font-size:12px}
.cgb-product .pdp-related-rating>span{color:var(--orange)}
.cgb-product .pdp-related-prev,.cgb-product .pdp-related-next{position:absolute;top:30px;border:1px solid var(--line);border-radius:5px;width:32px;height:32px;background:#fff;color:var(--blue);font:22px Arial}
.cgb-product .pdp-related-prev{right:44px}.cgb-product .pdp-related-next{right:0}
/* Dialogs retain native endpoints and identifiers, with CGB-only presentation. */
.cgb-product dialog::backdrop{background:#16314366}
.cgb-product :is(.pdp-contact,.pdp-modal){width:520px;max-width:calc(100% - 36px);max-height:90dvh;overflow:auto;border:1px solid var(--line);border-radius:5px;padding:30px;color:var(--ink);background:#fff;font:15px/1.6 Arial}
.cgb-product :is(.pdp-contact,.pdp-modal) h2{margin:0 36px 18px 0;font-size:26px;line-height:1.25}
.cgb-product :is(.pdp-contact,.pdp-modal) h3{margin:20px 0 8px;font-size:19px}
.cgb-product :is(.pdp-contact,.pdp-modal) p{margin:0 0 18px}
.cgb-product .pdp-modal-close,.cgb-product .pdp-gallery-close{position:absolute;top:12px;right:14px;width:32px;height:32px;border:0;border-radius:5px;background:#fff;color:var(--blue);font:26px Arial}
.cgb-product .pdp-contact .field{margin-top:18px}
.cgb-product .pdp-contact .field label{display:block;margin-bottom:7px;font-size:14px;font-weight:700}
.cgb-product .pdp-contact input,.cgb-product .pdp-review-modal :is(input:not([type=radio]):not([type=hidden]),textarea){width:100%;border:1px solid var(--line);border-radius:5px;padding:12px;color:var(--ink);font:15px Arial;resize:vertical}
.cgb-product .hint,.cgb-product .contact-trust{margin-top:10px;font-size:12px;color:#526771}
.cgb-product .contact-status{margin-top:18px!important;font-size:14px}
.cgb-product .pdp-contact .contact-submit{width:100%}
.cgb-product .pdp-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.cgb-product .pdp-review-stars{display:flex;gap:7px;margin:0 0 22px}
.cgb-product .pdp-review-stars label{position:relative;font-size:36px;line-height:1;color:var(--orange);cursor:pointer}
.cgb-product .pdp-review-stars input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.cgb-product .pdp-review-stars label:has(input:checked) span{font-weight:700}
.cgb-product .pdp-review-stars label:has(input:focus-visible){outline:2px solid var(--blue)}
.cgb-product .pdp-review-name,.cgb-product .pdp-review-detail{display:flex;flex-direction:column-reverse;gap:7px;margin-bottom:18px;font-size:14px;font-weight:700}
.cgb-product .pdp-review-submit{width:100%}
.cgb-product #pdp-gallery-dialog{width:1000px;max-width:calc(100% - 36px);max-height:95dvh;overflow:auto;border:0;border-radius:5px;padding:45px 20px 20px;background:#fff}
.cgb-product #pdp-gallery-dialog .pdp-hero{min-height:0;height:65dvh;aspect-ratio:auto}
.cgb-product #pdp-gallery-dialog #pdp-image{max-height:none}
.cgb-product :is(.pdp-order,.contact-submit,.pdp-review-submit,#get_shipping):hover{background:#993a08}
.cgb-product :is(.pdp-methods>button,.pdp-print-row button,.pdp-actions>button,.pdp-review-pages button,.pdp-thumbs>button):hover{border-color:var(--blue)}
.cgb-product :is(button,input,select,textarea){font-family:Arial,Helvetica,sans-serif}
.cgb-product button:disabled{cursor:default;opacity:.6}
.cgb-product [hidden]{display:none!important}
@media(max-width:1150px){.cgb-product #product{padding-inline:28px}.cgb-product .pdp-layout{gap:28px}.cgb-product .pdp-heading h1{font-size:32px}.cgb-product .pdp-hero{min-height:340px}}
@media(max-width:900px){.cgb-product .pdp-layout{grid-template-columns:minmax(0,1fr)}.cgb-product .pdp-gallery{position:static}.cgb-product .pdp-hero{min-height:0;aspect-ratio:1.3}.cgb-product #pdp-image{max-height:520px}.cgb-product .pdp-configuration{margin-top:10px}}
@media(max-width:600px){
 .cgb-product #product{padding-inline:18px;padding-bottom:35px}
 .cgb-product .breadcrumbs{font-size:12px;padding:20px 0}
 .cgb-product .pdp-heading h1{font-size:29px}
 .cgb-product .pdp-hero{padding:15px;aspect-ratio:1}
 .cgb-product .pdp-layout{gap:20px}
 .cgb-product .pdp-methods{gap:8px}
 .cgb-product .pdp-methods>button{padding:11px 8px}
 .cgb-product .pdp-methods strong{font-size:14px}
 .cgb-product .pdp-methods small{font-size:11px}
 .cgb-product .pdp-step>h2{font-size:19px;letter-spacing:-.2px}
 .cgb-product .pdp-step>h2>small{flex-basis:100%;padding-left:33px}
 .cgb-product .pdp-thumbs>button{flex-basis:66px}
 .cgb-product .pdp-thumbs img{width:56px;height:56px}
 .cgb-product .pdp-quantity{gap:8px}
 .cgb-product .pdp-quantity label{font-size:12px;padding:10px 6px}
 .cgb-product .pdp-quantity output,.cgb-product #pdp-qty{font-size:20px}
 .cgb-product .pdp-print-row{grid-template-columns:minmax(0,1fr);gap:8px}
 .cgb-product .pdp-print-row>span{padding-top:0;font-size:13px}
 .cgb-product .pdp-print-row button{font-size:13px;padding:9px}
 .cgb-product #pdp-lower .grid-1,.cgb-product #pdp-lower .grid-2{grid-template-columns:minmax(0,1fr)}
 .cgb-product #pdp-lower .grid-1>.data,.cgb-product #pdp-lower .grid-2>.data{padding:16px}
 .cgb-product #pdp-lower h2{font-size:26px}
 .cgb-product #pdp-lower .productinfodetailsadditionalInfoTab :is(table,tbody,tr,th,td){display:block;width:100%;background:none}
 .cgb-product #pdp-lower .productinfodetailsadditionalInfoTab tr{border-bottom:1px solid var(--line);margin-bottom:18px}
 .cgb-product #pdp-lower .productinfodetailsadditionalInfoTab th{padding:0 0 8px;border:0;color:var(--blue);font-weight:700}
 .cgb-product #pdp-lower .productinfodetailsadditionalInfoTab td{padding:0 0 18px;border:0}
 .cgb-product #pdp-lower .productinfodetailsadditionalInfoTab tr:last-child{border:0;margin-bottom:0}
 .cgb-product .shipping-estimation-fields{grid-template-columns:minmax(0,1fr)}
 .cgb-product .shipping-estimation-fields .item{grid-column:1}
 .cgb-product .pdp-related-grid>a{padding:8px;font-size:12px}
 .cgb-product .pdp-related-grid strong{font-size:13px}
 .cgb-product :is(.pdp-contact,.pdp-modal){padding:24px}
 .cgb-product #pdp-gallery-dialog .pdp-hero{height:55dvh}
}
@media(prefers-reduced-motion:reduce){.cgb-product *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.cgb-product .pdp-related-photo{display:block;aspect-ratio:1;background:var(--merchandise-surface);border-radius:5px;isolation:isolate;overflow:hidden}
.cgb-product .pdp-related-photo img{height:100%;background:none;border-radius:0}
@media(max-width:600px){.cgb-product .pdp-methods{position:relative}.cgb-product .pdp-methods>button{position:static}.cgb-product .pdp-methods>button .pdp-method-tooltip{left:0;right:0;width:100%;max-width:100%}}
.cgb-product .pdp-template-downloads{max-width:100%;color:var(--blue)}
.cgb-product .pdp-template-downloads summary{cursor:pointer}
.cgb-product .pdp-template-downloads[open]{flex-basis:100%}
.cgb-product .pdp-template-downloads ul{list-style:none;margin:8px 0 0;padding:10px 14px;border:1px solid var(--line);border-radius:5px;background:var(--surface)}
.cgb-product .pdp-template-downloads li+li{margin-top:7px}

.cgb-product .pdp-chevron{display:block;flex:none;width:20px;height:20px;pointer-events:none;margin:auto}

/* Price cells already select a tier: show that action with a gentle CGB hover. */
.cgb-product .pdp-tiers td[data-tier-qty]{cursor:pointer;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease}
.cgb-product .pdp-tiers td[data-tier-qty]>span{display:inline-block;transition:transform .18s ease}
.cgb-product .pdp-tiers td[data-tier-qty]:focus-visible{outline:0;background:#eaf3f7;color:var(--blue);box-shadow:inset 0 0 0 1px #8eafbf,inset 0 0 12px #075a761a}
.cgb-product .pdp-tiers td[data-tier-qty]:focus-visible>span{transform:translateY(-1px) scale(1.05)}
@media(hover:hover) and (pointer:fine){
.cgb-product .pdp-tiers td[data-tier-qty]:hover{background:#eaf3f7;color:var(--blue);box-shadow:inset 0 0 0 1px #8eafbf,inset 0 0 12px #075a761a}
.cgb-product .pdp-tiers td[data-tier-qty]:hover>span{transform:translateY(-1px) scale(1.05)}
}
@media(prefers-reduced-motion:reduce){.cgb-product .pdp-tiers td[data-tier-qty]>span{transform:none!important}}

/* Names remain visible over dense color grids without clipping at viewport edges. */
.cgb-product .pdp-color-tooltip{position:fixed;z-index:1100;pointer-events:none;max-width:calc(100vw - 16px);padding:7px 10px;border-radius:5px;background:var(--ink);color:#fff;font:13px/1.4 Arial,Helvetica,sans-serif;overflow-wrap:anywhere;box-shadow:0 2px 8px #16314320}
.cgb-product .pdp-color-tooltip[hidden]{display:none}
.cgb-product .pdp-ink-color-name{font-size:14px;font-weight:400;color:#516875}

.cgb-product #shipping-estimation-form>.item-button{display:flex;justify-content:center}

/* Fixed engraving option uses the existing selected-option checkmark. */
.standalone-product #product .pdp-print-row button.pdp-laser-engraved[aria-pressed=true]{background:#55af2a;color:#fff;border:2px solid #55af2a;box-shadow:none;flex:0 1 180px;width:180px;max-width:100%;min-height:36px;padding:4px 16px;line-height:24px;cursor:default}

/* Cart progress belongs to the existing button; errors remain visible above it. */
.cgb-product .pdp-order{display:flex;align-items:center;justify-content:center;gap:10px}
.cgb-product .pdp-order[aria-busy="true"]{cursor:wait}
.cgb-product .pdp-order[aria-busy="true"]::before{content:'';display:block;flex:none;width:18px;height:18px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:cgb-cart-button-spin .75s linear infinite}
.cgb-product #pdp-status.pdp-cart-feedback[data-error="false"]{position:absolute;width:1px;height:1px;margin:0;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@keyframes cgb-cart-button-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.cgb-product .pdp-order[aria-busy="true"]::before{animation:none}}
