@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@300;400&family=Lato:wght@300;400;600&display=swap";:root{--white: #ffffff;--offwhite: #fdfcfb;--softgrey: #f7f6f4;--grey: #e8e6e2;--text: #5a5750;--charcoal: #3a3630;--sage: #a8b49e;--clay: #c9b5a0;--accent: #9f8f7e}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:Lato,sans-serif;font-weight:300;background:var(--offwhite);color:var(--text);line-height:1.7}#root,.catalog-app{min-height:100vh}.catalog-nav{background:var(--white);border-bottom:1px solid var(--grey);padding:0 4rem;height:70px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:10}.logo{font-family:Cormorant Garamond,serif;font-size:1.25rem;letter-spacing:.1em;color:var(--charcoal)}.nav-links{display:flex;gap:2rem}.nav-links a{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text);text-decoration:none;position:relative}.nav-links a:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--charcoal);transition:width .3s}.nav-links a:hover:after,.nav-links a.active:after{width:100%}.nav-actions{display:flex;gap:1rem}.btn{font-family:Lato,sans-serif;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;padding:.6rem 1.75rem;border:none;cursor:pointer;transition:all .3s;border-radius:999px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.btn-outline{background:transparent;border:1px solid var(--grey);color:var(--text)}.btn-outline:hover{border-color:var(--charcoal);color:var(--charcoal)}.btn-fill{background:var(--charcoal);color:var(--white)}.btn-fill:hover{background:var(--text)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-block{width:100%}.hero{background:var(--softgrey);padding:5rem 4rem;border-bottom:1px solid var(--grey);display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap}.hero-content{max-width:700px}.hero-eyebrow{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:1.5rem}.hero h1{font-family:Cormorant Garamond,serif;font-weight:300;font-size:3.2rem;color:var(--charcoal);margin-bottom:1rem}.hero h1 em{font-style:italic}.hero p{max-width:520px;margin-bottom:1.5rem}.hero-highlight{background:var(--white);border:1px solid var(--grey);padding:1.75rem;max-width:320px}.hero-highlight .badge{margin-bottom:1rem}.badge{display:inline-block;border:1px solid var(--grey);padding:.2rem .75rem;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text)}.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.5rem}.search-section{background:var(--white);padding:2rem 4rem;border-bottom:1px solid var(--grey)}.search-wrap{max-width:600px;margin:0 auto;display:flex;border:1px solid var(--grey);background:var(--offwhite)}.search-wrap input{flex:1;padding:.875rem 1.5rem;border:none;background:transparent;font-size:.9rem}.search-wrap button{padding:.875rem 1.5rem;border:none;background:var(--charcoal);color:var(--white);text-transform:uppercase;letter-spacing:.12em}.categories{background:var(--white);padding:1rem 4rem;border-bottom:1px solid var(--grey);display:flex;gap:1.5rem;flex-wrap:wrap}.cat-link{border:none;background:transparent;letter-spacing:.12em;text-transform:uppercase;font-size:.75rem;padding-bottom:.35rem;border-bottom:1px solid transparent;cursor:pointer}.cat-link.active,.cat-link:hover{border-bottom-color:var(--charcoal);color:var(--charcoal)}.products-section{padding:3rem 4rem}.products-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.products-count{letter-spacing:.1em;text-transform:uppercase;font-size:.8rem}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:2rem}.product-card{border:1px solid var(--grey);background:var(--white);overflow:hidden;display:flex;flex-direction:column;transition:transform .3s ease;text-decoration:none;color:inherit}.product-card:hover{transform:translateY(-4px)}.product-image{height:320px;background:var(--softgrey);display:flex;align-items:center;justify-content:center;font-size:4rem;position:relative;background-size:cover;background-position:center;overflow:hidden}.product-image span{font-size:4rem}.product-badge{position:absolute;top:.85rem;right:.85rem;background:#fffffff2;border:1px solid var(--grey);padding:.2rem .6rem;font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text)}.product-info{padding:1.5rem;text-align:center}.product-producer{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:.5rem}.product-name{font-family:Cormorant Garamond,serif;font-size:1.4rem;color:var(--charcoal);margin:.2rem 0 .75rem}.product-desc{font-size:.85rem;color:var(--text);margin-bottom:1rem}.product-unit{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:.5rem}.product-footer{display:flex;justify-content:center;gap:1rem;font-size:.85rem;color:var(--text)}.product-price{font-family:Cormorant Garamond,serif;font-size:1.2rem;color:var(--charcoal)}.detail-page{padding:2rem 4rem 4rem}.detail-back{display:inline-flex;align-items:center;margin-bottom:1rem;font-size:.85rem}.detail-layout{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;border:1px solid var(--grey);background:var(--white);padding:2rem}.detail-visual{min-height:420px;background:var(--softgrey);border:1px solid var(--grey);background-size:cover;background-position:center;position:relative;display:flex;align-items:center;justify-content:center;font-size:4rem}.detail-visual .product-badge{top:1rem;right:1rem}.detail-content h1{font-family:Cormorant Garamond,serif;font-size:3rem;margin:.5rem 0 1rem;color:var(--charcoal)}.detail-description{font-size:.95rem;color:var(--text);margin-bottom:1.5rem}.detail-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;border-top:1px solid var(--grey);border-bottom:1px solid var(--grey);padding:1rem 0;margin-bottom:1.5rem}.detail-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);display:block;margin-bottom:.3rem}.detail-actions{display:flex;gap:1rem;flex-wrap:wrap}.contact-actions{margin-bottom:1.5rem}.contact-buttons{display:flex;flex-wrap:wrap;gap:.75rem;margin:.5rem 0 1rem}.contact-card{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;background:var(--softgrey);border:1px solid var(--grey);padding:1rem}.contact-placeholder{border:1px dashed var(--grey);padding:1rem 1.25rem;margin-bottom:1.5rem;background:var(--offwhite)}.alert{border-radius:12px;padding:.9rem 1rem;margin-top:1rem}.alert--error{background:#fee2e2;color:#991b1b}.alert--success{background:#dcfce7;color:#166534}.empty-state{border:1px dashed var(--grey);padding:2rem;text-align:center;background:var(--offwhite)}.skeleton{border-radius:12px;padding:2rem;background:linear-gradient(90deg,#f0ece7 25%,#f7f4ef,#f0ece7 75%);background-size:400% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:0% 0%}to{background-position:-135% 0%}}.product-grid--compact .product-card{min-height:0}.admin-card-item{border:1px solid var(--grey);background:var(--white);box-shadow:0 4px 20px #0000000a}.admin-card-actions{display:flex;gap:.5rem;padding:0 1.5rem 1.5rem}.product-card__media{background:var(--softgrey);min-height:140px;display:flex;align-items:center;justify-content:center;color:var(--charcoal);font-size:2rem}.product-card__body{padding:1rem;display:flex;flex-direction:column;gap:.5rem}.product-card__description{font-size:.85rem;color:var(--text)}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.7rem;color:var(--accent);margin-bottom:.3rem}.link{color:var(--charcoal);text-decoration:none;font-weight:400}.link:disabled{opacity:.6;pointer-events:none}.product-form{display:flex;flex-direction:column;gap:1rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}label{display:flex;flex-direction:column;gap:.5rem;font-size:.85rem;color:var(--charcoal)}input,textarea,select{border:1px solid var(--grey);background:var(--white);padding:.7rem .9rem;font:inherit;border-radius:10px}textarea{resize:vertical}.checkbox{flex-direction:row;align-items:center;gap:.5rem}.checkbox input[type=checkbox]{width:16px;height:16px}.file-input input[type=file]{padding:.4rem 0}.image-preview{border:1px solid var(--grey);padding:.75rem;border-radius:12px;background:var(--softgrey)}.image-preview img{width:100%;border-radius:10px;max-height:260px;object-fit:cover}.form-actions{display:flex;flex-direction:column;gap:.75rem}.admin-shell{min-height:100vh;background:var(--offwhite);padding:2rem 4rem 4rem}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.admin-header-actions{display:flex;gap:1rem}.admin-main{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem}.admin-card{background:var(--white);border:1px solid var(--grey);padding:2rem;min-height:420px;display:flex;flex-direction:column;gap:1.5rem}.section-header{display:flex;justify-content:space-between;align-items:center}.chip{border:1px solid var(--grey);padding:.25rem .75rem;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--softgrey);padding:2rem}.auth-card{background:var(--white);border:1px solid var(--grey);padding:3rem;width:min(420px,100%);text-align:left}.auth-card h2{font-family:Cormorant Garamond,serif;font-size:2.2rem;color:var(--charcoal);margin:.3rem 0 .8rem}.auth-form{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem}@media (max-width: 900px){.catalog-nav,.hero,.search-section,.categories,.products-section{padding:1.5rem}.nav-links,.nav-actions{display:none}.hero{flex-direction:column}.admin-shell{padding:1.5rem}}
