.sw-commerce-body{margin:0;background:var(--sw-paper);color:var(--sw-dark);font:15px/1.7 Montserrat,Arial,sans-serif}.sw-commerce-brand *{box-sizing:border-box}.sw-commerce-brand a{color:var(--sw-red)}.sw-commerce-brand h1,.sw-commerce-brand h2,.sw-commerce-brand h3{font-family:var(--sw-display);font-weight:400;letter-spacing:-.035em;line-height:1.08;color:var(--sw-red)}.sw-commerce-brand .sw-wordmark{font:32px/.9 var(--sw-display);display:flex;flex-direction:column;align-items:center;text-decoration:none;color:var(--sw-red)}.sw-commerce-main{max-width:1250px;margin:55px auto 80px;padding:0 35px;min-height:55vh}.sw-commerce-heading{margin-bottom:40px;max-width:900px}.sw-commerce-heading h1{font-size:clamp(45px,5vw,76px);margin:12px 0 22px}.sw-commerce-heading p{max-width:650px;font-size:14px}.sw-commerce-brand .woocommerce a.button,.sw-commerce-brand .woocommerce button.button,.sw-commerce-brand .woocommerce input.button,.sw-commerce-brand .wp-element-button,.sw-commerce-brand .wc-block-components-button,.sw-order-access .button{background:var(--sw-red)!important;color:#fff8f0!important;border:1px solid var(--sw-red)!important;border-radius:50px!important;padding:16px 25px!important;font:600 13px/1.4 Montserrat,Arial,sans-serif!important;box-shadow:0 4px 0 var(--sw-dark)!important;min-height:48px;text-decoration:none;display:inline-block}.sw-commerce-brand .woocommerce button:disabled{opacity:.5}.sw-commerce-brand .woocommerce input.input-text,.sw-commerce-brand .woocommerce select,.sw-commerce-brand .woocommerce textarea,.sw-commerce-brand .wc-block-components-text-input input{background:#fff9f1!important;border:1px solid #77222b44!important;border-radius:12px!important;min-height:48px;padding:12px 14px!important;color:var(--sw-dark);font-size:16px}.sw-commerce-brand .woocommerce label{font-size:13px}.sw-commerce-brand .woocommerce table.shop_table{border-color:#77222b33;border-radius:20px;background:#fff8f055;overflow:hidden}.sw-commerce-brand .woocommerce table.shop_table td,.sw-commerce-brand .woocommerce table.shop_table th{padding:18px 16px;border-color:#77222b22}.sw-commerce-brand .woocommerce .quantity .qty{width:75px}.sw-commerce-brand .woocommerce .coupon #coupon_code{width:180px}.sw-commerce-brand .woocommerce .cart_totals{border:1px solid #77222b33;border-radius:22px;padding:25px;margin-top:20px;background:#fff8f04d}.sw-commerce-brand .woocommerce #payment{background:#f1b5c633;border-radius:22px}.sw-commerce-brand .woocommerce .woocommerce-checkout-review-order-table{background:#fff8f0}.sw-commerce-brand .woocommerce .col2-set{margin-bottom:30px}.sw-commerce-brand .woocommerce h2{font-size:35px}.sw-commerce-brand .woocommerce h3{font-size:29px}.sw-commerce-brand .woocommerce-info,.sw-commerce-brand .woocommerce-message{border-top-color:var(--sw-red);background:#fff8f0;color:var(--sw-dark);border-radius:12px;font-size:14px}.sw-commerce-brand .woocommerce-info:before,.sw-commerce-brand .woocommerce-message:before{color:var(--sw-red)}.sw-commerce-brand .woocommerce ul.products li.product{border:1px solid #77222b22;border-radius:25px;padding:20px;background:#fff8f055}.sw-commerce-brand .woocommerce ul.products li.product h2{font-size:30px}.sw-commerce-brand .woocommerce ul.products li.product .price,.sw-commerce-brand .woocommerce div.product p.price{color:var(--sw-red)}.sw-commerce-brand .woocommerce .woocommerce-MyAccount-navigation ul{list-style:none;padding:0}.sw-commerce-brand .woocommerce .woocommerce-MyAccount-navigation a{display:block;padding:12px;border-bottom:1px solid #77222b33;text-decoration:none}.sw-commerce-brand .woocommerce .woocommerce-MyAccount-navigation .is-active a{background:var(--sw-pink);border-radius:12px;font-weight:600}.sw-order-access{border:1px solid #ce103066;background:#fff8f0;padding:30px;border-radius:24px;margin:35px 0;overflow-wrap:anywhere}.sw-order-access h2{font-size:37px}.sw-order-code{border-top:1px dashed #ce103055;padding:20px 0;display:flex;flex-direction:column;gap:12px}.sw-order-code code{font-size:16px;letter-spacing:.6px;color:var(--sw-red);white-space:normal;overflow-wrap:anywhere}.sw-order-code span{font-size:13px}.sw-order-access p{line-height:1.9}.sw-order-access p>a{margin:8px 15px 8px 0}.sw-commerce-footer{border-top:1px solid #77222b33;margin:0 auto;padding:25px 35px 40px;max-width:1250px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:12px}.sw-commerce-brand .woocommerce div.product .woocommerce-tabs ul.tabs li{border-radius:20px 20px 0 0;background:#fff8f0}.sw-commerce-brand .woocommerce div.product .product_title{font-size:40px}.sw-commerce-brand .woocommerce .star-rating{color:var(--sw-red)}@media(max-width:700px){.sw-commerce-main{padding:0 20px;margin:35px auto 55px}.sw-commerce-heading{margin-bottom:30px}.sw-commerce-heading h1{font-size:46px}.sw-commerce-brand .sw-store-header nav{flex-wrap:wrap;gap:10px 20px;font-size:12px}.sw-commerce-brand .woocommerce table.shop_table td,.sw-commerce-brand .woocommerce table.shop_table th{padding:13px 12px}.sw-commerce-brand .woocommerce .coupon #coupon_code{width:100%}.sw-commerce-brand .woocommerce .coupon{display:flex;flex-direction:column;gap:12px}.sw-commerce-brand .woocommerce .col2-set .col-1,.sw-commerce-brand .woocommerce .col2-set .col-2,.sw-commerce-brand .woocommerce .woocommerce-MyAccount-navigation,.sw-commerce-brand .woocommerce .woocommerce-MyAccount-content{float:none;width:100%;margin-bottom:25px}.sw-commerce-brand .woocommerce .form-row-first,.sw-commerce-brand .woocommerce .form-row-last{float:none;width:100%}.sw-order-access{padding:23px}.sw-order-access h2{font-size:33px}.sw-order-code code{font-size:14px}.sw-commerce-footer{padding:25px 20px}.sw-commerce-brand .woocommerce ul.products li.product{width:100%!important;float:none!important;margin-right:0}.sw-commerce-brand .woocommerce .cart_totals{padding:20px}.sw-commerce-brand .woocommerce-order-overview{display:flex;flex-wrap:wrap;gap:15px;padding:0}.sw-commerce-brand .woocommerce-order-overview li{margin-bottom:15px}}
.sw-order-code code{user-select:all}.sw-order-code .sw-copy-access{align-self:flex-start;font-size:11px!important;min-height:42px;padding:11px 18px!important}
.sw-commerce-brand .sw-store-header .sw-wordmark{display:inline-flex;flex-direction:column;align-items:center;justify-content:center}.sw-commerce-brand .woocommerce div.product:after{content:'';display:block;clear:both}.sw-art-yes{border:1px solid currentColor;border-radius:40px;padding:12px 20px;font-size:10px}.sw-product-intro{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:9px;font-weight:700;letter-spacing:1px}.sw-product-promise{font-family:var(--sw-hand);font-size:32px;line-height:1.2;color:var(--sw-red);margin:18px 0}.sw-product-demo a{display:inline-flex;align-items:center;min-height:46px;font-weight:600;text-underline-offset:6px}.sw-product-micro{font-size:11px}.sw-product-guide,.sw-product-faq{clear:both;padding:55px 0;border-top:1px solid #77222b33}.sw-commerce-brand .sw-product-guide h2,.sw-commerce-brand .sw-product-faq h2{font-size:clamp(36px,4vw,60px);margin:15px 0 35px}.sw-product-steps,.sw-product-perks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.sw-product-steps article>span{font:46px var(--sw-hand);color:var(--sw-red)}.sw-product-steps h3,.sw-product-perks h3{font-size:29px!important}.sw-product-steps p,.sw-product-perks p{font-size:13px}.sw-product-perks{padding:38px;border-radius:30px;background:var(--sw-dark);color:var(--sw-paper);margin-bottom:55px}.sw-commerce-brand .sw-product-perks h3{color:var(--sw-paper)}.sw-product-perks svg{width:75px;height:75px;color:var(--sw-pink)}.sw-product-faq details{border-bottom:1px solid #77222b33;padding:20px 0}.sw-product-faq summary{cursor:pointer;min-height:30px;font-weight:600;color:var(--sw-red)}.sw-product-faq details p{max-width:850px;font-size:14px;padding:12px 0}.sw-shop-categories{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 30px}.sw-shop-categories a{display:inline-flex;align-items:center;min-height:44px;border:1px solid #77222b44;padding:8px 17px;border-radius:40px;text-decoration:none;font-size:12px}.sw-shop-categories a:hover{background:var(--sw-pink)}.sw-checkout-steps{display:flex;gap:15px 30px;flex-wrap:wrap;font-size:12px;margin:25px 0}.sw-checkout-steps strong{color:var(--sw-red)}.sw-commerce-brand .woocommerce .checkout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:0 40px;align-items:start}.sw-commerce-brand .woocommerce .checkout #customer_details{grid-column:1;grid-row:1/4;width:100%}.sw-commerce-brand .woocommerce .checkout #customer_details .col-1,.sw-commerce-brand .woocommerce .checkout #customer_details .col-2{float:none;width:100%}.sw-commerce-brand .woocommerce .checkout #order_review_heading,.sw-commerce-brand .woocommerce .checkout #order_review{grid-column:2}.sw-cart-extras{clear:both;padding-top:55px}.sw-cart-extras h2{font-size:43px!important}.sw-extra-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.sw-extra-grid article{position:relative;background:#fff8f0;border:1px solid #77222b22;border-radius:24px;padding:20px}.sw-extra-grid img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;border-radius:15px}.sw-extra-grid a{text-decoration:none}.sw-extra-grid h3{font-size:25px!important}.sw-extra-grid .button{font-size:11px!important}.sw-commerce-brand .woocommerce span.onsale{background:var(--sw-pink);color:var(--sw-dark)}.sw-commerce-brand .woocommerce ul.products li.product .sw-sale-badge{position:absolute;top:28px;right:28px}.sw-commerce-brand .woocommerce div.product p.price{font-size:25px}.sw-commerce-brand .woocommerce div.product p.price ins{text-decoration:none;font-weight:700}.sw-commerce-brand .woocommerce div.product p.price del{font-size:18px;opacity:.5}.sw-commerce-brand .woocommerce div.product .woocommerce-product-details__short-description{font-size:16px}.sw-commerce-brand .woocommerce div.product form.cart{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.sw-commerce-brand .woocommerce form.checkout .form-row{width:100%;float:none}.sw-commerce-brand .woocommerce div.product .woocommerce-tabs .panel{font-size:15px;max-width:900px}.sw-commerce-brand .woocommerce div.product .woocommerce-tabs .panel li{margin:10px 0}.sw-commerce-brand .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:25px}.sw-commerce-brand .woocommerce ul.products li.product .price del{opacity:.5}.sw-commerce-brand .woocommerce ul.products li.product .price ins{text-decoration:none;font-weight:700}
@media(max-width:850px){.sw-commerce-brand .woocommerce .checkout{display:block}.sw-product-steps,.sw-product-perks{gap:22px}.sw-extra-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.sw-product-steps,.sw-product-perks{grid-template-columns:1fr}.sw-product-guide,.sw-product-faq{padding:35px 0}.sw-product-perks{padding:26px;margin-bottom:35px}.sw-product-steps article{border-top:1px solid #77222b22;padding-top:15px}.sw-commerce-brand .woocommerce div.product div.images,.sw-commerce-brand .woocommerce div.product div.summary{width:100%;float:none}.sw-product-faq summary{font-size:14px;line-height:1.6}.sw-extra-grid{gap:12px}.sw-extra-grid article{padding:14px}.sw-extra-grid h3{font-size:21px!important}.sw-extra-grid .button{width:100%;text-align:center;padding:12px!important}.sw-checkout-steps{gap:12px;font-size:10px}.sw-cart-extras h2{font-size:34px!important}}.sw-commerce-brand ul.products .sw-art-yes{font-size:8px;padding:9px 13px}
/* Invitation products use an explicit layout and gallery, independent of theme gallery scripts. */
.sw-product-breadcrumb{display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-size:11px;margin:0 0 28px;color:var(--sw-dark)}.sw-product-breadcrumb a{text-decoration:none}.sw-product-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:55px;align-items:start;margin-bottom:60px}.sw-product-gallery{position:relative;min-width:0}.sw-product-gallery>.sw-sale-badge{position:absolute;right:18px;top:18px;z-index:3;padding:10px 16px;font-size:14px}.sw-product-main-image{background:#fff8f0;border:1px solid #77222b22;border-radius:28px;overflow:hidden;aspect-ratio:1;display:flex;align-items:center;justify-content:center}.sw-product-main-image>img{display:block;width:100%;height:100%;object-fit:contain}.sw-product-image-note{font-size:11px;text-align:center;margin:15px 0;color:var(--sw-dark)}.sw-product-thumbnails{display:flex;gap:10px;margin-top:15px;overflow-x:auto;padding-bottom:5px}.sw-product-thumbnails button{background:#fff8f0;border:1px solid #77222b33;border-radius:13px;padding:5px;width:72px;height:78px;flex-shrink:0;cursor:pointer}.sw-product-thumbnails button[aria-pressed=true]{border:2px solid var(--sw-red)}.sw-product-thumbnails img{width:100%;height:100%;object-fit:contain;border-radius:8px}.sw-product-purchase{min-width:0}.sw-product-type{font-size:9px;letter-spacing:1.4px;font-weight:700;color:var(--sw-red);margin:4px 0 15px}.sw-commerce-brand .sw-product-purchase h1{font-size:clamp(46px,5vw,68px);line-height:1.02;margin:0 0 12px;overflow-wrap:anywhere}.sw-product-subtitle{font:30px/1.15 var(--sw-hand);color:var(--sw-red);margin:0 0 23px}.sw-product-price{font-size:29px;color:var(--sw-red);font-weight:700;margin:0 0 20px}.sw-product-price del{font-size:19px;opacity:.5;margin-right:12px;font-weight:400}.sw-product-price ins{text-decoration:none}.sw-product-short-description{font-size:14px;line-height:1.8;max-width:480px}.sw-product-highlights{padding:0!important;margin:23px 0!important;list-style:none!important;display:grid;gap:13px}.sw-product-highlights li{display:flex;align-items:center;gap:12px;font-size:12px;line-height:1.6}.sw-product-highlights svg{width:26px;height:28px;flex:0 0 26px;color:var(--sw-red)}.sw-product-buy-form form.cart{display:flex;align-items:stretch;gap:12px;margin:25px 0 15px!important;flex-wrap:wrap}.sw-product-buy-form .quantity{margin:0!important}.sw-product-buy-form input.qty{width:70px!important;height:54px!important;border:1px solid #77222b44!important;border-radius:13px!important;background:#fff9f1!important;color:var(--sw-dark);font-size:16px}.sw-commerce-brand .sw-product-buy-form button.single_add_to_cart_button{flex:1;min-width:150px;min-height:54px!important;font-size:15px!important;border-radius:40px!important;background:var(--sw-red)!important;color:#fff8f0!important;box-shadow:0 4px 0 var(--sw-dark)!important;padding:15px 25px!important;border:0!important}.sw-product-demo-link{display:flex;align-items:center;justify-content:center;min-height:50px;padding:12px 20px;border:1px solid var(--sw-red);border-radius:40px;text-decoration:none;font-size:12px;font-weight:600;margin:14px 0 20px}.sw-product-demo-link:hover{background:var(--sw-pink)}.sw-product-delivery{font-size:11px;line-height:1.8;color:var(--sw-dark);border-top:1px solid #77222b22;padding-top:18px}.sw-product-after-payment{font-size:11px;line-height:1.8;margin-bottom:0}.sw-product-unavailable{padding:15px;background:var(--sw-pink);border-radius:14px}.sw-product-description{border-top:1px solid #77222b33;padding:40px 0 50px;font-size:14px;line-height:1.9}.sw-commerce-brand .sw-product-description>h2{font-size:42px}.sw-product-description>h2:not(:first-child){font-size:30px}.sw-product-description ul{padding-left:21px;max-width:850px}.sw-product-description li{margin:8px 0}.sw-invitation-product .sw-product-guide h2,.sw-invitation-product .sw-product-faq h2{font-size:clamp(34px,4vw,50px)}.sw-invitation-product .sw-product-perks{margin-top:15px}.sw-commerce-brand .sw-header-actions .sw-bubble{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:46px;border:1px solid var(--sw-red);border-radius:40px;background:var(--sw-red);color:#fff8f0;text-decoration:none;padding:12px 22px;font:600 12px/1.4 var(--sw-body);box-shadow:0 3px 0 var(--sw-dark);transition:transform .2s}.sw-commerce-brand .sw-header-actions .sw-bubble:hover{transform:translateY(-2px)}
@media(max-width:900px){.sw-product-hero{gap:30px}}
@media(max-width:700px){.sw-product-hero{grid-template-columns:1fr;gap:22px;margin-bottom:35px}.sw-product-breadcrumb{font-size:10px;margin-bottom:20px}.sw-commerce-brand .sw-product-purchase h1{font-size:48px}.sw-product-main-image{max-width:440px;margin:auto;border-radius:23px}.sw-product-gallery>.sw-sale-badge{top:14px;right:14px;font-size:12px}.sw-product-purchase{padding-top:5px}.sw-product-subtitle{font-size:29px}.sw-product-highlights{gap:11px}.sw-product-buy-form form.cart{margin-top:20px!important}.sw-product-description{padding:30px 0}.sw-commerce-brand .sw-header-actions .sw-bubble{font-size:10px;padding:10px 16px;min-height:42px;gap:8px}.sw-product-image-note{font-size:10px}}
@media(prefers-reduced-motion:reduce){.sw-commerce-brand .sw-header-actions .sw-bubble{transition:none}.sw-commerce-brand .sw-header-actions .sw-bubble:hover{transform:none}}.sw-product-gallery .sw-product-main-image{max-width:520px;margin:0 auto}.sw-product-hero{gap:42px}.sw-product-image-note{max-width:520px;margin:14px auto 0}.sw-commerce-brand .sw-product-purchase h1{font-size:clamp(44px,4.8vw,62px)}.sw-product-purchase .sw-product-short-description p{margin:0 0 15px}.sw-product-highlights{margin:18px 0!important;gap:10px}.sw-product-subtitle{margin-bottom:18px}.sw-product-price{margin-bottom:15px}
@media(max-width:900px) and (min-width:701px){}
@media(max-width:700px){.sw-product-hero{gap:24px}.sw-product-purchase .sw-product-short-description{font-size:14px}}
@media(max-width:360px){}
.sw-invitation-preview{display:block;width:100%;max-width:450px;margin:0 auto;border:1px solid #77222b22;border-radius:26px;overflow:hidden;line-height:0}.sw-invitation-preview>.sw-invitation-svg{display:block;width:100%;height:auto;max-width:100%;margin:0}.sw-product-gallery .sw-invitation-preview{margin:0 auto}.sw-commerce-brand ul.products .sw-invitation-preview{max-height:300px}.sw-commerce-brand ul.products .sw-invitation-preview>.sw-invitation-svg{height:280px;width:100%}@media(max-width:700px){.sw-invitation-preview{max-width:400px;border-radius:23px}}
/* Colour-separated sections below the product hero. */
.sw-invitation-product>.sw-product-description,.sw-invitation-product>.sw-product-guide,.sw-invitation-product>.sw-product-faq{border:0;border-radius:32px;padding:42px;margin:0 0 28px;box-shadow:0 6px 0 #77222b08}.sw-invitation-product>.sw-product-description{background:#fff9f2;border:1px solid #77222b12}.sw-commerce-brand .sw-invitation-product>.sw-product-description>h2:first-child{margin-top:0;margin-bottom:26px}.sw-invitation-product>.sw-product-description>p:last-child{margin-bottom:0}.sw-invitation-product>.sw-product-guide{background:var(--sw-pink);color:var(--sw-dark)}.sw-invitation-product>.sw-product-guide .sw-eyebrow{margin-top:0}.sw-invitation-product>.sw-product-guide h2{margin-top:14px;margin-bottom:30px}.sw-invitation-product>.sw-product-guide .sw-product-steps{gap:20px}.sw-invitation-product>.sw-product-guide .sw-product-steps article{background:#fff9f2c9;border:1px solid #fff9f288;border-radius:22px;padding:24px 22px}.sw-invitation-product>.sw-product-guide .sw-product-steps article>span{font-size:43px}.sw-invitation-product>.sw-product-guide .sw-product-steps article>h3{margin:12px 0 14px}.sw-invitation-product>.sw-product-guide .sw-product-steps article>p{margin:0}.sw-invitation-product>.sw-product-perks{background:var(--sw-dark);border-radius:32px;margin:0 0 28px;padding:38px 42px}.sw-invitation-product>.sw-product-perks p{margin-bottom:0}.sw-invitation-product>.sw-product-faq{background:#fff9f2;border:1px solid #77222b12}.sw-invitation-product>.sw-product-faq>.sw-eyebrow{margin-top:0}.sw-invitation-product>.sw-product-faq details{border:1px solid #ce10302b;background:#f1b5c61a;border-radius:16px;padding:17px 20px;margin:11px 0}.sw-invitation-product>.sw-product-faq details[open]{background:#f1b5c644}.sw-invitation-product>.sw-product-faq details p{margin-bottom:0;padding-bottom:0}.sw-invitation-product>.sw-product-faq>p:last-child{display:flex;gap:15px;flex-wrap:wrap;margin:25px 0 0;font-size:11px}.sw-invitation-product>.sw-product-faq>p:last-child:empty{display:none}
@media(max-width:900px){.sw-invitation-product>.sw-product-description,.sw-invitation-product>.sw-product-guide,.sw-invitation-product>.sw-product-faq{padding:32px}.sw-invitation-product>.sw-product-guide .sw-product-steps{gap:14px}.sw-invitation-product>.sw-product-guide .sw-product-steps article{padding:20px 17px}.sw-invitation-product>.sw-product-perks{padding:32px}}
@media(max-width:700px){.sw-invitation-product>.sw-product-description,.sw-invitation-product>.sw-product-guide,.sw-invitation-product>.sw-product-faq{padding:26px 22px;border-radius:25px;margin-bottom:22px}.sw-invitation-product>.sw-product-perks{padding:28px 24px;border-radius:25px;margin-bottom:22px}.sw-invitation-product>.sw-product-guide .sw-product-steps article{padding:23px 20px;border-radius:18px}.sw-invitation-product>.sw-product-faq details{padding:16px;margin:10px 0}.sw-commerce-brand .sw-invitation-product>.sw-product-description>h2:first-child{font-size:34px;margin-bottom:22px}.sw-invitation-product>.sw-product-guide h2,.sw-invitation-product>.sw-product-faq h2{font-size:35px;margin-bottom:25px}.sw-invitation-product>.sw-product-description ul{padding-left:18px}}

/* Catalogue: full-width grid, generous cards and a single filter bar. */
.sw-catalog .sw-commerce-main{max-width:1440px;padding:0 clamp(20px,4vw,64px);margin:60px auto 80px}
.sw-catalog .sw-commerce-heading{max-width:none;margin-bottom:36px}
.sw-catalog .sw-commerce-heading h1{font-size:clamp(38px,4.5vw,64px);max-width:1000px}
.sw-catalog .sw-commerce-heading .sw-eyebrow{font-size:10px;letter-spacing:2px}
.sw-catalog .woocommerce ul.products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;width:100%;padding:0;margin:22px 0 40px;clear:both}
.sw-catalog .woocommerce ul.products:before,.sw-catalog .woocommerce ul.products:after{display:none!important}
.sw-catalog .woocommerce-result-count{float:none;font-size:12px;margin:22px 0 0}
.sw-catalog-filters{display:grid;grid-template-columns:1.4fr 1fr .8fr 1.2fr;gap:20px;padding:26px;background:#fff8f0;border:1px solid #77222b22;border-radius:24px;margin-bottom:30px}
.sw-catalog-filters label{display:flex;flex-direction:column;min-width:0;gap:8px;font-size:11px;font-weight:600}
.sw-catalog-filters input:not([type=checkbox]),.sw-catalog-filters select{width:100%;min-width:0;min-height:48px;padding:12px;border:1px solid #77222b33;border-radius:12px;background:#fffdf8;color:var(--sw-dark);font:13px Montserrat,Arial,sans-serif}
.sw-catalog-filters .sw-filter-actions{grid-column:1/-1;display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.sw-catalog-filters .sw-filter-sale{flex-direction:row;align-items:center;gap:9px;margin-right:auto;min-height:44px}
.sw-catalog-filters input[type=checkbox]{width:18px;height:18px;accent-color:var(--sw-red)}
.sw-catalog-filters button{min-height:46px;padding:12px 24px;border:0;border-radius:50px;background:var(--sw-red);color:#fff8f0;font:600 12px Montserrat,Arial,sans-serif;cursor:pointer}
.sw-catalog-filters .sw-filter-actions>a{font-size:11px;text-underline-offset:4px;padding:10px 0}
.sw-catalog-filters :focus-visible{outline:2px solid var(--sw-red);outline-offset:3px}
@media(max-width:1000px){.sw-catalog .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.sw-catalog-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.sw-catalog .sw-commerce-main{margin-top:32px}.sw-catalog .woocommerce ul.products{grid-template-columns:minmax(0,1fr);gap:26px}.sw-catalog-filters{padding:20px;gap:16px 12px}.sw-catalog-filters .sw-filter-search{grid-column:1/-1}.sw-catalog-filters label[for=sw-catalog-sort]{grid-column:1/-1}.sw-catalog-filters .sw-filter-actions{gap:14px}.sw-catalog-filters .sw-filter-sale{width:100%}.sw-catalog-filters button{flex:1}}

/* WooCommerce customer account: compact menu and clear content cards. */
.sw-customer-account .sw-commerce-main{max-width:1400px;margin:48px auto 60px;padding:0 clamp(20px,4vw,64px)}
.sw-customer-account .sw-commerce-heading{margin-bottom:32px;max-width:none}
.sw-customer-account .sw-commerce-heading h1{font-size:clamp(36px,4vw,58px);line-height:1.1;letter-spacing:-1.5px;max-width:900px;margin:14px 0 0}
.sw-customer-account .sw-commerce-heading .sw-eyebrow{font-size:9px;letter-spacing:1.8px}
.sw-customer-account .sw-woo-content>.woocommerce:has(.woocommerce-MyAccount-navigation){display:grid;grid-template-columns:225px minmax(0,1fr);gap:32px;align-items:start}
.sw-customer-account .sw-woo-content>.woocommerce:before,.sw-customer-account .sw-woo-content>.woocommerce:after{display:none}
.sw-customer-account .woocommerce-MyAccount-navigation{float:none!important;width:100%!important;background:#fff8f0;border:1px solid #77222b20;border-radius:24px;padding:12px;position:sticky;top:100px;margin:0!important}
.sw-customer-account .woocommerce .woocommerce-MyAccount-navigation ul{margin:0;padding:0;list-style:none}
.sw-customer-account .woocommerce-MyAccount-navigation li{margin:3px 0;padding:0;list-style:none}
.sw-customer-account .woocommerce .woocommerce-MyAccount-navigation a{display:flex;align-items:center;min-height:46px;padding:12px 16px;border:0;border-radius:14px;font-size:12px;line-height:1.5;color:var(--sw-dark);text-decoration:none;transition:background .18s}
.sw-customer-account .woocommerce .woocommerce-MyAccount-navigation .is-active a{background:var(--sw-dark);color:#fff8f0;font-weight:600}
.sw-customer-account .woocommerce-MyAccount-navigation a:hover{background:#f1b5c633}
.sw-customer-account .woocommerce-MyAccount-navigation-link--customer-logout{border-top:1px solid #77222b20;margin-top:10px!important;padding-top:8px!important}
.sw-customer-account .woocommerce-MyAccount-content{float:none!important;width:100%!important;min-width:0;margin:0!important;font-size:13px;line-height:1.8}
.sw-customer-account .sw-account-greeting{margin:0 0 26px;padding:4px 0}
.sw-customer-account .sw-account-label{font-size:9px;letter-spacing:1.4px;margin:0 0 12px}
.sw-customer-account .woocommerce .sw-account-greeting h2{font-size:36px;margin:0 0 14px;color:var(--sw-dark);overflow-wrap:anywhere}
.sw-customer-account .sw-account-email{font-size:11px;margin:0;overflow-wrap:anywhere}
.sw-customer-account .sw-account-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.sw-customer-account .sw-account-shortcut{display:flex;flex-direction:column;min-width:0;border:1px solid #77222b20;border-radius:24px;background:#fff8f0;padding:28px;text-decoration:none;color:var(--sw-dark);transition:background .2s,border-color .2s,box-shadow .2s}
.sw-customer-account .sw-account-shortcut:first-child{background:#f1b5c640}
.sw-customer-account .sw-account-shortcut:hover{border-color:#77222b66;box-shadow:0 8px 24px #77222b0c;background:#fffaf5}
.sw-customer-account .sw-account-shortcut-icon{width:50px;height:50px;display:block;color:var(--sw-red);margin-bottom:20px}
.sw-customer-account .sw-account-shortcut-icon svg{width:100%;height:100%}
.sw-customer-account .woocommerce .sw-account-shortcut h3{font-size:28px;line-height:1.12;letter-spacing:-.5px;margin:0 0 14px;color:var(--sw-dark)}
.sw-customer-account .sw-account-shortcut p{font-size:11px;line-height:1.85;margin:0 0 20px}
.sw-customer-account .sw-account-shortcut-link{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;font-weight:600;margin-top:auto;min-height:32px;color:var(--sw-red)}
.sw-customer-account .sw-account-activation{display:flex;justify-content:space-between;align-items:center;gap:24px;border:1px dashed #77222b44;border-radius:22px;padding:24px;margin-top:24px}
.sw-customer-account .woocommerce .sw-account-activation h3{font-size:25px;margin:0 0 9px;color:var(--sw-dark)}
.sw-customer-account .sw-account-activation p{font-size:11px;margin:0}
.sw-customer-account .sw-account-activation>a{font-size:11px;flex-shrink:0;padding:12px 0;min-height:44px;text-underline-offset:4px}
.sw-customer-account .woocommerce-MyAccount-content form,.sw-customer-account .woocommerce form.login,.sw-customer-account .woocommerce form.register{border:1px solid #77222b20;border-radius:24px;background:#fff8f0;padding:28px;margin-top:0}
.sw-customer-account .woocommerce-MyAccount-content form .form-row{margin-bottom:18px;padding:0}
.sw-customer-account .woocommerce-MyAccount-content fieldset{border:1px solid #77222b22;border-radius:18px;margin:28px 0;padding:22px;min-width:0}
.sw-customer-account .woocommerce-MyAccount-content legend{font-size:13px;padding:0 10px}
.sw-customer-account .woocommerce-MyAccount-content .woocommerce-Address{background:#fff8f0;border:1px solid #77222b20;border-radius:22px;padding:24px}
.sw-customer-account .woocommerce-MyAccount-content .woocommerce-Address-title h2{font-size:29px;margin-top:0}
.sw-customer-account .woocommerce-MyAccount-content address{font-size:12px;line-height:1.9;overflow-wrap:anywhere}
.sw-customer-account .woocommerce-MyAccount-content table{display:block;max-width:100%;overflow-x:auto}
.sw-customer-account .woocommerce-MyAccount-content .woocommerce-orders-table td,.sw-customer-account .woocommerce-MyAccount-content .woocommerce-orders-table th{font-size:11px;padding:14px 12px}
.sw-customer-account .sw-woo-content>.woocommerce>.woocommerce-notices-wrapper{grid-column:1/-1}
.sw-customer-account .sw-woo-content>.woocommerce>#customer_login,.sw-customer-account .sw-woo-content>.woocommerce>form.login,.sw-customer-account .sw-woo-content>.woocommerce>form.lost_reset_password{grid-column:1/-1;width:100%}
.sw-customer-account a:focus-visible{outline:2px solid var(--sw-red);outline-offset:4px}
@media(max-width:1000px){.sw-customer-account .sw-woo-content>.woocommerce:has(.woocommerce-MyAccount-navigation){grid-template-columns:190px minmax(0,1fr);gap:24px}.sw-customer-account .sw-account-shortcut{padding:23px}.sw-customer-account .sw-account-activation{align-items:flex-start;flex-direction:column;gap:10px}}
@media(max-width:760px){.sw-customer-account .sw-commerce-main{margin-top:32px}.sw-customer-account .sw-woo-content>.woocommerce:has(.woocommerce-MyAccount-navigation){grid-template-columns:minmax(0,1fr);gap:28px}.sw-customer-account .woocommerce-MyAccount-navigation{position:static;padding:10px}.sw-customer-account .woocommerce .woocommerce-MyAccount-navigation ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.sw-customer-account .woocommerce-MyAccount-navigation li{margin:0}.sw-customer-account .woocommerce-MyAccount-navigation-link--customer-logout{border:0;margin-top:0!important;padding-top:0!important}.sw-customer-account .woocommerce .woocommerce-MyAccount-navigation a{font-size:11px;padding:12px;min-height:46px}.sw-customer-account .sw-account-shortcuts{gap:16px}.sw-customer-account .woocommerce .sw-account-greeting h2{font-size:32px}.sw-customer-account .woocommerce-MyAccount-content .woocommerce-Address{width:100%;float:none;margin-bottom:20px}}
@media(max-width:500px){.sw-customer-account .sw-account-shortcuts{grid-template-columns:minmax(0,1fr)}.sw-customer-account .sw-account-shortcut{padding:24px}.sw-customer-account .sw-account-shortcut-icon{width:43px;height:43px;margin-bottom:17px}.sw-customer-account .woocommerce .sw-account-shortcut h3{font-size:30px}.sw-customer-account .sw-commerce-heading h1{font-size:39px}.sw-customer-account .woocommerce-MyAccount-content form{padding:22px}.sw-customer-account .woocommerce-MyAccount-content fieldset{padding:16px}.sw-customer-account .sw-account-activation{padding:22px}}
@media(prefers-reduced-motion:reduce){.sw-customer-account .sw-account-shortcut,.sw-customer-account .woocommerce-MyAccount-navigation a{transition:none}}


/* Layout only: invitation cards do not use WooCommerce's .product class.
   Their entire presentation comes from the shared home card rules. */
.sw-catalog .sw-commerce-main{max-width:1460px;padding-left:clamp(24px,5.5vw,88px);padding-right:clamp(24px,5.5vw,88px)}
.sw-catalog .woocommerce ul.products{gap:25px;padding:5px 3px 25px}
.sw-catalog .woocommerce ul.products>li.sw-shop-design{list-style:none;float:none;width:auto;min-width:0;margin:0;padding:0;border:0;background:none}
.sw-catalog .sw-shop-design>.sw-design-card{width:100%;min-width:0;max-width:100%;flex-basis:auto}
@media(max-width:1000px){.sw-catalog .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.sw-catalog .sw-commerce-main{padding-left:24px;padding-right:24px}.sw-catalog .woocommerce ul.products{gap:18px;grid-template-columns:minmax(0,1fr)}.sw-catalog .sw-shop-design>.sw-design-card{width:100%;max-width:100%;min-width:0;flex-basis:auto}}

/* Product details heading and full-width pink setup section. */
.sw-commerce-brand .sw-invitation-product>.sw-product-description>h2.sw-product-details-title{font-family:var(--sw-hand);font-size:clamp(40px,5vw,64px);font-weight:400;line-height:1.15;letter-spacing:0;margin-top:0;margin-bottom:26px}
.sw-invitation-product>.sw-product-guide{border:0;border-radius:0;background:var(--sw-pink);box-shadow:0 0 0 100vmax var(--sw-pink);clip-path:inset(0 -100vmax);padding-top:64px;padding-bottom:64px;margin-top:40px;margin-bottom:40px}
@media(max-width:900px){.sw-invitation-product>.sw-product-guide{padding-top:48px;padding-bottom:48px;border-radius:0}}
@media(max-width:700px){.sw-commerce-brand .sw-invitation-product>.sw-product-description>h2.sw-product-details-title{font-size:42px;line-height:1.15}.sw-invitation-product>.sw-product-guide{padding-top:40px;padding-bottom:40px;margin-top:30px;margin-bottom:30px;border-radius:0}}

/* Closing benefits strip follows the unchanged FAQ section. */
.sw-invitation-product>.sw-product-perks{background:var(--sw-dark);color:#fff8f0;border:0;border-radius:0;box-shadow:0 0 0 100vmax var(--sw-dark);clip-path:inset(0 -100vmax);padding-top:64px;padding-bottom:64px;margin:40px 0 0;gap:40px}
.sw-commerce-brand .sw-product-perks h3{color:#fff8f0;font-size:29px;line-height:1.18;margin:20px 0 16px}
.sw-invitation-product>.sw-product-perks p{color:#fff8f0;font-size:12px;line-height:1.9;max-width:340px}
.sw-invitation-product>.sw-product-perks svg{color:#fff8f0;width:74px;height:74px;display:block}
@media(max-width:900px){.sw-invitation-product>.sw-product-perks{gap:28px;padding-top:48px;padding-bottom:48px}.sw-commerce-brand .sw-product-perks h3{font-size:26px}}
@media(max-width:700px){.sw-invitation-product>.sw-product-perks{grid-template-columns:minmax(0,1fr);gap:32px;padding-top:42px;padding-bottom:42px;border-radius:0;margin-top:30px;margin-bottom:0}.sw-invitation-product>.sw-product-perks article{padding:0 0 30px;border-top:0;border-bottom:1px solid #fff8f030}.sw-invitation-product>.sw-product-perks article:last-child{padding-bottom:0;border-bottom:0}.sw-invitation-product>.sw-product-perks svg{width:62px;height:62px}.sw-commerce-brand .sw-product-perks h3{font-size:29px;margin-top:16px}.sw-invitation-product>.sw-product-perks p{max-width:none}}

/* Checkout: explicit column wrappers keep gateway inserts out of the page grid. */
.sw-checkout-page .sw-commerce-main{max-width:1240px;margin:48px auto 72px;padding:0 clamp(20px,4vw,56px)}
.sw-checkout-page .sw-commerce-heading{margin-bottom:30px;max-width:780px}
.sw-checkout-page .sw-commerce-heading h1{font-size:clamp(44px,5vw,66px);margin-bottom:18px}
.sw-checkout-page .sw-checkout-steps{margin:20px 0;gap:12px 25px}
.sw-checkout-page .sw-woo-content>.woocommerce:before,.sw-checkout-page .sw-woo-content>.woocommerce:after{display:none}
.sw-checkout-page .woocommerce form.sw-checkout-form{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:28px;align-items:start;margin-top:26px}
.sw-checkout-page .woocommerce form.sw-checkout-form:before,.sw-checkout-page .woocommerce form.sw-checkout-form:after{display:none}
.sw-checkout-contact,.sw-checkout-summary{min-width:0;padding:30px;background:#fff9f2;border:1px solid #77222b20;border-radius:26px}
.sw-checkout-page .woocommerce .checkout #customer_details{width:100%;margin:0;float:none;grid-area:auto}
.sw-checkout-page .woocommerce .checkout #customer_details .col-1,.sw-checkout-page .woocommerce .checkout #customer_details .col-2{float:none;width:100%;margin:0}
.sw-checkout-page .woocommerce .checkout #order_review_heading,.sw-checkout-page .woocommerce .checkout #order_review{grid-area:auto;float:none;width:100%;clear:none}
.sw-checkout-page .woocommerce .checkout h3{font-size:32px;margin:0 0 25px;line-height:1.15}
.sw-checkout-page .woocommerce .checkout .form-row{padding:0;margin:0 0 18px;float:none;width:100%}
.sw-checkout-page .woocommerce .checkout .form-row label{display:block;line-height:1.6;margin-bottom:7px;font-size:12px;color:var(--sw-dark)}
.sw-checkout-page .woocommerce .checkout .form-row .woocommerce-input-wrapper{display:block;width:100%}
.sw-checkout-page .woocommerce .checkout input.input-text,.sw-checkout-page .woocommerce .checkout select{width:100%;min-width:0;background:#fffdf9!important;border-color:#77222b33!important;box-shadow:none;min-height:50px}
.sw-checkout-page .woocommerce .checkout input:focus-visible,.sw-checkout-page .woocommerce .checkout select:focus-visible{outline:2px solid var(--sw-red);outline-offset:3px}
.sw-checkout-page .select2-container{max-width:100%;width:100%!important}
.sw-checkout-page .select2-container .select2-selection--single{height:50px;border:1px solid #77222b33;border-radius:12px;background:#fffdf9}
.sw-checkout-page .select2-container .select2-selection__rendered{line-height:48px;padding:0 36px 0 14px;color:var(--sw-dark);font-size:14px}
.sw-checkout-page .select2-container .select2-selection__arrow{height:48px;right:10px}
.sw-checkout-page .woocommerce .checkout .woocommerce-additional-fields:empty,.sw-checkout-page .woocommerce .checkout .woocommerce-shipping-fields:empty{display:none}
.sw-checkout-page .woocommerce .checkout .woocommerce-account-fields p:last-child{margin-bottom:0}
.sw-checkout-page .woocommerce table.woocommerce-checkout-review-order-table{width:100%;table-layout:fixed;border:0;border-collapse:collapse;border-radius:0;background:transparent;margin:0 0 24px}
.sw-checkout-page .woocommerce table.woocommerce-checkout-review-order-table th,.sw-checkout-page .woocommerce table.woocommerce-checkout-review-order-table td{padding:16px 0;border-bottom:1px solid #77222b20;font-size:13px;vertical-align:top;overflow-wrap:anywhere}
.sw-checkout-page .woocommerce table.woocommerce-checkout-review-order-table th:first-child,.sw-checkout-page .woocommerce table.woocommerce-checkout-review-order-table td:first-child{width:65%;padding-right:18px}
.sw-checkout-page .woocommerce table.woocommerce-checkout-review-order-table th:last-child,.sw-checkout-page .woocommerce table.woocommerce-checkout-review-order-table td:last-child{text-align:right}
.sw-checkout-page .woocommerce table.woocommerce-checkout-review-order-table .order-total th,.sw-checkout-page .woocommerce table.woocommerce-checkout-review-order-table .order-total td{font-size:17px;border-bottom:0;padding-top:22px}
.sw-checkout-page .woocommerce #payment{background:transparent;border-radius:0}
.sw-checkout-page .woocommerce #payment ul.payment_methods{padding:0 0 22px;border-bottom:1px solid #77222b20}
.sw-checkout-page .woocommerce #payment ul.payment_methods li{line-height:1.7;min-width:0}
.sw-checkout-page .woocommerce #payment ul.payment_methods li>label{font-size:13px;font-weight:600}
.sw-checkout-page .woocommerce #payment .payment_box{background:#f7ece6;color:var(--sw-dark);border:1px solid #77222b18;border-radius:16px;padding:18px;margin:14px 0 0;width:100%;box-shadow:none;font-size:13px}
.sw-checkout-page .woocommerce #payment .payment_box:before{display:none}
.sw-checkout-page .woocommerce #payment .payment_box fieldset{min-width:0;margin:0;padding:0;border:0;background:transparent}
.sw-checkout-page .woocommerce #payment .payment_box .wc-payment-form{background:transparent;padding:0}
.sw-checkout-page .woocommerce #payment .payment_box input[type=checkbox]{min-height:0;width:16px;height:16px;accent-color:var(--sw-red);vertical-align:middle}
.sw-checkout-page .woocommerce #payment .payment_box label[for$="new-payment-method"]{display:inline;font-size:11px;font-weight:400;line-height:1.7}
.sw-checkout-page .woocommerce #payment div.place-order{padding:22px 0 0;margin:0}
.sw-checkout-page .woocommerce #payment .woocommerce-privacy-policy-text{font-size:11px;line-height:1.9;margin-bottom:20px}
.sw-checkout-page .woocommerce #payment #place_order{float:none;width:100%;margin:8px 0 4px;min-height:54px;font-size:14px!important;text-align:center;white-space:normal}
.sw-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info{border:1px solid #77222b22;border-radius:16px;background:#fff9f2;padding:18px 22px;color:var(--sw-dark);font-size:12px}
.sw-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info:before{display:none}
.sw-checkout-page .woocommerce form.checkout_coupon{border:1px solid #77222b22;border-radius:18px;background:#fff9f2;padding:22px;margin:20px 0}
.sw-checkout-page .woocommerce form.checkout_coupon .form-row{float:none;width:100%;margin:10px 0}
.sw-checkout-page .woocommerce form.checkout_coupon input{width:100%}
/* Wallet buttons retain their provider's dimensions, branding and iframe behavior. */
.sw-checkout-summary #wcpay-payment-request-wrapper,.sw-checkout-summary #wc-stripe-payment-request-wrapper,.sw-checkout-summary #wcpay-express-checkout-wrapper{max-width:100%;margin:0 0 18px}
.sw-checkout-summary #wcpay-payment-request-button-separator,.sw-checkout-summary #wc-stripe-payment-request-button-separator{margin:14px 0 22px!important;font-size:11px}
@media(max-width:980px){.sw-checkout-page .woocommerce form.sw-checkout-form{grid-template-columns:minmax(0,1fr);gap:24px}.sw-checkout-contact,.sw-checkout-summary{padding:28px}.sw-checkout-page .sw-commerce-main{max-width:760px}}
@media(max-width:600px){.sw-checkout-page .sw-commerce-main{margin-top:30px;margin-bottom:48px;padding:0 20px}.sw-checkout-page .sw-commerce-heading h1{font-size:45px}.sw-checkout-page .sw-commerce-heading p{font-size:12px}.sw-checkout-page .sw-checkout-steps{gap:10px 16px;font-size:10px}.sw-checkout-contact,.sw-checkout-summary{padding:23px 20px;border-radius:22px}.sw-checkout-page .woocommerce .checkout h3{font-size:29px;margin-bottom:22px}.sw-checkout-page .woocommerce #payment .payment_box{padding:14px}.sw-checkout-page .woocommerce table.woocommerce-checkout-review-order-table td,.sw-checkout-page .woocommerce table.woocommerce-checkout-review-order-table th{font-size:12px}.sw-checkout-page .woocommerce table.woocommerce-checkout-review-order-table th:first-child,.sw-checkout-page .woocommerce table.woocommerce-checkout-review-order-table td:first-child{width:64%;padding-right:12px}}

/* Equal-height catalogue cards across every grid row, with actions at the bottom. */
.sw-catalog .woocommerce ul.products{grid-auto-rows:auto;align-items:start}
.sw-catalog .woocommerce ul.products>li.sw-shop-design{display:flex;align-items:stretch}
.sw-catalog .sw-shop-design>.sw-design-card{height:100%}
.sw-catalog .sw-shop-design .sw-design-info{flex:1 1 auto;min-width:0}
.sw-catalog .sw-shop-design .sw-design-bottom{margin-top:auto}

/* Coupon disclosure uses the storefront palette instead of a Woo notice banner. */
.sw-checkout-page .sw-coupon-toggle{display:flex;align-items:center;gap:16px;padding:20px 24px;margin:0 0 20px;border:1px dashed #77222b55;border-radius:20px;background:#f1b5c62b;color:var(--sw-dark)}
.sw-checkout-page .sw-coupon-icon{display:block;width:32px;height:32px;flex:0 0 32px;color:var(--sw-red)}
.sw-checkout-page .sw-coupon-message{display:flex;align-items:center;justify-content:space-between;flex:1;gap:12px 24px;flex-wrap:wrap;font:500 13px/1.6 var(--sw-body)}
.sw-checkout-page .sw-coupon-message a.showcoupon{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid var(--sw-red);border-radius:40px;color:var(--sw-red);font:600 11px/1.5 var(--sw-body);text-decoration:none;background:transparent;transition:background .2s,color .2s}
.sw-checkout-page .sw-coupon-message a.showcoupon:hover,.sw-checkout-page .sw-coupon-message a.showcoupon[aria-expanded=true]{background:var(--sw-red);color:#fff8f0}
.sw-checkout-page .sw-coupon-message a.showcoupon:focus-visible{outline:2px solid var(--sw-red);outline-offset:4px}
.sw-checkout-page .woocommerce form.sw-coupon-form{margin:0 0 24px;padding:24px;border:1px solid #77222b22;border-radius:20px;background:#fff9f2}
.sw-checkout-page .sw-coupon-fields{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:end}
.sw-checkout-page .woocommerce form.sw-coupon-form .form-row{width:auto;min-width:0;float:none;margin:0;padding:0}
.sw-checkout-page .sw-coupon-fields label{display:block;margin-bottom:8px;font:500 12px/1.5 var(--sw-body);color:var(--sw-dark)}
.sw-checkout-page .woocommerce form.sw-coupon-form input#coupon_code{width:100%;height:50px;min-width:0;font:14px/1.5 var(--sw-body);background:#fffdf9!important;border-color:#77222b33!important;border-radius:12px!important;box-shadow:none}
.sw-checkout-page .woocommerce form.sw-coupon-form button.button{min-height:50px;white-space:normal;margin:0}
.sw-checkout-page .sw-coupon-form input:focus-visible{outline:2px solid var(--sw-red);outline-offset:3px}
.sw-checkout-page .sw-coupon-form .coupon-error-notice{display:block;color:var(--sw-red);font-size:12px;margin-top:8px}
@media(max-width:600px){.sw-checkout-page .sw-coupon-toggle{padding:18px;gap:12px;align-items:flex-start}.sw-checkout-page .sw-coupon-icon{margin-top:3px;width:28px;height:28px;flex-basis:28px}.sw-checkout-page .sw-coupon-message{flex-direction:column;align-items:flex-start;gap:10px;font-size:12px}.sw-checkout-page .woocommerce form.sw-coupon-form{padding:20px}.sw-checkout-page .sw-coupon-fields{grid-template-columns:minmax(0,1fr);gap:14px}.sw-checkout-page .woocommerce form.sw-coupon-form button.button{width:100%}}
@media(prefers-reduced-motion:reduce){.sw-checkout-page .sw-coupon-message a.showcoupon{transition:none}}

/* Categories stay visible as wrapping, touch-sized chips on every device. */
.sw-catalog-filters{grid-template-columns:minmax(0,1.5fr) minmax(0,.8fr) minmax(0,1.1fr)}
.sw-catalog-filters .sw-filter-collections{grid-column:1/-1;min-width:0;border:0;border-bottom:1px solid #77222b20;padding:0 0 22px;margin:0 0 2px}
.sw-filter-collections legend{font:600 13px/1.4 var(--sw-body);color:var(--sw-dark);padding:0;margin-bottom:14px}
.sw-shop-categories{display:flex;flex-wrap:wrap;align-items:center;gap:10px;max-width:100%}
.sw-shop-categories a{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:11px 17px;border:1px solid #ce10303b;border-radius:30px;background:#fffdf8;color:var(--sw-dark);font:600 13px/1.35 var(--sw-body);text-decoration:none;max-width:100%;overflow-wrap:anywhere}
.sw-shop-categories a.is-active{background:var(--sw-red);color:#fff8f0;border-color:var(--sw-red);box-shadow:0 3px 0 var(--sw-dark)}
.sw-shop-categories a:not(.is-active):hover{background:var(--sw-pink)}
.sw-category-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;min-height:22px;padding:2px 5px;background:#77222b13;border-radius:50%;font-size:11px;flex:none}
.sw-shop-categories a.is-active .sw-category-count{background:#fff3}
.sw-infinite-footer{text-align:center;padding:25px 0 10px;clear:both}.sw-infinite-more{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 27px;border:1px solid var(--sw-red);border-radius:40px;font:600 14px/1.4 var(--sw-body);color:var(--sw-red);text-decoration:none;background:#fff8f0}.sw-infinite-more:hover{background:var(--sw-pink)}.sw-infinite-more[aria-busy=true]{opacity:.65;pointer-events:none}.sw-infinite-status{font:13px/1.5 var(--sw-body);margin:14px auto;max-width:500px}.sw-infinite-active .woocommerce-pagination{display:none!important}
@media(max-width:1000px){.sw-catalog-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.sw-catalog-filters .sw-filter-search{grid-column:1/-1}}
@media(max-width:600px){.sw-shop-categories{gap:8px}.sw-shop-categories a{padding:10px 13px;font-size:12px;gap:8px}.sw-catalog-filters .sw-filter-collections{padding-bottom:18px}.sw-catalog-filters{grid-template-columns:minmax(0,1fr)}.sw-catalog-filters label{grid-column:1}.sw-infinite-footer{padding-top:18px}}

.sw-infinite-footer [hidden]{display:none!important}

.sw-album-capacity-choice{flex:1 0 100%;width:100%;margin:8px 0 22px;padding:20px;border:1px solid #ce103030;border-radius:22px;box-sizing:border-box}.sw-album-capacity-choice label{font-weight:600}.sw-album-capacity-choice p{font-size:13px;line-height:1.6;margin:8px 0 13px}.sw-album-capacity-choice select{width:100%;min-height:48px;border:1px solid #ce103045;border-radius:15px;padding:10px;background:transparent;color:inherit;font:inherit}.sw-album-capacity-choice small{display:block;margin-top:10px}
