*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--cream:#f5f0e8;--ivory:#faf8f3;--gold:#b8974a;--gold-light:#d4b86a;--stone:#8c8278;--charcoal:#2a2520;--marble-dark:#3d3530;--white:#fefefe;--font-serif:"Cormorant Garamond", Georgia, serif;--font-sans:"Jost", system-ui, sans-serif;--radius:4px;--transition:.3s ease;--max-width:1200px;--section-padding:6rem 2rem}#root{flex-direction:column;min-height:100vh;display:flex}main{flex:1}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-sans);background:var(--ivory);color:var(--charcoal);line-height:1.6;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font-family:var(--font-sans);cursor:pointer;border:none}.section-label{letter-spacing:.35em;text-transform:uppercase;color:var(--gold);margin-bottom:.8rem;font-size:.68rem}.section-title{font-family:var(--font-serif);color:var(--charcoal);margin-bottom:1.2rem;font-size:clamp(2rem,4vw,3rem);font-weight:300;line-height:1.2}.section-intro{color:var(--stone);max-width:520px;margin:0 auto 2rem;font-size:.95rem;font-weight:300;line-height:1.8}.divider{background:var(--gold);width:48px;height:1px;margin-bottom:2rem}.btn-primary{letter-spacing:.2em;text-transform:uppercase;background:var(--charcoal);color:var(--white);transition:background var(--transition);padding:.9rem 2.2rem;font-size:.72rem;font-weight:500;display:inline-block}.btn-primary:hover{background:var(--gold)}.btn-secondary{letter-spacing:.18em;text-transform:uppercase;color:var(--charcoal);transition:all var(--transition);background:0 0;border:1px solid #2a25204d;padding:.9rem 2.2rem;font-size:.72rem;font-weight:400;display:inline-block}.btn-secondary:hover{border-color:var(--gold);color:var(--gold)}.navbar{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1e1a18eb;border-bottom:.5px solid #b8974a33;justify-content:space-between;align-items:center;padding:1.2rem 3rem;display:flex;position:fixed;top:0;left:0;right:0}.nav-logo{font-family:var(--font-serif);letter-spacing:.06em;color:#f5f0e8;font-size:1.4rem;font-weight:600}.nav-logo span{color:var(--gold)}.nav-links{gap:2.5rem;list-style:none;display:flex}.nav-links a{letter-spacing:.18em;text-transform:uppercase;color:#f5f0e88c;transition:color var(--transition);font-size:.78rem;font-weight:400}.nav-links a:hover,.nav-links a.active{color:var(--gold)}.nav-cta{letter-spacing:.2em;text-transform:uppercase;background:var(--gold);color:var(--white);transition:background var(--transition);padding:.65rem 1.6rem;font-size:.72rem;font-weight:500}.nav-cta:hover{background:var(--gold-light)}.hero{background:#1e1a18;align-items:center;min-height:100vh;padding-top:5rem;display:flex;position:relative;overflow:hidden}.hero:before{content:"";background-image:repeating-linear-gradient(0deg,#0000,#0000 79px,#b8974a0d 80px),repeating-linear-gradient(90deg,#0000,#0000 79px,#b8974a0d 80px);position:absolute;inset:0}.hero-content{z-index:2;max-width:620px;padding:4rem 3rem;position:relative}.hero-eyebrow{letter-spacing:.3em;text-transform:uppercase;color:#d4b86a;margin-bottom:1.5rem;font-size:.7rem}.hero-title{font-family:var(--font-serif);color:#f5f0e8;margin-bottom:1.8rem;font-size:clamp(2.8rem,5.5vw,5rem);font-weight:300;line-height:1.1}.hero-title em{color:#d4b86a;font-style:italic}.hero-subtitle{color:#f5f0e899;max-width:420px;margin-bottom:2.5rem;font-size:.95rem;font-weight:300;line-height:1.9}.hero-actions{flex-wrap:wrap;gap:1.2rem;display:flex}.hero .btn-primary{background:var(--gold);color:var(--white)}.hero .btn-primary:hover{background:var(--gold-light)}.hero .btn-secondary{color:#f5f0e8cc;border-color:#f5f0e840}.hero .btn-secondary:hover{border-color:var(--gold);color:var(--gold)}.hero-mosaic{grid-template-rows:1fr 1fr 1fr;grid-template-columns:1fr 1fr;gap:2px;width:42%;display:grid;position:absolute;top:0;bottom:0;right:0}.hero-mosaic .tile{position:relative;overflow:hidden}.tile.t1{background:#3a3028}.tile.t2{background:#2c2420}.tile.t3{background:#4a3e34}.tile.t4{background:#2e2a24}.tile.t5{background:#564840}.tile.t6{background:#362e28}.hero-mosaic .tile:after{content:"";background:repeating-linear-gradient(45deg,#0000,#0000 20px,#ffffff06 20px 21px);position:absolute;inset:0}.highlights{background:#b8974a26;grid-template-columns:repeat(3,1fr);gap:1px;padding:0;display:grid}.highlight-card{background:var(--white);transition:background var(--transition);padding:3rem 2.5rem}.highlight-card:hover{background:var(--cream)}.highlight-icon{color:var(--gold);margin-bottom:1.2rem;font-size:1.2rem;display:block}.highlight-card h3{font-family:var(--font-serif);color:var(--charcoal);margin-bottom:.8rem;font-size:1.3rem;font-weight:400}.highlight-card p{color:var(--stone);font-size:.88rem;font-weight:300;line-height:1.8}.home-catalogue{padding:var(--section-padding);max-width:var(--max-width);text-align:center;margin:0 auto}.section-header{margin-bottom:2.5rem}.section-header .divider{margin:0 auto 1.5rem}.cta-banner{background:var(--charcoal);text-align:center;padding:5rem 2rem}.cta-content h2{font-family:var(--font-serif);color:var(--cream);margin-bottom:1rem;font-size:clamp(1.8rem,3vw,2.8rem);font-weight:300}.cta-content p{color:#f5f0e8b3;max-width:480px;margin:0 auto 2rem;font-size:.92rem;font-weight:300;line-height:1.8}.cta-content .btn-primary{background:var(--gold)}.cta-content .btn-primary:hover{background:var(--gold-light)}.catalogue{padding:var(--section-padding);max-width:var(--max-width);margin:0 auto;padding-top:8rem}.catalogue-header{max-width:520px;margin-bottom:3rem}.category-filters{flex-wrap:wrap;gap:.5rem;margin-bottom:3rem;display:flex}.filter-btn{letter-spacing:.15em;text-transform:uppercase;color:var(--stone);transition:all var(--transition);background:0 0;border:.5px solid #8c827859;padding:.55rem 1.3rem;font-size:.72rem;font-weight:400}.filter-btn:hover,.filter-btn.active{background:var(--charcoal);color:var(--white);border-color:var(--charcoal)}.state-msg{text-align:center;color:var(--stone);padding:4rem;font-size:.9rem}.state-msg.error{color:#c0392b}.catalogue-grid{background:#b8974a26;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1px;display:grid}.product-card{background:var(--white);cursor:pointer;transition:transform .4s}.product-card:hover{transform:translateY(-4px)}.product-visual{background:linear-gradient(135deg,#e8e2d4,#d0c8b6);height:220px;position:relative;overflow:hidden}.product-visual:after{content:"";background:#2a252000;transition:background .4s;position:absolute;inset:0}.product-card:hover .product-visual:after{background:#2a25200f}.product-tag{z-index:1;letter-spacing:.2em;text-transform:uppercase;background:var(--charcoal);color:var(--cream);padding:4px 10px;font-size:.62rem;position:absolute;top:12px;right:12px}.product-info{padding:1.2rem 1.4rem}.product-name{font-family:var(--font-serif);color:var(--charcoal);margin-bottom:.3rem;font-size:1.1rem;font-weight:600}.product-desc{color:var(--stone);margin-bottom:.8rem;font-size:.8rem;line-height:1.6}.product-meta{justify-content:space-between;align-items:center;display:flex}.product-format{letter-spacing:.12em;text-transform:uppercase;color:var(--stone);font-size:.68rem}.product-price{font-family:var(--font-serif);color:var(--gold);font-size:1rem;font-weight:600}.about-intro{padding:var(--section-padding);max-width:var(--max-width);grid-template-columns:1.2fr 1fr;align-items:start;gap:5rem;margin:0 auto;padding-top:8rem;display:grid}.about-intro-content p{color:var(--stone);margin-bottom:1.2rem;font-size:.92rem;font-weight:300;line-height:1.9}.about-intro-content strong{color:var(--charcoal);font-weight:500}.about-stats{grid-template-columns:1fr 1fr;gap:2rem;padding-top:2rem;display:grid}.stat-item{border-left:1px solid #b8974a4d;padding-left:1.2rem}.stat-number{font-family:var(--font-serif);color:var(--gold);margin-bottom:.3rem;font-size:2.5rem;font-weight:300;line-height:1;display:block}.stat-label{letter-spacing:.18em;text-transform:uppercase;color:var(--stone);font-size:.7rem}.timeline{background:var(--charcoal);padding:var(--section-padding)}.timeline .section-label{color:var(--gold-light)}.timeline .section-title{color:var(--cream)}.timeline .divider{background:var(--gold-light)}.timeline-list{max-width:760px;margin:3rem auto 0}.timeline-item{grid-template-columns:100px 40px 1fr;gap:1.5rem;margin-bottom:0;display:grid}.timeline-year{font-family:var(--font-serif);color:var(--gold-light);text-align:right;padding-top:.2rem;font-size:1.3rem;font-weight:300}.timeline-connector{flex-direction:column;align-items:center;display:flex}.timeline-dot{background:var(--gold);border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:.35rem}.timeline-line{background:#b8974a40;flex:1;width:1px;min-height:3rem;margin:8px 0}.timeline-content{padding-bottom:3rem}.timeline-content h3{font-family:var(--font-serif);color:var(--cream);margin-bottom:.6rem;font-size:1.15rem;font-weight:400}.timeline-content p{color:#f5f0e8a6;font-size:.88rem;font-weight:300;line-height:1.85}.values{padding:var(--section-padding);max-width:var(--max-width);margin:0 auto}.values-grid{background:#b8974a26;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:1rem;display:grid}.value-card{background:var(--white);transition:background var(--transition);padding:2.5rem 2rem}.value-card:hover{background:var(--cream)}.value-card h3{font-family:var(--font-serif);color:var(--charcoal);margin-bottom:.8rem;font-size:1.2rem;font-weight:400}.value-card p{color:var(--stone);font-size:.85rem;font-weight:300;line-height:1.8}.contact{padding:var(--section-padding);max-width:var(--max-width);margin:0 auto;padding-top:8rem}.contact-grid{grid-template-columns:1fr 1.3fr;align-items:start;gap:5rem;display:grid}.contact-info p{color:var(--stone);margin-bottom:2rem;font-size:.9rem;font-weight:300;line-height:1.9}.contact-details{flex-direction:column;gap:.8rem;margin-top:1.5rem;display:flex}.contact-details p{color:var(--stone);margin:0;font-size:.85rem}.contact-form{flex-direction:column;gap:1.2rem;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-label{letter-spacing:.2em;text-transform:uppercase;color:var(--stone);font-size:.68rem}.form-input{font-family:var(--font-sans);background:var(--white);color:var(--charcoal);transition:border-color var(--transition);border:.5px solid #8c82784d;outline:none;width:100%;padding:.8rem 1rem;font-size:.88rem;font-weight:300}.form-input:focus{border-color:var(--gold)}textarea.form-input{resize:vertical;min-height:130px}select.form-input{appearance:none;cursor:pointer}.form-success{color:#2d7a4f;background:#2d7a4f14;border-left:2px solid #2d7a4f;padding:.8rem 1rem;font-size:.85rem}.form-error{color:#c0392b;background:#c0392b14;border-left:2px solid #c0392b;padding:.8rem 1rem;font-size:.85rem}.submit-btn{font-family:var(--font-sans);letter-spacing:.2em;text-transform:uppercase;background:var(--charcoal);color:var(--white);transition:background var(--transition);align-self:flex-start;padding:1rem 2.5rem;font-size:.72rem;font-weight:500}.submit-btn:hover:not(:disabled){background:var(--gold)}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.footer{background:var(--charcoal);border-top:.5px solid #b8974a33;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:2.5rem 3rem;display:flex}.footer-logo{font-family:var(--font-serif);color:var(--cream);font-size:1.1rem;font-weight:600}.footer-logo span{color:var(--gold)}.footer-nav{gap:2rem;display:flex}.footer-nav a{letter-spacing:.15em;text-transform:uppercase;color:#f5f0e880;transition:color var(--transition);font-size:.75rem}.footer-nav a:hover{color:var(--gold)}.footer-copy{color:#f5f0e866;letter-spacing:.05em;font-size:.72rem}@media (width<=1024px){.values-grid{grid-template-columns:1fr 1fr}.about-intro{grid-template-columns:1fr;gap:3rem}}.burger{cursor:pointer;z-index:200;background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;width:36px;height:36px;padding:4px;display:none}.burger span{transform-origin:50%;background:#f5f0e8;border-radius:2px;width:100%;height:1.5px;transition:transform .35s,opacity .35s;display:block}.burger--open span:first-child{transform:translateY(6.5px)rotate(45deg)}.burger--open span:nth-child(2){opacity:0;transform:scaleX(0)}.burger--open span:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.menu-overlay{z-index:110;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;display:none;position:fixed;inset:0}.mobile-menu{z-index:150;background:#1e1a18;border-left:.5px solid #b8974a33;flex-direction:column;justify-content:center;width:75%;max-width:300px;padding:3rem 2.5rem;transition:transform .4s cubic-bezier(.16,1,.3,1);display:none;position:fixed;top:0;bottom:0;right:0;transform:translate(100%)}.mobile-menu--open{transform:translate(0)}.mobile-menu ul{margin-bottom:3rem;list-style:none}.mobile-menu ul li{border-bottom:.5px solid #b8974a1f}.mobile-menu ul li a{letter-spacing:.2em;text-transform:uppercase;color:#f5f0e8a6;transition:color var(--transition);padding:1.2rem 0;font-size:.85rem;display:block}.mobile-menu ul li a:hover,.mobile-menu ul li a.active{color:var(--gold)}.mobile-menu-cta{letter-spacing:.18em;text-transform:uppercase;background:var(--gold);color:var(--white);text-align:center;transition:background var(--transition);padding:.9rem 1.8rem;font-size:.75rem;font-weight:500;display:inline-block}.mobile-menu-cta:hover{background:var(--gold-light)}@media (width<=768px){.nav-links,.nav-cta{display:none}.burger{display:flex}.menu-overlay{display:block}.mobile-menu{display:flex}:root{--section-padding:4rem 1.5rem}.navbar{padding:1rem 1.5rem}.nav-links,.hero-mosaic{display:none}.hero-content{padding:2rem 1.5rem}.highlights{grid-template-columns:1fr}.catalogue,.contact{padding-top:6rem}.contact-grid{grid-template-columns:1fr;gap:3rem}.form-row{grid-template-columns:1fr}.about-intro{padding-top:6rem}.about-stats{grid-template-columns:1fr 1fr}.timeline-item{grid-template-columns:70px 30px 1fr}.values-grid{grid-template-columns:1fr}.footer{text-align:center;flex-direction:column;padding:2rem 1.5rem}.footer-nav{flex-wrap:wrap;justify-content:center}}.login-page{background:#1e1a18;justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.login-card{background:var(--ivory);width:100%;max-width:400px;padding:3rem}.login-title{font-family:var(--font-serif);color:var(--charcoal);font-size:2rem;font-weight:300}.login-title span{color:var(--gold)}.dashboard{max-width:1200px;margin:0 auto;padding:6rem 2rem 2rem}.dashboard-loading{min-height:60vh;color:var(--stone);justify-content:center;align-items:center;font-size:.9rem;display:flex}.dashboard-loading.error{color:#c0392b}.dashboard-header{justify-content:space-between;align-items:flex-end;margin-bottom:2.5rem;display:flex}.dashboard-title{font-family:var(--font-serif);color:var(--charcoal);font-size:2.2rem;font-weight:300}.dashboard-logout{letter-spacing:.15em;text-transform:uppercase;color:var(--stone);transition:all var(--transition);background:0 0;border:.5px solid #8c827859;padding:.6rem 1.4rem;font-size:.72rem}.dashboard-logout:hover{color:#c0392b;border-color:#c0392b}.kpi-grid{background:#b8974a26;grid-template-columns:repeat(4,1fr);gap:1px;margin-bottom:2rem;display:grid}.kpi-card{background:var(--white);flex-direction:column;gap:.5rem;padding:1.8rem;display:flex}.kpi-card--alert{border-top:2px solid #c0392b}.kpi-label{letter-spacing:.18em;text-transform:uppercase;color:var(--stone);font-size:.7rem}.kpi-value{font-family:var(--font-serif);color:var(--charcoal);font-size:2rem;font-weight:300;line-height:1}.dashboard-grid{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.dash-card{background:var(--white);border:.5px solid #b8974a33;padding:1.8rem}.dash-card-title{font-family:var(--font-serif);color:var(--charcoal);border-bottom:.5px solid #b8974a33;margin-bottom:1.5rem;padding-bottom:.8rem;font-size:1.1rem;font-weight:400}.dash-table{border-collapse:collapse;width:100%;font-size:.82rem}.dash-table th{text-align:left;letter-spacing:.15em;text-transform:uppercase;color:var(--stone);border-bottom:.5px solid #8c827833;padding:0 1.2rem .8rem;font-size:.65rem}.dash-table td{color:var(--charcoal);border-bottom:.5px solid #8c82781a;padding:.75rem 1.2rem}.quote-badge{letter-spacing:.1em;text-transform:uppercase;padding:3px 10px;font-size:.65rem}.badge--pending{color:var(--gold);background:#b8974a1f}.badge--done{color:#2d7a4f;background:#2d7a4f1a}.top-products{flex-direction:column;gap:.8rem;list-style:none;display:flex}.top-product-item{border-bottom:.5px solid #8c82781a;align-items:center;gap:1rem;padding-bottom:.8rem;display:flex}.top-product-rank{font-family:var(--font-serif);color:var(--gold);flex-shrink:0;width:28px;font-size:1.1rem}.top-product-name{color:var(--charcoal);flex:1;font-size:.88rem}.top-product-views{color:var(--stone);flex-shrink:0;font-size:.75rem}.quotes-by-type{flex-direction:column;gap:.9rem;list-style:none;display:flex}.qbt-item{grid-template-columns:130px 1fr 30px;align-items:center;gap:.8rem;display:grid}.qbt-label{color:var(--charcoal);font-size:.8rem}.qbt-bar-wrap{background:#b8974a26;border-radius:2px;height:4px;overflow:hidden}.qbt-bar{background:var(--gold);border-radius:2px;height:100%;transition:width .6s}.qbt-count{color:var(--stone);text-align:right;font-size:.8rem}@media (width<=768px){.kpi-grid{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.qbt-item{grid-template-columns:100px 1fr 25px}}.products-table .product-table-name{color:var(--charcoal);font-weight:500}.badge-list{flex-wrap:wrap;gap:4px;display:flex}.product-badge{letter-spacing:.1em;text-transform:uppercase;padding:2px 8px;font-size:.6rem}.badge-new{color:#2d7a4f;background:#2d7a4f1a}.badge-best{color:var(--gold);background:#b8974a26}.badge-excl{color:var(--charcoal);background:#2a252014}.action-btns{gap:.5rem;display:flex}.action-btn{letter-spacing:.1em;text-transform:uppercase;color:var(--stone);transition:all var(--transition);background:0 0;border:.5px solid #8c827859;padding:4px 12px;font-size:.7rem}.action-btn--edit:hover{border-color:var(--gold);color:var(--gold)}.action-btn--delete:hover{color:#c0392b;border-color:#c0392b}.modal-overlay{z-index:200;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0000008c;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.modal{background:var(--ivory);width:100%;max-width:620px;max-height:90vh;padding:2rem;overflow-y:auto}.modal--small{max-width:420px}.modal-header{border-bottom:.5px solid #b8974a33;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.modal-close{color:var(--stone);cursor:pointer;transition:color var(--transition);background:0 0;border:none;padding:4px 8px;font-size:1rem}.modal-close:hover{color:var(--charcoal)}.checkbox-group{flex-wrap:wrap;gap:1.5rem;padding:.5rem 0;display:flex}.checkbox-label{color:var(--charcoal);cursor:pointer;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--gold);cursor:pointer}.image-manager{flex-direction:column;gap:1.2rem;display:flex}.image-manager-title{font-family:var(--font-serif);color:var(--charcoal);align-items:center;gap:.8rem;font-size:1rem;font-weight:400;display:flex}.image-count{font-family:var(--font-sans);color:var(--stone);font-size:.72rem;font-weight:400}.image-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.8rem;display:grid}.image-item{aspect-ratio:1;transition:border-color var(--transition);border:2px solid #0000;position:relative;overflow:hidden}.image-item--main{border-color:var(--gold)}.image-item img{object-fit:cover;width:100%;height:100%}.image-main-badge{letter-spacing:.1em;text-transform:uppercase;background:var(--gold);color:var(--white);text-align:center;padding:4px;font-size:.6rem;position:absolute;bottom:0;left:0;right:0}.image-actions{opacity:0;transition:opacity var(--transition);gap:4px;display:flex;position:absolute;top:4px;right:4px}.image-item:hover .image-actions{opacity:1}.image-btn{cursor:pointer;width:24px;height:24px;transition:background var(--transition);border:none;justify-content:center;align-items:center;font-size:.7rem;display:flex}.image-btn--main{background:var(--gold);color:var(--white)}.image-btn--main:hover{background:var(--gold-light)}.image-btn--delete{color:var(--white);background:#c0392bd9}.image-btn--delete:hover{background:#c0392b}.upload-zone{text-align:center;cursor:pointer;transition:border-color var(--transition), background var(--transition);border:1px dashed #b8974a66;padding:2rem;display:block}.upload-zone:hover{border-color:var(--gold);background:#b8974a0a}.upload-zone-content{pointer-events:none;flex-direction:column;align-items:center;gap:.4rem;display:flex}.upload-icon{color:var(--gold);font-size:1.5rem}.upload-zone-content span{color:var(--stone);font-size:.85rem}.upload-hint{color:#8c8278b3!important;font-size:.72rem!important}.product-image{object-fit:cover;width:100%;height:100%;transition:transform .5s}.product-card:hover .product-image{transform:scale(1.04)}.product-image-placeholder{background:linear-gradient(135deg,#e8e2d4,#d0c8b6);width:100%;height:100%}.product-modal-overlay{z-index:300;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#14100cbf;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.product-modal{background:var(--ivory);width:100%;max-width:900px;max-height:90vh;position:relative;overflow-y:auto}.product-modal-close{z-index:10;background:var(--charcoal);width:28px;height:28px;color:var(--cream);cursor:pointer;transition:background var(--transition);border:none;justify-content:center;align-items:center;font-size:.75rem;display:flex;position:absolute;top:.75rem;right:.75rem}.product-modal-close:hover{background:var(--gold)}.product-modal-grid{grid-template-columns:1.2fr 1fr;display:grid}.product-modal-gallery{background:var(--cream);flex-direction:column;gap:0;display:flex}.gallery-main{aspect-ratio:1;background:var(--cream);position:relative;overflow:hidden}.gallery-main img{object-fit:cover;width:100%;height:100%}.gallery-nav{width:36px;height:36px;color:var(--cream);cursor:pointer;transition:background var(--transition);z-index:2;background:#1e1a1899;border:none;justify-content:center;align-items:center;font-size:1.4rem;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.gallery-nav:hover{background:var(--gold)}.gallery-nav--prev{left:.75rem}.gallery-nav--next{right:.75rem}.gallery-counter{letter-spacing:.1em;color:var(--cream);background:#1e1a1899;padding:3px 10px;font-size:.7rem;position:absolute;bottom:.75rem;right:.75rem}.gallery-thumbs{background:#b8974a26;gap:2px;padding:2px;display:flex;overflow-x:auto}.gallery-thumb{cursor:pointer;width:60px;height:60px;transition:border-color var(--transition);background:0 0;border:2px solid #0000;flex-shrink:0;padding:0;overflow:hidden}.gallery-thumb img{object-fit:cover;width:100%;height:100%}.gallery-thumb--active{border-color:var(--gold)}.gallery-placeholder{aspect-ratio:1;background:linear-gradient(135deg,#e8e2d4,#d0c8b6)}.product-modal-info{flex-direction:column;gap:1rem;padding:2.5rem;display:flex}.modal-badges{flex-wrap:wrap;gap:.5rem;min-height:24px;display:flex}.modal-badges .product-tag{display:inline-block;position:static}.modal-category{letter-spacing:.25em;text-transform:uppercase;color:var(--gold);font-size:.7rem}.modal-title{font-family:var(--font-serif);color:var(--charcoal);font-size:clamp(1.4rem,3vw,2rem);font-weight:300;line-height:1.2}.modal-description{color:var(--stone);font-size:.88rem;font-weight:300;line-height:1.8}.modal-detail{border-top:.5px solid #b8974a33;flex-direction:column;gap:.3rem;padding-top:.5rem;display:flex}.modal-detail-label{letter-spacing:.2em;text-transform:uppercase;color:var(--stone);font-size:.65rem}.modal-detail-value{color:var(--charcoal);font-size:.88rem}.modal-price{font-family:var(--font-serif);color:var(--gold);font-size:1.4rem;font-weight:300}.modal-cta{text-align:center;margin-top:.5rem}.modal-keyboard-hint{color:#8c827899;text-align:center;letter-spacing:.05em;font-size:.68rem}.product-image-count{letter-spacing:.1em;color:var(--cream);background:#1e1a1899;padding:3px 8px;font-size:.65rem;position:absolute;bottom:10px;left:10px}@media (width<=768px){.product-modal-grid{grid-template-columns:1fr}.product-modal{max-height:95vh}.product-modal-info{padding:1.5rem}}
