:root{--bg-main: #ffffff;--bg-surface: #f7f7f7;--bg-secondary: #f4f1ea;--bg-dark: #000000;--bg-dark-surface: #111111;--text-primary: #000000;--text-secondary: #333333;--text-muted: #666666;--text-light: #ffffff;--text-light-muted: #aaaaaa;--accent-gold: #c89d66;--accent-terracotta: #9e4b2d;--accent-blue: #0f2c59;--border-subtle: #e5e5e5;--border-dark: #222222;--font-serif: "Cormorant Garamond", "Times New Roman", Georgia, serif;--font-sans: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display: "Cinzel", "Times New Roman", serif;--font-brand: "Cinzel", serif;--transition-fast: .2s cubic-bezier(.16, 1, .3, 1);--transition-smooth: .35s cubic-bezier(.16, 1, .3, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px;background-color:var(--bg-main);color:var(--text-primary);font-family:var(--font-sans);width:100%;max-width:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{overflow-x:hidden;line-height:1.5;min-height:100vh;width:100%;max-width:100%;background-color:#fff}#root{width:100%;max-width:100%;min-width:0;overflow-x:clip}.font-serif{font-family:var(--font-serif)}.font-sans{font-family:var(--font-sans)}.font-brand{font-family:var(--font-brand)}.zegna-logo{font-family:var(--font-serif);font-size:2.1rem;font-weight:700;letter-spacing:.06em;color:#000;text-transform:uppercase;line-height:1}.zegna-top-bar{background-color:#000;color:#fff;font-size:.72rem;font-weight:600;letter-spacing:.08em;padding:.6rem 2.5rem;display:flex;justify-content:space-between;align-items:center}.zegna-top-bar a,.zegna-top-bar button{color:#fff;text-decoration:none;font-size:.72rem;font-weight:600;letter-spacing:.08em;background:none;border:none;cursor:pointer}.zegna-top-bar a:hover,.zegna-top-bar button:hover{text-decoration:underline}.hero-reveal{opacity:0;animation:heroReveal .7s cubic-bezier(.16,1,.3,1) forwards}.hero-reveal-1{animation-delay:.15s}.hero-reveal-2{animation-delay:.28s}.hero-reveal-3{animation-delay:.4s}.hero-reveal-4{animation-delay:.52s}@keyframes heroReveal{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.zegna-nav-header{background-color:#fff;border-bottom:1px solid var(--border-subtle);position:sticky;top:0;z-index:1000;transition:all .3s ease}.zegna-nav-container{max-width:1520px;margin:0 auto;padding:0 2.5rem;height:80px;display:flex;align-items:center;justify-content:space-between}.zegna-nav-link{font-family:var(--font-sans);font-size:.88rem;font-weight:400;color:#000;text-decoration:none;background:none;border:none;cursor:pointer;padding:1.8rem 0;position:relative;transition:color .2s ease}.zegna-nav-link:hover{color:#555}.zegna-mega-menu{position:absolute;top:100%;left:0;width:100%;background-color:#fff;border-bottom:1px solid var(--border-subtle);box-shadow:0 15px 35px #00000014;padding:3rem 0;z-index:999;animation:fadeIn .2s ease}.zegna-mega-container{max-width:1520px;margin:0 auto;padding:0 2.5rem;display:grid;grid-template-columns:260px 300px 1fr;gap:3.5rem}.mega-column-title{font-size:.72rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#777;margin-bottom:1.2rem}.mega-column-links{list-style:none;display:flex;flex-direction:column;gap:.9rem}.mega-column-links button,.mega-column-links a{background:none;border:none;font-size:.95rem;color:#000;cursor:pointer;text-align:left;padding:0;text-decoration:none;transition:color .2s}.mega-column-links button:hover,.mega-column-links a:hover{color:#777}.btn-zegna-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background-color:#000;color:#fff;padding:1rem 2.2rem;font-size:.82rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;border:1px solid #000000;cursor:pointer;transition:all .2s ease}.btn-zegna-primary:hover{background-color:#333;border-color:#333}.btn-zegna-outline{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background-color:transparent;color:#000;padding:.9rem 2rem;font-size:.82rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;border:1px solid #000000;cursor:pointer;transition:all .2s ease}.btn-zegna-outline:hover{background-color:#000;color:#fff}.btn-zegna-white{display:inline-flex;align-items:center;justify-content:center;background-color:#fff;color:#000;padding:1rem 2.2rem;font-size:.82rem;font-weight:600;letter-spacing:.1em;text-decoration:none;border:none;cursor:pointer;transition:background-color .2s ease}.btn-zegna-white:hover{background-color:#f0f0f0}.zegna-underlined-link{font-family:var(--font-sans);font-size:.95rem;font-weight:500;color:#000;text-decoration:underline;text-underline-offset:6px;cursor:pointer;transition:color .2s ease}.zegna-underlined-link:hover{color:#666}.modal-overlay{position:fixed;inset:0;background:#000000b3;backdrop-filter:blur(4px);z-index:2000;display:flex;align-items:center;justify-content:center;padding:1.5rem;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{animation:slideUp .3s cubic-bezier(.16,1,.3,1) forwards}.toast-container{position:fixed;bottom:2rem;right:2rem;z-index:3000;animation:slideUp .3s ease-out}.toast-box{background:#000;color:#fff;padding:1rem 1.6rem;box-shadow:0 10px 30px #00000040;display:flex;align-items:center;gap:.8rem;font-size:.85rem;border-left:3px solid var(--accent-gold)}.form-input,.form-select,.form-textarea{width:100%;background:#fff;border:1px solid #d5d5d5;color:#000;padding:.85rem 1rem;font-family:var(--font-sans);font-size:.88rem;outline:none;transition:border-color .2s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#000}.form-label{display:block;font-size:.74rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#444;margin-bottom:.4rem}.container-zegna{max-width:1520px;margin:0 auto;padding:0 2.5rem}@media(max-width:768px){.container-zegna{padding:0 1.2rem}.zegna-top-bar{min-height:74px;padding:.65rem 1rem;gap:.7rem;align-items:flex-start;font-size:.62rem;line-height:1.35}.announcement-message{flex:1 1 52%;max-width:52%}.announcement-tools{flex:1 1 48%;min-width:0;justify-content:flex-end;gap:.45rem!important;flex-wrap:wrap;text-align:right}.announcement-tools>span{display:none}.announcement-region{width:100%;justify-content:flex-end;gap:.2rem!important;flex-wrap:wrap}.announcement-region span{max-width:100%}.announcement-region select{max-width:100%;font-size:.62rem!important}.zegna-logo{font-size:1.4rem}.zegna-nav-container{padding:0 1.2rem;height:70px;min-width:0}.zegna-nav-container>div{min-width:0}.zegna-nav-container>div:last-child{flex-shrink:0;gap:1rem!important}.hero-banner-section{height:min(68vh,560px)!important;min-height:430px!important;max-height:560px}.hero-banner-backdrop{background-position:58% center!important}.hero-banner-content{padding:0 1rem!important}.hero-banner-kicker{font-size:.62rem!important;letter-spacing:.16em!important}.hero-banner-title{letter-spacing:.06em!important;font-size:clamp(1.7rem,9vw,2.7rem)!important;line-height:1.06!important}.hero-banner-subtitle{font-size:.76rem!important;max-width:90%!important;line-height:1.5!important}.hero-banner-actions{margin-top:.8rem!important}.hero-banner-button{width:100%!important;max-width:260px!important;padding:.8rem 1rem!important;font-size:.68rem!important}.hero-banner-dots{bottom:.9rem!important}.hero-banner-dot{width:8px!important;height:8px!important}.catalog-section{padding-top:3rem!important;padding-bottom:4rem!important}.catalog-title{font-size:2rem!important;margin-bottom:1.2rem!important}.catalog-tabs{gap:.9rem 1.1rem!important;flex-wrap:nowrap!important;overflow-x:auto;overflow-y:hidden;padding:0 .2rem .8rem!important;scrollbar-width:none;-webkit-overflow-scrolling:touch}.catalog-tabs::-webkit-scrollbar{display:none}.catalog-tabs button{font-size:.8rem!important;padding-bottom:.7rem!important;flex:0 0 auto}.catalog-toolbar{align-items:flex-start!important}.catalog-grid{grid-template-columns:1fr!important;gap:1.5rem 1rem!important}.product-card-image{height:300px!important}}
