/*
Theme Name: Rastelx Atelier
Theme URI: https://rastelx.com
Author: Rastelx
Description: A clean Gutenberg-first theme for the Rastelx saree storefront.
Version: 1.3.0
Requires at least: 6.5
Requires PHP: 7.4
Text Domain: rastelx-atelier
*/

:root { --rx-ink: #1c281f; --rx-paper: #fbf9f5; --rx-cream: #f5f0e7; --rx-clay: #a6543d; --rx-gold: #c6a47d; }
html { scroll-behavior: smooth; }
body { background: var(--rx-paper); color: var(--rx-ink); }
a { text-underline-offset: .22em; text-decoration-thickness: 1px; }
.wp-site-blocks { overflow: hidden; }
.wp-site-blocks > header { background: rgba(251,249,245,.96); position: relative; z-index: 10; }
.wp-block-navigation .wp-block-navigation-item__content { position: relative; text-decoration: none; }
.wp-block-navigation .wp-block-navigation-item__content::after { background: var(--rx-clay); bottom: -7px; content: ''; height: 1px; left: 0; position: absolute; transform: scaleX(0); transform-origin: left; transition: transform .22s ease; width: 100%; }
.wp-block-navigation .wp-block-navigation-item__content:hover::after,
.wp-block-navigation .current-menu-item > .wp-block-navigation-item__content::after { transform: scaleX(1); }
.wp-block-button__link { border-radius: 0; transition: background .2s ease, color .2s ease; }
.wp-block-button__link:hover { background: var(--rx-clay); color: #fff; }
.wp-block-cover { overflow: hidden; }
.wp-block-cover__image-background { transition: transform .7s cubic-bezier(.2,.65,.3,1); }
.wp-block-cover:hover > .wp-block-cover__image-background { transform: scale(1.025); }
.wp-block-cover__background { transition: opacity .35s ease; }
.wp-block-cover:hover > .wp-block-cover__background { opacity: .42; }
.wp-block-woocommerce-product-collection { padding-left: 4.5vw; padding-right: 4.5vw; }
.wc-block-components-product-title, .wp-block-post-title { color: var(--rx-ink); font-size: 16px; font-weight: 600; line-height: 1.35; }
.wc-block-components-product-price, .wp-block-woocommerce-product-price { color: var(--rx-clay); font-size: 13px; font-weight: 600; letter-spacing: .02em; }
.wc-block-components-product-image { background: var(--rx-cream); overflow: hidden; }
.wc-block-components-product-image img { aspect-ratio: .76; object-fit: cover; transition: transform .45s cubic-bezier(.2,.65,.3,1); }
.wc-block-components-product-image:hover img { transform: scale(1.045); }
.rastelx-home .rx-eyebrow { color: var(--rx-clay); font-family: Arial, sans-serif; font-size: 11px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
.rastelx-home .rx-collection h3 a, .rastelx-home .rx-collection p a { color: #fff !important; text-decoration: none; }
.rastelx-home .rx-hero { min-height: min(760px, calc(100vh - 80px)) !important; }
.rastelx-home .rx-hero .wp-block-cover__inner-container { padding-bottom: 20px; }
.rastelx-home .rx-hero h1 { text-wrap: balance; text-shadow: 0 2px 24px rgba(15,25,16,.18); }
.rastelx-home .rx-hero p { font-size: clamp(16px,1.35vw,20px); line-height: 1.5; }
.rastelx-home .rx-intro { border-top: 1px solid rgba(28,40,31,.08); }
.rastelx-home .rx-section-title { gap: 32px; }
.rastelx-home .rx-section-title > * { margin-bottom: 0; }
.rastelx-home .rx-collection .wp-block-cover { box-shadow: inset 0 0 0 1px rgba(255,255,255,.12); }
.rastelx-home .rx-collection .wp-block-cover__inner-container { display: flex; flex-direction: column; justify-content: flex-end; min-height: 100%; }
.rastelx-home .rx-collection h3 a { display: inline-block; transition: transform .22s ease; }
.rastelx-home .rx-collection .wp-block-cover:hover h3 a { transform: translateX(5px); }
.rastelx-home .rx-products-title { margin: 0 auto; max-width: 1280px; padding: 105px 4.5vw 38px; }
.rastelx-home .rx-newsletter .wp-block-button__link { background: #fff; color: var(--rx-ink); }
.rastelx-home .rx-newsletter .wp-block-button__link:hover { background: var(--rx-ink); color: #fff; }
input[type="email"], input[type="text"] { border: 1px solid rgba(28,40,31,.32); border-radius: 0; min-height: 48px; padding: 10px 14px; }
:focus-visible { outline: 2px solid var(--rx-clay); outline-offset: 4px; }

/* Shop collection */
.rastelx-shop { padding-top: 0; }
.wp-site-blocks main.rastelx-shop .rastelx-shop__hero { box-sizing: border-box; margin-left: auto !important; margin-right: auto !important; max-width: 940px !important; padding: clamp(42px,5vw,72px) 22px 46px; width: 100%; }
.rastelx-shop__eyebrow, .rastelx-shop__product-type { color: var(--rx-clay); font-family: Arial, sans-serif; font-size: 10px; font-weight: 700; letter-spacing: .14em; margin: 0 0 16px; text-transform: uppercase; }
.rastelx-shop__title { font-size: clamp(54px,7vw,104px); margin: 0 !important; text-wrap: balance;max-width: 100%; }
.rastelx-shop__intro { color: #5f675f; font-size: clamp(16px,1.6vw,20px); margin: 20px auto 0; }
.rastelx-shop__motif { color: var(--rx-clay); font-size: 25px; line-height: 1; margin: 24px auto 30px; text-align: center; }
.rastelx-shop__filters { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; }
.rastelx-shop__filters button { background: transparent; border: 1px solid #d58a73; border-radius: 999px; color: var(--rx-ink); cursor: pointer; font: 500 14px/1 Arial, sans-serif; min-height: 40px; padding: 0 23px; transition: background .2s ease, border-color .2s ease, color .2s ease, transform .2s ease; }
.rastelx-shop__filters button:hover { border-color: var(--rx-clay); color: var(--rx-clay); transform: translateY(-1px); }
.rastelx-shop__filters button.is-active { background: var(--rx-ink); border-color: var(--rx-ink); color: #fff; }
.rastelx-shop__toolbar { align-items: center; border-top: 1px solid #e5e0d6; margin-bottom: 35px; padding: 20px 0; }
.rastelx-shop__toolbar .woocommerce-result-count { display: none; }
.rastelx-shop__toolbar .orderby { appearance: none; background: var(--rx-paper) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%231c281f' stroke-width='1.3'/%3E%3C/svg%3E") no-repeat right 14px center; border: 1px solid #cfc8bc; border-radius: 0; color: var(--rx-ink); font: 500 12px Arial, sans-serif; padding: 10px 38px 10px 13px; }
.rastelx-shop .wp-block-woocommerce-product-collection { padding: 0; }
.rastelx-shop__products .wc-block-product-template { column-gap: 27px; grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 48px; }
.rastelx-shop__products .wc-block-product { display: flex; flex-direction: column; gap: 0; }
.rastelx-shop__products .wc-block-components-product-image { aspect-ratio: .76; margin-bottom: 20px; }
.rastelx-shop__products .wc-block-components-product-image a, .rastelx-shop__products .wc-block-components-product-image img { display: block; height: 100%; width: 100%; }
.rastelx-shop__products .wc-block-components-product-image img { object-fit: cover !important; }
.rastelx-shop__product-type { color: #6a7069; margin-bottom: 7px; order: 1; }
.rastelx-shop__products .wp-block-post-title { font-family: Georgia, 'Times New Roman', serif; font-size: clamp(18px,1.7vw,23px); font-weight: 400; letter-spacing: -.025em; line-height: 1.15 !important; margin: 0 0 9px !important; order: 2; }
.rastelx-shop__products .wp-block-post-title a { color: var(--rx-ink); text-decoration: none; }
.rastelx-shop__products .wp-block-woocommerce-product-price { margin: 0 0 17px !important; order: 3; text-align: left !important; }
.rastelx-shop__products .wc-block-components-product-price { color: var(--rx-ink); font-size: 14px; font-weight: 500; }
.rastelx-shop__products .wc-block-components-product-button { margin-top: auto; order: 4; text-align: left !important; }
.rastelx-shop__products .wc-block-components-product-button .wc-block-components-product-button__button { background: transparent !important; border: 1px solid #d58a73 !important; color: var(--rx-clay) !important; font-size: 11px; min-width: 155px; padding: 12px 17px; }
.rastelx-shop__products .wc-block-components-product-button__button:hover { background: var(--rx-clay) !important; color: #fff !important; }
.rastelx-shop__products .wc-block-product[hidden] { display: none; }
.rastelx-shop > .rastelx-shop__benefits { background: var(--rx-cream); box-sizing: border-box; left: 50%; margin: clamp(74px,10vw,130px) 0 0 !important; max-width: none; padding: 36px 4.5vw; position: relative; transform: translateX(-50%); width: 100vw; }
.rastelx-shop__benefits:empty { display: none; }
.rastelx-shop__benefits-inner { gap: 0; margin: 0 auto !important; max-width: 1020px; }
.rastelx-shop__benefits-inner > .wp-block-column { align-items: center; display: flex; justify-content: center; min-height: 42px; }
.rastelx-shop__benefits-inner > .wp-block-column + .wp-block-column { border-left: 1px solid #bcb4a7; }
.rastelx-shop__benefit { align-items: center; display: flex; font-size: 15px; gap: 18px; margin: 0; }
.rastelx-shop__benefit span { color: var(--rx-clay); font-family: Georgia, serif; font-size: 26px; }

/* Product detail */
.single-product main { padding-bottom: 0; }
.single-product main > .wp-block-breadcrumbs { color: #687168; font-size: 12px; margin-bottom: 30px; }
.single-product main > .wp-block-columns { align-items: flex-start; column-gap: clamp(38px,6vw,86px); margin-bottom: clamp(72px,10vw,130px); }
.single-product .wp-block-woocommerce-product-image-gallery { background: var(--rx-cream); }
.single-product .woocommerce-product-gallery__image { overflow: hidden; }
.single-product .woocommerce-product-gallery .flex-control-thumbs { display: none !important; }
.single-product .woocommerce-product-gallery__image img { aspect-ratio: .82; filter: contrast(1.04) saturate(1.08); height: auto; object-fit: cover; width: 100%; }
.single-product .woocommerce-product-gallery__trigger { background: rgba(251,249,245,.94) !important; border: 1px solid rgba(28,40,31,.12); box-shadow: none; }
.single-product main > .wp-block-columns > .wp-block-column:last-child { padding-top: clamp(8px,2vw,28px); }
.single-product main .wp-block-post-title { font-size: clamp(38px,4.5vw,64px); line-height: .98; margin: 0 0 22px !important; text-transform: capitalize; }
.single-product .wp-block-woocommerce-product-price, .single-product .price { color: var(--rx-clay); font-size: 19px; font-weight: 600; margin: 0 0 28px !important; }
.single-product .wp-block-post-excerpt, .single-product .woocommerce-product-details__short-description { color: #4d574e; font-size: 18px; line-height: 1.55; margin-bottom: 32px; }
.single-product form.cart { align-items: stretch; display: flex; gap: 12px; margin: 0 0 30px; }
.single-product form.cart .quantity .qty { border: 1px solid #cfc8bc; height: 52px; min-width: 66px; text-align: center; }
.single-product form.cart .single_add_to_cart_button, .single-product .wp-block-add-to-cart-form .wp-block-button__link { align-items: center; background: var(--rx-ink) !important; display: inline-flex; justify-content: center; min-height: 52px; padding: 0 26px; }
.single-product .product_meta { border-top: 1px solid #e5e0d6; color: #687168; font-size: 13px; padding-top: 22px; }
.single-product .product_meta a { color: var(--rx-ink); }
.single-product .rastelx-product-assurance { margin-top: 32px; }
.single-product .rastelx-product-assurance__items { border-bottom: 1px solid #e5e0d6; display: grid; grid-template-columns: repeat(3,1fr); padding-bottom: 25px; }
.single-product .rastelx-product-assurance__items > div { align-items: center; display: flex; gap: 10px; justify-content: center; min-height: 52px; padding: 0 9px; text-align: left; }
.single-product .rastelx-product-assurance__items > div + div { border-left: 1px solid #e5e0d6; }
.single-product .rastelx-product-assurance__items span { color: var(--rx-clay); font-family: Georgia, serif; font-size: 24px; }
.single-product .rastelx-product-assurance__items p { font-size: 11px; line-height: 1.35; margin: 0; }
.single-product .rastelx-product-accordions { margin-top: 16px; }
.single-product .rastelx-product-accordions details { border-bottom: 1px solid #e5e0d6; }
.single-product .rastelx-product-accordions summary { align-items: center; cursor: pointer; display: flex; font: 600 14px Arial, sans-serif; justify-content: space-between; list-style: none; padding: 18px 0; }
.single-product .rastelx-product-accordions summary::-webkit-details-marker { display: none; }
.single-product .rastelx-product-accordions summary::after { color: var(--rx-clay); content: '+'; font: 400 22px Georgia, serif; }
.single-product .rastelx-product-accordions details[open] summary::after { content: '–'; }
.single-product .rastelx-product-accordions p { color: #5b655c; font-size: 14px; line-height: 1.6; margin: -2px 0 18px; }
.single-product .rastelx-product-information { background: var(--rx-cream); display: grid; grid-template-columns: repeat(3,1fr); margin: 0 auto clamp(72px,10vw,130px) !important; max-width: 1280px !important; padding: clamp(34px,5vw,64px); width: 100%; }
.single-product .rastelx-product-information article { padding: 0 clamp(20px,3vw,46px); text-align: center; }
.single-product .rastelx-product-information article + article { border-left: 1px solid rgba(28,40,31,.16); }
.single-product .rastelx-product-information > article > span { color: var(--rx-gold); font-family: Georgia, serif; font-size: 23px; }
.single-product .rastelx-product-information h2 { font-size: clamp(25px,2.4vw,36px); margin: 12px 0 16px; }
.single-product .rastelx-product-information p { color: #4d574e; font-size: 14px; line-height: 1.65; margin: 0; }
.single-product .woocommerce-tabs { border-top: 1px solid #e5e0d6; padding-top: 28px; }
.single-product .woocommerce-tabs ul.tabs { border-bottom: 1px solid #e5e0d6; margin: 0 0 40px; padding: 0; }
.single-product .woocommerce-tabs ul.tabs li { background: transparent; border: 0; margin: 0 34px 0 0; padding: 0 0 16px; }
.single-product .woocommerce-tabs ul.tabs li::before, .single-product .woocommerce-tabs ul.tabs li::after { display: none; }
.single-product .woocommerce-tabs ul.tabs li a { color: #687168; font: 600 13px Arial, sans-serif; letter-spacing: .03em; }
.single-product .woocommerce-tabs ul.tabs li.active { border-bottom: 2px solid var(--rx-clay); }
.single-product .woocommerce-tabs ul.tabs li.active a { color: var(--rx-ink); }
.single-product .woocommerce-Tabs-panel { max-width: 720px; padding-bottom: 20px; }
.single-product .woocommerce-Tabs-panel h2 { font-size: clamp(30px,3vw,42px); margin-bottom: 18px; }
.single-product .wp-block-woocommerce-product-collection { border-top: 1px solid #e5e0d6; margin-top: 58px; padding: 58px 0 0; }
.single-product .wp-block-woocommerce-product-collection > h2 { font-size: clamp(30px,3vw,42px); margin-bottom: 30px; }
.single-product .wp-block-woocommerce-product-collection .wc-block-product-template { column-gap: 22px; grid-template-columns: repeat(4, minmax(0,1fr)); }
.single-product .wp-block-woocommerce-product-collection .wc-block-product-template .wc-block-product:nth-child(n+5) { display: none; }
.single-product .wp-block-woocommerce-product-collection .wc-block-components-product-image { background: var(--rx-cream); margin-bottom: 15px; }
.single-product .wp-block-woocommerce-product-collection .wp-block-post-title { font-size: 18px; margin-bottom: 8px !important; }
.single-product .wp-block-woocommerce-product-collection .wp-block-button__link { background: var(--rx-ink); }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
@media (max-width: 781px) {
  .wp-site-blocks > header { position: relative; }
  .wp-block-woocommerce-product-collection { padding-left: 22px; padding-right: 22px; }
  .rastelx-home .rx-products-title { padding: 78px 22px 30px; }
  .rastelx-home .rx-hero { min-height: 620px !important; }
  .rastelx-home .rx-hero .wp-block-cover__inner-container { padding-bottom: 42px; }
  .rastelx-home .rx-hero h1 { font-size: clamp(48px,15vw,72px); }
  .rastelx-home .rx-section-title { align-items: flex-start; flex-direction: column; }
  .rastelx-home .rx-collection .wp-block-cover { min-height: 390px; }
  .rastelx-shop__hero { padding-top: 42px !important; }
  .rastelx-shop__title { font-size: clamp(48px,14vw,72px); }
  .rastelx-shop__toolbar { margin-bottom: 26px; }
  .rastelx-shop__products .wc-block-product-template { column-gap: 14px; grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 37px; }
  .rastelx-shop__products .wp-block-post-title { font-size: 18px; }
  .rastelx-shop__products .wc-block-components-product-button__button { min-width: 100%; }
  .rastelx-shop__benefits { padding: 28px 22px; }
  .rastelx-shop__benefits-inner { gap: 0; }
  .rastelx-shop__benefits-inner > .wp-block-column { justify-content: flex-start; padding: 0 8px; }
  .rastelx-shop__benefits-inner > .wp-block-column + .wp-block-column { border-left: 0; border-top: 1px solid #bcb4a7; margin-top: 22px; padding-top: 22px; }
}
@media (max-width: 781px) {
  .single-product main > .wp-block-columns { gap: 30px; }
  .single-product main .wp-block-post-title { font-size: clamp(38px,11vw,54px); }
  .single-product .wp-block-woocommerce-product-collection .wc-block-product-template { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .single-product .wp-block-woocommerce-product-collection .wc-block-product-template .wc-block-product:nth-child(n+5) { display: none; }
  .single-product .rastelx-product-assurance__items > div { align-items: flex-start; flex-direction: column; gap: 2px; justify-content: center; }
  .single-product .rastelx-product-information { grid-template-columns: 1fr; padding: 34px 26px; }
  .single-product .rastelx-product-information article { padding: 24px 0; }
  .single-product .rastelx-product-information article + article { border-left: 0; border-top: 1px solid rgba(28,40,31,.16); }
}

/* Cart */
.woocommerce-cart .wp-site-blocks main { max-width: 1400px; }
.woocommerce-cart .entry-title, .woocommerce-cart .wp-block-post-title { display: none; }
.woocommerce-cart .woocommerce { display: grid; column-gap: clamp(34px, 5vw, 78px); grid-template-columns: minmax(0, 1.55fr) minmax(330px, .78fr); margin: 0 auto; max-width: 1280px; }
.woocommerce-cart .woocommerce-notices-wrapper, .woocommerce-cart .rastelx-cart__intro { grid-column: 1 / -1; }
.rastelx-cart__intro { border-bottom: 1px solid #e5e0d6; margin: 0 0 clamp(32px, 4vw, 54px); padding: 0 0 27px; }
.rastelx-cart__eyebrow { color: var(--rx-clay); font: 700 10px/1 Arial, sans-serif; letter-spacing: .14em; margin: 0 0 13px; text-transform: uppercase; }
.rastelx-cart__intro h1 { font-size: clamp(48px, 5vw, 72px); margin: 0 0 12px; }
.rastelx-cart__count { color: #687168; font-family: Georgia, 'Times New Roman', serif; font-size: 17px; margin: 0; }
.woocommerce-cart form.woocommerce-cart-form { min-width: 0; }
.woocommerce-cart table.shop_table { border: 1px solid #ddd6c9; border-collapse: separate; border-radius: 7px; border-spacing: 0; margin: 0; overflow: hidden; }
.woocommerce-cart table.shop_table th { background: #f7f4ed; border: 0; border-bottom: 1px solid #ddd6c9; color: var(--rx-ink); font: 700 11px/1.2 Arial, sans-serif; letter-spacing: .08em; padding: 19px 15px; text-transform: uppercase; }
.woocommerce-cart table.shop_table td { border: 0; border-bottom: 1px solid #e7e1d6; padding: 24px 15px; vertical-align: middle; }
.woocommerce-cart table.shop_table tbody tr:last-child td { border-bottom: 0; }
.woocommerce-cart td.product-remove { padding-left: 18px; padding-right: 4px; width: 24px; }
.woocommerce-cart a.remove { color: var(--rx-clay) !important; font: 400 27px/1 Arial, sans-serif; height: 28px; width: 28px; }
.woocommerce-cart a.remove:hover { background: var(--rx-clay); color: #fff !important; }
.woocommerce-cart td.product-thumbnail { width: 126px; }
.woocommerce-cart td.product-thumbnail img { border-radius: 3px; height: 132px; object-fit: cover; width: 102px; }
.woocommerce-cart td.product-name { font-family: Georgia, 'Times New Roman', serif; font-size: clamp(19px, 2vw, 25px); line-height: 1.15; }
.woocommerce-cart td.product-name a { color: var(--rx-ink); text-decoration: none; }
.woocommerce-cart td.product-price, .woocommerce-cart td.product-subtotal { color: var(--rx-ink); font-size: 16px; font-weight: 600; white-space: nowrap; }
.woocommerce-cart .quantity .qty { background: #fffdfa; border: 1px solid #d2cabd; border-radius: 3px; color: var(--rx-ink); min-height: 42px; min-width: 64px; padding: 5px; text-align: center; }
.woocommerce-cart .actions { background: #f9f7f2; border-top: 1px solid #ddd6c9 !important; padding: 16px !important; }
.woocommerce-cart .coupon { align-items: stretch; display: flex; gap: 8px; }
.woocommerce-cart .coupon label { display: none; }
.woocommerce-cart .coupon .input-text { background: #fffdfa; border: 1px solid #d2cabd; border-radius: 3px; box-sizing: border-box; float: none; margin: 0; min-height: 45px; padding: 10px 13px; width: 170px; }
.woocommerce-cart button.button, .woocommerce-cart .button, .woocommerce-cart a.checkout-button { background: var(--rx-ink) !important; border: 1px solid var(--rx-ink) !important; border-radius: 3px !important; color: #fff !important; font: 700 11px/1 Arial, sans-serif !important; letter-spacing: .1em; min-height: 45px; padding: 0 18px !important; text-transform: uppercase; transition: background .2s ease, border-color .2s ease, transform .2s ease; }
.woocommerce-cart button.button:hover, .woocommerce-cart .button:hover, .woocommerce-cart a.checkout-button:hover { background: var(--rx-clay) !important; border-color: var(--rx-clay) !important; transform: translateY(-1px); }
.woocommerce-cart button[name="update_cart"] { background: transparent !important; border-color: #bdb5aa !important; color: var(--rx-ink) !important; }
.woocommerce-cart .cart-collaterals { float: none; grid-column: 2; grid-row: 3; margin: 0; width: auto; }
.woocommerce-cart .cart-collaterals .cart_totals { border: 1px solid #ddd6c9; border-radius: 7px; float: none; margin: 0; overflow: hidden; padding: 25px 26px 0; width: auto; }
.woocommerce-cart .cart-collaterals .cart_totals > h2 { font-family: Georgia, 'Times New Roman', serif; font-size: 26px; font-weight: 400; letter-spacing: -.025em; margin: 0 0 18px; }
.woocommerce-cart .cart-collaterals .shop_table { border: 0; border-radius: 0; }
.woocommerce-cart .cart-collaterals .shop_table th, .woocommerce-cart .cart-collaterals .shop_table td { background: transparent; border: 0; border-top: 1px solid #e6e0d5; font-size: 16px; padding: 16px 0; }
.woocommerce-cart .cart-collaterals .shop_table th { font: 600 16px/1.4 Arial, sans-serif; letter-spacing: 0; text-align: left; text-transform: none; }
.woocommerce-cart .cart-collaterals .shop_table td { text-align: right; }
.woocommerce-cart .cart-collaterals .order-total th, .woocommerce-cart .cart-collaterals .order-total td { color: var(--rx-ink); font-size: 20px; font-weight: 700; }
.woocommerce-cart .cart-collaterals .woocommerce-shipping-destination, .woocommerce-cart .cart-collaterals .shipping-calculator-button { color: #687168; font-size: 13px; line-height: 1.5; text-align: left; }
.woocommerce-cart .cart-collaterals .shipping-calculator-button { color: var(--rx-ink); }
.woocommerce-cart a.checkout-button { align-items: center; display: flex !important; font-size: 12px !important; justify-content: center; }
.rastelx-cart__reassurance { border-top: 1px solid #ddd6c9; color: #687168; font-size: 13px; margin: 0 -26px; padding: 17px 26px; }
.rastelx-cart__reassurance span { color: var(--rx-clay); font-size: 20px; margin-right: 8px; vertical-align: -1px; }
.woocommerce-cart .woocommerce-message, .woocommerce-cart .woocommerce-info, .woocommerce-cart .woocommerce-error { border-color: var(--rx-gold); box-shadow: none; grid-column: 1 / -1; }
@media (max-width: 900px) {
  .woocommerce-cart .woocommerce { display: block; }
  .rastelx-cart__intro { margin-bottom: 28px; }
  .woocommerce-cart .cart-collaterals { margin-top: 30px; }
}
@media (max-width: 640px) {
  .woocommerce-cart .wp-site-blocks main { padding-left: 18px; padding-right: 18px; }
  .woocommerce-cart table.shop_table thead { display: none; }
  .woocommerce-cart table.shop_table, .woocommerce-cart table.shop_table tbody, .woocommerce-cart table.shop_table tr, .woocommerce-cart table.shop_table td { display: block; width: 100%; }
  .woocommerce-cart table.shop_table tr.woocommerce-cart-form__cart-item { display: grid; grid-template-columns: 26px 88px minmax(0,1fr); padding: 18px 12px; position: relative; }
  .woocommerce-cart table.shop_table tr.woocommerce-cart-form__cart-item td { border: 0; padding: 0; }
  .woocommerce-cart td.product-remove { grid-column: 1; padding-top: 3px; }
  .woocommerce-cart td.product-thumbnail { grid-column: 2; width: auto; }
  .woocommerce-cart td.product-thumbnail img { height: 112px; width: 80px; }
  .woocommerce-cart td.product-name { font-size: 19px; grid-column: 3; }
  .woocommerce-cart td.product-price, .woocommerce-cart td.product-quantity, .woocommerce-cart td.product-subtotal { grid-column: 3; margin-top: 8px; }
  .woocommerce-cart td.product-price::before, .woocommerce-cart td.product-quantity::before, .woocommerce-cart td.product-subtotal::before { color: #687168; content: attr(data-title) ': '; font-size: 11px; font-weight: 500; text-transform: uppercase; }
  .woocommerce-cart .actions { padding: 13px !important; }
  .woocommerce-cart .coupon { align-items: stretch; flex-wrap: wrap; }
  .woocommerce-cart .coupon .input-text { flex: 1; width: auto; }
  .woocommerce-cart button[name="update_cart"] { margin-top: 10px; width: 100%; }
}

/* Checkout */
.woocommerce-checkout .wp-site-blocks main { box-sizing: border-box; margin: 0 auto; max-width: 1280px; padding-bottom: clamp(76px, 9vw, 130px); padding-top: clamp(46px, 6vw, 82px); }
.woocommerce-checkout .wp-site-blocks > main.wp-block-group, .woocommerce-checkout main.wp-block-group > .wp-block-post-content { max-width: none !important; }
.woocommerce-checkout main.wp-block-group > .wp-block-post-content > .woocommerce { max-width: 1080px !important; }
.woocommerce-checkout .entry-title, .woocommerce-checkout .wp-block-post-title { display: none; }
.woocommerce-checkout .woocommerce { margin: 0 auto; max-width: 1080px; }
.woocommerce-checkout .woocommerce-form-coupon-toggle { margin: 0 0 34px; }
.woocommerce-checkout .woocommerce-info, .woocommerce-checkout .woocommerce-error, .woocommerce-checkout .woocommerce-message { background: #f7f4ed; border: 1px solid #d9d1c4; border-radius: 4px; box-shadow: none; color: var(--rx-ink); font: 500 14px/1.5 Arial, sans-serif; margin: 0 0 18px; padding: 14px 18px 14px 44px; }
.woocommerce-checkout .woocommerce-info::before, .woocommerce-checkout .woocommerce-error::before, .woocommerce-checkout .woocommerce-message::before { color: var(--rx-clay); left: 18px; top: 14px; }
.woocommerce-checkout form.checkout_coupon { background: #f7f4ed; border: 1px solid #d9d1c4; border-radius: 4px; margin: -18px 0 34px; padding: 20px; }
.woocommerce-checkout form.checkout_coupon p { font-size: 14px; margin: 0 0 12px; }
.woocommerce-checkout form.checkout_coupon .form-row-last { margin-bottom: 0; }
.woocommerce-checkout .col2-set { display: grid; gap: clamp(34px, 5vw, 68px); grid-template-columns: minmax(0, 1.18fr) minmax(280px, .82fr); margin: 0 0 52px; width: 100%; }
.woocommerce-checkout .col2-set .col-1, .woocommerce-checkout .col2-set .col-2 { float: none; width: auto; }
.woocommerce-checkout #customer_details { display: grid; gap: clamp(34px, 5vw, 68px); grid-template-columns: minmax(0, 1.18fr) minmax(280px, .82fr); }
.woocommerce-checkout #customer_details > .col-1, .woocommerce-checkout #customer_details > .col-2 { display: block; }
.woocommerce-checkout #customer_details > :has(.woocommerce-billing-fields) { grid-column: 1; grid-row: 1; }
.woocommerce-checkout #customer_details > :has(.woocommerce-shipping-fields), .woocommerce-checkout #customer_details > :has(.woocommerce-additional-fields) { grid-column: 2; grid-row: 1; }
.woocommerce-checkout h3, .woocommerce-checkout #order_review_heading { color: var(--rx-ink); font-family: Georgia, 'Times New Roman', serif; font-size: clamp(25px, 2.5vw, 31px); font-weight: 400; letter-spacing: -.03em; line-height: 1.08; margin: 0 0 25px; }
.woocommerce-checkout .woocommerce-billing-fields h3, .woocommerce-checkout .woocommerce-shipping-fields h3 { border-bottom: 1px solid #e4ded3; padding-bottom: 15px; }
.woocommerce-checkout .form-row { margin: 0 0 17px; padding: 0; }
.woocommerce-checkout .form-row label { color: var(--rx-ink); display: block; font: 600 14px/1.35 Arial, sans-serif; margin: 0 0 8px; }
.woocommerce-checkout .form-row label .required { color: var(--rx-clay); font-weight: 700; text-decoration: none; }
.woocommerce-checkout .woocommerce-input-wrapper { display: block; }
.woocommerce-checkout .input-text, .woocommerce-checkout select, .woocommerce-checkout .select2-container--default .select2-selection--single, .woocommerce-checkout textarea { background: #fffdfa !important; border: 1px solid #d6cec2 !important; border-radius: 4px !important; box-shadow: none !important; box-sizing: border-box; color: var(--rx-ink) !important; font: 400 15px/1.35 Arial, sans-serif !important; min-height: 48px; outline: none; padding: 12px 13px !important; transition: border-color .18s ease, box-shadow .18s ease; width: 100%; }
.woocommerce-checkout textarea { min-height: 116px; resize: vertical; }
.woocommerce-checkout .input-text::placeholder, .woocommerce-checkout textarea::placeholder { color: #8b8c84; opacity: 1; }
.woocommerce-checkout .input-text:focus, .woocommerce-checkout select:focus, .woocommerce-checkout textarea:focus, .woocommerce-checkout .select2-container--open .select2-selection--single { border-color: var(--rx-clay) !important; box-shadow: 0 0 0 3px rgba(166,84,61,.1) !important; }
.woocommerce-checkout .select2-container { font-family: Arial, sans-serif; font-size: 15px; }
.woocommerce-checkout .select2-container--default .select2-selection--single { align-items: center; display: flex; height: 48px; padding-right: 33px !important; }
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered { color: var(--rx-ink); line-height: 1.35; padding: 0; }
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow { height: 46px; right: 10px; }
.woocommerce-checkout .woocommerce-shipping-fields > h3 { align-items: center; display: flex; font-family: Arial, sans-serif; font-size: 16px; font-weight: 600; letter-spacing: 0; padding-bottom: 15px; }
.woocommerce-checkout .woocommerce-shipping-fields input[type="checkbox"] { accent-color: var(--rx-ink); height: 16px; margin: 0 9px 0 0; width: 16px; }
.woocommerce-checkout .woocommerce-additional-fields { margin-top: 32px; }
.woocommerce-checkout #order_review_heading { border-top: 1px solid #e4ded3; margin: 0; padding-top: 30px; }
.woocommerce-checkout #order_review { border: 1px solid #ddd6c9; border-radius: 6px; overflow: hidden; }
.woocommerce-checkout #order_review .shop_table { border: 0; border-collapse: collapse; margin: 0; }
.woocommerce-checkout #order_review .shop_table th, .woocommerce-checkout #order_review .shop_table td { border: 0; border-bottom: 1px solid #e6e0d6; color: var(--rx-ink); font: 500 15px/1.4 Arial, sans-serif; padding: 15px 17px; }
.woocommerce-checkout #order_review .shop_table thead th { background: #f7f4ed; font-size: 11px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.woocommerce-checkout #order_review .shop_table .product-name { font-family: Georgia, 'Times New Roman', serif; font-size: 17px; }
.woocommerce-checkout #order_review .shop_table .order-total th, .woocommerce-checkout #order_review .shop_table .order-total td { border-bottom: 0; font-size: 18px; font-weight: 700; }
.woocommerce-checkout #payment { background: #f4f1eb; border-radius: 0; margin: 0; padding: 20px 17px 17px; }
.woocommerce-checkout #payment .woocommerce-info { background: #fffdfa; font-size: 13px; margin-bottom: 18px; }
.woocommerce-checkout #payment div.form-row { margin: 19px 0 0; padding: 0; }
.woocommerce-checkout #payment .place-order { display: flex; flex-direction: column; gap: 16px; }
.woocommerce-checkout #payment .place-order .button { align-self: flex-end; background: var(--rx-ink) !important; border: 1px solid var(--rx-ink) !important; border-radius: 3px; color: #fff; font: 700 11px/1 Arial, sans-serif; letter-spacing: .1em; min-height: 48px; padding: 0 20px; text-transform: uppercase; }
.woocommerce-checkout #payment .place-order .button:hover { background: var(--rx-clay) !important; border-color: var(--rx-clay) !important; }
.woocommerce-checkout #payment .woocommerce-privacy-policy-text { color: #5c665d; font-size: 13px; line-height: 1.55; margin: 0; }
@media (max-width: 781px) {
  .woocommerce-checkout .wp-site-blocks main { padding-left: 22px; padding-right: 22px; }
  .woocommerce-checkout .col2-set { display: block; margin-bottom: 38px; }
  .woocommerce-checkout .col2-set .col-2 { margin-top: 34px; }
  .woocommerce-checkout #customer_details { display: block; }
  .woocommerce-checkout #customer_details .woocommerce-shipping-fields, .woocommerce-checkout #customer_details .woocommerce-additional-fields { margin-top: 34px; }
}
.wc-block-components-notice-banner.is-success {
    background-color: #fffcf4;
    border-color: #e4c23b;
}
.wc-block-components-notice-banner.is-success>svg {
    background-color: gold;
}

.rastelx-home { --rx-ink:#1c281f; --rx-paper:#fbf9f5; --rx-cream:#f5f0e7; --rx-clay:#a6543d; --rx-gold:#c6a47d; color:var(--rx-ink); font-family:Arial,sans-serif; }
.rastelx-home .rx-eyebrow { color:var(--rx-clay); font-size:11px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; }
.rastelx-home .wp-block-heading { color:var(--rx-ink); font-family:Georgia,serif; font-weight:400; letter-spacing:-.04em; line-height:.98; }
.rastelx-home .wp-block-heading em { font-weight:400; }
.rastelx-home .wp-block-button__link { background:var(--rx-ink); border-radius:0; color:#fff; font-size:12px; font-weight:600; letter-spacing:.08em; padding:14px 18px; text-transform:uppercase; }
.rastelx-home .rx-hero .wp-block-cover__inner-container { max-width:1180px; width:100%; }
.rastelx-home .rx-hero h1 { color:#fff; font-size:clamp(52px,7vw,98px); max-width:660px; }
.rastelx-home .rx-intro { background:var(--rx-cream); }
.rastelx-home .rx-intro h2, .rastelx-home .rx-section-title h2 { font-size:clamp(42px,5vw,70px); }
.rastelx-home .rx-section-title { align-items:end; display:flex; justify-content:space-between; }
.rastelx-home .rx-collection .wp-block-cover { min-height:510px; transition:transform .25s ease; }
.rastelx-home .rx-collection .wp-block-cover:hover { transform:translateY(-5px); }
.rastelx-home .rx-collection h3 { color:#fff; font-size:34px; }
.rastelx-home .rx-dark { background:var(--rx-ink); }
.rastelx-home .rx-dark .wp-block-heading, .rastelx-home .rx-dark p { color:#f8f1e4; }
.rastelx-home .rx-quote { background:var(--rx-gold); text-align:center; }
.rastelx-home .rx-quote p { font-family:Georgia,serif; font-size:clamp(34px,4vw,62px); line-height:1.08; margin:auto; max-width:990px; }
.rastelx-home .rx-newsletter { background:var(--rx-clay); }
.rastelx-home .rx-newsletter .wp-block-heading, .rastelx-home .rx-newsletter p { color:#fff; }
@media(max-width:781px) { .rastelx-home .rx-hero { min-height:620px !important; } .rastelx-home .rx-collection .wp-block-cover { min-height:420px; } .rastelx-home .rx-section-title { display:block; } }
@media(max-width:781px){
  .wp-block-cover .wp-block-cover__image-background{
    right: 180px;
    overflow: visible;
    left:auto;
  }
}
:where(.wp-site-blocks) > * {
    margin-block-start: 0;
    margin-block-end: 0;
}
:root :where(.is-layout-flow) > * {
    margin-block-start: 0;
    margin-block-end: 0;
}