.osch-hero-copy{background-image:linear-gradient(#fff8f0df,#fff8f0df),url('scrapbook-paper.webp')}
.osch-cart{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:42px}.osch-cart-icon{display:block;width:28px;height:28px}.osch .osch-stock{font:12px/1.4 Arial,sans-serif;margin:0 0 12px;color:#65545c}.osch .osch-stock.out-of-stock{color:#9e164d}.osch-collection>a>img{width:100%;aspect-ratio:1.4;object-fit:cover;display:block}
.osch .wp-block-woocommerce-cart table.wc-block-cart-items{border-collapse:collapse;border-spacing:0}
@media(max-width:767px){.osch .wp-block-woocommerce-cart table.wc-block-cart-items{table-layout:fixed;width:100%}.osch .wp-block-woocommerce-cart td.wc-block-cart-item__image{width:20%}.osch .wp-block-woocommerce-cart td.wc-block-cart-item__product{width:60%;overflow-wrap:anywhere}.osch .wp-block-woocommerce-cart td.wc-block-cart-item__total{width:20%}}
.osch.woocommerce div.product{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);column-gap:48px;row-gap:35px;align-items:start}.osch.woocommerce div.product>.summary{display:block!important;grid-column:2;grid-row:1;float:none;width:100%!important;margin:0}.osch.woocommerce div.product>.osc-product-gallery,.osch.woocommerce div.product>.woocommerce-product-gallery{grid-column:1;grid-row:1;float:none;width:100%!important;margin:0}.osch.woocommerce div.product .product_title{font:500 clamp(34px,3.6vw,52px)/1.12 Georgia,serif!important;text-align:left;margin:0 0 20px}.osch.woocommerce div.product .summary .price,.osch.woocommerce div.product .woocommerce-product-details__short-description{text-align:left}.osch.woocommerce div.product .summary form.cart{width:100%;margin:24px 0 0}.osch.woocommerce div.product .summary :is(.osc-product-personalization,.osc-options-panel){grid-template-columns:minmax(0,1fr);padding:24px}.osch.woocommerce div.product>.related,.osch.woocommerce div.product>.woocommerce-tabs{grid-column:1/-1}.osch.woocommerce div.product .osc-single-product-details{margin:20px 0;padding:22px;background:#fffaf5;border:1px solid var(--osc-border);border-radius:16px}.osch.woocommerce div.product .osc-single-product-details h2{font:500 27px/1.2 Georgia,serif;text-align:left;margin:0 0 15px}.osch.woocommerce div.product .osc-single-product-details ul{font-size:14px;text-align:left;padding-left:20px}.osch.woocommerce div.product .osc-main-product-image img{max-height:620px;object-fit:contain}.osch.woocommerce div.product .summary .single_add_to_cart_button{background:var(--osc-pink)!important}.osch.woocommerce div.product .osc-product-personalization h2{font-family:Georgia,serif!important;font-size:28px!important}.osch.woocommerce div.product .osc-options-panel :is(label,legend){font-family:Arial,sans-serif}
.osch .custom-hero{background:var(--osc-cream);padding:60px 24px 30px;min-height:0;color:var(--osc-ink)}.osch .custom-hero-content{max-width:900px;margin:auto;text-align:center}.osch .custom-hero h1{font:500 clamp(36px,5vw,64px)/1.12 Georgia,serif;color:var(--osc-ink)}.osch .custom-hero .section-tag,.osch .section-tag{color:var(--osc-pink-dark);background:var(--osc-blush);font:700 11px Arial,sans-serif;letter-spacing:.12em}.osch .custom-hero-btn,.osch .journey-submit{background:var(--osc-pink);color:#fff;border-radius:30px}.osch .custom-journey-section,.osch .faq-section{background:none;max-width:1100px;margin:auto;padding:30px 24px 60px}.osch .journey-form-card{background:#fffaf6;border:1px solid var(--osc-border);border-radius:22px;box-shadow:none;max-width:900px;margin:auto}.osch .journey-form-card :is(input,textarea,select){font:16px/1.4 Arial,sans-serif;max-width:100%;border-radius:10px}.osch .journey-form-card label{font:700 14px Arial,sans-serif}.osch .faq-list{max-width:900px;margin:auto}.osch .faq-item{background:#fffaf6;border:1px solid var(--osc-border);border-radius:14px;margin-bottom:12px}.osch .faq-item button{font:700 16px/1.4 Arial,sans-serif;color:var(--osc-ink)}.osch .osc-collection-coming-soon{background:var(--osc-cream);padding:60px 24px;min-height:55vh}.osch .osc-coming-soon-card{max-width:850px;background:#fffaf6;border:1px dashed #e5b4c6;box-shadow:none}.osch .osc-coming-soon-card h1{font:500 clamp(38px,5vw,60px)/1.12 Georgia,serif}.osch .osc-coming-soon-links a{background:#fff5fa;color:var(--osc-pink-dark);border-color:#dba5bc}.osch .osch-collection-links{display:flex;gap:10px;flex-wrap:wrap;clear:both;margin:10px 0 25px}.osch-collection-links a{font-size:13px;padding:6px 14px;background:#ffe7ef;border-radius:30px;text-decoration:none}.osch .osc-charm-bundle-products,.osch .osc-charm-bundle-shell{background:transparent}.osch .osc-charm-bundle-hero{background:var(--osc-blush);color:var(--osc-ink)}
@media(max-width:767px){.osch .custom-hero{padding-top:35px}.osch .journey-form-card{padding:20px}.osch .custom-journey-section,.osch .faq-section{padding-left:16px;padding-right:16px}.osch .osc-coming-soon-card{padding:28px 20px}}
@media(max-width:900px){.osch.woocommerce div.product{display:block}.osch.woocommerce div.product>.summary{margin-top:30px}.osch.woocommerce div.product .product_title{text-align:left;font-size:36px!important}.osch.woocommerce div.product>.osc-product-gallery{margin-bottom:25px}.osch.woocommerce div.product .summary :is(.osc-product-personalization,.osc-options-panel){padding:20px}}

/* Keep centered marketing copy centered as a block too. The base paragraph
   margin reset otherwise overrides the legacy template's automatic margins. */
.osch .osc-promo-landing :is(.osc-promo-landing__tagline,.osc-promo-landing__mix,.osc-promo-how__backup,.osc-promo-how__excluded){margin-inline:auto;text-align:center}
.osch .osc-promo-how__steps li{justify-content:center;text-align:center}
.osch .osc-coming-soon-card>p,.osch .custom-hero-content>p{margin-inline:auto;text-align:center}
.osch main.osch-section>.osch-product-grid:empty+p{max-width:850px;margin-inline:auto;text-align:center}

/* STL collection: center a small catalog instead of leaving one narrow card
   at the start of the five-column homepage grid. Other collections are untouched. */
.osch.page-id-424 main.osch-section{padding-block:40px 56px}
.osch.page-id-424 .osch-page-heading{margin-bottom:30px}
.osch.page-id-424 .osch-product-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),280px));justify-content:center;gap:24px}

/* Bubble Jug STL (437): readable, compact copy and naturally spaced native
   purchase controls. No product data, download or gateway logic is changed. */
.osch.postid-437.single-product div.product.type-product div.summary>.product_title{margin:0 0 12px;text-align:left}
.osch.postid-437.single-product div.product.type-product div.summary>.price{margin:0 0 18px;text-align:left}
.osch.postid-437.single-product div.product.type-product div.summary>.woocommerce-product-details__short-description{margin:0;max-width:none;text-align:left;line-height:1.55}
.osch.postid-437 .woocommerce-product-details__short-description p{margin:0 0 12px;line-height:1.55}
.osch.postid-437 .woocommerce-product-details__short-description p:first-child{font-weight:700}
.osch.postid-437 .woocommerce-product-details__short-description p:last-child{margin-bottom:0}
.osch.postid-437.single-product div.product.type-product div.summary>form.cart{display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px;margin:20px 0 0}
.osch.postid-437 form.cart .quantity{flex:0 0 88px;margin:0}
.osch.postid-437 form.cart .quantity .qty{width:100%;min-height:48px}
.osch.postid-437 form.cart .single_add_to_cart_button{flex:1;min-height:48px;margin:0;float:none}
/* The legacy express-checkout card uses a negative important margin. This
   simple STL has no options card, so that overlap must not be inherited. */
.osch.postid-437.single-product div.product.type-product div.summary>:is(#wc-stripe-express-checkout-element,.wc-stripe-express-checkout-element){margin:18px 0 0!important;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
