/* Luma Beauty House — WordPress / WooCommerce layer on top of the design stylesheet (style.css). */

/* ---------- generic content ---------- */
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.luma-page-content{max-width:860px}
.luma-page-content.luma-wc-page,.woocommerce-cart .luma-page-content,.woocommerce-checkout .luma-page-content,.woocommerce-account .luma-page-content{max-width:none}
.luma-page-content h2{font-size:clamp(26px,2.6vw,36px);margin-top:1.4em}
.luma-page-content a:not(.btn):not(.button){color:var(--gold-d);text-decoration:underline;text-underline-offset:3px}
.luma-page-content ul,.luma-page-content ol{padding-left:1.2em}
.page-head.small .wrap{grid-template-columns:1fr;min-height:170px}
.page-head .ph-logo{display:grid;place-items:center;height:220px;background:rgba(255,255,255,.55)}
.page-head .ph-logo img{max-height:120px;max-width:70%;object-fit:contain}
.page-head p+p{margin-top:.6em}

/* ---------- form fields (WooCommerce + comments + contact forms) ---------- */
.woocommerce form .input-text,.woocommerce form select,.woocommerce-page form .input-text,.luma-page-content input[type=text],.luma-page-content input[type=email],.luma-page-content input[type=tel],.luma-page-content input[type=password],.luma-page-content textarea,.luma-page-content select,.comment-form input:not([type=submit]):not([type=checkbox]),.comment-form textarea{width:100%;min-height:48px;border:1px solid var(--line);background:var(--cream);padding:10px 14px;outline:0;border-radius:var(--r);font-size:14px;transition:border-color .25s}
.woocommerce form .input-text:focus,.luma-page-content input:focus,.luma-page-content textarea:focus,.luma-page-content select:focus{border-color:var(--gold);background:#fff}
.woocommerce form .form-row{margin:0 0 16px;padding:0}
.woocommerce form .form-row label{display:block;font-size:12.5px;margin-bottom:6px;color:var(--ink)}
.woocommerce form .form-row .required{color:var(--peach);text-decoration:none}
.woocommerce form .form-row-first,.woocommerce form .form-row-last{width:calc(50% - 8px);float:left}
.woocommerce form .form-row-last{float:right}
.woocommerce form .form-row-wide{clear:both}
.woocommerce .col2-set::after,.woocommerce form .clear{content:"";display:table;clear:both}
.woocommerce .col2-set{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.woocommerce .col2-set .col-1,.woocommerce .col2-set .col-2{width:auto;float:none}
.select2-container .select2-selection--single{height:48px;border:1px solid var(--line);border-radius:var(--r);background:var(--cream)}
.select2-container .select2-selection--single .select2-selection__rendered{line-height:46px;padding-left:14px}
.select2-container .select2-selection--single .select2-selection__arrow{height:46px}

/* ---------- buttons ---------- */
.woocommerce .button,.woocommerce button.button,.woocommerce a.button,.woocommerce input.button,.wp-element-button,.wc-block-components-button:not(.is-link),.comment-form .submit,.luma-page-content input[type=submit],.luma-page-content button[type=submit]{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 26px;font-size:12px;letter-spacing:.2em;text-transform:uppercase;font-weight:500;border:1px solid var(--ink);background:var(--ink);color:var(--cream);border-radius:var(--r);cursor:pointer;transition:all .3s;line-height:1.2;text-decoration:none!important}
.woocommerce .button:hover,.wp-element-button:hover,.wc-block-components-button:not(.is-link):hover,.comment-form .submit:hover,.luma-page-content input[type=submit]:hover{background:var(--gold-d);border-color:var(--gold-d);color:#fff}
.woocommerce .button.alt,.woocommerce .checkout-button,.woocommerce #place_order,.wc-block-components-checkout-place-order-button,.wc-block-cart__submit-button{background:var(--gold)!important;border-color:var(--gold)!important;color:#fff!important}
.woocommerce .button:disabled,.woocommerce .button.disabled{opacity:.45;cursor:not-allowed}
.button.loading,.btn.loading,.add.loading{opacity:.6;pointer-events:none}
.add_to_cart_button.added + .added_to_cart{display:none}

/* ---------- notices ---------- */
.woocommerce-notices-wrapper:empty{display:none}
.woocommerce-message,.woocommerce-info,.woocommerce-error,.wc-block-components-notice-banner{list-style:none;margin:0 0 24px;padding:16px 20px;border-left:3px solid var(--gold);background:#fff;font-size:14px;display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;border-radius:var(--r)}
.woocommerce-error,.wc-block-components-notice-banner.is-error{border-color:#B5524A}
.woocommerce-message .button,.woocommerce-info .button{order:2;margin-left:auto;min-height:38px;padding:0 16px;font-size:11px}
.woocommerce-error li{margin:0}
.woocommerce-store-notice,p.demo_store{position:fixed;bottom:0;left:0;right:0;z-index:90;margin:0;padding:12px 20px;background:var(--ink);color:var(--cream);font-size:13px;text-align:center}
.woocommerce-store-notice a{color:var(--gold)}

/* ---------- archive ---------- */
.woocommerce-result-count{display:inline;margin:0}
.woocommerce-ordering{margin:0}
.woocommerce-ordering select{height:42px;border:1px solid var(--line);background:#fff;padding:0 36px 0 14px;font-size:13px;border-radius:var(--r);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%233B322A'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:10px}
.filters a.check{padding:2px 0;color:var(--brown)}
.filters a.check:hover span{color:var(--gold-d)}
.filters .cbox{width:16px;height:16px;border:1px solid #BCAE9F;background:#fff;flex:none;display:grid;place-items:center}
.filters a.check.on .cbox{background:var(--ink);border-color:var(--ink)}
.filters a.check.on .cbox::after{content:"";width:8px;height:4px;border-left:1.5px solid #fff;border-bottom:1.5px solid #fff;transform:rotate(-45deg) translate(1px,-1px)}
.filters a.check.on span{color:var(--ink);font-weight:500}
.filters .opts.scroll{max-height:290px;overflow:auto;padding-right:6px;scrollbar-width:thin}
.filters .fsearch{width:100%;height:38px;margin-top:12px;border:1px solid var(--line);background:#fff;padding:0 12px;font-size:13px;outline:0}
.filters .fsearch:focus{border-color:var(--gold)}
.active-filters a.tagx:hover{background:var(--peach);color:#fff}
.subcats .chip-quiz{height:38px}
nav.woocommerce-pagination{margin-top:60px}
.woocommerce-pagination ul.page-numbers{list-style:none;display:flex;justify-content:center;flex-wrap:wrap;gap:8px;padding:0;margin:0}
.woocommerce-pagination .page-numbers li a,.woocommerce-pagination .page-numbers li span{min-width:44px;height:44px;padding:0 10px;display:grid;place-items:center;border:1px solid var(--line);font-size:13px;transition:all .25s;background:#fff}
.woocommerce-pagination .page-numbers li span.current,.woocommerce-pagination .page-numbers li a:hover{background:var(--ink);color:var(--cream);border-color:var(--ink)}
.woocommerce-pagination .page-numbers li span.dots{border:0;background:none}
.card .price del{opacity:.55;font-size:.85em;margin-right:6px}
.card .price ins{text-decoration:none}
.card .media img{width:100%;height:100%;object-fit:cover}
.card .media img.woocommerce-placeholder{object-fit:contain;padding:18%;opacity:.5}
.card.outofstock .media img{opacity:.6}
.card .add.added{background:var(--gold);color:#fff}

/* ---------- single product ---------- */
.luma-product .main-img img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover}
.luma-product .thumbs button{padding:0;border:1px solid var(--line);background:#fff;cursor:pointer}
.luma-product .thumbs button.on{border-color:var(--ink)}
.luma-product .short p{margin:0 0 .6em}
.idline b.in{color:#6E8B5E}.idline b.out{color:#B5524A}
.pprice .price{font-family:var(--serif);font-size:34px;color:var(--ink)}
.pprice .price del{font-size:.6em;opacity:.55;margin-right:8px}
.pprice .price ins{text-decoration:none}
.buybox{margin:18px 0 6px}
.buybox form.cart{display:flex;flex-wrap:wrap;gap:12px;align-items:stretch;margin:0}
.buybox form.cart .quantity{display:flex;border:1px solid var(--line);background:#fff;height:52px}
.buybox form.cart .quantity .qty,.woocommerce .quantity .qty{width:64px;text-align:center;border:0;outline:0;background:transparent;-moz-appearance:textfield}
.quantity .qty::-webkit-outer-spin-button,.quantity .qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.quantity .minus,.quantity .plus{width:44px;border:0;background:none;cursor:pointer;font-size:18px;color:var(--ink)}
.woocommerce .quantity{display:inline-flex;border:1px solid var(--line);background:#fff;height:44px}
.buybox .single_add_to_cart_button{flex:1;height:52px;min-height:52px;background:var(--ink)!important;border-color:var(--ink)!important;color:var(--cream)!important}
.buybox .single_add_to_cart_button:hover{background:var(--gold-d)!important;border-color:var(--gold-d)!important}
.pprice .price .amount,.card .price .amount{color:inherit}
.buybox .single_add_to_cart_button.added::after{content:" ✓"}
.buybox .luma-buynow{flex-basis:100%;height:52px}
.buybox .stock{flex-basis:100%;margin:0;font-size:13px}
.buybox .stock.out-of-stock{color:#B5524A}
.tabpane h4{font-family:var(--sans);font-size:12px;letter-spacing:.2em;text-transform:uppercase;font-weight:500;margin:1.6em 0 .6em;color:var(--gold-d)}
.tabpane .tab-img{width:100%;aspect-ratio:1/1;object-fit:cover}
.related .grid,.upsells .grid{margin:0}
#reviews .commentlist{list-style:none;padding:0}
#reviews .comment_container{display:flex;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}
#reviews .avatar{width:48px;height:48px;border-radius:50%}
.star-rating{overflow:hidden;position:relative;height:1em;line-height:1;font-size:1em;width:5.4em;font-family:sans-serif;color:var(--gold)}
.star-rating::before{content:"★★★★★";opacity:.25;position:absolute}
.star-rating span{overflow:hidden;position:absolute;top:0;left:0;padding-top:1.5em}
.star-rating span::before{content:"★★★★★";position:absolute;top:0;left:0}
p.stars a{color:var(--gold);margin-right:4px}

/* ---------- mini cart (drawer) ---------- */
.widget_shopping_cart_content .woocommerce-mini-cart{list-style:none;margin:0;padding:0}
.woocommerce-mini-cart-item{position:relative;display:grid;grid-template-columns:72px 1fr;gap:4px 14px;padding:14px 26px 14px 0;border-bottom:1px solid var(--line);font-size:14px}
.woocommerce-mini-cart-item a:not(.remove){display:contents;color:var(--ink)}
.woocommerce-mini-cart-item img{grid-row:span 2;width:72px;height:72px;object-fit:cover;background:#fff}
.woocommerce-mini-cart-item .quantity{grid-column:2;font-size:13px;color:var(--muted);border:0;height:auto;background:none}
.woocommerce-mini-cart-item .remove{position:absolute;right:0;top:12px;font-size:20px;line-height:1;color:var(--muted)}
.woocommerce-mini-cart-item .remove:hover{color:#B5524A}
.woocommerce-mini-cart__total{display:flex;justify-content:space-between;padding:18px 0;margin:0;font-size:15px;color:var(--ink)}
.woocommerce-mini-cart__buttons{display:grid;gap:10px;margin:0}
.woocommerce-mini-cart__buttons .button{width:100%}
.woocommerce-mini-cart__buttons .checkout{background:var(--gold);border-color:var(--gold)}
.woocommerce-mini-cart__empty-message{color:var(--muted);padding:30px 0;text-align:center}
.luma-cart-count:empty{display:none}

/* ---------- classic cart / checkout / account ---------- */
.woocommerce table.shop_table{width:100%;border-collapse:collapse;font-size:14px;background:#fff;margin-bottom:30px}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}
.woocommerce table.shop_table th{font-weight:500;color:var(--ink);font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.woocommerce table.cart img{width:72px;height:72px;object-fit:cover}
.woocommerce table.cart .product-remove a{font-size:22px;color:var(--muted)}
.woocommerce table.cart td.actions .coupon{display:inline-flex;gap:10px}
.woocommerce .cart-collaterals .cart_totals{max-width:460px;margin-left:auto}
.woocommerce-checkout #order_review,.woocommerce-checkout #order_review_heading{background:#fff}
.woocommerce-checkout #payment{background:#fff;padding:20px;border:1px solid var(--line)}
.woocommerce-checkout #payment ul.payment_methods{list-style:none;padding:0;margin:0 0 16px}
.woocommerce-checkout #payment .payment_box{background:var(--cream);padding:12px 14px;font-size:13px;margin:8px 0}
.woocommerce-account .woocommerce{display:grid;grid-template-columns:240px 1fr;gap:50px}
.woocommerce-account .woocommerce>.woocommerce-notices-wrapper{grid-column:1/-1}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.woocommerce-MyAccount-navigation li a{display:block;padding:13px 0;border-bottom:1px solid var(--line);font-size:13px;letter-spacing:.08em}
.woocommerce-MyAccount-navigation li.is-active a,.woocommerce-MyAccount-navigation li a:hover{color:var(--gold-d)}
.woocommerce-account:not(.logged-in) .woocommerce{display:block;max-width:900px}
.woocommerce-form-login,.woocommerce-form-register{background:#fff;padding:30px;border:1px solid var(--line)}

/* ---------- block cart / checkout (WooCommerce default since 8.3) ---------- */
.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout{font-family:var(--sans);color:var(--brown)}
.wc-block-components-sidebar-layout .wc-block-components-main,.wc-block-components-sidebar{background:transparent}
.wc-block-components-totals-wrapper,.wc-block-components-sidebar .wc-block-components-panel{border-color:var(--line)!important}
.wc-block-components-text-input input,.wc-block-components-combobox .wc-block-components-combobox-control input,.wc-blocks-components-select__select,.wc-block-components-textarea{border-color:var(--line)!important;background:#fff!important;border-radius:var(--r)!important}
.wc-block-components-text-input.is-active input,.wc-block-components-text-input input:focus{border-color:var(--gold)!important;box-shadow:none!important}
.wc-block-components-product-name{font-family:var(--serif);font-size:19px;color:var(--ink)!important}
.wc-block-components-checkout-step__title,.wc-block-cart__totals-title{font-family:var(--serif)!important;font-size:24px!important;text-transform:none!important;letter-spacing:0!important;color:var(--ink)}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value{font-family:var(--serif);font-size:26px;color:var(--ink)}
.wc-block-components-radio-control__option--checked-option-highlighted,.wc-block-components-radio-control-accordion-option--checked-option-highlighted{box-shadow:inset 0 0 0 1px var(--gold)!important}
.wc-block-components-quantity-selector{border-color:var(--line)!important}
.wc-block-cart-items th{font-size:12px!important;letter-spacing:.14em!important}
.wc-block-components-button:not(.is-link){width:100%}

/* ---------- comments / misc ---------- */
.comment-list{list-style:none;padding:0}
.comment-body{padding:18px 0;border-bottom:1px solid var(--line)}
.alignwide{max-width:var(--wrap)}.alignfull{max-width:none}
.wp-block-image img{height:auto}
.post-card{display:block;padding:24px 0;border-bottom:1px solid var(--line)}
.post-card h2{font-size:30px;margin:0 0 6px}

@media (max-width:900px){
  .woocommerce .col2-set{grid-template-columns:1fr;gap:10px}
  .woocommerce form .form-row-first,.woocommerce form .form-row-last{width:100%;float:none}
  .woocommerce-account .woocommerce{grid-template-columns:1fr;gap:24px}
  .woocommerce table.shop_table_responsive thead{display:none}
  .woocommerce table.shop_table_responsive tr{display:block;border-bottom:1px solid var(--line)}
  .woocommerce table.shop_table_responsive td{display:flex;justify-content:space-between;border:0;padding:8px 14px}
  .woocommerce table.shop_table_responsive td::before{content:attr(data-title);font-weight:500;color:var(--ink)}
  .page-head .ph-logo{height:140px}
}
.luma-page-content .alignwide,.luma-page-content .wp-block-woocommerce-cart.alignwide,.luma-page-content .wp-block-woocommerce-checkout.alignwide{margin-left:0;margin-right:0;max-width:100%;width:auto}
/* legal pages (Luma Setup › Load legal pages) */
.luma-page-content table:not(.shop_table):not(.woocommerce-table):not(.variations){width:100%;border-collapse:collapse;margin:0 0 1.6em;font-size:14px}
.luma-page-content table:not(.shop_table):not(.woocommerce-table):not(.variations) th,.luma-page-content table:not(.shop_table):not(.woocommerce-table):not(.variations) td{border-bottom:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top}
.luma-page-content table:not(.shop_table):not(.woocommerce-table):not(.variations) th{font-weight:500;color:var(--ink);width:34%}
