.elementor-4425 .elementor-element.elementor-element-656c17f5:not(.elementor-motion-effects-element-type-background), .elementor-4425 .elementor-element.elementor-element-656c17f5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-astglobalcolor2 );}.elementor-4425 .elementor-element.elementor-element-656c17f5{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-4425 .elementor-element.elementor-element-656c17f5 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-4425 .elementor-element.elementor-element-2e6ad24c > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-4425 .elementor-element.elementor-element-2e6ad24c .woocommerce-breadcrumb{color:var( --e-global-color-d116993 );font-size:13px;text-align:end;}.elementor-4425 .elementor-element.elementor-element-2e6ad24c .woocommerce-breadcrumb > a{color:var( --e-global-color-primary );}.elementor-4425 .elementor-element.elementor-element-1bf2764e:not(.elementor-motion-effects-element-type-background), .elementor-4425 .elementor-element.elementor-element-1bf2764e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-astglobalcolor2 );}.elementor-4425 .elementor-element.elementor-element-1bf2764e > .elementor-container{max-width:1280px;}.elementor-4425 .elementor-element.elementor-element-1bf2764e{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-4425 .elementor-element.elementor-element-1bf2764e > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-4425 .elementor-element.elementor-element-44a3477e > .elementor-element-populated{margin:40px 40px 40px 80px;--e-column-margin-right:40px;--e-column-margin-left:80px;padding:0px 0px 0px 0px;}.elementor-4425 .elementor-element.elementor-element-2470ce92 > .elementor-widget-container{margin:-15px 0px -25px 0px;padding:0px 0px 0px 0px;}.elementor-4425 .elementor-element.elementor-element-2470ce92{text-align:start;}.elementor-4425 .elementor-element.elementor-element-2470ce92 .elementor-heading-title{font-family:"Raleway", Sans-serif;font-size:56px;font-weight:400;line-height:56px;color:var( --e-global-color-primary );}.elementor-4425 .elementor-element.elementor-element-197bb49d > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.woocommerce .elementor-4425 .elementor-element.elementor-element-197bb49d .price{color:#B19540;font-size:24px;}.woocommerce .elementor-4425 .elementor-element.elementor-element-7d9c487b .woocommerce-product-details__short-description{color:var( --e-global-color-894577b );}.elementor-4425 .elementor-element.elementor-element-600f9910 .cart button, .elementor-4425 .elementor-element.elementor-element-600f9910 .cart .button{font-size:12px;border-style:solid;border-width:1px 1px 1px 1px;color:#B19540;background-color:#02010100;transition:all 0.2s;}.elementor-4425 .elementor-element.elementor-element-600f9910 .cart button:hover, .elementor-4425 .elementor-element.elementor-element-600f9910 .cart .button:hover{color:var( --e-global-color-d116993 );background-color:var( --e-global-color-primary );}.elementor-4425 .elementor-element.elementor-element-600f9910 .added_to_cart{color:var( --e-global-color-primary );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-4425 .elementor-element.elementor-element-600f9910 .quantity .qty{color:var( --e-global-color-d116993 );transition:all 0.2s;}.woocommerce .elementor-4425 .elementor-element.elementor-element-600f9910 form.cart .variations{width:50%;}.woocommerce .elementor-4425 .elementor-element.elementor-element-600f9910 form.cart table.variations label{color:var( --e-global-color-primary );font-size:14px;font-weight:400;}.woocommerce .elementor-4425 .elementor-element.elementor-element-600f9910 form.cart table.variations td.value select{color:var( --e-global-color-secondary );}.woocommerce .elementor-4425 .elementor-element.elementor-element-600f9910 form.cart table.variations td.value select, .woocommerce .elementor-4425 .elementor-element.elementor-element-600f9910 form.cart table.variations td.value:before{background-color:var( --e-global-color-astglobalcolor5 );}.woocommerce .elementor-4425 .elementor-element.elementor-element-600f9910 form.cart table.variations td.value select, .woocommerce div.product.elementor.elementor-4425 .elementor-element.elementor-element-600f9910 form.cart table.variations td.value:before{font-family:"Raleway", Sans-serif;font-weight:600;}@media(max-width:1024px){.elementor-4425 .elementor-element.elementor-element-2e6ad24c .woocommerce-breadcrumb{font-size:12px;}.elementor-4425 .elementor-element.elementor-element-44a3477e > .elementor-element-populated{margin:0px 20px 0px 20px;--e-column-margin-right:20px;--e-column-margin-left:20px;}.elementor-4425 .elementor-element.elementor-element-2470ce92 > .elementor-widget-container{margin:-15px 0px -20px 0px;}.elementor-4425 .elementor-element.elementor-element-2470ce92 .elementor-heading-title{font-size:60px;}.woocommerce .elementor-4425 .elementor-element.elementor-element-197bb49d .price{font-size:20px;}}@media(max-width:767px){.elementor-4425 .elementor-element.elementor-element-2470ce92 .elementor-heading-title{font-size:48px;}}@media(min-width:768px){.elementor-4425 .elementor-element.elementor-element-5f5879e6{width:60%;}.elementor-4425 .elementor-element.elementor-element-44a3477e{width:40%;}.elementor-4425 .elementor-element.elementor-element-75a7dcf{width:55%;}.elementor-4425 .elementor-element.elementor-element-b763f4d{width:45%;}}/* Start custom CSS *//* CSA product page, Concept C (Elementor single-product template "Product – Concept C"). Page custom CSS.
   Source: ops/website/pdp-concept-c.css. Section styles for [csa_scale] / [csa_original] / [csa_more_from]
   live in WPCode #4424 (csa-product-page.php). Built 2026-10-21. */
.elementor-4425 { --navy: #0E1B2B; --ivory: #EDE7DB; --cream: #FAF6F0; --leather: #C47A3A; --leather-dark: #9C5A22; --soft: #6B6F72; --rule-l: rgba(196, 122, 58, .45); }

/* Buy box */
.csa-pdp-buy > .elementor-widget-wrap { align-content: flex-start; }
.csa-pdp-buy .elementor-widget:not(:last-child) { margin-bottom: 18px; }
.csa-pdp-buy .elementor-widget-shortcode:first-child .csa-pdp-eyebrow { margin: 0; }
.csa-pdp-title .elementor-heading-title { font-family: "Playfair Display", Georgia, serif !important; font-weight: 700 !important; font-size: clamp(34px, 3.6vw, 52px) !important; line-height: 1.06 !important; color: var(--navy) !important; text-transform: none !important; }
.csa-pdp-title .csa-pdp-sub { display: block; margin-top: 10px; font: 400 16px/1.4 Montserrat, sans-serif !important; letter-spacing: .02em; color: var(--soft); }
.csa-pdp-buy .price, .csa-pdp-buy .price * { font: 600 24px/1 Montserrat, sans-serif !important; color: var(--navy) !important; font-variant-numeric: tabular-nums; }

/* Short description reads as spec rows */
.csa-pdp-buy .woocommerce-product-details__short-description { font: 400 15px/1.6 Montserrat, sans-serif; color: var(--navy); }
.csa-pdp-buy .woocommerce-product-details__short-description p { margin: 0 0 10px; }
.csa-pdp-buy .woocommerce-product-details__short-description ul { list-style: none; margin: 0 0 12px; padding: 0; border-top: 1px solid var(--rule-l); }
.csa-pdp-buy .woocommerce-product-details__short-description li { padding: 11px 0; border-bottom: 1px solid var(--rule-l); margin: 0; }
.csa-pdp-buy .woocommerce-product-details__short-description li strong,
.csa-pdp-buy .woocommerce-product-details__short-description li b { display: inline-block; min-width: 9.5em; font: 600 11px/1.6 Montserrat, sans-serif; letter-spacing: .14em; text-transform: uppercase; color: var(--soft); }
.csa-pdp-buy .woocommerce-product-details__short-description em { color: var(--soft); }
.csa-pdp-buy .woocommerce-product-details__short-description a { color: var(--leather-dark) !important; text-decoration: underline; text-underline-offset: 3px; }

/* Add to cart: full-width leather button */
.csa-pdp-buy form.cart { display: flex; flex-wrap: wrap; gap: 12px; align-items: stretch; margin: 0 !important; }
.csa-pdp-buy form.cart .quantity { display: none !important; }
.csa-pdp-buy form.cart .single_add_to_cart_button { flex: 1 1 100%; min-height: 54px; font: 600 13px/1 Montserrat, sans-serif !important; letter-spacing: .12em; text-transform: uppercase; border-radius: 0 !important; }
.csa-pdp-buy .variations { margin-bottom: 8px; }

/* The story */
.csa-pdp-story-h .elementor-heading-title { text-transform: none !important; font: 700 22px/1.25 "Playfair Display", Georgia, serif !important; color: var(--navy) !important; border-top: 1px solid var(--rule-l); padding-top: 18px; }
.csa-pdp-story .elementor-widget-container, .csa-pdp-story p, .csa-pdp-story li { font: 400 15.5px/1.75 Montserrat, sans-serif !important; color: var(--navy) !important; }
.csa-pdp-story p:last-child { margin-bottom: 0; }

/* Full-bleed bands */
.csa-pdp-band { padding: 0 !important; }
.csa-pdp-band > .elementor-container { max-width: none !important; }
.csa-pdp-band > .elementor-container > .elementor-column > .elementor-widget-wrap { padding: 0 !important; }

/* Letters band */
.csa-pdp-letters { background: var(--ivory); color: var(--navy); }
.csa-pdp-letters > .elementor-container > .elementor-column > .elementor-widget-wrap { padding: clamp(40px, 5vw, 64px) clamp(20px, 5vw, 64px) !important; align-content: center; }
.csa-pdp-letters .csa-pdp-eyebrow { color: var(--leather-dark); }
.csa-pdp-letters h2.elementor-heading-title { font: 700 clamp(26px, 2.8vw, 36px)/1.15 "Playfair Display", Georgia, serif !important; color: var(--navy) !important; }
.csa-pdp-letters .csa-pdp-lt { font: 400 15px/1.6 Montserrat, sans-serif; color: var(--navy); margin: 10px 0 0; max-width: 34em; }
.csa-pdp-letters h2.elementor-heading-title { margin: 0; }
.csa-pdp-letters .gform_wrapper { max-width: 520px; margin: 0 0 0 auto !important; }
.csa-pdp-letters .gform_fields { display: flex !important; gap: 0 !important; }
.csa-pdp-letters .gfield--type-email { flex: 1 1 auto; }
.csa-pdp-letters .gfield--type-submit { flex: 0 0 auto; width: auto !important; }
.csa-pdp-letters .gfield--type-email .gfield_label { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.csa-pdp-letters input[type=email] { min-height: 50px; height: 100%; margin: 0 !important; border: 1px solid var(--navy) !important; border-radius: 0 !important; background: var(--cream) !important; padding: 12px 14px !important; }
.csa-pdp-letters .gfield--type-submit button { min-height: 50px; height: 100%; margin: 0 !important; }

@media (max-width: 767px) {
  .csa-pdp-letters .gform_wrapper { margin: 18px 0 0 !important; }
}

/* Gallery stays in view while the buy box scrolls (desktop) */
@media (min-width: 1025px) {
  .csa-pdp-gallery > .elementor-widget-wrap { position: sticky; top: 110px; align-self: flex-start; }
}
/* The old title widget carried a fixed 48px height; the two-line title needs its natural height */
.csa-pdp-title, .csa-pdp-title .elementor-widget-container { height: auto !important; min-height: 0 !important; }
.csa-pdp-title .elementor-widget-container { margin: 0 !important; }
.csa-pdp-letters h2.elementor-heading-title { text-transform: none !important; }
.elementor-4425 .csa-pdp-letters > .elementor-container > .elementor-column:first-child > .elementor-widget-wrap { padding-left: max(20px, calc((100vw - 1200px) / 2)) !important; }
.elementor-4425 .csa-pdp-letters > .elementor-container > .elementor-column:last-child > .elementor-widget-wrap { padding-right: max(20px, calc((100vw - 1200px) / 2)) !important; }

/* ---- Concept C light ground (Chris, 2026-10-21): cream page, navy text; navy only in the header and footer.
   The Oct 14 store stylesheet (#4237) puts every product page on navy with ivory text; inside this template it's switched off. ---- */
body.single-product.elementor-page-4425, body.elementor-page-4425 { background: #FAF6F0 !important; color: #0E1B2B; }
body.elementor-page-4425 .elementor-4425 .elementor-top-section { background-color: transparent !important; }
body.elementor-page-4425 .elementor-4425 .elementor-top-section.csa-pdp-letters { background-color: var(--ivory) !important; }
body.elementor-page-4425 .elementor-4425 :is(p, li, span, a, label, td, th, div, dt, dd, strong, b, em, bdi) { color: var(--navy) !important; }
body.elementor-page-4425 .elementor-4425 :is(.elementor-heading-title, .product_title, .woocommerce-loop-product__title, h1, h2, h3) { color: var(--navy) !important; }
body.elementor-page-4425 .elementor-4425 :is(.csa-pdp-sub, .csa-ps, .csa-scale-body, .csa-otable dt, .csa-dim, .csa-pdp-buy .woocommerce-product-details__short-description li strong, .csa-pdp-buy .woocommerce-product-details__short-description li b, .csa-pdp-buy .woocommerce-product-details__short-description em) { color: var(--soft) !important; }
body.elementor-page-4425 .elementor-4425 :is(.csa-pdp-eyebrow, .csa-scale-title em) { color: var(--leather-dark) !important; }
body.elementor-page-4425 .elementor-4425 .csa-sofa span { color: #F2EADC !important; }
body.elementor-page-4425 .elementor-4425 :is(.csa-pdp-buy .woocommerce-product-details__short-description a, .csa-otable dd a, .woocommerce-breadcrumb a) { color: var(--leather-dark) !important; }
body.elementor-page-4425 .elementor-4425 :is(.price, .woocommerce-Price-amount, .woocommerce-Price-amount *) { color: var(--navy) !important; }
body.elementor-page-4425 .elementor-4425 .single_add_to_cart_button, body.elementor-page-4425 .elementor-4425 .single_add_to_cart_button * { color: var(--navy) !important; }
body.elementor-page-4425 .elementor-4425 .single_add_to_cart_button:hover, body.elementor-page-4425 .elementor-4425 .single_add_to_cart_button:hover * { color: var(--cream) !important; }
body.elementor-page-4425 .elementor-4425 :is(select, .variations select) { background: var(--cream) !important; color: var(--navy) !important; border: 1px solid var(--navy) !important; border-radius: 0 !important; }
body.elementor-page-4425 .elementor-4425 .variations :is(th, label) { color: var(--soft) !important; font: 600 11px/1.6 Montserrat, sans-serif !important; letter-spacing: .14em; text-transform: uppercase; }
body.elementor-page-4425 .elementor-4425 .reset_variations { color: var(--soft) !important; }
body.elementor-page-4425 .elementor-4425 .stock { color: var(--soft) !important; }
body.elementor-page-4425 .elementor-4425 .woocommerce-product-gallery__image img { border: 1px solid rgba(14, 27, 43, .12); }
body.elementor-page-4425 .elementor-4425 .csa-pdp-letters input[type=email] { color: var(--navy) !important; }
body.elementor-page-4425 .elementor-4425 .csa-pdp-letters .gfield--type-submit button, body.elementor-page-4425 .elementor-4425 .csa-pdp-letters .gfield--type-submit button * { color: var(--navy) !important; }
body.elementor-page-4425 .elementor-4425 .csa-pdp-letters .gfield--type-submit button:hover { color: var(--cream) !important; }
body.elementor-page-4425 .elementor-4425 :is(.csa-more-grid h2, .csa-more-grid h2 *, .csa-pdp-title .elementor-heading-title, .csa-pdp-title .elementor-heading-title *) { text-transform: none !important; }
/* Full-screen gallery button: navy disc with an ivory magnifier (it had turned ivory-on-ivory) */
body.elementor-page-4425 .elementor-4425 .woocommerce-product-gallery__trigger { background: #0E1B2B !important; border: 1px solid #C47A3A !important; }
body.elementor-page-4425 .elementor-4425 .woocommerce-product-gallery__trigger::before { border-color: #EDE7DB !important; }
body.elementor-page-4425 .elementor-4425 .woocommerce-product-gallery__trigger::after { background: #EDE7DB !important; }
body.elementor-page-4425 .elementor-4425 .woocommerce-product-gallery__trigger { transform: scale(.72); transform-origin: top right; }
/* Chris: a "+" in the middle reads as "open full screen" more clearly than the magnifier */
body.elementor-page-4425 .elementor-4425 .woocommerce-product-gallery__trigger { font-size: 0 !important; text-indent: 0 !important; }
body.elementor-page-4425 .elementor-4425 .woocommerce-product-gallery__trigger > * { display: none !important; }
body.elementor-page-4425 .elementor-4425 .woocommerce-product-gallery__trigger::before,
body.elementor-page-4425 .elementor-4425 .woocommerce-product-gallery__trigger::after {
  content: "" !important; position: absolute !important; top: 50% !important; left: 50% !important; margin: 0 !important;
  border: 0 !important; border-radius: 0 !important; background: #EDE7DB !important; box-sizing: border-box;
}
body.elementor-page-4425 .elementor-4425 .woocommerce-product-gallery__trigger::before { width: 16px !important; height: 2px !important; transform: translate(-50%, -50%) !important; }
body.elementor-page-4425 .elementor-4425 .woocommerce-product-gallery__trigger::after { width: 2px !important; height: 16px !important; transform: translate(-50%, -50%) !important; }
/* Edition picker (Chris): full-width box with a chevron, label above, "Select edition" wording (set by the template script) */
body.elementor-page-4425 .elementor-4425 table.variations, body.elementor-page-4425 .elementor-4425 table.variations :is(tbody, tr, th, td) { display: block; width: 100%; padding: 0; border: 0; background: none; }
body.elementor-page-4425 .elementor-4425 table.variations th.label { margin-bottom: 8px; }
body.elementor-page-4425 .elementor-4425 table.variations select {
  width: 100% !important; max-width: none !important; min-height: 52px; padding: 12px 48px 12px 14px !important;
  font: 500 15px/1.3 Montserrat, sans-serif !important; cursor: pointer;
  -webkit-appearance: none; appearance: none;
  background: #FAF6F0 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%230E1B2B' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 18px center !important;
}
body.elementor-page-4425 .elementor-4425 table.variations select:focus { outline: 2px solid #4B6D87; outline-offset: 2px; }
body.elementor-page-4425 .elementor-4425 table.variations .reset_variations { display: inline-block; margin-top: 8px; font: 600 11px/1 Montserrat, sans-serif !important; letter-spacing: .12em; text-transform: uppercase; }
body.elementor-page-4425 .elementor-4425 form.cart :is(table.variations, .single_variation_wrap) { flex: 1 1 100%; width: 100%; }
body.elementor-page-4425 .elementor-4425 .woocommerce-variation-add-to-cart { display: flex; width: 100%; }
body.elementor-page-4425 .elementor-4425 .single_add_to_cart_button { margin: 0 !important; flex: 1 1 100%; }
/* Letters form (Chris): box and button the same height, with a little air between */
body.elementor-page-4425 .elementor-4425 .csa-pdp-letters .gform_fields { gap: 10px !important; align-items: center; }
body.elementor-page-4425 .elementor-4425 .csa-pdp-letters :is(input[type=email], .gfield--type-submit button) { height: 52px !important; min-height: 52px !important; box-sizing: border-box !important; margin: 0 !important; }
/* Round 2 (Chris): bigger gallery (row 1280px, 60/40), tighter section rhythm; the shortcode sections' own wrappers add no extra space */
body.elementor-page-4425 .elementor-4425 :is(.csa-pdp-original-sec, .csa-pdp-more-sec) { padding: 0 !important; }
body.elementor-page-4425 .elementor-4425 :is(.csa-pdp-original-sec, .csa-pdp-more-sec) > .elementor-container > .elementor-column > .elementor-widget-wrap { padding: 0 !important; }
body.elementor-page-4425 .elementor-4425 .elementor-top-section:first-child > .elementor-container { max-width: 1280px; }
body.elementor-page-4425 .elementor-4425 .csa-pdp-gallery .woocommerce-product-gallery { width: 100% !important; max-width: none !important; }
body.elementor-page-4425 .elementor-4425 .csa-pdp-letters :is(.elementor-widget-shortcode, .elementor-shortcode, .gform_wrapper, form#gform_3) { width: 100% !important; }
body.elementor-page-4425 .elementor-4425 .csa-pdp-letters .gform_wrapper { max-width: 560px !important; }
/* The template's script widget sat beside the form and took half the row; it shows nothing, so take it out of the layout */
body.elementor-page-4425 .elementor-4425 .csa-pdp-letters .elementor-column:last-child .elementor-widget-html { display: none !important; }
body.elementor-page-4425 .elementor-4425 .csa-pdp-letters .elementor-widget-wrap { flex-wrap: wrap !important; }
/* Letters band: align with the 1280px grid via the container, not big column padding (that squeezed the form to ~370px) */
body.elementor-page-4425 .elementor-4425 .csa-pdp-letters > .elementor-container { max-width: 1280px !important; margin: 0 auto; }
body.elementor-page-4425 .elementor-4425 .csa-pdp-letters > .elementor-container > .elementor-column > .elementor-widget-wrap { padding: clamp(40px, 5vw, 64px) 20px !important; }
/* Express checkout (WooPayments Apple/Google Pay, PayPal/Venmo/Pay Later) render inside the add-to-cart form: full width under Add to cart */
body.elementor-page-4425 .elementor-4425 .csa-pdp-buy form.cart :is(#wcpay-express-checkout-element, #wcpay-express-checkout-button-separator, .ppc-button-wrapper, #ppc-button-ppcp-gateway, [id^=ppc-button], .wcpay-express-checkout-wrapper) { flex: 1 1 100% !important; width: 100% !important; max-width: none !important; margin-top: 4px; }
/* Spec rows (Chris): label on its own line, value left-aligned underneath, value starts with a capital (template script) */
body.elementor-page-4425 .elementor-4425 .csa-pdp-buy .woocommerce-product-details__short-description li :is(strong, b) { display: block !important; min-width: 0 !important; margin: 0 0 4px; }
body.elementor-page-4425 .elementor-4425 .csa-pdp-buy .woocommerce-product-details__short-description li { padding: 12px 0; }/* End custom CSS */