:root{--primary: #8b5a2b;--primary-light: #a67c52;--primary-dark: #654321;--accent: #d4af37;--bg-dark: #1a1a1a;--bg-light: #f9f7f1;--text-main: #333333;--text-light: #777777;--white: #ffffff;--border: #e2dfd5;--success: #2e7d32;--font-serif: "Cinzel", serif;--font-sans: "Inter", sans-serif;--shadow-sm: 0 2px 4px rgba(0,0,0,.05);--shadow-md: 0 4px 6px rgba(0,0,0,.1);--shadow-lg: 0 10px 15px rgba(0,0,0,.1);--radius: 8px;--transition: all .3s ease}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-sans);color:var(--text-main);background-color:var(--bg-light);line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:600;color:var(--bg-dark)}a{text-decoration:none;color:inherit;transition:var(--transition)}ul{list-style:none}.container{max-width:1200px;margin:0 auto;padding:0 20px}.btn{display:inline-block;padding:12px 24px;border:none;border-radius:var(--radius);cursor:pointer;font-family:var(--font-sans);font-weight:500;text-align:center;transition:var(--transition)}.btn-primary{background-color:var(--primary);color:var(--white)}.btn-primary:hover{background-color:var(--primary-dark)}.btn-whatsapp{background-color:#25d366;color:var(--white)}.btn-whatsapp:hover{background-color:#128c7e}.paypal-container{margin-top:10px;width:100%}.btn-block{display:block;width:100%;margin-bottom:10px}.site-header{background-color:var(--bg-dark);color:var(--white);padding:20px 0;position:sticky;top:0;z-index:100;box-shadow:var(--shadow-md)}.header-container{display:flex;justify-content:space-between;align-items:center}.logo a{font-family:var(--font-serif);font-size:1.5rem;color:var(--accent);letter-spacing:1px}.main-nav ul{display:flex;gap:30px}.main-nav a{font-size:.95rem;font-weight:500}.main-nav a:hover{color:var(--accent)}.cart-icon{position:relative;cursor:pointer;color:var(--white);transition:var(--transition)}.cart-icon:hover{color:var(--accent)}.cart-count{position:absolute;top:-8px;right:-8px;background-color:var(--accent);color:var(--bg-dark);font-size:.75rem;font-weight:700;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:50%}.hero-alt{padding:80px 0 100px;background-color:var(--white);border-bottom:1px solid var(--border)}.hero-alt-content{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.hero-text h1{font-size:3rem;margin-bottom:20px;color:var(--primary-dark);line-height:1.2}.hero-text p{font-size:1.2rem;margin-bottom:30px;color:var(--text-light)}.hero-figure{border-radius:1rem;overflow:hidden;border:1px solid #e7e5e4;box-shadow:var(--shadow-sm);background-color:#fafaf9}.hero-img{width:100%;height:256px;object-fit:cover;display:block}.hero-caption{padding:.5rem;font-size:11px;color:#78716c;background-color:#fafaf9;text-align:center}.hero-caption a{text-decoration:underline}.hero-caption a:hover{color:#44403c}@media (max-width: 768px){.hero-alt-content{grid-template-columns:1fr;text-align:center}.hero-text h1{font-size:2.2rem}}.notice-section{margin-top:-40px;position:relative;z-index:10}.notice-card{background-color:var(--white);border-left:4px solid var(--accent);border-radius:var(--radius);padding:24px;display:flex;align-items:center;gap:20px;box-shadow:var(--shadow-md)}.notice-icon{color:var(--accent);flex-shrink:0}.notice-text h3{font-family:var(--font-sans);font-size:1.1rem;margin-bottom:5px}.notice-text p{font-size:.95rem;color:var(--text-light)}.section-header{text-align:center;margin-bottom:40px}.section-header h2{font-size:2.5rem;margin-bottom:10px;color:var(--primary-dark)}.section-header p{color:var(--text-light);font-size:1.1rem}.catalog-section{padding:80px 20px}.catalog-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:20px}.search-bar input{padding:10px 15px;border:1px solid var(--border);border-radius:var(--radius);width:250px;font-family:var(--font-sans)}.category-filters{display:flex;gap:10px;flex-wrap:wrap}.filter-btn{padding:8px 16px;background-color:transparent;border:1px solid var(--primary);color:var(--primary);border-radius:20px;cursor:pointer;transition:var(--transition)}.filter-btn.active,.filter-btn:hover{background-color:var(--primary);color:var(--white)}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:30px}.product-card{background:var(--white);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column}.product-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.product-image{height:200px;background-color:#eee;background-size:cover;background-position:center}.product-info{padding:20px;flex-grow:1;display:flex;flex-direction:column}.product-category{font-size:.8rem;text-transform:uppercase;color:var(--primary);letter-spacing:1px;margin-bottom:5px}.product-title{font-family:var(--font-sans);font-size:1.2rem;margin-bottom:10px}.product-price{font-weight:600;font-size:1.25rem;color:var(--primary-dark);margin-bottom:20px;margin-top:auto}.services-section{background-color:var(--bg-dark);padding:80px 0;color:var(--white)}.services-section .section-header h2{color:var(--accent)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px}.service-card{background-color:#ffffff0d;padding:30px;border-radius:var(--radius);text-align:center;border:1px solid rgba(255,255,255,.1);transition:var(--transition)}.service-card:hover{background-color:#ffffff1a;border-color:var(--accent)}.service-card svg{color:var(--accent);margin-bottom:20px}.service-card h3{color:var(--white);font-size:1.2rem;margin-bottom:15px}.service-card p{color:#ccc;font-size:.95rem}.location-section{padding:80px 20px}.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;background:var(--white);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-md)}.location-info{padding:50px}.location-info h2{margin-bottom:20px;color:var(--primary-dark)}.location-info>p{margin-bottom:30px;color:var(--text-light)}.info-item{margin-bottom:20px}.info-item strong{display:block;margin-bottom:5px;color:var(--bg-dark)}.hours-list{color:var(--text-light)}.hours-list li{display:flex;justify-content:space-between;margin-bottom:5px;border-bottom:1px dashed var(--border);padding-bottom:5px}.hours-list .closed{color:#d32f2f;font-weight:500}.location-map{min-height:400px}.custom-google-map{width:100%;height:100%;min-height:380px;background-color:#f5f5f4;border-radius:1rem;overflow:hidden;border:1px solid #e7e5e4;box-shadow:inset 0 2px 4px #0000000d;position:relative;display:flex;flex-direction:column}.map-iframe{width:100%;height:100%;flex:1 1 0%;border-width:0;min-height:300px}.map-footer-card{background-color:#fffffff2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:1rem;border-top:1px solid #e7e5e4;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem}.map-footer-text{font-size:.875rem;line-height:1.25rem}.map-footer-title{font-weight:600;color:#1c1917}.map-footer-subtitle{color:#78716c;font-size:.75rem;line-height:1rem}.map-directions-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem .875rem;background-color:#92400e;color:#fff;font-size:.75rem;line-height:1rem;font-weight:500;border-radius:.5rem;transition:background-color .15s ease-in-out;box-shadow:0 1px 2px #0000000d}.map-directions-btn:hover{background-color:#78350f;color:#fff}.site-footer{background-color:var(--bg-dark);color:var(--white);padding:40px 0 20px;border-top:4px solid var(--accent)}.footer-container{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-bottom:30px}.footer-brand h2{color:var(--accent);font-size:1.5rem;margin-bottom:5px}.footer-brand p{color:#aaa}.footer-contact p{margin-bottom:5px}.footer-bottom{text-align:center;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);color:#777;font-size:.9rem}.cart-drawer-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;visibility:hidden;transition:var(--transition);z-index:999}.cart-drawer-overlay.active{opacity:1;visibility:visible}.cart-drawer{position:fixed;top:0;right:-400px;width:400px;height:100%;background-color:var(--white);box-shadow:-5px 0 15px #0000001a;transition:right .3s ease;z-index:1000;display:flex;flex-direction:column}.cart-drawer.active{right:0}.cart-header{padding:20px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.cart-header h2{font-family:var(--font-sans);font-size:1.3rem;margin:0}.close-cart{background:none;border:none;font-size:1.8rem;cursor:pointer;color:var(--text-light);line-height:1}.cart-items{flex-grow:1;overflow-y:auto;padding:20px}.empty-cart-msg{text-align:center;color:var(--text-light);margin-top:40px}.cart-item{display:flex;justify-content:space-between;align-items:center;padding-bottom:15px;margin-bottom:15px;border-bottom:1px solid #eee}.cart-item-info h4{font-family:var(--font-sans);font-size:.95rem;margin-bottom:5px}.cart-item-price{color:var(--primary);font-weight:500}.cart-item-remove{background:none;border:none;color:#d32f2f;cursor:pointer;font-size:.85rem}.cart-footer{padding:20px;border-top:1px solid var(--border);background-color:var(--bg-light)}.cart-total{display:flex;justify-content:space-between;font-size:1.2rem;font-weight:700;margin-bottom:20px;color:var(--bg-dark)}@media (max-width: 900px){.location-grid{grid-template-columns:1fr}.location-map{height:300px;min-height:auto}}@media (max-width: 768px){.hero-content h1{font-size:2.5rem}.main-nav{display:none}.cart-drawer{width:100%;right:-100%}}.header-actions{display:flex;align-items:center;gap:20px}.auth-menu-container{position:relative}.btn-auth{display:flex;align-items:center;gap:8px;padding:8px 16px;border:1px solid var(--accent);color:var(--accent);background:transparent;font-size:.9rem}.btn-auth:hover{background:#d4af371a}.btn-text{background:transparent;color:var(--white);padding:8px 16px;display:flex;align-items:center;gap:8px;font-size:.95rem}.btn-text:hover{color:var(--accent)}.user-dropdown{position:relative}.dropdown-content{position:absolute;top:100%;right:0;background-color:var(--white);min-width:200px;box-shadow:var(--shadow-md);border-radius:var(--radius);padding:10px 0;margin-top:10px;z-index:200;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .2s ease}.user-dropdown:hover .dropdown-content{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-content a{color:var(--text-main);padding:12px 20px;display:flex;align-items:center;gap:10px;font-size:.9rem}.dropdown-content a:hover{background-color:#00000008;color:var(--primary)}.dropdown-content hr{border:none;border-top:1px solid var(--border);margin:5px 0}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;opacity:1;visibility:visible;transition:var(--transition)}.modal-overlay.hidden{opacity:0;visibility:hidden}.modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%) scale(1);background:var(--white);border-radius:var(--radius);width:90%;max-width:400px;max-height:90vh;overflow-y:auto;z-index:1001;box-shadow:var(--shadow-lg);opacity:1;visibility:visible;transition:var(--transition)}.modal.hidden{opacity:0;visibility:hidden;transform:translate(-50%,-50%) scale(.95)}.modal.modal-lg{max-width:600px}.modal-header{padding:20px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.modal-header h2{font-family:var(--font-sans);font-size:1.25rem;margin:0}.close-modal{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-light)}.modal-body{padding:20px}.modal-footer-text{text-align:center;margin-top:20px;font-size:.9rem;color:var(--text-light)}.modal-footer-text a{color:var(--primary);font-weight:500}.form-group{margin-bottom:15px}.form-group label{display:flex;align-items:center;gap:5px;font-size:.9rem;margin-bottom:5px;color:var(--text-main);font-weight:500}.form-group label i{width:16px;height:16px}.form-group input:not([type=checkbox]){width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-sans);font-size:1rem}.form-group input:focus{outline:none;border-color:var(--primary)}.checkbox-group{display:flex;align-items:flex-start;gap:10px}.checkbox-group input{margin-top:4px}.checkbox-group label{font-weight:400;font-size:.85rem;line-height:1.4}.grid-form{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.grid-form .full-width{grid-column:1 / -1}@media (max-width: 600px){.grid-form{grid-template-columns:1fr}}.account-section{padding:60px 20px;min-height:60vh}.account-tabs{display:flex;gap:20px;margin-bottom:30px;border-bottom:1px solid var(--border)}.tab-btn{background:none;border:none;padding:10px 20px;font-size:1rem;font-family:var(--font-sans);cursor:pointer;color:var(--text-light);border-bottom:2px solid transparent}.tab-btn.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:500}.tab-content{display:none}.tab-content.active{display:block}.orders-list{display:flex;flex-direction:column;gap:15px}.order-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:20px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px}.order-id{font-weight:700;font-size:1.1rem;margin-bottom:5px}.order-date{font-size:.85rem;color:var(--text-light)}.order-total{font-weight:700;color:var(--primary-dark)}.order-status{padding:4px 10px;border-radius:20px;font-size:.8rem;font-weight:500}.status-in-lavorazione{background:#fff3cd;color:#856404}.status-pronto{background:#d4edda;color:#155724}.status-spedito{background:#cce5ff;color:#004085}.toast{position:fixed;bottom:20px;right:20px;background-color:var(--bg-dark);color:var(--white);padding:15px 25px;border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:2000;transition:all .3s ease;transform:translateY(0);opacity:1}.toast.hidden{transform:translateY(50px);opacity:0;pointer-events:none}.toast.success{border-left:4px solid var(--success)}.toast.error{border-left:4px solid #d32f2f}.hidden{display:none!important}
