/* Commerce components extending the approved V4 paper-and-blue visual system. */
/* Stock state is authoritative; override decorative nth-child backgrounds. */
.product-card[data-stock="in_stock"] .product-image,.detail-image[data-stock="in_stock"]{background:linear-gradient(150deg,#f0f5fa,#e4edf5)}
.product-card[data-stock="unknown"] .product-image,.detail-image[data-stock="unknown"]{background:linear-gradient(145deg,#f9f7ed,#eef0ea)}
.product-card[data-stock="on_order"] .product-image,.detail-image[data-stock="on_order"]{background:linear-gradient(145deg,#f9f7ed,#eef0ea)}
.on-order-note{display:block;color:#73634b;font-size:12px;line-height:1.5;margin-top:6px}
.product-card[data-stock="out_of_stock"] .product-image,.detail-image[data-stock="out_of_stock"]{background:linear-gradient(145deg,#fcf1f0,#f3e4e6)}
.skip-link{position:absolute;left:16px;top:-70px;background:#fff;color:#173b95;padding:13px;z-index:10000}.skip-link:focus{top:10px}.staging-banner{padding:7px 5%;background:#f7e7a3;color:#554a26;text-align:center;font-size:12px;line-height:1.5}.connection-status{padding:20px 5%;background:#edf2fc;display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap}.connection-status .text-link{white-space:normal}.site-header .brand img{max-height:none;overflow:visible}.site-header .brand{flex-shrink:0}.main-nav{gap:20px}.footer nav{display:grid;gap:11px;align-content:start}.footer nav button{text-align:left;padding:0}.footer nav a:hover,.auth-links a:hover,.service-nav a:hover{text-decoration:underline}.footer-bottom{grid-column:1/-1}.product-card{display:flex;flex-direction:column;min-width:0}.product-image{flex-shrink:0}.product-card h3,.catalog-products .product-card h3{font-size:22px;line-height:1.22;letter-spacing:-.025em;overflow-wrap:anywhere}.product-type{gap:12px;align-items:start;min-height:29px}.product-type span:first-child{overflow-wrap:anywhere}.product-type span:last-child{text-align:right;flex-shrink:0}.product-card .card-bottom{margin-top:auto;padding-top:16px}.product-card .description{margin-top:9px;margin-bottom:6px}.card-price{font-size:26px}.card-price small{max-width:190px;font-weight:400;line-height:1.4;margin-top:5px}.stock-status{font-size:12px;color:#73634b;line-height:1.5;margin:8px 0 15px}.stock-status.available{color:#337250}.stock-status:before{content:"";display:inline-block;width:6px;height:6px;margin-right:6px;border-radius:50%;background:currentColor;vertical-align:2px}.no-image{font-size:15px;color:#74839b;align-self:center;margin:auto;text-align:center}.cart-image-empty{width:65px;height:80px;background:#e1e9f4;display:grid;place-items:center}.extra-filters{display:grid;gap:9px;margin-top:24px}.extra-filters>label:not(.check-label){font-size:12px;font-weight:600;margin-top:5px}.extra-filters select{width:100%;min-height:40px;border:1px solid #c6d4e7;border-radius:3px;background:#fff;color:var(--ink);padding:7px}.check-label{display:flex;align-items:flex-start;gap:11px;font-size:13px;line-height:1.6}.check-label input{width:18px;height:18px;flex:0 0 18px;margin:3px 0 0;accent-color:var(--blue)}.check-label a{text-decoration:underline}.results-toolbar{font-family:inherit;font-size:12px}.results-toolbar select{font-size:12px;padding:8px}.detail-info h1{font-size:clamp(27px,2.6vw,42px);line-height:1.15;letter-spacing:-.035em;overflow-wrap:anywhere}.detail-subtitle{margin-top:15px;color:#68788f;font-size:14px}.detail-image{height:510px}.detail-image>img{height:84%;width:88%;object-fit:contain}.gallery-thumbs{display:flex;flex-wrap:wrap;gap:12px}.gallery-thumbs button{width:78px;height:85px;padding:7px}.gallery-thumbs button img{width:100%;height:100%;object-fit:contain}.gallery-index{background:#ffffffbf;padding:3px 7px;border-radius:2px}.product-downloads{padding-top:15px;display:grid;gap:8px}.spec-list{margin:17px 0 22px;font-size:13px}.spec-list>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:15px;padding:8px 0;border-bottom:1px solid #e0e7f0}.spec-list dt{color:#6e7e94}.spec-list dd{margin:0;text-align:right}.tier-table{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr))}.tier{min-width:0;font-size:10px}.tier strong{font-size:16px;white-space:nowrap}.minimum-note{font-size:12px;margin-top:12px;color:#66758a}.detail-accordions .plain-description{padding:17px 0;font-size:13px;line-height:1.85;color:#50627e}.detail-accordions .text-link{margin-bottom:17px}.detail-price>div strong{font-size:38px}.detail-price>p{font-size:12px}.cart-drawer{width:min(600px,100%);max-width:100%;z-index:1001}.overlay{z-index:1000}.info-modal{z-index:1002}.cart-row{grid-template-columns:70px minmax(0,1fr);gap:15px}.cart-row-title{display:block;font-size:16px;line-height:1.4;overflow-wrap:anywhere}.cart-row-actions{gap:12px;flex-wrap:wrap}.cart-row-actions>strong{font-size:17px}.cart-row-actions .quantity-control input{width:60px;padding:0 2px}.cart-row-actions .quantity-control{max-width:148px}.cart-row-actions .quantity-control button{width:34px}.cart-row>div>small{display:block;margin-top:6px;color:#76849b}.cart-summary{background:#f8fafc}.cart-summary .btn{width:100%}.cart-summary .optional-account{line-height:1.6;padding:12px}.cart-summary #delivery-hint{font-size:12px;line-height:1.7}.cart-items{overscroll-behavior:contain}.info-modal p{line-height:1.8;overflow-wrap:anywhere}.info-modal .download-link{font-size:16px}.info-modal .modal-note{margin-top:20px}.commerce-section{max-width:1500px;margin:0 auto;min-height:60vh;padding-top:28px;padding-bottom:75px}.commerce-heading{margin:36px 0}.commerce-heading h1,.auth-layout h1,.account-heading h1,.commerce-section>h1,.success-card h1{font-size:clamp(34px,4vw,59px);line-height:1.07;letter-spacing:-.05em;font-weight:750;margin:18px 0 20px;color:#1c3970;overflow-wrap:anywhere}.commerce-heading>p:not(.eyebrow),.auth-layout>div>p,.lead{max-width:710px;font-size:16px;line-height:1.8;color:#5e708a;margin:15px 0}.commerce-section h2{font-size:25px;line-height:1.3;letter-spacing:-.025em}.commerce-section h3{font-size:20px}.notice{background:#edf2fc;border-left:3px solid #456abc;padding:17px 20px;font-size:14px;line-height:1.7;color:#405674;margin:22px 0}.loading-note{margin:35px 0;font-size:16px;color:#6b7b94}.empty-state{padding:55px 5%;background:#f0f4fa;text-align:center;border:1px solid #dbe4f1;border-radius:5px}.empty-state>h1,.empty-state>h2,.empty-state>h3{margin-bottom:15px}.empty-state>p{margin:15px auto;max-width:550px;color:#647790}.empty-state .btn{margin-top:15px}.empty-state.compact{padding:35px 20px;margin-top:20px}.muted{font-size:12px;line-height:1.8;color:#667993}.commerce-form fieldset{padding:0 0 27px;margin:0 0 29px;border:0;border-bottom:1px solid #dae3ef;min-width:0}.commerce-form legend{font-size:22px;font-weight:650;letter-spacing:-.025em;padding:0 0 23px}.commerce-form input,.commerce-form select,.commerce-form textarea{max-width:100%;font:inherit;color:var(--ink);border:1px solid #bccde4;border-radius:4px;background:#fff;min-height:46px;padding:11px 12px;transition:border-color .15s,box-shadow .15s}.commerce-form input:focus,.commerce-form textarea:focus,.commerce-form select:focus{outline:0;border-color:#486ecc;box-shadow:0 0 0 3px #3265ce17}.commerce-form input[type=checkbox],.commerce-form input[type=radio]{min-height:0;box-shadow:none;padding:0}.commerce-form input[type=file]{background:#f0f4fa;padding:10px;font-size:12px;border-style:dashed;cursor:pointer;min-width:0}.commerce-form input::file-selector-button{font:inherit;background:#e0e9f9;border:0;border-radius:3px;color:#193c9f;padding:7px 10px;margin-right:10px;cursor:pointer}.commerce-form textarea{resize:vertical;min-height:90px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.field{display:flex;flex-direction:column;gap:8px;min-width:0;margin-bottom:20px}.field>span{font-size:13px;font-weight:600}.field>small{font-size:11px;line-height:1.65;color:#75859b}.field-wide{grid-column:1/-1}.checkout-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr);gap:65px;align-items:start}.checkout-summary{padding:28px;background:#edf2f9;border:1px solid #d1def0;border-radius:5px;position:sticky;top:25px}.checkout-summary>h2{margin-bottom:17px}.checkout-lines>div{display:flex;justify-content:space-between;align-items:start;gap:18px;padding:14px 0;border-bottom:1px solid #d0dcec;font-size:13px}.checkout-lines>div>span{overflow-wrap:anywhere}.checkout-lines strong{white-space:nowrap;font-size:14px}.checkout-lines small{display:block;color:#6c7e97;margin-top:5px}.checkout-total{display:flex;justify-content:space-between;gap:20px;font-size:19px;padding:20px 0;align-items:center}.checkout-total strong{font-size:29px;white-space:nowrap}.checkout-summary>p{font-size:12px;line-height:1.8;margin-bottom:13px}.checkout-summary>.text-link{font-size:12px}.delivery-options{display:grid;gap:12px;margin-bottom:25px}.delivery-options>label{display:flex;align-items:flex-start;gap:13px;padding:16px;border:1px solid #c7d5e9;border-radius:4px;background:#fff;cursor:pointer}.delivery-options>label:has(input:checked){border-color:#3560bb;background:#edf3ff;box-shadow:0 0 0 1px #3560bb}.delivery-options input{flex:0 0 17px;width:17px;height:17px;margin:3px 0 0;accent-color:var(--blue)}.delivery-options strong{font-size:14px;font-weight:600}.delivery-options small{display:block;font-size:12px;line-height:1.6;color:#6d7e97;margin-top:3px}.consent-label{margin:20px 0}.commerce-form>.btn{margin:5px 0 15px}.form-message{font-size:14px;line-height:1.7;background:#fff0e8;border:1px solid #e7c7b5;border-left:3px solid #ac613f;color:#713d28;padding:14px 16px;margin:15px 0;border-radius:3px}.form-message.is-success{background:#edf7ef;border-color:#b9d5bf;color:#295b37}.auth-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.85fr);gap:10%;align-items:start;margin:55px 0}.auth-card,.profile-card{background:#fff;border:1px solid #d1deef;padding:34px;border-radius:5px;box-shadow:0 7px 26px #244b8208}.auth-card h2{margin-bottom:26px}.auth-card>.btn{width:100%;margin-top:20px}.auth-links{display:flex;justify-content:space-between;gap:15px;font-size:12px;line-height:1.7;margin-top:10px}.account-heading{display:flex;justify-content:space-between;gap:30px;align-items:center;margin:35px 0 45px}.account-heading h1{font-size:44px;margin-bottom:10px}.account-heading p{color:#677994}.account-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,1fr);gap:50px}.account-layout h2{margin-bottom:15px}.order-history{display:grid;gap:15px;margin-top:25px}.order-card{border:1px solid #ccd9eb;border-radius:4px;background:#fff;overflow:hidden}.order-card>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px;cursor:pointer;list-style:none;font-size:14px}.order-card>summary::-webkit-details-marker{display:none}.order-card>summary:after{content:"＋";font-size:20px}.order-card[open]>summary:after{content:"−"}.order-card>summary>span:first-child{margin-right:auto}.order-card>summary small{display:block;font-size:10px;font-weight:400;color:#7a899c;margin-top:5px}.order-card>summary>strong{white-space:nowrap}.status-pill{background:#e8eef9;color:#345391;border-radius:4px;padding:5px 8px;font-size:11px}.order-content{padding:0 20px 22px;border-top:1px solid #e0e7f0}.history-line{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid #e0e7f0;font-size:12px}.history-line small{display:block;color:#78879c;margin-top:5px}.history-line strong{white-space:nowrap}.order-content>p{font-size:12px;color:#708198;margin:15px 0}.order-content>.btn{min-height:43px;padding:12px 15px;font-size:12px;margin-top:10px}.profile-card .muted{margin:0 0 20px}.btn-outline{background:#fff;color:var(--blue);border:1px solid #c3d1e6;border-radius:4px;min-height:45px;font-size:12px;padding:11px 16px}.form-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.success-card{max-width:750px;margin:35px auto 0}.success-mark{width:60px;height:60px;display:grid;place-items:center;border-radius:50%;background:#e4f0e9;color:#337657;font-size:32px;margin-bottom:27px}.success-card>p{font-size:15px;line-height:1.8;color:#61728b;margin:20px 0}.success-card>.eyebrow{font-size:10px}.success-summary{display:flex;justify-content:space-between;align-items:center;padding:23px 0;border-block:1px solid #d0dced;gap:25px;margin:28px 0;font-size:16px}.success-summary strong{font-size:30px}.service-nav{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0 35px}.service-nav>a{padding:10px 14px;background:#e9f0fa;border:1px solid #d1def0;border-radius:3px;font-size:12px}.page-body{font-size:15px;line-height:1.85}.page-body>.plain-description{max-width:1000px}.plain-description{overflow-wrap:anywhere}.page-illustration{max-width:100%;height:auto;max-height:1000px;object-fit:contain;object-position:left;margin:25px 0;border:1px solid #d9e3ef;background:#fff}.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:23px;margin:20px 0 35px}.info-card{background:#fff;border:1px solid #d3dfed;padding:30px;border-radius:5px}.info-card h2{margin-bottom:17px}.info-card p{margin-bottom:15px;line-height:1.85;font-size:14px;overflow-wrap:anywhere}.info-card p:last-child{margin-bottom:0}.info-card .btn{margin-top:15px}.info-number{display:grid;place-items:center;width:35px;height:35px;background:#e7eef9;border-radius:50%;font-size:12px;margin-bottom:20px}.download-link{display:block;padding:12px 0;color:#244da4;line-height:1.6;font-size:14px;overflow-wrap:anywhere;border-bottom:1px solid #d8e2f0}.download-link:hover{text-decoration:underline}.download-link small{color:#6c7f9d;font-size:11px;display:block}.download-list{display:grid;gap:0;margin:25px 0}.download-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 30px}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px;margin:28px 0}.help-grid .page-illustration{max-height:250px}.section-subtitle{margin:45px 0 15px}.source-details{padding:20px 0;border-block:1px solid #d5e0ef}.source-details>summary{font-size:15px;cursor:pointer;font-weight:600}.source-details[open]>summary{margin-bottom:25px}.promotion-card{background:#fff;border:1px solid #d0def0;border-radius:5px;padding:30px;margin-bottom:25px}.promotion-card h2{margin-bottom:15px}.promotion-card>p{line-height:1.8;color:#5e738f}.promotion-card .product-grid{margin-top:25px}.form-message:focus{outline:0}.commerce-form .btn:disabled{opacity:.55}.info-modal{max-height:88vh;overflow:auto}.cart-drawer [hidden],.commerce-form [hidden]{display:none!important}
@media(max-width:1100px){.checkout-layout{gap:30px;grid-template-columns:minmax(0,1.3fr) minmax(290px,1fr)}.account-layout{gap:30px}.checkout-summary{padding:22px}.product-card h3,.catalog-products .product-card h3{font-size:20px}.card-price{font-size:23px}.detail-image{height:450px}.detail-price>div strong{font-size:32px}.auth-layout{gap:6%}.profile-card{padding:25px}.order-card>summary{padding:15px;gap:10px;flex-wrap:wrap}.status-pill{font-size:10px}}
@media(max-width:800px){.checkout-layout,.account-layout{grid-template-columns:1fr}.checkout-summary{position:static;grid-row:1}.checkout-lines{max-height:270px;overflow:auto;padding-right:4px}.auth-layout{grid-template-columns:1fr;gap:30px;margin-top:25px}.auth-layout>div>p{max-width:none}.auth-layout>div>h1{font-size:42px}.auth-card{max-width:600px;width:100%}.profile-card{max-width:600px}.detail-image{height:400px}.download-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.extra-filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.extra-filters select{width:auto;max-width:160px}.extra-filters .check-label{min-width:130px}.account-heading h1{font-size:36px}.main-nav{gap:14px}.product-card h3,.catalog-products .product-card h3{font-size:20px}}
@media(max-width:600px){.staging-banner{font-size:10px;padding:5px 4%}.site-header{padding-inline:5%;gap:10px}.site-header .brand{flex-basis:clamp(168px,53vw,210px);width:clamp(168px,53vw,210px)}.site-header .header-actions{gap:13px;margin-left:auto}.cart-trigger{gap:5px}.site-header .main-nav{width:100%;justify-content:space-between}.main-nav .catalog-nav{font-size:11px}.main-nav>button{font-size:10px}.product-card h3,.catalog-products .product-card h3{font-size:19px;line-height:1.24}.product-type{font-size:9px;min-height:31px}.product-card .description{font-size:11px}.product-card .stock-status{font-size:11px}.product-card .card-price{font-size:24px}.card-price small{font-size:9px;max-width:210px}.cart-drawer{padding:24px 18px 16px}.cart-row{grid-template-columns:50px minmax(0,1fr);gap:12px}.cart-row>img{width:50px;height:75px}.cart-row-title{font-size:14px}.cart-row-info{font-size:10px}.cart-row-actions{gap:9px}.cart-row-actions .quantity-control input{width:46px}.cart-row-actions>strong{font-size:15px}.cart-row-actions .remove-item{font-size:11px}.cart-summary{padding-top:18px}.drawer-head h2{font-size:27px}.commerce-section{padding:24px 5% 50px}.commerce-heading{margin:25px 0}.commerce-heading h1,.commerce-section>h1,.success-card h1{font-size:37px;line-height:1.1}.commerce-heading>p:not(.eyebrow),.lead{font-size:14px}.commerce-section h2{font-size:23px}.form-grid{grid-template-columns:1fr;gap:0}.field-wide{grid-column:auto}.checkout-layout{gap:25px}.checkout-summary{padding:21px}.checkout-lines>div{font-size:12px}.checkout-lines strong{font-size:13px}.checkout-total{font-size:16px}.checkout-total strong{font-size:25px}.commerce-form legend{font-size:20px}.commerce-form input,.commerce-form textarea,.commerce-form select{font-size:16px}.commerce-form>.btn{width:100%;font-size:13px}.commerce-form input[type=file]{font-size:12px}.delivery-options>label{padding:14px}.notice{font-size:12px;padding:13px 15px}.consent-label{font-size:12px}.form-message{font-size:13px;padding:13px}.auth-layout{margin-top:25px}.auth-layout>div>h1{font-size:38px}.auth-layout>div>p{font-size:14px}.auth-card,.profile-card{padding:24px 19px}.account-heading{align-items:flex-start;gap:15px;margin:25px 0;flex-direction:column}.account-heading h1{font-size:35px;max-width:90vw}.account-heading .form-actions{gap:20px}.account-layout{gap:35px}.order-card>summary{padding:17px 15px;gap:12px}.order-card>summary>span:first-child{flex-basis:50%}.order-card>summary>strong{margin-right:auto}.order-content{padding:0 15px 17px}.history-line{gap:15px}.success-card{margin-top:25px}.success-card>.form-actions>.btn{width:100%}.success-card>p{font-size:14px}.contact-grid,.help-grid,.download-grid{grid-template-columns:1fr}.info-card,.promotion-card{padding:23px 20px}.service-nav{gap:7px}.service-nav>a{font-size:11px;padding:8px 10px}.page-body{font-size:14px}.detail-image{height:385px}.detail-info h1{font-size:29px;line-height:1.17}.detail-info .spec-list{font-size:12px}.gallery-thumbs{gap:9px}.gallery-thumbs button{width:65px;height:73px}.tier-table{grid-template-columns:repeat(auto-fit,minmax(57px,1fr))}.tier{font-size:9px;padding:10px 3px}.tier strong{font-size:13px}.detail-price{gap:20px}.detail-price>div strong{font-size:33px}.detail-price>p{font-size:11px}.buy-row{gap:15px;flex-wrap:wrap}.buy-row .btn{flex:1;min-width:170px}.spec-list>div{gap:12px}.footer .footer-brand img{width:100%}.footer nav{font-size:12px}.footer-bottom{font-size:9px;line-height:1.8}.footer-bottom>span{white-space:normal}.extra-filters{margin-top:10px}.extra-filters>label:not(.check-label){font-size:11px}.extra-filters select{max-width:150px;font-size:12px}.results-toolbar{font-size:11px;gap:13px}.results-toolbar select{max-width:165px;font-size:11px}.extra-filters .check-label{font-size:12px}.filters .filter-hint{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.quantity-equation::before{content:none}.quantity-equation>.quantity-caption{display:block;flex:0 0 100%;width:100%;border-bottom:1px solid #a5aec8;padding-bottom:16px;margin-bottom:5px;text-align:center;font:8px/1.5 Arial,sans-serif;letter-spacing:.12em;color:#687e9c}

.shipping-facts{margin:7px 0 17px;padding:12px 0;border-block:1px solid #d4dfed;font-size:12px;color:#60738e}.shipping-facts>div{display:flex;align-items:baseline;justify-content:space-between;gap:18px;padding:3px 0}.shipping-facts dt{margin:0}.shipping-facts dd{margin:0;text-align:right;color:#344f74;font-variant-numeric:tabular-nums}.order-content>.shipping-facts{margin-top:15px}.success-card>.shipping-facts{font-size:14px}
#cart-shipping{display:block;width:100%}#cart-shipping>.shipping-facts{width:100%}

/* Price ranges select the quantity to add; they never submit the cart. */
.tier-table button.tier{appearance:none;border:0;border-right:1px solid #bdc4d4;background:#fff;font-family:inherit;cursor:pointer;transition:background .15s,box-shadow .15s;min-height:66px}.tier-table button.tier:last-child{border-right:0}.tier-table button.tier.active{background:#e4edfc}.tier-table button.tier:not(:disabled):hover{background:#edf3ff;box-shadow:inset 0 0 0 1px var(--blue)}.tier-table button.tier:focus-visible{position:relative;z-index:1;outline:2px solid var(--blue);outline-offset:2px}.tier-table button.tier:disabled{cursor:not-allowed;opacity:.5}

/* Constrain tall label diagrams to the thumbnail content box. */
.gallery-thumbs button{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);overflow:hidden;flex-shrink:0}.gallery-thumbs button img{display:block;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain}

.template-caption{margin:2px 0 0;max-width:480px;font-size:13px;line-height:1.65;color:#60728d}.template-help{font-size:13px;line-height:1.7;color:#50627e}.template-help summary{cursor:pointer;color:var(--blue);font-weight:600;padding:4px 0}.template-help summary:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.template-help ol{padding-left:21px;margin:12px 0 0}.template-help li{padding-left:3px;margin-bottom:9px}

/* Checkout feedback is persistent, rather than dependent on a browser tooltip. */
#checkout-form .field-error{display:block;margin-top:7px;color:#a12626;font-size:13px;line-height:1.6;white-space:normal;overflow-wrap:anywhere}
#checkout-form .field-error[hidden]{display:none}
#checkout-form [aria-invalid=true]{border-color:#b82e2e;box-shadow:0 0 0 1px #b82e2e}
#checkout-form .field,#checkout-form .consent-label,#checkout-form .delivery-options{scroll-margin-block:120px}
#checkout-form .consent-label{flex-wrap:wrap}
#checkout-form .consent-label>span{flex:1;min-width:0}
#checkout-form .consent-label>.field-error{flex-basis:100%;margin-left:29px}
.checkout-errors p{margin:7px 0}.checkout-errors ul{padding-left:20px;margin:8px 0 0}.checkout-errors li{margin-top:6px}
.checkout-errors button{padding:0;background:none;border:0;color:inherit;font:inherit;text-decoration:underline;font-weight:600;cursor:pointer;text-align:left}
.checkout-errors button:focus-visible{outline:2px solid currentColor;outline-offset:3px}
/* Full-size product photographs; availability backgrounds stay on the product page. */
.gallery-enlarge{position:absolute;inset:0;z-index:1;display:flex;align-items:flex-end;justify-content:flex-start;padding:18px 20px;background:transparent;border:0;cursor:zoom-in;color:var(--navy)}
.gallery-enlarge span{padding:9px 13px;background:#fff;border:1px solid #c9d5eb;border-radius:4px;font-size:12px;box-shadow:0 3px 12px #203c7020}
.gallery-enlarge:hover span{background:#eaf0ff;border-color:#2945b8}
.gallery-enlarge:focus-visible{outline:3px solid #2945b8;outline-offset:3px}
body.image-viewer-open{overflow:hidden}
.image-viewer{position:fixed;inset:0;margin:auto;padding:0;border:1px solid #ccd8e8;border-radius:10px;width:calc(100vw - 32px);max-width:1440px;height:calc(100dvh - 32px);max-height:none;background:#fff;color:#1c3562;box-shadow:0 24px 100px #09142970;overflow:hidden}
.image-viewer:not([open]){display:none}
.image-viewer[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.image-viewer::backdrop{background:#0f2035bd;backdrop-filter:blur(5px)}
.image-viewer-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 20px;border-bottom:1px solid #dde5f1;background:#f5f8fc;min-width:0}
.image-viewer-head>div{min-width:0}
.image-viewer-head p{font-size:11px;color:#5b7095;margin:0 0 4px}
.image-viewer-head h2{font-size:16px;line-height:1.4;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:650;letter-spacing:0}
.image-viewer button{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-width:44px;min-height:44px;padding:8px 12px;border:1px solid #ccd8e8;border-radius:5px;background:#fff;color:#233f92;font:inherit;font-size:14px;cursor:pointer}
.image-viewer button:hover:not(:disabled){border-color:#2945b8;background:#edf3ff}
.image-viewer button:focus-visible,.image-viewer a:focus-visible{outline:3px solid #2945b8;outline-offset:3px}
.image-viewer button:disabled{opacity:.4;cursor:default}
.image-viewer button[hidden]{display:none}
.image-viewer-head button{font-size:28px;line-height:1}
.image-viewer-stage{position:relative;overflow:auto;overscroll-behavior:contain;background:#fff;min-width:0;min-height:0;scrollbar-color:#b7c8e2 #f2f5fa}
.image-viewer-canvas{display:flex;align-items:flex-start;min-width:100%;min-height:100%;width:max-content;height:max-content}
.image-viewer-canvas img{display:block;flex:none;margin:auto;max-width:none;max-height:none;object-fit:contain;user-select:none;-webkit-user-drag:none}
.image-viewer-stage.is-zoomed{cursor:grab}
.image-viewer-stage.is-dragging{cursor:grabbing;user-select:none}
.image-viewer-status{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:calc(100% - 48px);max-width:500px;margin:0;text-align:center;font-size:15px;line-height:1.6;color:#597097}
.image-viewer-footer{padding:12px 20px;background:#f5f8fc;border-top:1px solid #dde5f1}
.image-viewer-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.image-viewer-navigation,.image-viewer-zoom{display:flex;align-items:center;gap:6px}
.image-viewer-zoom output{min-width:45px;text-align:center;font-size:13px;font-variant-numeric:tabular-nums}
.image-viewer-tools a{font-size:13px;line-height:1.4;cursor:pointer}
.image-viewer-footer p{margin:10px 0 0;font-size:12px;line-height:1.5;color:#637593}
@media(max-width:600px){.image-viewer{width:100%;height:100dvh;border:0;border-radius:0}.image-viewer-head{padding:10px 12px;gap:10px}.image-viewer-head h2{font-size:13px}.image-viewer-footer{padding:10px 12px}.image-viewer-tools{gap:8px;justify-content:center}.image-viewer-tools a{width:100%;text-align:center}.image-viewer button{padding:8px;min-width:40px}.image-viewer-zoom{gap:4px}.image-viewer-footer p{font-size:11px;margin-top:8px}.gallery-enlarge{padding:15px}.gallery-enlarge span{font-size:11px;padding:8px 10px}}
.label-builder-promo{display:flex;align-items:flex-start;gap:14px;border:1px solid #ccd9ed;border-radius:8px;padding:18px;background:#edf3fc;margin-bottom:12px}.builder-promo-icon{font-size:30px;line-height:1;color:#2945ba}.label-builder-promo>div{min-width:0;flex:1}.label-builder-promo .btn{font-size:13px;line-height:1.5;padding:13px 16px;gap:12px;min-height:48px}.label-builder-promo p{font-size:12px;line-height:1.65;color:#5e7497;margin:12px 0 0}.legacy-template{margin-top:10px}.legacy-template summary{font-size:12px}.legacy-template .download-link{margin-top:12px}@media(max-width:600px){.label-builder-promo{padding:14px}.builder-promo-icon{display:none}.label-builder-promo .btn{width:100%;padding:12px;font-size:12px}}

/* A quiet credit outside the artwork; original image files remain unchanged. */
img{user-select:none;-webkit-user-select:none;-webkit-user-drag:none;-webkit-touch-callout:none}
.product-image,.detail-image,.gallery-thumbs button,.image-viewer-stage{-webkit-touch-callout:none}
.image-credit{font-family:Arial,Helvetica,sans-serif;font-size:9px;font-weight:400;line-height:1.5;letter-spacing:.09em;color:#6f8098}
.card-image-credit{position:absolute;left:12px;right:12px;bottom:7px;text-align:center;pointer-events:none}
.detail-image-credit{margin:6px 1px 0;text-align:right}
.detail-image-credit+.gallery-thumbs{margin-top:10px}
.viewer-image-credit{margin-left:auto;white-space:nowrap;font-size:10px}
@media(max-width:600px){.viewer-image-credit{flex-basis:100%;margin-left:0;text-align:center}}

/* Catalogue controls remain usable with combined filters and on narrow screens. */
.catalog-results{min-width:0;scroll-margin-top:22px}.catalog-results:focus{outline:none}
.results-toolbar{flex-wrap:wrap;align-items:flex-start;gap:16px}.results-toolbar>span{padding-top:7px;line-height:1.7}
.catalog-controls{display:flex;gap:16px;flex-wrap:wrap;min-width:0;max-width:100%}
.results-toolbar .catalog-controls label{display:flex;flex-direction:column;align-items:stretch;gap:6px;min-width:0;font-size:12px}
.results-toolbar .catalog-controls select{min-height:44px;max-width:100%;width:100%;border:1px solid #c6d4e7;background:#fff;border-radius:4px;color:#193b89;padding:8px;font:inherit}
.catalog-pagination{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin:20px 0}.catalog-pagination[hidden]{display:none}
.catalog-pagination button{min-width:44px;min-height:44px;padding:8px 10px;border:1px solid #c6d4e7;border-radius:4px;background:#fff;color:#2343a5;font:inherit;font-size:14px;cursor:pointer}
.catalog-pagination button[aria-current=page]{background:#2945ba;color:#fff;border-color:#2945ba;font-weight:700}
.catalog-pagination button:disabled{opacity:.45;cursor:default}.catalog-pagination button:hover:not(:disabled):not([aria-current]){background:#e9effa}
.catalog-pagination button:focus-visible,.clear-filters:focus-visible,.catalog-promotions a:focus-visible{outline:3px solid #486ecc;outline-offset:3px}
.page-gap{color:#6f8098;padding:0 2px}.extra-filters .clear-filters{font-size:12px;min-height:40px;justify-self:start;text-align:left}
.catalog-promotions{margin-top:25px;padding:18px 16px;background:#eef3fc;border:1px solid #c8d7f0;border-radius:6px;overflow-wrap:anywhere}
.catalog-promotions h3{font-size:18px;margin:0 0 14px}.catalog-promotions article+article{border-top:1px solid #c8d7f0;margin-top:16px;padding-top:16px}
.catalog-promotions article a{display:block}.catalog-promotions strong{display:block;font-size:14px;line-height:1.5}.catalog-promotions span,.catalog-promotions>p{display:block;font-size:12px;line-height:1.7;color:#5f7397;margin:8px 0}
.catalog-promotions b{display:block;font-size:12px;font-weight:600;margin:10px 0 0}.catalog-promotions>.text-link{font-size:12px;margin-top:18px}.promotion-card{scroll-margin-top:22px;overflow-wrap:anywhere}
@media(max-width:1000px){.results-toolbar .catalog-controls{width:100%}.results-toolbar .catalog-controls label:first-child{flex:1}}
@media(max-width:1000px){.filters .extra-filters{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:10px}.filters .extra-filters>label:not(.check-label){margin:0}.filters .extra-filters select{width:100%;max-width:none;min-height:44px}.filters .extra-filters .check-label,.filters .extra-filters .clear-filters{grid-column:1/-1}}
@media(max-width:600px){.results-toolbar{gap:12px}.catalog-controls{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.results-toolbar .catalog-controls label{font-size:12px}.catalog-pagination{gap:5px}.catalog-pagination button{min-width:38px;min-height:44px;padding:6px}.catalog-promotions{margin-top:18px;padding:15px}.catalog-promotions h3{font-size:17px}.extra-filters{margin-top:12px}.extra-filters select{min-height:44px}.main-nav{gap:10px}}

/* Quantity prices visible directly in catalogue, recommendation and promotion cards. */
.card-tier-prices{padding-top:15px;min-width:0}
.card-tier-title{font-size:12px;line-height:1.5;font-weight:600;color:#314d7d;margin:0 0 9px}
.card-tier-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(82px,1fr));gap:5px;margin:0}
.card-tier{min-width:0;padding:9px 5px;border:1px solid #d7e1ef;border-radius:4px;background:#f6f8fc;text-align:center}
.card-tier dt{font-size:11px;line-height:1.5;color:#62718c;overflow-wrap:anywhere}
.card-tier dd{margin:4px 0 0;font-size:14px;line-height:1.4;font-weight:700;color:#284783;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.card-tier.is-current{background:#e8efff;border-color:#839edc}
.card-tier.is-current dt,.card-tier.is-current dd{color:#2446aa}
.card-tier-note{font-size:11px;line-height:1.6;color:#64748e;margin:9px 0 0}
@media(max-width:600px){.card-tier-grid{grid-template-columns:repeat(auto-fit,minmax(78px,1fr))}.card-tier{padding:8px 4px}.card-tier-title{font-size:12px}.card-tier dd{font-size:14px}}
@media(max-width:600px){.product-grid,.catalog-products,.home-products{grid-template-columns:minmax(0,1fr)}}

/* The daily offer uses the same server prices as catalogue and checkout. */
.daily-discount[hidden]{display:none!important}
.daily-discount{display:flex;align-items:center;gap:24px;margin:22px auto;padding:24px 28px;max-width:1420px;background:#eef3fb;border:1px solid #bdd0ee;border-radius:8px;color:#1c3970}
.daily-discount-heading{flex:0 0 155px}.daily-discount-heading>p{font-size:11px;font-weight:700;letter-spacing:.12em}.daily-discount-heading>strong{display:block;font-size:44px;line-height:1.1;margin:8px 0}.daily-discount-heading>span{font-size:11px;line-height:1.5;display:block}
.daily-discount-image{flex:0 0 90px;height:100px;background:white;border-radius:4px}.daily-discount-image img{width:100%;height:100%;object-fit:contain}
.daily-discount-copy{flex:1;min-width:0}.daily-discount-copy h2{font-size:19px;line-height:1.4;margin:0 0 8px;overflow-wrap:anywhere}.daily-discount-copy>p{font-size:12px;line-height:1.65;color:#526b91}
.daily-discount-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 14px;margin-top:10px}.daily-discount-price del{font-size:14px;color:#6a7d9a}.daily-discount-price strong{font-size:25px}.daily-discount-price>span{font-size:11px}.daily-discount>.btn{flex-shrink:0;font-size:12px}
.daily-discount-label{font-size:11px;font-weight:650;color:#245a40;background:#e7f3eb;border-radius:3px;padding:6px 8px;margin-top:12px}
@media(max-width:1500px){.daily-discount{margin-inline:4%}}
@media(max-width:1000px){.daily-discount{flex-wrap:wrap;gap:18px}.daily-discount-heading{flex-basis:135px}.daily-discount-copy{flex-basis:calc(100% - 270px)}.daily-discount>.btn{margin-left:auto}}
@media(max-width:600px){.daily-discount{margin:16px 5%;padding:18px;gap:15px}.daily-discount-heading{flex:1}.daily-discount-image{flex-basis:80px;height:90px}.daily-discount-copy{flex-basis:100%}.daily-discount-copy h2{font-size:17px}.daily-discount>.btn{width:100%}.daily-discount-price>span{flex-basis:100%}}
/* Bot trap stays out of the visual layout and keyboard order. */
.checkout-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;}
/* Catalogue scope and return-to-shopping controls. */
.catalog-filter-scope{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 17px;margin-bottom:20px;border:1px solid #d5def1;background:#edf3fb;color:#203c70;font-size:13px;line-height:1.6}.catalog-filter-scope strong{font-size:14px}.catalog-filter-scope p{margin:4px 0 0;overflow-wrap:anywhere}.catalog-filter-scope button{flex-shrink:0;min-height:44px}.card-cart-price{margin:10px 0 0;font-size:12px;line-height:1.6;color:#244377}.card-cart-price strong{font-weight:650}.cart-continue-shopping{margin:16px 0;width:100%;flex-shrink:0;min-height:44px}.continue-shopping{display:inline-flex;align-items:center;min-height:44px;margin:0 0 20px}.card-tier-note{line-height:1.6}.cart-drawer .cart-continue-shopping{background:#f3f6fc;color:#203c70;border-color:#cdd9ef}
@media(max-width:700px){.catalog-filter-scope{align-items:flex-start;flex-direction:column;gap:7px;padding:12px 14px}.catalog-filter-scope button{align-self:flex-start}.card-cart-price{font-size:12px}.cart-continue-shopping{margin:12px 0}}
.product-card .search-match{font-weight:900}
