/* ==========================================================================
   ORPAT — Premium design layer (v1)
   A brand-honoring elevation over WoodMart: warm ink + brass accent + ivory,
   an elegant serif display (Fraunces) over the theme's clean sans, editorial
   spacing, refined components and tasteful motion. Loaded after the theme CSS.
   Reversible: remove the enqueue in functions.php (git baseline f601b83e).
   ========================================================================== */

/* Smooth in-page anchor scrolling for CTA buttons / links that jump to a #section
   (e.g. #lp-form, #apply, #library) — replaces the browser's instant, jerky jump.
   scroll-margin-top keeps the target clear of the sticky header. Honors reduced-motion. */
@media (prefers-reduced-motion: no-preference){
  html{ scroll-behavior:smooth; }
}
:target,
section[id]{ scroll-margin-top:100px; }

:root{
  /* Brand palette — derived from the ORPAT wordmark (ink) + Ajanta clock hands (brass) */
  --o-ink:#17130f;
  --o-ink-2:#2a2320;
  --o-brass:#b0894e;
  --o-brass-deep:#8f6c34;
  --o-brass-soft:#d8c39c;
  --o-ivory:#f6f2ea;
  --o-cream:#fbf9f4;
  --o-text:#2b2621;
  --o-muted:#79706500;         /* (overridden below; kept for cascade order) */
  --o-muted:#796f64;
  --o-line:#e8e0d2;
  --o-white:#fff;
  --o-shadow:0 1px 2px rgba(23,19,15,.04),0 10px 34px -12px rgba(23,19,15,.14);
  --o-shadow-sm:0 1px 2px rgba(23,19,15,.05),0 4px 14px -8px rgba(23,19,15,.12);
  /* Radius scale — SITE-WIDE consistency. Every element uses one of these; never a one-off value.
     sm=controls/chips/inputs · (base)=cards/media/sections · lg=hero & feature panels · pill=buttons/badges */
  --o-radius-sm:10px;
  --o-radius:14px;
  --o-radius-lg:22px;
  --o-radius-pill:999px;
  --o-ease:cubic-bezier(.22,.61,.36,1);
  --o-serif:'Fraunces','Cormorant Garamond',Georgia,'Times New Roman',serif;
}

/* ---- Typographic system ------------------------------------------------- */
.home h1,.home h2,.woocommerce-page h1.product_title,
h1.entry-title,.wd-page-title h1,
.orpat-serif,
.elementor-widget-heading .elementor-heading-title{
  font-family:var(--o-serif);
  letter-spacing:-.015em;
  font-weight:520;
  font-optical-sizing:auto;
}
.woocommerce div.product .product_title{
  font-family:var(--o-serif);letter-spacing:-.01em;font-weight:560;line-height:1.15;
}
/* refined section eyebrow used by our blocks */
.orpat-eyebrow{
  font-family:inherit;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;
  color:var(--o-brass-deep);font-weight:700;display:inline-flex;align-items:center;gap:.6em;
}
.orpat-eyebrow::before{content:"";width:26px;height:1px;background:var(--o-brass);display:inline-block}

/* ---- Buttons: elevate the WoodMart / Woo pills into confident CTAs ------- */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce #respond input#submit,.wd-buy-now-btn a,
.btn.btn-style-default,.single_add_to_cart_button,
a.button.wc-forward,.orpat-btn{
  background:var(--o-ink)!important;color:var(--o-white)!important;
  border:1px solid var(--o-ink)!important;border-radius:999px!important;
  font-weight:600!important;letter-spacing:.02em;text-transform:none;
  padding:.85em 1.9em!important;transition:transform .35s var(--o-ease),
    background .35s var(--o-ease),box-shadow .35s var(--o-ease),color .35s var(--o-ease)!important;
  box-shadow:var(--o-shadow-sm);
}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,.single_add_to_cart_button:hover,.orpat-btn:hover{
  background:var(--o-brass-deep)!important;border-color:var(--o-brass-deep)!important;
  color:var(--o-white)!important;transform:translateY(-2px);
  box-shadow:0 14px 30px -12px rgba(143,108,52,.5)!important;
}
/* secondary / ghost */
.orpat-btn-ghost{
  background:transparent!important;color:var(--o-ink)!important;border:1.5px solid var(--o-ink)!important;
  border-radius:999px!important;padding:.8em 1.8em!important;font-weight:600!important;
  transition:all .35s var(--o-ease);
}
.orpat-btn-ghost:hover{background:var(--o-ink)!important;color:var(--o-white)!important}

/* ---- Links & accents ---------------------------------------------------- */
.woocommerce div.product p.price,.woocommerce div.product span.price,
.woocommerce ul.products li.product .price,.price ins,.amount{
  color:var(--o-ink);font-weight:650;
}
.woocommerce div.product p.price{font-size:1.55rem;font-family:var(--o-serif);letter-spacing:-.01em}

/* ---- Product cards: quieter ground, refined hover, elegant badge -------- */
.woocommerce ul.products li.product,.wd-product{
  border-radius:var(--o-radius);transition:transform .4s var(--o-ease),box-shadow .4s var(--o-ease);
}
.wd-product:hover,.woocommerce ul.products li.product:hover{
  transform:translateY(-4px);
}
.product-labels .onsale,.product-labels .out-of-stock,
span.onsale,.wd-product .out-of-stock,.woocommerce span.onsale{
  background:var(--o-ink)!important;color:var(--o-white)!important;border-radius:999px!important;
  font-size:.62rem!important;letter-spacing:.13em;text-transform:uppercase;font-weight:700;
  padding:.5em .9em!important;box-shadow:none!important;min-height:0!important;line-height:1!important;
}
span.onsale{background:var(--o-brass-deep)!important}

/* ---- Content grounds: warm ivory instead of cold grey ------------------- */
.woocommerce-tabs,.wd-single-tabs,.related.products,.up-sells,
.woocommerce .cart-collaterals,.woocommerce-checkout .col2-set,
.wd-section-simple-title{background-color:transparent}
body.woocommerce-page,body.single-product{background-color:var(--o-cream)}

/* refined hairlines */
.woocommerce table.shop_table,.woocommerce-tabs .wd-nav-tabs,
.wd-single-tabs,hr{border-color:var(--o-line)!important}

/* ---- Header polish: elegant nav + brass hover underline ----------------- */
.whb-general-header .wd-header-nav .item-level-0 > a{
  font-weight:600;letter-spacing:.01em;position:relative;
}
.whb-general-header .wd-header-nav .item-level-0 > a::after{
  content:"";position:absolute;left:0;right:100%;bottom:-2px;height:2px;
  background:var(--o-brass);transition:right .38s var(--o-ease);border-radius:2px;
}
.whb-general-header .wd-header-nav .item-level-0:hover > a::after{right:0}

/* ---- FIX: my-account / login dropdown overflowing off-canvas (bug seen) -- */
.wd-dropdown-my-account,.wd-dropdown{
  /* max-width:min(340px,92vw);overflow:hidden; */
}
.wd-dropdown-my-account{right:0;left:auto}

/* ---- Footer: refine the dark footer with brass accents ------------------ */
.footer-container .wd-widget-title,.site-footer .widget-title,
.footer-container h4,.footer-container h5{
  letter-spacing:.02em;color:var(--o-white);font-weight:600;
}
.footer-container a:hover{color:var(--o-brass-soft)!important}

/* ---- Custom Orpat form templates: premium inputs ------------------------ */
form#refund .form-control,form#distributorship .form-control,
form#corporategifting .form-control,form#intdistributorship .form-control,
form#raisecomplaint .form-control,
.formstart input[type=text],.formstart input[type=email],.formstart input[type=tel],
.formstart input[type=number],.formstart select,.formstart textarea{
  border:1px solid var(--o-line)!important;border-radius:10px!important;
  padding:.8em 1em!important;background:var(--o-white);transition:border-color .3s var(--o-ease),box-shadow .3s var(--o-ease);
  font-size:.98rem;
}
.formstart input:focus,.formstart select:focus,.formstart textarea:focus,.form-control:focus{
  border-color:var(--o-brass)!important;box-shadow:0 0 0 3px rgba(176,137,78,.16)!important;outline:none;
}
.orpat-form-notice{border-radius:12px;font-family:inherit}

/* ---- Motion: respect reduced-motion ------------------------------------- */
@media (prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important}
}

/* ---- Focus visibility (a11y) -------------------------------------------- */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,.button:focus-visible{
  outline:2px solid var(--o-brass);outline-offset:2px;
}

/* =========================================================================
   STOREFRONT ROLLOUT — shop · product · cart · checkout · tabs
   ========================================================================= */

/* Breadcrumbs: refined, brass separators, fix the 7px left bleed */
.wd-breadcrumbs,.woocommerce-breadcrumb{
  font-size:.8rem!important;letter-spacing:.02em;color:var(--o-muted);padding-left:0!important;
}
.wd-breadcrumbs a,.woocommerce-breadcrumb a{color:var(--o-muted)}
.wd-breadcrumbs a:hover,.woocommerce-breadcrumb a:hover{color:var(--o-brass-deep)}
.wd-page-title.title-size-default .entry-title,.wd-page-title .entry-title{
  font-family:var(--o-serif);letter-spacing:-.01em;font-weight:560;
}

/* Shop / category grid */
.woocommerce ul.products li.product .wd-entities-title,
.wd-product .wd-entities-title a{font-family:var(--o-serif)!important;font-weight:560;letter-spacing:-.005em;font-size:1.02rem}
.woocommerce ul.products li.product .price,.wd-product .price{font-family:var(--o-serif);font-weight:600;color:var(--o-ink)}
.wd-product .star-rating span::before,.star-rating span::before{color:var(--o-brass)}
.wd-nav-shop-loop,.wd-shop-tools{border-color:var(--o-line)!important}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span.current{
  border-radius:10px!important;border-color:var(--o-line)!important;font-weight:600;
}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--o-ink)!important;color:#fff!important;border-color:var(--o-ink)!important}

/* Single product: quantity, meta, stock, gallery frame */
.woocommerce .quantity .qty,.quantity input.qty{
  border:1px solid var(--o-line)!important;border-radius:10px!important;font-weight:600;background:var(--o-white);
}
.wd-single-meta,.product_meta{font-size:.85rem;color:var(--o-muted)}
.wd-single-meta .wd-meta-title,.product_meta .sku_wrapper{font-weight:600}
.stock.in-stock{color:var(--o-brass-deep);font-weight:600}
.stock.out-of-stock{color:#b3261e;font-weight:600}
.woocommerce div.product div.images .wd-gallery-img,.wd-carousel-item img{border-radius:12px}
.summary .price del{color:var(--o-muted);opacity:.7}
.summary .price ins{text-decoration:none}

/* Product tabs: elegant underline nav */
.wd-single-tabs .wd-nav-tabs,.woocommerce-tabs ul.tabs{border-bottom:1px solid var(--o-line)!important}
.wd-single-tabs .wd-nav-tabs>li>a,.woocommerce-tabs ul.tabs li a{
  font-family:var(--o-sans);font-weight:600!important;letter-spacing:.02em;text-transform:none!important;color:var(--o-muted)!important;
  position:relative;background:transparent!important;border:0!important;padding:.9em 0!important;margin-right:2rem!important;
}
.wd-single-tabs .wd-nav-tabs>li.active>a,.woocommerce-tabs ul.tabs li.active a{color:var(--o-ink)!important}
.wd-single-tabs .wd-nav-tabs>li.active>a::after,.woocommerce-tabs ul.tabs li.active a::after{
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--o-brass);border-radius:2px;
}
.woocommerce-tabs .panel h2,.wd-single-tabs .wc-tab h2{font-family:var(--o-serif);font-weight:560}

/* Cart + checkout: tables, cards, order review */
.woocommerce table.shop_table{border:1px solid var(--o-line)!important;border-radius:14px!important;overflow:hidden;background:var(--o-white)}
.woocommerce table.shop_table thead th,.woocommerce table.shop_table th{font-family:var(--o-sans);font-weight:600;letter-spacing:.02em}
.woocommerce .cart_totals h2,.woocommerce-checkout h3,.woocommerce-checkout #order_review_heading{font-family:var(--o-serif);font-weight:560}
.woocommerce-checkout .woocommerce-checkout-review-order,.woocommerce .cart-collaterals .cart_totals{
  background:var(--o-white);border:1px solid var(--o-line);border-radius:16px;padding:1.6rem 1.7rem;box-shadow:var(--o-shadow-sm);
}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,
.woocommerce-checkout .form-row .select2-selection,.woocommerce-checkout select{
  border:1px solid var(--o-line)!important;border-radius:10px!important;padding:.75em .95em!important;background:var(--o-white)!important;
  transition:border-color .3s var(--o-ease),box-shadow .3s var(--o-ease);
}
.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus{
  border-color:var(--o-brass)!important;box-shadow:0 0 0 3px rgba(176,137,78,.15)!important;outline:none;
}
/* payment methods: refined boxes, brass-selected */
.woocommerce-checkout #payment{background:transparent!important}
.woocommerce-checkout #payment ul.payment_methods{border:0!important;padding:0!important}
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method{
  border:1px solid var(--o-line);border-radius:12px;margin-bottom:.7rem;padding:.35rem .3rem;background:var(--o-white);transition:border-color .3s var(--o-ease),box-shadow .3s var(--o-ease);
}
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:has(input:checked){
  border-color:var(--o-brass);box-shadow:0 0 0 2px rgba(176,137,78,.16);
}
.woocommerce-checkout #payment div.payment_box{background:var(--o-cream)!important;border-radius:10px}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:var(--o-cream)!important}
.woocommerce #payment #place_order,.wc-block-components-checkout-place-order-button{width:100%;justify-content:center;font-size:.95rem!important}

/* WooCommerce notices */
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  border-radius:12px!important;border-top:none!important;padding:1em 1.4em!important;font-size:.92rem;box-shadow:var(--o-shadow-sm);
}
.woocommerce-message{background:var(--o-cream)!important;border-left:3px solid var(--o-brass)!important;color:var(--o-text)!important}
.woocommerce-message::before,.woocommerce-info::before{color:var(--o-brass)!important}

/* consistent section rhythm on storefront */
.woocommerce .related.products,.woocommerce .up-sells{margin-top:3.5rem}
.woocommerce .related.products>h2,.woocommerce .up-sells>h2,.wd-products-element .title{
  font-family:var(--o-serif);font-weight:560;letter-spacing:-.01em;
}

/* ---- Homepage: hide the older intro video section (kept in the DB; delete this rule to restore) ---- */
body.home .elementor-element-26e8d44{ display:none !important; }
/* ---- Homepage: hide the video banner directly below the WebGL hero (kept in the DB; delete to restore) ---- */
body.home .elementor-element-55ec472{ display:none !important; }

/* =========================================================================
 * Product archive: category filter as a premium STICKY LEFT SIDEBAR (desktop),
 * product grid on the right. Tablet/mobile off-canvas behaviour left to WoodMart.
 * Filter links + behaviour untouched.
 * ========================================================================= */
@media (min-width:1025px){
  /* The inner wrapper that holds the filter column + product column had display:inline, so its
     flex-direction was moot. Force it to a flex row. Robust :has() selector (no template-id dependency). */
  .woocommerce .e-con-inner:has(> .wd-col-offcanvas-sm),
  .elementor-element-cfd9eda > .e-con-inner{
    display:flex !important; flex-direction:row !important; flex-wrap:nowrap !important;
    align-items:flex-start !important; gap:clamp(22px,2.2vw,40px) !important;
  }
  .woocommerce .wd-col-offcanvas-sm{
    flex:0 0 262px !important; width:262px !important; max-width:262px !important;
    position:sticky !important; top:96px !important; align-self:flex-start !important;
  }
  /* flex:1 1 0% + min-width:0 makes the grid fill exactly the space left of the 262px sidebar
     (the row gap is a clamp(), so a hard-coded max-width subtraction left a dead strip / mis-sized column). */
  .woocommerce .wd-col-content-sm{ flex:1 1 0% !important; min-width:0 !important; max-width:none !important; }
}
/* The product column is an Elementor container carrying a GLOBAL (all-viewport) max-height + overflow:auto
   with a hidden scrollbar. That trapped the whole product grid inside a fixed-height inner-scroll box sized
   to the short filter sidebar, so the archive rendered clipped and overlapping. Let the grid flow in the
   page at every breakpoint (the off-canvas filter is a fixed overlay and needs no inner scroll here). */
.woocommerce .wd-col-content-sm{ max-height:none !important; overflow:visible !important; }

/* the filter widget itself: clean vertical sidebar list */
.woocommerce .wd-product-category-filter{
  margin:0; padding:clamp(16px,1.4vw,20px);
  background:#faf6ee; border:1px solid #ece2d0; border-radius:14px;
}
.woocommerce .wd-product-category-filter .widget-title{
  font-family:'Fraunces',Georgia,serif; font-size:.74rem; letter-spacing:.16em;
  text-transform:uppercase; color:#8a6a38; font-weight:600; margin:0 0 14px; padding:0 0 12px;
  border-bottom:1px solid #ece2d0;
}
.woocommerce .wd-product-category-filter .wd-scroll{ max-height:none !important; }
/* .woocommerce .wd-product-category-filter .wd-scroll-content{ overflow:visible !important; } */
.woocommerce .wd-product-category-filter ul{ display:flex; flex-direction:column; gap:2px; list-style:none; margin:0; padding:0; }
.woocommerce .wd-product-category-filter ul li{ margin:0 !important; padding:0 !important; border:0 !important; }
.woocommerce .wd-product-category-filter a.wd-filter-lable{
  display:flex; align-items:center; gap:9px; padding:9px 12px; width:100%; border-radius:9px;
  background:transparent; color:#2c2620; font-size:.92rem; font-weight:500; line-height:1.3;
  text-decoration:none; transition:background .2s,color .2s;
}
.woocommerce .wd-product-category-filter a.wd-filter-lable:hover{ background:#fff; color:#8a6a38; }
.woocommerce .wd-product-category-filter li.chosen a.wd-filter-lable,
.woocommerce .wd-product-category-filter li.wd-active a.wd-filter-lable,
.woocommerce .wd-product-category-filter li.current-cat a.wd-filter-lable{ background:transparent; color:#8a6a38; font-weight:700; }

/* Hide pure-SEO / demo categories from the shop category filter (keyword landing terms, not
   real shopping categories). Pure CSS — no server-side get_terms hook, which hung the category
   archive on this small server. IDs: 188 wall-clock-manufacturer, 269 vintage-clock, 415 xxl-clock,
   262 digital-clock-for-table, 82 luxury-in-motion, 413 swarovski-elements, 280 premium-diamond-clocks,
   353 uncategorized. */
.wd-product-category-filter li.cat-item-188,
.wd-product-category-filter li.cat-item-269,
.wd-product-category-filter li.cat-item-415,
.wd-product-category-filter li.cat-item-262,
.wd-product-category-filter li.cat-item-82,
.wd-product-category-filter li.cat-item-413,
.wd-product-category-filter li.cat-item-280,
.wd-product-category-filter li.cat-item-144,
.wd-product-category-filter li.cat-item-106,
.wd-product-category-filter li.cat-item-353{ display:none !important; }

/* =========================================================================
 * Premium attribute filter panel (inc/orpat-shop-filters.php) — replaces WoodMart's
 * misconfigured filters-area on the shop / category archive.
 * ========================================================================= */
.opg-shop-filters{ background:#fbf7ef; border:1px solid #ece2d0; border-radius:14px; padding:16px 18px; margin:0 0 22px; }
.opg-sf-inner{ display:flex; flex-wrap:wrap; align-items:flex-start; gap:20px 30px; }
.opg-sf-group{ display:flex; flex-direction:column; gap:9px; min-width:0; }
.opg-sf-group__label{ font-size:.7rem; letter-spacing:.14em; text-transform:uppercase; color:#8a8073; font-weight:600; }
.opg-sf-items{ display:flex; flex-wrap:wrap; gap:8px; }
.opg-sf-chip{ display:inline-flex; align-items:center; gap:6px; padding:6px 12px; border-radius:999px;
  border:1px solid #dcd0bb; background:#fff; color:#2c2620; font-size:.85rem; text-decoration:none;
  transition:border-color .2s,background .2s,color .2s; }
.opg-sf-chip:hover{ border-color:#b0894e; }
.opg-sf-chip.is-on{ background:#b0894e; border-color:#b0894e; color:#fff; }
.opg-sf-chip__c{ font-size:.72rem; opacity:.65; }
.opg-sf-chip.is-on .opg-sf-chip__c{ opacity:.9; }
.opg-sf-swatch{ display:inline-flex; flex-direction:column; align-items:center; gap:5px; width:52px; text-decoration:none; }
.opg-sf-swatch__dot{ width:30px; height:30px; border-radius:50%; background:var(--sw,#ccc);
  border:1.5px solid rgba(0,0,0,.14); box-shadow:0 0 0 2px transparent; transition:box-shadow .2s,transform .2s; }
.opg-sf-swatch:hover .opg-sf-swatch__dot{ transform:translateY(-1px); }
.opg-sf-swatch.is-on .opg-sf-swatch__dot{ box-shadow:0 0 0 2px #b0894e; }
.opg-sf-swatch.is-noswatch .opg-sf-swatch__dot{ background:#efe7d8; }
.opg-sf-swatch__t{ font-size:.68rem; color:#6f675b; text-align:center; line-height:1.1; max-width:52px;
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.opg-sf-swatch.is-on .opg-sf-swatch__t{ color:#8a6a38; font-weight:600; }
.opg-sf-pricein{ display:flex; align-items:center; gap:6px; }
.opg-sf-pricein input{ width:74px; padding:6px 8px; border:1px solid #dcd0bb; border-radius:8px; background:#fff;
  font-size:.85rem; color:#2c2620; }
.opg-sf-pricein span{ color:#8a8073; }
.opg-sf-pricein button{ padding:6px 13px; border:1px solid #b0894e; background:#b0894e; color:#fff;
  border-radius:8px; font-size:.8rem; cursor:pointer; }
.opg-sf-pricein button:hover{ background:#8a6a38; border-color:#8a6a38; }
.opg-sf-foot{ margin-top:12px; padding-top:12px; border-top:1px solid #ece2d0; }
.opg-sf-clear{ font-size:.8rem; color:#8a6a38; text-decoration:underline; }
.opg-sf-clear:hover{ color:#b0894e; }
@media (max-width:600px){
  .opg-shop-filters{ padding:14px; }
  .opg-sf-inner{ gap:16px 20px; }
  .opg-sf-swatch{ width:46px; }
  .opg-sf-swatch__dot{ width:26px; height:26px; }
}

/* =========================================================================
 * Single product: premium specification table + clean, consistent CTA group.
 * ========================================================================= */
.woocommerce .woocommerce-product-attributes.shop_attributes,
.woocommerce table.shop_attributes{ border:0 !important; background:transparent; margin:6px 0 22px; }
.woocommerce .shop_attributes tr,
.woocommerce table.shop_attributes tr{ border-bottom:1px solid #ece2d0 !important; background:transparent !important; }
.woocommerce .shop_attributes th,
.woocommerce table.shop_attributes th{ background:transparent !important; border:0 !important;
  font-family:'Fraunces',Georgia,serif; font-weight:600; color:#17130f; padding:13px 18px 13px 0 !important; width:38%; }
.woocommerce .shop_attributes td,
.woocommerce table.shop_attributes td{ background:transparent !important; border:0 !important;
  padding:13px 0 !important; color:#5b5346; font-style:normal; }
/* CTA group: even spacing + consistent premium pills, clear primary (Add to cart) */
.single-product form.cart{ display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
.single-product .single_add_to_cart_button,
.single-product .wc-buy-now-btn,
.single-product .wd-buy-now-btn{ border-radius:999px !important; letter-spacing:.04em; }
.single-product .wd-buy-now-btn.btn-accent{ box-shadow:0 14px 30px -14px rgba(176,137,78,.6); }

/* =========================================================================
 * Product cards (shop / archive): "Add to cart" = readable WHITE OUTLINE button
 * (secondary), distinct from the solid-black "Buy Now". (A prior pass set dark
 * text on the button's black background, making the text invisible.)
 * ========================================================================= */
.woocommerce .wd-product a.add_to_cart_button:not(.wc-buy-now-btn),
.woocommerce .wd-product .wd-add-btn > a:not(.wc-buy-now-btn),
.woocommerce ul.products li.product a.add_to_cart_button:not(.wc-buy-now-btn){
  color:#fff !important; border:1px solid rgba(216,184,119,.55) !important; border-radius:999px !important;
}
.woocommerce .wd-product a.add_to_cart_button:not(.wc-buy-now-btn):hover,
.woocommerce .wd-product .wd-add-btn > a:not(.wc-buy-now-btn):hover,
.woocommerce ul.products li.product a.add_to_cart_button:not(.wc-buy-now-btn):hover{
  color:#e7cd97 !important; border-color:#b0894e !important;
}
.woocommerce ul.products li.product .price,
.woocommerce .wd-product .price{ color:#8a6a38; font-weight:600; }

/* Single product: the WoodMart sticky product-summary bar (wd-sticky-container dc50c) followed the
   scroll ("scroll-bind" behaviour). Make it flow in place instead of sticking. Header stays sticky. */
.single-product .elementor-element-dc50c{ position:static !important; top:auto !important; }
.single-product .wd-sticky-btn{ display:none !important; }

/* =========================================================================
 * Product category / shop banner: showcase the uploaded banner image as a
 * premium hero — full-bleed image + legibility scrim + the category name and
 * tagline overlaid. (Earlier the image was hidden in favour of a plain band;
 * a proper banner now exists, so we present it instead of suppressing it.)
 * Applies to every dynamic product-category / sub-category / shop archive.
 * ========================================================================= */
.woocommerce.archive .wd-page-title,
.post-type-archive-product .wd-page-title{
  min-height:clamp(200px,25vw,300px); display:flex; align-items:center;
  position:relative; overflow:hidden;
  background:#14100b !important; /* fallback if a banner image is ever missing */
}
/* Show WoodMart's banner image (was display:none) and make it cover the band */
.woocommerce.archive .wd-page-title .wd-page-title-bg,
.post-type-archive-product .wd-page-title .wd-page-title-bg{
  display:block !important; position:absolute; inset:0; z-index:0; margin:0;
}
.woocommerce.archive .wd-page-title .wd-page-title-bg img,
.post-type-archive-product .wd-page-title .wd-page-title-bg img{
  width:100% !important; height:100% !important; object-fit:cover; object-position:center;
}
/* Legibility scrim (left-weighted) so the cream title reads over any image */
.woocommerce.archive .wd-page-title::before,
.post-type-archive-product .wd-page-title::before{
  content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(90deg,rgba(10,8,5,.82) 0%,rgba(10,8,5,.55) 40%,rgba(10,8,5,.12) 74%,rgba(10,8,5,.34) 100%);
}
/* brass hairline at the base */
.woocommerce.archive .wd-page-title::after,
.post-type-archive-product .wd-page-title::after{
  content:""; position:absolute; left:0; bottom:0; width:100%; height:3px; z-index:2;
  background:linear-gradient(90deg,#b0894e,transparent 60%);
}
.woocommerce.archive .wd-page-title .title-wrapper,
.post-type-archive-product .wd-page-title .title-wrapper{ text-align:left; position:relative; z-index:2; }
.woocommerce.archive .wd-page-title .entry-title,
.woocommerce.archive .wd-page-title .main-page-title,
.woocommerce.archive .wd-page-title h1,
.post-type-archive-product .wd-page-title h1{
  font-family:'Fraunces',Georgia,serif !important; color:#fbf5ea !important; font-weight:600 !important;
  font-size:clamp(1.9rem,3.6vw,3rem) !important; margin:0 !important; letter-spacing:-.01em;
  text-shadow:0 2px 18px rgba(0,0,0,.45);
}
.woocommerce.archive .wd-page-title .woodmart-breadcrumbs,
.woocommerce.archive .wd-page-title .wd-breadcrumbs{ color:#e9ddc9 !important; }
.woocommerce.archive .wd-page-title .woodmart-breadcrumbs a,
.woocommerce.archive .wd-page-title a{ color:#e6c68a !important; }
/* the per-category tagline (echoed into the archive description area) */
.orpat-cat-tagline{ font-family:'Jost','Inter',sans-serif; color:#6f675b; font-size:clamp(1rem,1.4vw,1.15rem);
  line-height:1.55; max-width:70ch; margin:0 0 18px; }
.orpat-cat-tagline.is-banner{ color:#cabfad; margin:10px 0 0; max-width:62ch; }

/* =============================================================================
 * Custom brand cursor — a brass "second-hand" dot with a trailing precision
 * ring that opens up over anything clickable. Desktop + fine-pointer only;
 * native caret kept on text fields; fully disabled for reduced-motion / touch.
 * ========================================================================== */
@media (hover:hover) and (pointer:fine){
  html.orpat-cursor-on, html.orpat-cursor-on a, html.orpat-cursor-on button,
  html.orpat-cursor-on [role="button"], html.orpat-cursor-on .opg-btn{ cursor:none; }
  html.orpat-cursor-on input, html.orpat-cursor-on textarea, html.orpat-cursor-on select,
  html.orpat-cursor-on [contenteditable]{ cursor:text; }
  .orpat-cur{ position:fixed; top:0; left:0; z-index:99998; pointer-events:none; will-change:transform; }
  .orpat-cur-ring{ width:34px; height:34px; margin:-17px 0 0 -17px; border:1.5px solid var(--o-brass);
    border-radius:var(--o-radius-pill); background:transparent;
    transition:width .28s var(--o-ease),height .28s var(--o-ease),margin .28s var(--o-ease),
      background .28s var(--o-ease),border-color .28s var(--o-ease),opacity .28s var(--o-ease); }
  .orpat-cur-dot{ width:6px; height:6px; margin:-3px 0 0 -3px; background:var(--o-brass);
    border-radius:var(--o-radius-pill); transition:opacity .2s var(--o-ease); }
  html.orpat-hover .orpat-cur-ring{ width:56px; height:56px; margin:-28px 0 0 -28px;
    background:rgba(176,137,78,.12); border-color:var(--o-brass-deep); }
  html.orpat-hover .orpat-cur-dot{ opacity:0; }
  html.orpat-down .orpat-cur-ring{ width:26px; height:26px; margin:-13px 0 0 -13px; }
}
@media (prefers-reduced-motion:reduce){ .orpat-cur{ display:none; } html.orpat-cursor-on{ cursor:auto; } }

/* =============================================================================
 * ROUND-EDGE NORMALIZATION (site-wide) + premium Account / Cart
 * Fulfils the "same round edges + consistent components everywhere" rule:
 * every button = pill token, every input = sm token, every card/panel = base token.
 * ========================================================================== */
/* Buttons -> pill */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,
.btn,.button,.wd-buy-now-btn a,.single_add_to_cart_button,a.button.wc-forward,.added_to_cart,
.woocommerce-Button,.checkout-button,.wc-proceed-to-checkout .button,.wp-block-button__link,
button.dt-sc-button,.wd-nav-search .searchsubmit,input[type=submit],.woocommerce-form-login__submit,
.woocommerce-form-register__submit,.woocommerce-form-coupon .button,.actions .button{
  border-radius:var(--o-radius-pill)!important;
}
/* Inputs / selects -> sm */
input[type=text],input[type=email],input[type=tel],input[type=number],input[type=password],
input[type=search],input[type=url],input[type=date],select,textarea,.select2-container .select2-selection,
.woocommerce form .form-row input.input-text,.woocommerce-input-wrapper input,.wd-search-form .searchform input.s{
  border-radius:var(--o-radius-sm)!important;
}
/* Cards / panels / tables / notices -> base */
.woocommerce ul.products li.product,.wd-product,.wd-card,.card,.woocommerce table.shop_table,
.cart_totals,.woocommerce-info,.woocommerce-message,.woocommerce-error,.woocommerce-noreviews,
.wd-dropdown,.wd-dropdown-my-account,.quantity,.wd-nav-search .searchform,.select2-dropdown{
  border-radius:var(--o-radius)!important;
}

/* --- MY ACCOUNT ----------------------------------------------------------- */
body.woocommerce-account .site-content,body.woocommerce-account .wd-content-area{ background:var(--o-cream); }
.woocommerce-account .woocommerce{ max-width:1080px; margin-inline:auto; }
.woocommerce-account .u-columns,.woocommerce-account form.woocommerce-form-login+*,
.woocommerce-account .col2-set{ display:grid; grid-template-columns:1fr 1fr; gap:26px; max-width:920px; margin:40px auto 0; }
@media(max-width:768px){ .woocommerce-account .u-columns,.woocommerce-account .col2-set{ grid-template-columns:1fr; } }
.woocommerce-account form.login,.woocommerce-account form.register,
.woocommerce-account .woocommerce-ResetPassword{
  background:var(--o-white)!important; border:1px solid var(--o-line)!important; border-radius:var(--o-radius-lg)!important;
  padding:clamp(26px,4vw,40px)!important; box-shadow:var(--o-shadow-sm); }
.woocommerce-account h2,.woocommerce-ResetPassword h2{ font-family:var(--o-serif); font-weight:600; color:var(--o-ink); font-size:1.5rem; margin-bottom:.6em; }
.woocommerce form .form-row label{ font-weight:500; color:var(--o-ink); font-size:.88rem; margin-bottom:6px; }
.woocommerce-form-login__submit,.woocommerce-form-register__submit,.woocommerce-ResetPassword .button{ width:100%; justify-content:center; }
/* account dashboard */
.woocommerce-MyAccount-navigation ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:3px; }
.woocommerce-MyAccount-navigation li a{ display:block; padding:12px 16px; border-radius:var(--o-radius-sm); color:var(--o-text); text-decoration:none; transition:background .25s var(--o-ease),color .25s var(--o-ease); }
.woocommerce-MyAccount-navigation li a:hover{ background:var(--o-ivory); color:var(--o-ink); }
.woocommerce-MyAccount-navigation li.is-active a{ background:var(--o-ink); color:#fff; }

/* --- CART ----------------------------------------------------------------- */
body.woocommerce-cart .cart_totals h2,body.woocommerce-cart h1{ font-family:var(--o-serif); color:var(--o-ink); }
.woocommerce-cart .cart-collaterals .cart_totals{ background:var(--o-white); border:1px solid var(--o-line); border-radius:var(--o-radius-lg); padding:26px 28px; box-shadow:var(--o-shadow-sm); }
.woocommerce-cart table.cart{ background:var(--o-white); }
.woocommerce-cart .wc-proceed-to-checkout .checkout-button{ width:100%; justify-content:center; padding:1em 1.9em!important; }
.woocommerce .cart .actions .coupon input.input-text{ min-height:44px; }

/* =============================================================================
 * Premium pages: full-bleed layout + fixes + hover micro-interactions
 * ========================================================================== */
/* Free premium pages from WoodMart's max-width content container so section
   backgrounds AND the Ajanta hero go edge-to-edge on big screens, and remove
   the top gap between the header and the first section (.opg-wrap keeps text readable). */
.orpat-premium-page .wd-content-layout.container,
.orpat-premium-page .main-page-wrapper > .container{ max-width:none !important; padding-left:0 !important; padding-right:0 !important; }
.orpat-premium-page .main-page-wrapper{ padding-top:0 !important; margin-top:0 !important; }
.orpat-premium-page .wd-content-layout{ padding-top:0 !important; margin-top:0 !important; }
.orpat-premium-page .opg-page{ overflow-x:clip; }

/* Hide ONLY the malformed search form that rendered with no input (shows just its
   data-count "20"). Functional search forms keep their input, so they stay visible. */
form.searchform:not(:has(input)),.woodmart-ajax-search:not(:has(input)){ display:none !important; }

/* ---- Subtle, eye-catching hover micro-interactions (site-wide) ---------- */
.woocommerce ul.products li.product a.product-image-link,.wd-product .product-image-link{ overflow:hidden; }
.woocommerce ul.products li.product img,.wd-product .product-image-link img{ transition:transform .7s var(--o-ease); }
.woocommerce ul.products li.product:hover img,.wd-product:hover .product-image-link img{ transform:scale(1.06); }
.opg-prod-img,.opg-pc-img,.opg-rel-img,.opg-cat-img{ transition:transform .6s var(--o-ease); }
.opg-prod:hover .opg-prod-img,.opg-post-card:hover .opg-pc-img,.opg-rel:hover .opg-rel-img{ transform:scale(1.04); }
.footer-container a,.site-footer a{ transition:color .3s var(--o-ease),padding-left .3s var(--o-ease); }
.footer-container a:hover,.site-footer a:hover{ padding-left:5px; }
/* brass shimmer sweep across pill buttons on hover */
.opg-btn{ position:relative; overflow:hidden; }
.opg-btn::before{ content:""; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(120deg,transparent 32%,rgba(255,255,255,.20) 50%,transparent 68%);
  transform:translateX(-130%); transition:transform .7s var(--o-ease); }
.opg-btn:hover::before{ transform:translateX(130%); }

/* =============================================================================
 * Single ORPAT loader — 3D letters (O R P A T) flip in one after another, on a
 * loop, with a gold shine sweep, until the page finishes loading. Everything
 * else WoodMart draws in the preloader (the spinner ring + the logo) is hidden
 * so ORPAT is the only mark on screen.
 * ========================================================================== */
.wd-preloader-img{ width:auto !important; height:auto !important; min-width:0 !important;
  border:0 !important; border-radius:0 !important; background:none !important;
  box-shadow:none !important; animation:none !important; }
.wd-preloader-img::before,.wd-preloader-img::after{ content:none !important; display:none !important; }
.wd-preloader-img > *:not(.orpat-loader){ display:none !important; }

.orpat-loader{ display:inline-flex; gap:.12em; perspective:760px; line-height:1;
  font-family:var(--o-serif); font-weight:500; font-size:clamp(2.2rem,6vw,3.8rem); letter-spacing:.14em; }
.orpat-loader span{ display:inline-block; transform-origin:50% 50%; opacity:0; will-change:transform,opacity;
  background:linear-gradient(100deg,#8a6a3a 0%,#b0894e 38%,#f3e2b8 49%,#fffaf0 50%,#f3e2b8 51%,#b0894e 62%,#8a6a3a 100%);
  background-size:250% 100%; -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent; color:transparent;
  filter:drop-shadow(0 4px 12px rgba(176,137,78,.4));
  animation:orpat-flip 2.7s cubic-bezier(.4,.14,.2,1) infinite, orpat-shine 2.7s linear infinite; }
.orpat-loader span:nth-child(1){ animation-delay:0s }
.orpat-loader span:nth-child(2){ animation-delay:.18s }
.orpat-loader span:nth-child(3){ animation-delay:.36s }
.orpat-loader span:nth-child(4){ animation-delay:.54s }
.orpat-loader span:nth-child(5){ animation-delay:.72s }
@keyframes orpat-flip{
  0%   { opacity:0; transform:rotateY(-90deg) translateZ(-40px) scale(.92); }
  11%  { opacity:1; transform:rotateY(0deg) translateZ(0) scale(1); }
  60%  { opacity:1; transform:rotateY(0deg) translateZ(0) scale(1); }
  75%  { opacity:0; transform:rotateY(88deg) translateZ(-40px) scale(.92); }
  100% { opacity:0; transform:rotateY(88deg) translateZ(-40px) scale(.92); }
}
@keyframes orpat-shine{ 0%{ background-position:250% 0 } 100%{ background-position:-250% 0 } }
@media (prefers-reduced-motion:reduce){
  .orpat-loader span{ opacity:1; transform:none; animation:orpat-shine 3.4s linear infinite; }
}

/* =============================================================================
 * Premium full-bleed VIDEO hero (live homepage) — Ajanta Magic Moments.
 * Horizontal video on desktop, vertical on mobile; brand scrim + overlay copy.
 * ========================================================================== */
.opg-vhero{ position:relative; width:100vw; margin-left:calc(50% - 50vw); overflow:hidden;
	background:var(--o-ink); line-height:0; }
.opg-vhero__media{ display:block; width:100%; height:auto; }
.opg-vhero__media--mob{ display:none; }
@media (max-width:767px){
	.opg-vhero__media--desk{ display:none; }
	.opg-vhero__media--mob{ display:block; }
}
/* Self-contained hero component styles (homepage only loads orpat-premium.css). */
.opg-vhero .opg-eyebrow.is-light{ display:inline-flex; align-items:center; gap:.6em;
	font-size:.72rem; font-weight:600; letter-spacing:.22em; text-transform:uppercase;
	color:var(--o-brass-soft,#e6cf9e); }
.opg-vhero .opg-eyebrow.is-light::before{ content:""; width:26px; height:1px; background:var(--o-brass-soft,#e6cf9e); }
.opg-vhero .opg-serif{ font-family:var(--o-serif,"Fraunces",Georgia,serif); }
.opg-vhero .opg-btn{ display:inline-flex; align-items:center; justify-content:center; gap:.5em;
	font-weight:600; font-size:.95rem; line-height:1; padding:15px 30px;
	border-radius:var(--o-radius-pill,999px); border:1px solid transparent; text-decoration:none; cursor:pointer;
	transition:transform .4s var(--o-ease,cubic-bezier(.22,.61,.36,1)), background .3s, color .3s, border-color .3s; }
.opg-vhero .opg-btn--solid{ background:var(--o-brass,#b0894e); color:#fff; box-shadow:0 10px 26px -12px rgba(176,137,78,.7); }
.opg-vhero .opg-btn--solid:hover{ transform:translateY(-3px); }
.opg-vhero .opg-btn--ghost{ background:transparent; color:#fff; border-color:rgba(255,255,255,.42); }
.opg-vhero .opg-btn--ghost:hover{ transform:translateY(-3px); border-color:#fff; }

/* Footer copyright: only one column of content in WoodMart's two-column layout, so it
   gets squeezed to half width and wraps. Give it full width so it sits on one line. */
.wd-copyrights.wd-layout-two-columns .container.wd-grid-g{ display:block !important; }
.wd-copyrights .wd-col-start{ text-align:center; }
@media (min-width:768px){ .wd-copyrights .wd-col-start{ white-space:nowrap; } }

/* Category page-title banner — mobile: the banner is a very wide 2048x344 image
   with the category name + tagline baked in. WoodMart drops it into a 200px+ black
   band and covers/crops it, so on phones the text gets cut and black bars show above
   and below. Instead, collapse the band to the image's OWN height so it fills the
   width edge-to-edge — no black patch, no crop, no stretch. The overlaid heading is
   redundant (it's in the image) so we hide it visually but keep it in the DOM for
   SEO/a11y. (2026-07)
   NOTE: this shows the full desktop banner, so it's short on phones. A taller, more
   prominent mobile banner needs a mobile-cropped image (see image-swap workflow). */
@media (max-width:768px){
  .woocommerce.archive .wd-page-title,
  .post-type-archive-product .wd-page-title,
  .tax-product_cat .wd-page-title{
    min-height:0 !important; height:auto !important;
    background:transparent !important; display:block !important;
  }
  .woocommerce.archive .wd-page-title .wd-page-title-bg,
  .post-type-archive-product .wd-page-title .wd-page-title-bg,
  .tax-product_cat .wd-page-title .wd-page-title-bg{
    position:relative !important; inset:auto !important;
  }
  .woocommerce.archive .wd-page-title .wd-page-title-bg img,
  .post-type-archive-product .wd-page-title .wd-page-title-bg img,
  .tax-product_cat .wd-page-title .wd-page-title-bg img{
    position:static !important; width:100% !important; height:auto !important;
    object-fit:fill !important; /* moot at height:auto — no crop, no stretch */
  }
  /* drop the dark scrim + overlaid heading so nothing overlaps the baked-in text */
  .woocommerce.archive .wd-page-title::before,
  .post-type-archive-product .wd-page-title::before,
  .tax-product_cat .wd-page-title::before{ display:none !important; }
  .woocommerce.archive .wd-page-title .title-wrapper,
  .post-type-archive-product .wd-page-title .title-wrapper,
  .tax-product_cat .wd-page-title .title-wrapper{
    position:absolute !important; width:1px !important; height:1px !important;
    overflow:hidden !important; clip:rect(0 0 0 0) !important; clip-path:inset(50%) !important;
    white-space:nowrap !important; padding:0 !important; margin:-1px !important; border:0 !important;
  }
}

/* =============================================================================
 * Single product — colour-variant siblings ("Available in these colours").
 * Rendered by inc/orpat-variants.php on woocommerce_single_product_summary (24).
 * ========================================================================== */
.opg-variants{ margin:18px 0 22px; }
.opg-variants__label{ display:block; font-size:.72rem; letter-spacing:.16em; text-transform:uppercase;
  color:var(--o-muted,#8a8073); margin-bottom:11px; }
.opg-variants__row{ display:flex; flex-wrap:wrap; gap:12px; }
.opg-variant{ display:flex; flex-direction:column; align-items:center; gap:6px; width:66px; text-decoration:none; }
.opg-variant img{ width:66px; height:66px; object-fit:cover; border-radius:10px; background:#fff;
  border:1.5px solid #e3d9c8; transition:border-color .25s var(--o-ease,ease), transform .25s var(--o-ease,ease); display:block; }
.opg-variant:hover img{ border-color:var(--o-brass,#b0894e); transform:translateY(-2px); }
.opg-variant.is-current img{ border-color:var(--o-brass,#b0894e); box-shadow:inset 0 0 0 1px var(--o-brass,#b0894e); }
.opg-variant__c{ font-size:.72rem; line-height:1.2; color:var(--o-ink,#171310); text-align:center;
  max-width:66px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.opg-variant.is-current .opg-variant__c{ font-weight:700; color:var(--o-brass-deep,#946f34); }

/* Single-product "Share on WhatsApp" button (inc/orpat-product-share.php) */
.opg-wa-share{ display:inline-flex; align-items:center; gap:.5em; margin:16px 0 6px; padding:9px 16px;
  border-radius:999px; background:#25D366; color:#fff; text-decoration:none; font-weight:600; font-size:.9rem;
  line-height:1; box-shadow:0 6px 18px -8px rgba(37,211,102,.6);
  transition:background .25s var(--o-ease,ease), transform .25s var(--o-ease,ease); }
.opg-wa-share:hover{ background:#1da851; color:#fff; transform:translateY(-1px); }
.opg-wa-share svg{ flex:0 0 auto; }

/* ORPAT-CHECKOUT-CSS:START */
/* Scoped to .woocommerce-checkout so no other page is affected. Classic light-premium. */
:root{
  --opc-ink:#1c1a17; --opc-ink-2:#4a463f; --opc-muted:#8a8478;
  --opc-line:#e7e2d8; --opc-line-2:#d8d1c3; --opc-bg:#faf8f3; --opc-card:#ffffff;
  --opc-gold:#8a6a38; --opc-gold-2:#a98846; --opc-gold-soft:#f4efe4;
  --opc-serif:"Fraunces",Georgia,"Times New Roman",serif;
}
body.woocommerce-checkout{ background:var(--opc-bg); }
body.woocommerce-checkout .wd-page-content,
body.woocommerce-checkout .checkout.woocommerce-checkout{ background:transparent; }

/* --- logo (swap the broken demo logo for the Orpat logo) --- */
body.woocommerce-checkout .wd-main-logo img,
body.woocommerce-checkout .site-logo img{
  content:url("https://orpatgroup.s3.ap-south-1.amazonaws.com/wp-content/uploads/2021/02/ORPAT-LOGO.png");
  max-width:150px !important; height:auto; margin:8px auto 4px;
}

/* --- coupon notice --- */
body.woocommerce-checkout .woocommerce-form-coupon-toggle{ max-width:1120px; margin:0 auto 26px; }
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{
  background:var(--opc-gold-soft); border:1px solid var(--opc-line-2); border-left:3px solid var(--opc-gold);
  border-radius:12px; color:var(--opc-ink-2); font-size:14px; padding:14px 20px; box-shadow:none;
}
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info a,
body.woocommerce-checkout a{ color:var(--opc-gold); }
body.woocommerce-checkout .checkout_coupon{ border:1px solid var(--opc-line); border-radius:14px; background:var(--opc-card); }

/* --- section headings (the "1 Billing / 2 Your Order / 3 Payment" bars) --- */
body.woocommerce-checkout .wd-checkout-steps,
body.woocommerce-checkout h3#order_review_heading,
body.woocommerce-checkout .woocommerce-billing-fields > h3,
body.woocommerce-checkout .woocommerce-shipping-fields h3,
body.woocommerce-checkout #order_review_heading{
  font-family:var(--opc-serif); font-weight:600; color:var(--opc-ink); letter-spacing:-.01em;
}
/* WoodMart numbered step header */
body.woocommerce-checkout .wd-checkout-step-title,
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > h3,
body.woocommerce-checkout [class*="checkout-step"] .title,
body.woocommerce-checkout .wd-el-title,
body.woocommerce-checkout .elementor-widget-wd_title .wd-el-title{
  background:transparent !important; padding:0 0 6px !important; border-bottom:2px solid var(--opc-line);
  font-family:var(--opc-serif) !important; font-weight:600 !important; font-size:22px !important; color:var(--opc-ink) !important;
}
/* the little orange number circle -> refined gold */
body.woocommerce-checkout .wd-checkout-step-number,
body.woocommerce-checkout [class*="step-number"],
body.woocommerce-checkout .wd-number{
  background:var(--opc-gold) !important; color:#fff !important; border:none !important;
}

/* --- form fields --- */
body.woocommerce-checkout .woocommerce form .form-row label,
body.woocommerce-checkout .form-row label{
  font-size:12px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--opc-muted); margin-bottom:6px;
}
body.woocommerce-checkout .woocommerce form .form-row .required{ color:var(--opc-gold); }
body.woocommerce-checkout .form-row input.input-text,
body.woocommerce-checkout .form-row textarea,
body.woocommerce-checkout .select2-container .select2-selection,
body.woocommerce-checkout .form-row select,
body.woocommerce-checkout .woocommerce-billing-fields input,
body.woocommerce-checkout .woocommerce-additional-fields textarea{
  background:var(--opc-card) !important; border:1px solid var(--opc-line-2) !important; border-radius:12px !important;
  min-height:52px !important; padding:0 18px !important; color:var(--opc-ink) !important; font-size:15px !important;
  box-shadow:0 1px 2px rgba(28,26,23,.03) !important; transition:border-color .2s ease, box-shadow .2s ease;
}
body.woocommerce-checkout .woocommerce-additional-fields textarea{ padding:14px 18px !important; min-height:110px !important; }
body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered{ line-height:50px !important; color:var(--opc-ink); }
body.woocommerce-checkout .select2-container .select2-selection--single{ height:52px !important; }
body.woocommerce-checkout .form-row input.input-text:focus,
body.woocommerce-checkout .form-row textarea:focus,
body.woocommerce-checkout .form-row select:focus,
body.woocommerce-checkout .select2-container--focus .select2-selection{
  border-color:var(--opc-gold) !important; box-shadow:0 0 0 3px rgba(138,106,56,.12) !important; outline:none !important;
}
body.woocommerce-checkout ::placeholder{ color:#b7b0a2; }

/* --- order review --- */
body.woocommerce-checkout .woocommerce-checkout-review-order,
body.woocommerce-checkout #order_review{
  background:var(--opc-card); border:1px solid var(--opc-line); border-radius:18px; padding:26px 28px;
  box-shadow:0 24px 60px -30px rgba(28,26,23,.25);
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table{ border:none; }
body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td{ border-top:1px solid var(--opc-line); padding:14px 4px; }
body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th{
  font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--opc-muted); border:none; padding-bottom:10px;
}
body.woocommerce-checkout .cart_item .product-name{ color:var(--opc-ink-2); font-weight:600; }
body.woocommerce-checkout .order-total .woocommerce-Price-amount,
body.woocommerce-checkout .order-total th{ font-family:var(--opc-serif); font-size:20px; color:var(--opc-ink); font-weight:700; }
body.woocommerce-checkout .woocommerce-Price-amount{ color:var(--opc-ink); }

/* --- payment methods --- */
body.woocommerce-checkout #payment,
body.woocommerce-checkout .woocommerce-checkout-payment{ background:transparent; border:none; border-radius:0; }
body.woocommerce-checkout #payment ul.payment_methods{ border:none; padding:0; }
body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method{
  border:1px solid var(--opc-line-2); border-radius:14px; margin-bottom:12px; padding:16px 18px; background:var(--opc-card);
  transition:border-color .2s ease, box-shadow .2s ease;
}
body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:has(input:checked){
  border-color:var(--opc-gold); box-shadow:0 0 0 3px rgba(138,106,56,.1); background:var(--opc-gold-soft);
}
body.woocommerce-checkout #payment div.payment_box{ background:#fff; border:1px solid var(--opc-line); border-radius:10px; margin-top:12px; }
body.woocommerce-checkout #payment div.payment_box::before{ display:none; }

/* --- place order button --- */
body.woocommerce-checkout #place_order,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button,
body.woocommerce-checkout button.checkout-button{
  background:linear-gradient(135deg,#2a2622,#141210) !important; color:#fff !important; border:none !important;
  border-radius:999px !important; min-height:58px !important; font-size:15px !important; font-weight:700 !important;
  letter-spacing:.03em !important; box-shadow:0 16px 34px -14px rgba(20,18,16,.7) !important; transition:transform .2s ease, box-shadow .2s ease;
}
body.woocommerce-checkout #place_order:hover{ transform:translateY(-2px); box-shadow:0 22px 40px -14px rgba(20,18,16,.8) !important; }
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a{ color:var(--opc-gold); }

/* --- ship-to / order notes / progress bar polish --- */
body.woocommerce-checkout .woocommerce-shipping-fields{ margin-top:8px; }
body.woocommerce-checkout .woocommerce-input-wrapper{ display:block; }
body.woocommerce-checkout .woocommerce-info,
body.woocommerce-checkout .woocommerce-message{ border-top-color:var(--opc-gold); }

@media (max-width:768px){
  body.woocommerce-checkout .woocommerce-checkout-review-order,
  body.woocommerce-checkout #order_review{ padding:20px 18px; }
}
/* ORPAT-CHECKOUT-CSS:END */

/* ORPAT-ACCOUNT-BANNER: hide the WoodMart demo page-title banner on My Account */
body.woocommerce-account .wd-page-title{ display:none !important; }

/* ORPAT-MOBILE-SHOP-HIDE: remove Shop item from the mobile bottom toolbar (consistency with desktop, which has no Shop link) */
.wd-toolbar .wd-toolbar-shop{ display:none !important; }
