/*
Theme Name: Pree Furniture Luxury
Theme URI: https://www.preefurniture.com/
Author: OpenAI
Description: Modern luxury, responsive and SEO-conscious WordPress theme for premium furniture brands. Supports WooCommerce, product image zoom, category grids, hero slides and accessible dropdown menus.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: preefurniture-luxury
Tags: e-commerce, custom-logo, custom-menu, featured-images, theme-options, wide-blocks
*/
:root{--pf-ink:#202521;--pf-muted:#69716b;--pf-paper:#fff;--pf-cream:#f6f4ef;--pf-gold:#b69a62;--pf-green:#283b32;--pf-border:#e7e5df;--pf-radius:3px;--pf-width:1280px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--pf-paper);color:var(--pf-ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.7}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none;transition:color .2s ease,background-color .2s ease,opacity .2s ease}
a:hover,a:focus{text-decoration:none;color:var(--pf-gold)}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
:focus-visible{outline:2px solid var(--pf-gold);outline-offset:3px}
.pf-container{width:min(calc(100% - 40px),var(--pf-width));margin-inline:auto}
.pf-skip-link{position:absolute;left:-9999px;top:0;z-index:9999;background:#fff;padding:12px}
.pf-skip-link:focus{left:12px}
.pf-site-header{position:relative;z-index:100;background:#fff}
.pf-brand-row{display:flex;align-items:center;justify-content:center;gap:16px;padding:24px 20px 20px;text-align:center}
.pf-branding{min-width:0}
.pf-logo img,.custom-logo{width:auto;max-height:78px;margin:0 auto}
.pf-site-title{font-family:Georgia,"Times New Roman",serif;font-size:clamp(25px,3vw,38px);font-weight:500;letter-spacing:.045em;line-height:1.2;margin:0}
.pf-site-tagline{margin:7px 0 0;color:var(--pf-muted);font-size:12px;letter-spacing:.16em;text-transform:uppercase}
.pf-nav-wrap{position:sticky;top:0;z-index:900;background:rgba(255,255,255,.97);border-top:1px solid var(--pf-border);border-bottom:1px solid var(--pf-border);backdrop-filter:blur(10px)}
.pf-nav-inner{display:flex;align-items:center;justify-content:center;min-height:54px}
.pf-menu-toggle{display:none;background:transparent;border:1px solid var(--pf-border);padding:8px 12px;color:var(--pf-ink)}
.pf-primary-menu,.pf-primary-menu ul{list-style:none;margin:0;padding:0}
.pf-primary-menu{display:flex;align-items:center;gap:clamp(12px,2.2vw,30px)}
.pf-primary-menu>li{position:relative}
.pf-primary-menu a{display:block;padding:16px 0;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.pf-primary-menu li.menu-item-has-children>a:after{content:"▾";font-size:10px;margin-left:7px}
.pf-primary-menu .sub-menu{position:absolute;top:100%;left:0;min-width:230px;max-width:min(340px,calc(100vw - 24px));padding:9px 0;background:#fff;border:1px solid var(--pf-border);box-shadow:0 14px 34px rgba(20,30,24,.12);opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .18s ease,transform .18s ease,visibility .18s;z-index:1000;overflow-wrap:anywhere;white-space:normal}
.pf-primary-menu .sub-menu .sub-menu{top:0;left:100%}
.pf-primary-menu li:hover>.sub-menu,.pf-primary-menu li:focus-within>.sub-menu,.pf-primary-menu li.pf-submenu-open>.sub-menu{opacity:1;visibility:visible;transform:translateY(0)}
.pf-primary-menu .sub-menu.pf-flip-left{left:auto;right:0}
.pf-primary-menu .sub-menu .sub-menu.pf-flip-left{right:100%;left:auto}
.pf-primary-menu .sub-menu a{padding:10px 17px;font-size:11px;line-height:1.5;letter-spacing:.045em;text-transform:none}
.pf-primary-menu .sub-menu a:hover,.pf-primary-menu .sub-menu a:focus{background:var(--pf-cream);color:var(--pf-green)}
.pf-hero{position:relative;min-height:clamp(360px,54vw,650px);background:#29342d;overflow:hidden;color:#fff}
.pf-hero-slide{position:absolute;inset:0;display:flex;align-items:center;opacity:0;visibility:hidden;transition:opacity 1.1s ease; background-size:cover;background-position:center}
.pf-hero-slide.is-active{opacity:1;visibility:visible}
.pf-hero-slide:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,23,17,.65),rgba(13,23,17,.12))}
.pf-hero-content{position:relative;z-index:1;width:min(calc(100% - 40px),var(--pf-width));margin-inline:auto;padding:60px 0}
.pf-eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#e5d3a8}
.pf-hero h1,.pf-hero h2{max-width:760px;margin:12px 0 18px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(36px,5.6vw,72px);font-weight:400;line-height:1.08}
.pf-hero p{max-width:620px;font-size:clamp(15px,1.5vw,18px);color:#f4f2eb}
.pf-button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.wp-block-button__link{display:inline-block;background:var(--pf-green);color:#fff;border:1px solid var(--pf-green);border-radius:0;padding:12px 23px;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;text-decoration:none!important}
.pf-button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.wp-block-button__link:hover{background:var(--pf-gold);border-color:var(--pf-gold);color:#fff}
.pf-hero-dots{position:absolute;z-index:2;bottom:22px;left:0;right:0;display:flex;justify-content:center;gap:9px}
.pf-hero-dot{width:8px;height:8px;padding:0;border:1px solid #fff;border-radius:50%;background:transparent}
.pf-hero-dot[aria-current="true"]{background:#fff}
.pf-section{padding:clamp(42px,6vw,84px) 0}
.pf-section-heading{text-align:center;margin:0 auto 34px;max-width:780px}
.pf-section-heading .pf-eyebrow{color:var(--pf-gold)}
.pf-section-heading h2,.pf-page-title{font-family:Georgia,"Times New Roman",serif;font-size:clamp(29px,3.5vw,46px);font-weight:400;line-height:1.2;margin:8px 0 12px}
.pf-section-heading p{color:var(--pf-muted);margin:0}
.pf-seo-copy{background:var(--pf-cream)}
.pf-article-content,.entry-content{line-height:1.85}
.pf-article-content p,.entry-content p{text-align:justify;text-justify:inter-word}
.pf-content-area{padding:50px 0 70px;min-height:40vh}
.pf-page-layout{max-width:900px;margin-inline:auto}
.pf-entry-header{margin-bottom:25px}
.pf-entry-header .pf-page-title{margin-top:0}
.pf-post-grid,.pf-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.pf-post-card,.pf-product-card{min-width:0}
.pf-post-card img,.pf-product-card img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#f8f8f6}
.pf-post-card h2,.pf-product-card h2,.pf-product-card .woocommerce-loop-product__title{font-family:Georgia,"Times New Roman",serif;font-size:19px;font-weight:400;line-height:1.35;margin:12px 0 6px}
.pf-post-card p{color:var(--pf-muted);font-size:14px}
.pf-product-card .price{color:var(--pf-green);font-size:14px}
.pf-product-card .button{margin-top:8px}
.pf-breadcrumbs{font-size:12px;color:var(--pf-muted);margin:0 0 20px}
.pf-site-footer{background:#202b25;color:#e8e9e3;padding:48px 0 20px}
.pf-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:36px}
.pf-site-footer h2,.pf-site-footer h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;color:#fff}
.pf-site-footer a{color:#e8e9e3}
.pf-footer-bottom{margin-top:30px;padding-top:15px;border-top:1px solid rgba(255,255,255,.16);font-size:12px;color:#c6cbc5}
.pf-pagination{margin-top:35px}
.pf-pagination .nav-links{display:flex;gap:8px}
.pf-pagination .page-numbers{padding:8px 12px;border:1px solid var(--pf-border)}
/* WooCommerce layouts */
.woocommerce .woocommerce-breadcrumb{font-size:12px;color:var(--pf-muted)}
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;margin:0!important}
.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important}
.woocommerce ul.products li.product{float:none!important;width:auto!important;margin:0!important;padding:0!important;min-width:0}
.woocommerce ul.products li.product a img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#f7f7f5;margin:0 0 12px}
.woocommerce ul.products li.product .woocommerce-loop-product__title{padding:0;font-size:18px}
.woocommerce div.product{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(30px,5vw,70px)}
.woocommerce div.product div.images,.woocommerce div.product div.summary{float:none!important;width:auto!important;margin:0!important;min-width:0}
.woocommerce div.product div.images .woocommerce-product-gallery__image img{width:100%;background:#f8f8f6}
.woocommerce div.product .product_title{font-family:Georgia,"Times New Roman",serif;font-size:clamp(29px,3vw,42px);font-weight:400;line-height:1.18}
.woocommerce div.product .woocommerce-product-details__short-description p{text-align:justify}
.woocommerce div.product .woocommerce-tabs{grid-column:1/-1}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding-left:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li{border-radius:0;background:#f5f4ef}
.woocommerce div.product .related.products{grid-column:1/-1;margin-top:40px}
.woocommerce .related.products ul.products{grid-template-columns:repeat(4,minmax(0,1fr))}
.woocommerce span.onsale{background:var(--pf-gold);border-radius:0;min-height:0;line-height:1.5;padding:5px 10px}
.pf-product-zoom{position:relative;overflow:hidden;background:#f7f7f5}
.pf-product-zoom img{transform:scale(var(--pf-zoom,1));transform-origin:var(--pf-origin-x,50%) var(--pf-origin-y,50%);transition:transform .15s ease}
.pf-zoom-controls{display:flex;gap:6px;position:absolute;right:10px;bottom:10px;z-index:3}
.pf-zoom-controls button{width:36px;height:36px;border:1px solid #ddd;background:rgba(255,255,255,.94);color:#222;font-size:20px;line-height:1}
.pf-zoom-controls button:hover{background:var(--pf-green);color:#fff}
.pf-custom-product-details{border-top:1px solid var(--pf-border);margin:20px 0;padding-top:14px;font-size:14px}
.pf-custom-product-details div{display:grid;grid-template-columns:130px 1fr;gap:12px;padding:5px 0}
.pf-custom-product-details dt{font-weight:700}
.pf-custom-product-details dd{margin:0;color:var(--pf-muted)}
.woocommerce #reviews #comments ol.commentlist{padding-left:0}
.woocommerce .quantity .qty{min-height:42px}
.woocommerce table.shop_table{border-collapse:collapse;border-radius:0}
@media(max-width:900px){
 .pf-post-grid,.pf-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .woocommerce ul.products,.woocommerce .related.products ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
 .pf-footer-grid{grid-template-columns:1fr 1fr}
 .pf-primary-menu{gap:14px}
 .pf-primary-menu a{font-size:10px}
}
@media(max-width:680px){
 .pf-container{width:min(calc(100% - 28px),var(--pf-width))}
 .pf-brand-row{padding:17px 14px}
 .pf-logo img,.custom-logo{max-height:58px}
 .pf-site-tagline{font-size:10px;letter-spacing:.08em}
 .pf-nav-inner{justify-content:flex-end;min-height:48px}
 .pf-menu-toggle{display:inline-block;margin:6px 0}
 .pf-primary-menu{display:none;position:absolute;left:0;right:0;top:100%;align-items:stretch;gap:0;max-height:75vh;overflow:auto;background:#fff;border-bottom:1px solid var(--pf-border);padding:8px 18px 16px}
 .pf-primary-menu.pf-menu-open{display:block}
 .pf-primary-menu>li{border-bottom:1px solid #f0efeb}
 .pf-primary-menu a{padding:12px 2px;font-size:11px}
 .pf-primary-menu .sub-menu,.pf-primary-menu .sub-menu .sub-menu{position:static;display:none;visibility:visible;opacity:1;transform:none;box-shadow:none;border:0;border-left:1px solid var(--pf-border);margin:0 0 8px 10px;padding:0 0 0 10px;max-width:none}
 .pf-primary-menu li.pf-submenu-open>.sub-menu{display:block}
 .pf-primary-menu .sub-menu a{padding:9px 8px}
 .pf-hero{min-height:430px}
 .pf-hero-content{width:calc(100% - 32px);padding:48px 0}
 .pf-post-grid,.pf-product-grid{grid-template-columns:minmax(0,1fr);gap:25px}
 .pf-post-card img,.pf-product-card img{aspect-ratio:5/3}
 .woocommerce ul.products,.woocommerce .related.products ul.products{grid-template-columns:minmax(0,1fr)!important;gap:24px}
 .woocommerce ul.products li.product{width:100%!important}
 .woocommerce div.product{display:block}
 .woocommerce div.product div.images{margin-bottom:28px!important}
 .woocommerce div.product .woocommerce-tabs{margin-top:35px}
 .pf-footer-grid{grid-template-columns:1fr;gap:18px}
 .pf-content-area{padding:32px 0 48px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
