/* Cinematic storefront. Load after modern-store.css; native Woo layouts and behaviour remain in place. */
:root {
  --aft-paper: #0b0c0b;
  --aft-ink: #f3f0e8;
  --aft-muted: #aaa99f;
  --aft-line: #343831;
  --aft-soft: #151715;
  --aft-sage: #0b0c0b;
  --aft-hover: #c0c6a4;
  --aft-accent: #c0c6a4;
  --aft-field: #151715;
  --aft-field-border: #555b50;
  --aft-error: #ffb6a8;
  --aft-serif: Georgia, 'Times New Roman', serif;
  --wc-separator-color: #343831;
  --wc-form-color-text: #f3f0e8;
}
html body[class], body #page { color-scheme: dark; background: var(--aft-paper); color: var(--aft-ink); -webkit-font-smoothing: antialiased; }
body #page { font-size: 15px; }
#page h1, #page h2 { font-family: var(--aft-serif); font-weight: 400; }
#page h1 { font-size: clamp(42px, 4.5vw, 64px); line-height: 1.07; letter-spacing: -1.8px; }
#page h2 { font-size: 34px; line-height: 1.15; letter-spacing: -.8px; }
#page h3, #page h4 { font-weight: 500; }
#page p { line-height: 1.75; }
#page a { color: var(--aft-ink); }
#page a:hover { color: var(--aft-accent); }
#page :where(a, button, input, select, textarea, summary):focus-visible,
.astra-cart-drawer :where(a, button, input):focus-visible { outline: 2px solid var(--aft-accent); outline-offset: 5px; }
::selection { background: #c0c6a4; color: #0b0c0b; }
.site-content .entry-header:not(.ast-no-title) { margin-block: 45px 32px; }
#page hr, #page table, #page td, #page th { border-color: var(--aft-line); }

/* The shared image remains an uncropped panoramic strip immediately below the masthead. */
#masthead { background: var(--aft-paper); }
#masthead .main-header-bar, #masthead .ast-mobile-header-content, #masthead .main-header-menu,
#masthead .main-header-menu .sub-menu { background: var(--aft-paper); color: var(--aft-ink); }
#masthead .main-header-bar { border-bottom: 1px solid #242722; }
#masthead .ast-primary-header-bar { min-height: 88px; }
#masthead .site-title a { color: var(--aft-ink); font: 400 36px/1 var(--aft-serif); letter-spacing: -1.5px; }
#masthead .site-branding { padding-block: 12px; }
#masthead .main-header-menu .menu-link { padding-inline: 18px; color: var(--aft-muted); font-size: 13px; letter-spacing: .02em; }
#masthead .main-header-menu .current-menu-item > .menu-link { color: var(--aft-ink); background: transparent; text-decoration: underline; text-decoration-color: var(--aft-accent); text-underline-offset: 8px; text-decoration-thickness: 1px; }
#masthead .main-header-menu .menu-link:hover { color: var(--aft-ink); background: #181b17; }
#masthead .main-header-menu .sub-menu { border-color: var(--aft-line); box-shadow: 0 12px 32px #0008; }
#masthead .ast-header-account-link, #masthead .cart-container, #masthead .menu-toggle,
#masthead .ast-mobile-menu-trigger-minimal { color: var(--aft-ink); }
#masthead .ast-addon-cart-wrap { color: var(--aft-ink); border-color: var(--aft-field-border); background: transparent; }
#masthead .ast-woo-header-cart-total, #masthead .ast-woo-header-cart-total .amount { color: var(--aft-ink); font-family: Arial, Helvetica, sans-serif; }
#masthead .ast-button-wrap .menu-toggle { color: var(--aft-ink); background: transparent; border-color: var(--aft-field-border); }
#masthead .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg { color: var(--aft-ink); fill: currentColor; }
#masthead .ast-site-header-cart .ast-addon-cart-wrap i.astra-icon:after { color: var(--aft-paper); background: var(--aft-accent); border-color: var(--aft-accent); }
#masthead .ast-mobile-menu-trigger-minimal .menu-toggle { background: transparent; border-color: var(--aft-line); }
#masthead .menu-toggle:hover, #masthead .ast-header-account-link:hover { color: var(--aft-accent); }
.aft-store-banner { width: 100%; margin: 0; padding: 0; line-height: 0; background: var(--aft-paper); }
.aft-store-banner img { display: block; width: 100%; max-width: 100%; height: auto; max-height: none; margin: 0; border-radius: 0; }
.aft-preview-notice, .woocommerce-store-notice.demo_store { background: transparent; color: var(--aft-muted); font-size: 11px; }
.woocommerce-store-notice.demo_store a.woocommerce-store-notice__dismiss-link { color: var(--aft-ink); }

/* An editorial catalogue: open space, large artwork, and quiet metadata. */
.aft-catalogue-heading { padding: 58px 0 36px; gap: 36px; }
#page .aft-catalogue-heading h1 { font: 400 clamp(46px, 5vw, 72px)/1.04 var(--aft-serif); letter-spacing: -2.2px; }
.aft-catalogue-heading p { margin-top: 17px; max-width: 470px; color: var(--aft-muted); font-size: 14px; line-height: 1.7; }
.aft-catalogue-heading > p, .aft-catalogue-heading > span { max-width: none; margin: 0; padding-bottom: 4px; color: var(--aft-muted); font-size: 11px; letter-spacing: .05em; }
.aft-home-products .wc-block-product-template, .woocommerce ul.products { gap: 44px 32px !important; }
.aft-home-products .wc-block-product-template > li, .woocommerce ul.products li.product { border: 0; background: transparent; }
.aft-home-products .wp-block-woocommerce-product-image, .woocommerce .astra-shop-thumbnail-wrap { height: 330px; background: var(--aft-soft); overflow: hidden; }
.aft-home-products .wp-block-woocommerce-product-image img, .woocommerce ul.products li.product .astra-shop-thumbnail-wrap img { height: 330px !important; object-fit: contain !important; background: var(--aft-soft); transition: transform .45s ease; }
.aft-home-products .wp-block-woocommerce-product-image a:hover img, .woocommerce .astra-shop-thumbnail-wrap > a:hover img { transform: scale(1.025); }
#page .aft-home-products .wp-block-post-title { margin: 22px 0 9px; font-family: Arial, Helvetica, sans-serif; font-size: 20px !important; font-weight: 400; letter-spacing: -.3px; line-height: 1.35; }
.aft-home-products .wc-block-components-product-price, .aft-card-options { font-family: Arial, Helvetica, sans-serif; }
.aft-home-products .wp-block-woocommerce-product-price { margin-inline: 0; }
.aft-home-products .wc-block-components-product-price { color: var(--aft-ink); font-size: 15px !important; }
.aft-home-products .aft-card-options { margin: 9px 0 19px; color: var(--aft-muted); font-size: 12px; }
.aft-home-products .wp-block-woocommerce-product-button { margin: auto 0 0; }
#page .aft-home-products .wp-block-woocommerce-product-button .wp-block-button__link,
#page ul.products li.product .astra-shop-summary-wrap > .button { min-height: 48px; padding: 12px 0; justify-content: flex-start; border: 0; border-bottom: 1px solid #5a6152; background: transparent; color: var(--aft-ink); font-size: 13px; font-weight: 400; text-align: left; }
#page .aft-home-products .wp-block-woocommerce-product-button .wp-block-button__link:hover,
#page ul.products li.product .astra-shop-summary-wrap > .button:hover { background: transparent; color: var(--aft-accent); border-color: var(--aft-accent); }
.woocommerce .astra-shop-summary-wrap { padding: 22px 0 0; }
#page .woocommerce-loop-product__title { font-family: Arial, Helvetica, sans-serif; font-size: 20px !important; font-weight: 400; letter-spacing: -.3px; }
.woocommerce ul.products li.product .price { color: var(--aft-ink); font-size: 15px; }
.aft-card-options { margin-block: 9px 19px; color: var(--aft-muted); }
.woocommerce .woocommerce-products-header { padding-top: 45px; }
.woocommerce .woocommerce-products-header__title { margin-bottom: 30px; }
.woocommerce .woocommerce-result-count { font-size: 12px; }
.woocommerce .woocommerce-ordering select { border-color: var(--aft-field-border); background-color: var(--aft-field); color: var(--aft-ink); }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { color: var(--aft-ink); background: transparent; }
.woocommerce nav.woocommerce-pagination ul li span.current, .woocommerce nav.woocommerce-pagination ul li a:hover { color: var(--aft-paper); background: var(--aft-accent); }
.aft-service-strip { gap: 40px; margin: 58px 0 65px !important; padding-top: 32px; border-color: var(--aft-line); }
.aft-service-strip strong { color: var(--aft-ink); font-size: 15px; font-weight: 400; }
.aft-service-strip p { margin-top: 10px; color: var(--aft-muted); font-size: 13px; }
.aft-service-strip a, .aft-service-strip button { margin-top: 7px; color: var(--aft-accent); text-decoration-color: #646b55; }

/* Product pages retain their native variation, quantity, stock and gallery interactions. */
.woocommerce .woocommerce-breadcrumb, .woocommerce .aft-product-breadcrumb { padding-block: 15px; color: var(--aft-muted); font-size: 11px; }
.woocommerce .woocommerce-breadcrumb a { color: var(--aft-muted); }
#page div.product > div.images { background: var(--aft-soft); }
.woocommerce div.product div.images .woocommerce-product-gallery__image img { height: 470px; background: var(--aft-soft); }
.woocommerce div.product div.images .woocommerce-product-gallery__trigger { color: var(--aft-ink); background: #22261f; border: 1px solid var(--aft-line); }
.woocommerce div.product div.images .woocommerce-product-gallery__trigger::before { border-color: var(--aft-ink); }
.woocommerce div.product div.images .woocommerce-product-gallery__trigger::after { background: var(--aft-ink); }
#page div.product .product_title { margin-bottom: 22px; font: 400 46px/1.08 var(--aft-serif); letter-spacing: -1.3px; }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--aft-ink); font-family: Arial, Helvetica, sans-serif; font-size: 25px; font-weight: 400; }
.woocommerce ul.products li.product .price { font-family: Arial, Helvetica, sans-serif; }
.aft-price-currency { color: var(--aft-muted); letter-spacing: .04em; }
.woocommerce-product-details__short-description { margin: 22px 0 26px; color: var(--aft-muted); font-size: 14px; }
.woocommerce div.product form.cart .variations label { color: var(--aft-ink); font-size: 12px; font-weight: 400; }
.woocommerce div.product form.cart .variations select { background: var(--aft-field); color: var(--aft-ink); border-color: var(--aft-field-border); }
#page .aft-variable-option { min-height: 48px; border-color: var(--aft-field-border); background: transparent; color: var(--aft-ink); font-size: 13px; }
#page .aft-variable-option:hover { border-color: var(--aft-accent); background: #20241b; }
#page .aft-variable-option[aria-pressed="true"] { border-color: var(--aft-ink); background: var(--aft-ink); color: var(--aft-paper); }
#page .aft-variable-option:disabled { background: transparent; color: var(--aft-muted); border-color: var(--aft-line); }
.woocommerce div.product form.cart .reset_variations { color: var(--aft-muted); text-transform: none; letter-spacing: normal; }
.woocommerce .quantity .qty { color: var(--aft-ink); background: var(--aft-field); border-color: var(--aft-field-border); }
.woocommerce div.product form.cart .single_add_to_cart_button { min-height: 52px; }
.woocommerce .product_meta { color: var(--aft-muted); border-color: var(--aft-line); }
.aft-product-delivery, .aft-product-help { padding-top: 18px; margin-top: 18px; color: var(--aft-muted); border-color: var(--aft-line); }
.aft-product-message, .aft-message-link { color: var(--aft-accent); }
.woocommerce div.product .woocommerce-tabs { padding-top: 32px; }
.woocommerce div.product .woocommerce-tabs ul.tabs { gap: 28px; border-bottom: 1px solid var(--aft-line); }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { border-color: var(--aft-line); }
.woocommerce div.product .woocommerce-tabs ul.tabs li { color: var(--aft-muted); background: transparent; border: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { color: var(--aft-muted); font-size: 13px; font-weight: 400; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active::before { background: var(--aft-accent); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--aft-ink); }
.woocommerce div.product .woocommerce-tabs .panel { max-width: 880px; padding: 25px 0 34px; color: var(--aft-muted); }
.woocommerce div.product .related.products { margin-top: 20px; padding-top: 35px; border-color: var(--aft-line); }
.woocommerce div.product .related.products > h2 { margin-bottom: 30px; font-size: 36px; }
.woocommerce .stock.in-stock { color: var(--aft-accent); }
.woocommerce .stock.out-of-stock { color: var(--aft-error); }

/* Light primary actions, quiet secondary actions, and visible keyboard focus. */
#page a.button, #page button.button, #page input.button, #page .button.alt,
#page .wp-block-button__link, #page .aft-primary, #page .wc-block-components-button:not(.is-link) { min-height: 48px; background: var(--aft-ink); border-color: var(--aft-ink); color: var(--aft-paper); border-radius: 0; font-weight: 500; }
#page .button:hover, #page .wp-block-button__link:hover, #page .aft-primary:hover,
#page .wc-block-components-button:not(.is-link):hover { color: var(--aft-paper); background: var(--aft-accent); border-color: var(--aft-accent); }
#page .button:disabled, #page .button.disabled, #page .wc-block-components-button:disabled { color: #b4b9ae; background: #343a30; border-color: #343a30; opacity: 1; }
#page .aft-outline-button { color: var(--aft-ink); border-color: var(--aft-field-border); background: transparent; }
#page .aft-outline-button:hover { color: var(--aft-accent); border-color: var(--aft-accent); background: #171b14; }
#page .aft-text-button { color: var(--aft-accent); }
.woocommerce a.remove { color: var(--aft-ink) !important; }
.woocommerce a.remove:hover { color: var(--aft-paper) !important; background: var(--aft-accent); }

/* Classic Woo forms, account pages and third-party native form controls. */
#page input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
#page select, #page textarea { color: var(--aft-ink); background-color: var(--aft-field); border-color: var(--aft-field-border); border-radius: 0; box-shadow: none; }
#page input::placeholder, #page textarea::placeholder { color: #9c9f94; opacity: 1; }
#page input[type="checkbox"], #page input[type="radio"] { accent-color: var(--aft-accent); }
.woocommerce form .form-row label { color: var(--aft-ink); font-weight: 400; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea,
.woocommerce form .form-row select, .woocommerce .select2-container .select2-selection--single { color: var(--aft-ink); background: var(--aft-field); border-color: var(--aft-field-border); }
.woocommerce .select2-container .select2-selection__rendered { color: var(--aft-ink); }
.select2-dropdown { border-color: var(--aft-field-border); background: var(--aft-field); color: var(--aft-ink); }
.select2-container--default .select2-results__option[aria-selected="true"],
.select2-container--default .select2-results__option--highlighted[aria-selected] { background: #343d2b; color: var(--aft-ink); }
.woocommerce table.shop_table { border-color: var(--aft-line); background: transparent; }
.woocommerce table.shop_table th { background: var(--aft-soft); color: var(--aft-ink); }
.woocommerce table.shop_table td { border-color: var(--aft-line); color: var(--aft-ink); }
.woocommerce table.shop_attributes th, .woocommerce table.shop_attributes td { background: transparent; border-color: var(--aft-line); }
.woocommerce .cart-collaterals .cart_totals { background: var(--aft-soft); border-color: var(--aft-line); }
.woocommerce-checkout #payment, .woocommerce-checkout #payment div.payment_box { background: var(--aft-soft); color: var(--aft-ink); border-color: var(--aft-line); }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: var(--aft-soft); }
.woocommerce-checkout #payment ul.payment_methods { border-color: var(--aft-line); }
.woocommerce-account .woocommerce-MyAccount-navigation ul { border-color: var(--aft-line); background: transparent; }
.woocommerce-account .woocommerce-MyAccount-navigation li { border-color: var(--aft-line); }
.woocommerce-account .woocommerce-MyAccount-navigation a { color: var(--aft-muted); }
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a { background: var(--aft-soft); color: var(--aft-ink); box-shadow: inset 2px 0 var(--aft-accent); }
.woocommerce-account .woocommerce-MyAccount-content { color: var(--aft-muted); }
#page .woocommerce form.login, #page .woocommerce form.register { padding: 28px; background: transparent; border-color: var(--aft-line); border-radius: 0; }
.woocommerce-error, .woocommerce-info, .woocommerce-message { background: var(--aft-soft); border-color: var(--aft-accent); color: var(--aft-ink); }
.woocommerce-error { border-color: var(--aft-error); }
.woocommerce-error::before { color: var(--aft-error); }
.woocommerce-info::before, .woocommerce-message::before { color: var(--aft-accent); }
.woocommerce form .form-row.woocommerce-invalid label, #page .woocommerce .required { color: var(--aft-error); }
.woocommerce form .form-row.woocommerce-invalid input.input-text { border-color: var(--aft-error); }

/* Woo Blocks cart and checkout, including summaries, dropdowns and validation. */
.wc-block-cart, .wc-block-checkout { --wc-separator-color: #343831; --wc-form-color-text: #f3f0e8; color: var(--aft-ink); }
.wc-block-components-sidebar { background: var(--aft-soft); border-color: var(--aft-line); }
.wc-block-components-main, .wc-block-cart-items, .wc-block-components-order-summary { color: var(--aft-ink); }
.wc-block-components-product-name, .wc-block-components-formatted-money-amount,
.wc-block-components-product-price, .wc-block-components-totals-item__value { color: var(--aft-ink); }
.wc-block-components-product-metadata, .wc-block-components-product-metadata__description,
.wc-block-components-product-details, .wc-block-components-totals-item__description { color: var(--aft-muted); }
.wc-block-components-totals-wrapper, .wc-block-cart-items__row { border-color: var(--aft-line); }
#page .wc-block-components-quantity-selector { color: var(--aft-ink); background: var(--aft-field); border-color: var(--aft-field-border); }
#page .wc-block-components-quantity-selector__button { color: var(--aft-ink); background: transparent; box-shadow: none; }
#page .wc-block-components-quantity-selector__button:hover { color: var(--aft-accent); background: #252c20; }
#page .wc-block-components-quantity-selector__button:disabled { color: #8a9182; background: transparent; }
#page .wc-block-components-quantity-selector__input { color: var(--aft-ink); background: transparent; }
#page .wc-block-cart-item__remove-link { color: var(--aft-muted); }
#page .wc-block-cart-item__remove-link:hover { color: var(--aft-error); }
#page .wc-block-components-text-input input, #page .wc-block-components-combobox .wc-block-components-combobox-control input,
#page .wc-block-components-textarea, #page .wc-block-components-select .wc-block-components-select__select { background: var(--aft-field); color: var(--aft-ink); border-color: var(--aft-field-border); border-radius: 0; }
#page .wc-block-components-text-input label, #page .wc-block-components-combobox .wc-block-components-combobox-control label,
#page .wc-block-components-select .wc-block-components-select__label { color: var(--aft-muted); }
#page .wc-block-components-text-input input:focus, #page .wc-block-components-combobox input:focus,
#page .wc-block-components-select select:focus { border-color: var(--aft-accent); box-shadow: 0 0 0 1px var(--aft-accent); }
#page .wc-blocks-components-select .wc-blocks-components-select__container { background: var(--aft-field); color: var(--aft-ink); border-radius: 0; }
#page .wc-blocks-components-select .wc-blocks-components-select__select { background: var(--aft-field); color: var(--aft-ink); border-color: var(--aft-field-border); border-radius: 0; }
#page .wc-blocks-components-select .wc-blocks-components-select__label { color: var(--aft-muted); }
#page .wc-blocks-components-select .wc-blocks-components-select__expand { fill: var(--aft-muted); }
#page .wc-blocks-components-select .wc-blocks-components-select__select:focus { border-color: var(--aft-accent); box-shadow: 0 0 0 1px var(--aft-accent); }
#page .has-error .wc-blocks-components-select__label, #page .wc-block-components-text-input.has-error label { color: var(--aft-error); }
#page .has-error .wc-blocks-components-select__select { border-color: var(--aft-error); }
.wc-block-components-checkbox__label, .wc-block-components-radio-control__label,
.wc-block-components-radio-control__secondary-label { color: var(--aft-ink); }
#page .wc-block-components-checkbox .wc-block-components-checkbox__input { background: var(--aft-field); border-color: var(--aft-field-border); }
#page .wc-block-components-checkbox .wc-block-components-checkbox__input:checked { background: var(--aft-accent); border-color: var(--aft-accent); }
.wc-block-components-checkbox__mark { fill: var(--aft-paper); }
.wc-block-components-radio-control__input { border-color: var(--aft-field-border); background: var(--aft-field); }
.wc-block-components-radio-control__input:checked { border-color: var(--aft-accent); }
.wc-block-components-radio-control__input:checked::before { background: var(--aft-accent); }
.wc-block-components-radio-control .wc-block-components-radio-control__option,
.wc-block-components-radio-control-accordion-content { color: var(--aft-ink); background: transparent; border-color: var(--aft-line); border-radius: 0; }
.wc-block-components-radio-control .wc-block-components-radio-control__option-checked { background: #20251c; box-shadow: inset 0 0 0 1px #667155; }
.wc-block-components-combobox .components-form-token-field__suggestions-list { background: var(--aft-field); color: var(--aft-ink); border-color: var(--aft-field-border); box-shadow: 0 12px 24px #0006; }
.wc-block-components-combobox .components-form-token-field__suggestion.is-selected { background: #343d2b; color: var(--aft-ink); }
.wc-block-components-panel__button, .wc-block-components-checkout-order-summary__title { color: var(--aft-ink); }
.wp-block-woocommerce-checkout-order-summary-block, .checkout-order-summary-block-fill,
.wc-block-components-checkout-order-summary__title, .wc-block-components-order-summary-item { border-color: var(--aft-line); border-radius: 0; }
#page .wc-block-components-order-summary .wc-block-components-order-summary-item__quantity { background: var(--aft-accent); color: var(--aft-paper); }
#page .wc-block-components-order-summary .wc-block-components-order-summary-item__quantity span { color: var(--aft-paper); }
.wc-block-components-address-card { background: var(--aft-soft); color: var(--aft-ink); border-color: var(--aft-line); border-radius: 0; }
.wc-block-components-chip { background: #262e21; color: var(--aft-ink); border-color: #5b664f; border-radius: 0; }
.wc-block-components-chip__remove { color: var(--aft-ink); }
#page .wc-block-components-notice-banner { background: var(--aft-soft); color: var(--aft-ink); border: 1px solid var(--aft-line); border-radius: 0; box-shadow: none; }
#page .wc-block-components-notice-banner.is-info, #page .wc-block-components-notice-banner.is-success { background: #1a2116; border-color: #58664b; color: var(--aft-ink); }
#page .wc-block-components-notice-banner.is-error, #page .wc-block-components-notice-banner.is-warning { background: #2c1b17; border-color: #976a58; color: #ffdbce; }
#page .wc-block-components-notice-banner__content { color: inherit; }
#page .wc-block-components-notice-banner > svg { background: var(--aft-accent); fill: var(--aft-paper); }
#page .wc-block-components-notice-banner.is-error > svg, #page .wc-block-components-notice-banner.is-warning > svg { background: #ffb6a8; }
.wc-block-components-validation-error, .wc-block-components-validation-error p { color: var(--aft-error); }
#page .wc-block-components-text-input.has-error input, #page .wc-block-components-combobox.has-error input { border-color: var(--aft-error); }
.wc-block-components-skeleton, .wc-block-components-skeleton__element { --wc-skeleton-background: #242920; --wc-skeleton-highlight: #3c4434; }
.wc-block-checkout__actions_row { border-color: var(--aft-line); }

/* Astra's cart flyout sits outside the usual page wrapper. */
body .astra-cart-drawer, body .astra-cart-drawer .astra-cart-drawer-content,
body .astra-cart-drawer .widget_shopping_cart_content, #masthead .ast-site-header-cart-data .widget_shopping_cart { color-scheme: dark; background: var(--aft-soft); color: var(--aft-ink); }
body .astra-cart-drawer .astra-cart-drawer-header, body .astra-cart-drawer .woocommerce-mini-cart__total { border-color: var(--aft-line); color: var(--aft-ink); }
body .astra-cart-drawer .astra-cart-drawer-header .astra-cart-drawer-title { color: var(--aft-ink); font: 400 20px/1.4 Arial, Helvetica, sans-serif; }
body .astra-cart-drawer :where(a, button, h2, h3, .amount), #masthead .widget_shopping_cart :where(a, button, .amount) { color: var(--aft-ink); }
body .astra-cart-drawer .astra-cart-drawer-close, body .astra-cart-drawer .close { background: transparent; color: var(--aft-ink); min-width: 44px; min-height: 44px; }
body .astra-cart-drawer .woocommerce-mini-cart-item { border-color: var(--aft-line); color: var(--aft-ink); }
body .astra-cart-drawer .quantity { color: var(--aft-muted); }
#astra-mobile-cart-drawer .woocommerce-mini-cart__total strong { color: var(--aft-ink); }
body .astra-cart-drawer a.remove_from_cart_button { color: var(--aft-ink) !important; border-color: var(--aft-muted); opacity: 1; }
body .astra-cart-drawer a.remove_from_cart_button:hover { color: var(--aft-paper) !important; background: var(--aft-accent); border-color: var(--aft-accent); }
body .astra-cart-drawer a.remove_from_cart_button svg { fill: currentColor; }
body .astra-cart-drawer .woocommerce-mini-cart__buttons .button,
#masthead .widget_shopping_cart .woocommerce-mini-cart__buttons .button { min-height: 48px; background: var(--aft-ink); border: 1px solid var(--aft-ink); border-radius: 0; color: var(--aft-paper); font: 500 13px/1.4 Arial, Helvetica, sans-serif; text-transform: none; }
body .astra-cart-drawer .woocommerce-mini-cart__buttons .button:hover { background: var(--aft-accent); border-color: var(--aft-accent); }
.astra-cart-drawer-overlay { background: #000; opacity: .7; }
.wc-block-mini-cart__drawer, .wc-block-mini-cart__drawer .wc-block-components-drawer__content { background: var(--aft-soft); color: var(--aft-ink); }
.wc-block-components-drawer__close { color: var(--aft-ink); }

/* Information pages and the large, quiet wordmark footer. */
.entry-content .aft-information-page { padding-block: 55px 70px; }
.aft-page-intro { padding-bottom: 34px; margin-bottom: 42px; border-color: var(--aft-line); }
#page .aft-page-intro h1 { max-width: 900px; font: 400 clamp(42px, 4.7vw, 64px)/1.08 var(--aft-serif); letter-spacing: -1.7px; }
.aft-small-label, .aft-page-intro > p { margin-bottom: 16px; color: var(--aft-accent); font-size: 11px; letter-spacing: .08em; }
.aft-about-copy > p { margin-bottom: 25px; color: var(--aft-ink); font-size: 19px; line-height: 1.8 !important; }
.aft-delivery-card { padding: 30px; background: var(--aft-soft); border-top: 1px solid #69735b; }
#page .aft-delivery-card h2 { margin-bottom: 25px; font: 400 29px/1.2 var(--aft-serif); letter-spacing: -.4px; }
.aft-delivery-card p { color: var(--aft-muted); }
.aft-delivery-row, .aft-delivery-card dl > div { border-color: var(--aft-line); }
.aft-delivery-row p, .aft-delivery-card dt { color: var(--aft-muted); }
.aft-delivery-row p:last-child, .aft-delivery-card dd { color: var(--aft-ink); }
.aft-delivery-card > a { color: var(--aft-accent); }
.aft-help-questions details, .aft-information-page .wp-block-details { margin-bottom: 12px; border-color: var(--aft-line); }
.aft-help-questions summary, .aft-information-page .wp-block-details summary { min-height: 64px; padding-block: 18px; font-size: 17px; color: var(--aft-ink); }
.aft-help-questions details p, .aft-information-page .wp-block-details p { padding-bottom: 23px; color: var(--aft-muted); font-size: 15px; }
.aft-footer { padding: 64px 0 25px; border-top: 1px solid var(--aft-line); background: #090a09; color: var(--aft-ink); }
.aft-footer-top { align-items: end; gap: 45px; padding-bottom: 34px; }
#page .aft-footer-brand { display: inline-block; font: 400 clamp(80px, 9vw, 132px)/.9 var(--aft-serif); letter-spacing: -.065em; color: var(--aft-ink); }
.aft-footer-links { max-width: 570px; justify-content: flex-end; gap: 10px 30px; padding-bottom: 5px; }
#page .aft-footer-links a, #page .aft-footer-links button { color: var(--aft-muted); font-size: 12px; }
#page .aft-footer-links a:hover, #page .aft-footer-links button:hover { color: var(--aft-ink); }
.aft-footer-bottom { margin-top: 0; padding-top: 24px; color: var(--aft-muted); border-color: var(--aft-line); font-size: 11px; }
.aft-footer .aft-preview-notice { padding: 25px 0 0; color: #8e9287; text-align: left; }

@media (max-width: 1050px) {
  .aft-catalogue-heading { padding-top: 46px; }
  .aft-home-products .wc-block-product-template, .woocommerce ul.products { gap: 35px 24px !important; }
  .aft-home-products .wp-block-woocommerce-product-image, .woocommerce .astra-shop-thumbnail-wrap,
  .aft-home-products .wp-block-woocommerce-product-image img, .woocommerce ul.products li.product .astra-shop-thumbnail-wrap img { height: 265px !important; }
  .woocommerce div.product div.images .woocommerce-product-gallery__image img { height: 380px; }
  #page div.product .product_title { font-size: 39px; }
  .aft-footer-links { max-width: 400px; gap: 8px 22px; }
}
@media (max-width: 921px) {
  #masthead .ast-primary-header-bar { min-height: 72px; }
  #masthead .site-title a { font-size: 32px; }
  #masthead .ast-mobile-header-content .menu-link { color: var(--aft-ink); border-color: var(--aft-line); }
  #masthead .ast-mobile-header-content .current-menu-item > .menu-link { background: var(--aft-soft); text-decoration: none; }
}
@media (max-width: 700px) {
  #page h1 { font-size: 40px; letter-spacing: -1.1px; }
  #page h2 { font-size: 29px; }
  .site-content .entry-header:not(.ast-no-title) { margin-block: 30px 25px; }
  .aft-catalogue-heading { padding: 36px 0 27px; gap: 16px; }
  #page .aft-catalogue-heading h1 { font-size: 43px; letter-spacing: -1.5px; }
  .aft-catalogue-heading p { margin-top: 13px; font-size: 13px; max-width: 245px; }
  .aft-catalogue-heading > p, .aft-catalogue-heading > span { max-width: 60px; margin: 0; padding-top: 5px; font-size: 10px; letter-spacing: 0; }
  .aft-home-products .wc-block-product-template, .woocommerce ul.products { gap: 30px 15px !important; }
  .aft-home-products .wp-block-woocommerce-product-image, .woocommerce .astra-shop-thumbnail-wrap,
  .aft-home-products .wp-block-woocommerce-product-image img, .woocommerce ul.products li.product .astra-shop-thumbnail-wrap img { height: 185px !important; }
  #page .aft-home-products .wp-block-post-title { margin: 15px 0 8px; font-size: 17px !important; line-height: 1.4; letter-spacing: -.2px; }
  .aft-home-products .wp-block-woocommerce-product-price { margin-inline: 0; }
  .aft-home-products .wc-block-components-product-price { font-size: 13px !important; }
  .aft-home-products .aft-card-options { margin: 8px 0 14px; font-size: 11px; }
  .aft-home-products .wp-block-woocommerce-product-button { margin: auto 0 0; }
  #page .aft-home-products .wp-block-woocommerce-product-button .wp-block-button__link,
  #page ul.products li.product .astra-shop-summary-wrap > .button { min-height: 46px; padding: 10px 0; font-size: 12px; }
  .woocommerce .astra-shop-summary-wrap { padding: 15px 0 0; }
  #page .woocommerce-loop-product__title { font-size: 17px !important; line-height: 1.4; }
  .aft-card-options { font-size: 11px; }
  .aft-service-strip { margin: 40px 0 44px !important; padding-top: 27px; gap: 22px; }
  .aft-service-strip > * { padding-bottom: 16px; border-color: var(--aft-line); }
  .aft-service-strip > :last-child { padding-bottom: 0; }
  .aft-service-strip p { margin-top: 8px; font-size: 12px; }
  .woocommerce .woocommerce-breadcrumb, .woocommerce .aft-product-breadcrumb { padding-block: 5px; font-size: 10px; }
  .woocommerce div.product div.images .woocommerce-product-gallery__image img { height: 240px; }
  #page div.product .product_title { margin-bottom: 17px; font-size: 34px; letter-spacing: -.9px; }
  .woocommerce div.product p.price, .woocommerce div.product span.price { font-size: 24px; }
  .woocommerce-product-details__short-description { margin: 17px 0 21px; font-size: 13px; }
  #page .aft-variable-option { min-height: 46px; }
  .woocommerce div.product .woocommerce-tabs { padding-top: 22px; }
  .woocommerce div.product .woocommerce-tabs ul.tabs { gap: 0 18px; }
  .woocommerce div.product .woocommerce-tabs ul.tabs li a { font-size: 12px; }
  .woocommerce div.product .woocommerce-tabs .panel { padding: 20px 0 25px; }
  .woocommerce div.product .related.products { padding-top: 29px; }
  .woocommerce div.product .related.products > h2 { font-size: 29px; }
  .entry-content .aft-information-page { padding: 35px 0 45px; }
  .aft-page-intro { padding-bottom: 27px; margin-bottom: 29px; }
  #page .aft-page-intro h1 { font-size: 40px; letter-spacing: -1.2px; }
  .aft-about-copy > p { font-size: 17px; margin-bottom: 22px; }
  .aft-delivery-card { padding: 25px 22px; }
  #page .aft-delivery-card h2 { font-size: 27px; }
  .aft-help-questions summary, .aft-information-page .wp-block-details summary { font-size: 16px; }
  .aft-help-questions details p, .aft-information-page .wp-block-details p { font-size: 14px; }
  .aft-footer { padding: 45px 0 25px; }
  .aft-footer-top { display: block; padding-bottom: 25px; }
  #page .aft-footer-brand { font-size: 94px; }
  .aft-footer-links { justify-content: flex-start; margin-top: 25px; padding: 0; gap: 4px 20px; }
  .aft-footer-links a, .aft-footer-links button { font-size: 12px; }
  .aft-footer-bottom { margin-top: 0; padding-top: 21px; font-size: 10px; }
}
@media (max-width: 360px) {
  #masthead .site-title a { font-size: 30px; }
  #page .aft-catalogue-heading h1 { font-size: 37px; }
  .aft-home-products .wc-block-product-template, .woocommerce ul.products { gap: 28px 12px !important; }
  .aft-home-products .wp-block-woocommerce-product-image, .woocommerce .astra-shop-thumbnail-wrap,
  .aft-home-products .wp-block-woocommerce-product-image img, .woocommerce ul.products li.product .astra-shop-thumbnail-wrap img { height: 155px !important; }
  #page .aft-home-products .wp-block-post-title, #page .woocommerce-loop-product__title { margin-inline: 0; font-size: 16px !important; }
  .aft-home-products .wp-block-woocommerce-product-price, .aft-home-products .aft-card-options,
  .aft-home-products .wp-block-woocommerce-product-button { margin-inline: 0; }
  #page .aft-home-products .wp-block-woocommerce-product-button .wp-block-button__link { font-size: 11px; }
  .woocommerce div.product div.images .woocommerce-product-gallery__image img { height: 215px; }
  #page div.product .product_title { font-size: 31px; }
  #page .aft-page-intro h1 { font-size: 36px; }
  #page .aft-footer-brand { font-size: 82px; }
}
@media (prefers-reduced-motion: reduce) {
  #page *, #page *::before, #page *::after, .astra-cart-drawer { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
  .aft-home-products .wp-block-woocommerce-product-image a:hover img, .woocommerce .astra-shop-thumbnail-wrap > a:hover img { transform: none; }
}
