*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --paper:#F7F1E6;
  --paper-2:#ECE0C9;
  --card:#FFFFFF;
  --ink:#3A2E22;
  --ink-soft:#7A6A57;
  --gold:#B9884A;
  --gold-dark:#93672F;
  --gold-faint:rgba(185,136,74,.12);
  --wine:#7B2436;
  --wine-2:#93283D;
  --line:rgba(58,46,34,.14);
  --display:'Fraunces',serif;
  --sans:'Instrument Sans',sans-serif;
  --radius:10px;
}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
::selection{background:var(--wine);color:#fff}
.ma-container{max-width:1160px;margin:0 auto;padding:0 1.5rem}
.ma-narrow{max-width:680px}
.ma-center{text-align:center}
.ma-eyebrow{font-size:.68rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-dark);font-weight:600;display:inline-block;margin-bottom:.9rem}
.ma-h2{font-family:var(--display);font-weight:460;font-size:clamp(1.8rem,4vw,2.7rem);line-height:1.18;margin-bottom:.6rem}
.ma-h2 em{font-style:italic;color:var(--wine);font-weight:500}
.ma-lead{color:var(--ink-soft);font-size:.92rem;max-width:520px;margin:0 auto}
.ma-section{padding:6rem 0}
.ma-section.ma-alt{background:var(--paper-2)}
@media(max-width:640px){.ma-section{padding:4rem 0}}

/* NAV */
.ma-nav{position:sticky;top:0;z-index:200;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1rem 1.5rem;background:rgba(247,241,230,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.ma-brand{font-family:var(--display);font-size:1.05rem;color:var(--ink);display:flex;align-items:baseline;gap:.5rem;white-space:nowrap}
.ma-brand b{color:var(--wine);font-weight:500}
.ma-brand span{font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);font-family:var(--sans)}
.ma-nav-links{display:flex;gap:1.8rem;flex:1;justify-content:center}
.ma-nav-links a{font-size:.76rem;font-weight:600;color:var(--ink-soft);transition:color .2s}
.ma-nav-links a:hover{color:var(--wine)}
.ma-nav-actions{display:flex;align-items:center;gap:1rem}
.ma-icon-link{position:relative;width:20px;height:20px;color:var(--ink)}
.ma-icon-link svg{width:100%;height:100%}
.ma-cart-count{position:absolute;top:-8px;right:-10px;background:var(--wine);color:#fff;font-size:.6rem;font-weight:700;border-radius:999px;min-width:16px;height:16px;display:flex;align-items:center;justify-content:center;padding:0 3px}
.ma-nav-cta{padding:.6rem 1.3rem;background:var(--wine);color:#fff !important;border-radius:999px;font-size:.72rem;font-weight:600;letter-spacing:.02em;white-space:nowrap;transition:background .2s}
.ma-nav-cta:hover{background:var(--wine-2)}
@media(max-width:900px){.ma-nav-links{display:none}}

/* HERO */
.ma-hero{padding:6.5rem 1.5rem 5rem;background:radial-gradient(70% 60% at 50% 0%, var(--gold-faint), transparent 60%)}
.ma-hero-inner{max-width:680px;margin:0 auto;text-align:center}
.ma-hero h1{font-family:var(--display);font-weight:420;font-size:clamp(2.4rem,6vw,4rem);line-height:1.14;margin-bottom:1.4rem}
.ma-hero h1 em{font-style:italic;color:var(--wine);font-weight:460}
.ma-hero-lead{color:var(--ink-soft);font-size:.98rem;max-width:480px;margin:0 auto 2.2rem;line-height:1.85}
.ma-btn-primary{display:inline-block;padding:1rem 2.2rem;background:var(--wine);color:#fff;border-radius:999px;font-size:.8rem;font-weight:600;letter-spacing:.02em;transition:background .25s,transform .25s}
.ma-btn-primary:hover{background:var(--wine-2);transform:translateY(-2px)}
.ma-btn-outline{display:inline-block;padding:.6rem 1.2rem;border:1px solid var(--wine);color:var(--wine);border-radius:999px;font-size:.72rem;font-weight:600}
.ma-btn-outline:hover{background:var(--wine);color:#fff}

/* PRODUCT GRID */
.ma-product-grid{display:grid;grid-template-columns:1fr;gap:1.6rem;margin-top:3rem}
@media(min-width:640px){.ma-product-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.ma-product-grid{grid-template-columns:repeat(4,1fr)}}
.ma-product-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s}
.ma-product-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px -20px rgba(58,46,34,.25)}
.ma-product-media{aspect-ratio:3/4;overflow:hidden;background:var(--paper-2);display:block}
.ma-product-media img{width:100%;height:100%;object-fit:cover}
.ma-product-media-empty{width:100%;height:100%;background:linear-gradient(160deg,var(--paper-2),var(--gold-faint))}
.ma-product-body{padding:1.2rem;display:flex;flex-direction:column;gap:.6rem;flex:1}
.ma-product-body h3{font-family:var(--display);font-size:1.1rem;font-weight:500}
.ma-product-body p{font-size:.76rem;color:var(--ink-soft);line-height:1.7;flex:1}
.ma-product-foot{display:flex;align-items:center;justify-content:space-between;margin-top:.4rem}
.ma-price{font-family:var(--display);font-size:1.15rem;color:var(--wine)}
.ma-price .woocommerce-Price-amount{font-family:var(--display)}

/* STEPS */
.ma-steps{display:grid;grid-template-columns:1fr;gap:1.6rem;margin-top:3rem}
@media(min-width:860px){.ma-steps{grid-template-columns:repeat(3,1fr)}}
.ma-step{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:2rem 1.7rem}
.ma-step-num{font-family:var(--display);font-size:2.2rem;color:var(--gold);margin-bottom:1rem}
.ma-step h3{font-family:var(--display);font-size:1.2rem;margin-bottom:.5rem}
.ma-step p{font-size:.82rem;color:var(--ink-soft);line-height:1.75}

/* FEATURES */
.ma-feat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.1rem;margin-top:3rem}
@media(min-width:700px){.ma-feat-grid{grid-template-columns:repeat(3,1fr)}}
.ma-feat{display:flex;align-items:center;gap:.8rem;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem 1.2rem}
.ma-feat svg{width:20px;height:20px;color:var(--wine);flex-shrink:0}
.ma-feat span{font-size:.78rem;font-weight:600;color:var(--ink)}

/* FAQ */
.ma-faq-list{margin-top:2.6rem;display:flex;flex-direction:column;gap:.7rem;text-align:left}
.ma-faq-item{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.ma-faq-item summary{padding:1.15rem 1.4rem;font-family:var(--display);font-size:1rem;cursor:pointer;list-style:none}
.ma-faq-item summary::-webkit-details-marker{display:none}
.ma-faq-item p{padding:0 1.4rem 1.2rem;font-size:.82rem;color:var(--ink-soft);line-height:1.8}

/* CTA FINALE */
.ma-cta-final{padding:6rem 1.5rem;text-align:center;background:var(--ink);color:var(--paper)}
.ma-cta-final h2{font-family:var(--display);font-weight:420;font-style:italic;font-size:clamp(2rem,4.6vw,3.2rem);margin-bottom:1rem}
.ma-cta-final h2 em{color:var(--gold);font-style:normal}
.ma-cta-final p{color:rgba(247,241,230,.7);margin-bottom:2rem;font-size:.88rem}

/* FOOTER */
.ma-footer{background:var(--paper-2);padding:3.5rem 1.5rem 2rem}
.ma-footer-grid{max-width:1160px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:2rem;padding-bottom:2.2rem}
@media(min-width:700px){.ma-footer-grid{grid-template-columns:1.4fr 1fr 1fr}}
.ma-foot-brand{font-family:var(--display);font-size:1.05rem;display:block;margin-bottom:.6rem}
.ma-foot-brand b{color:var(--wine)}
.ma-foot-tag{font-size:.78rem;color:var(--ink-soft);max-width:280px;line-height:1.75}
.ma-foot-col h4{font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:var(--wine);margin-bottom:.8rem}
.ma-foot-col a{display:block;font-size:.78rem;color:var(--ink-soft);margin-bottom:.55rem}
.ma-foot-bottom{max-width:1160px;margin:0 auto;padding-top:1.6rem;border-top:1px solid var(--line);font-size:.68rem;color:var(--ink-soft)}

/* ===== WooCommerce overrides ===== */
.woocommerce{color:var(--ink);font-family:var(--sans)}
.woocommerce-breadcrumb{max-width:1160px;margin:2rem auto 0;padding:0 1.5rem;font-size:.75rem;color:var(--ink-soft)}
.woocommerce-breadcrumb a{color:var(--wine)}

/* Shop archive */
ul.products{max-width:1160px;margin:2rem auto 4rem !important;padding:0 1.5rem;display:grid !important;grid-template-columns:repeat(2,1fr);gap:1.6rem;list-style:none}
@media(min-width:640px){ul.products{grid-template-columns:repeat(3,1fr)}}
@media(min-width:960px){ul.products{grid-template-columns:repeat(4,1fr)}}
ul.products li.product{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:transform .3s}
ul.products li.product:hover{transform:translateY(-4px)}
ul.products li.product a img{aspect-ratio:3/4;object-fit:cover;width:100%}
ul.products li.product .woocommerce-loop-product__title{font-family:var(--display);font-size:1.05rem;font-weight:500;padding:1rem 1.1rem 0}
ul.products li.product .price{display:block;padding:.4rem 1.1rem 1.1rem;color:var(--wine);font-family:var(--display);font-size:1.05rem}
ul.products li.product .button{margin:0 1.1rem 1.1rem;display:inline-block;padding:.6rem 1.1rem;background:var(--wine);color:#fff;border-radius:999px;font-size:.7rem;font-weight:600}

/* Single product */
.single-product .product{max-width:1160px;margin:2.5rem auto 5rem;padding:0 1.5rem;display:grid;grid-template-columns:1fr;gap:2.5rem}
@media(min-width:860px){.single-product .product{grid-template-columns:1fr 1fr}}
.single-product .woocommerce-product-gallery img{border-radius:var(--radius);border:1px solid var(--line)}
.single-product .product_title{font-family:var(--display);font-weight:460;font-size:clamp(1.8rem,3.5vw,2.6rem);margin-bottom:.8rem}
.single-product p.price{font-family:var(--display);font-size:1.6rem;color:var(--wine);margin-bottom:1.2rem;display:block}
.single-product .woocommerce-product-details__short-description{color:var(--ink-soft);font-size:.88rem;line-height:1.85;margin-bottom:1.6rem}
.single-product form.cart{margin-bottom:2rem}
.single-product .quantity input{width:64px;padding:.7rem;border:1px solid var(--line);border-radius:6px;font-family:var(--sans);margin-right:.8rem}
.single-product .single_add_to_cart_button{padding:1rem 2.2rem;background:var(--wine);color:#fff;border:none;border-radius:999px;font-size:.8rem;font-weight:600;letter-spacing:.02em}
.single-product .single_add_to_cart_button:hover{background:var(--wine-2)}
.woocommerce-tabs{max-width:1160px;margin:0 auto 4rem;padding:0 1.5rem}
.woocommerce-tabs ul.tabs{display:flex;gap:1.6rem;border-bottom:1px solid var(--line);list-style:none;margin-bottom:1.6rem}
.woocommerce-tabs ul.tabs li a{font-size:.78rem;font-weight:600;color:var(--ink-soft);padding-bottom:.8rem;display:block}
.woocommerce-tabs ul.tabs li.active a{color:var(--wine);border-bottom:2px solid var(--wine)}
.woocommerce-Tabs-panel{font-size:.88rem;color:var(--ink-soft);line-height:1.85;max-width:720px}

/* Cart */
.woocommerce-cart .woocommerce{max-width:1000px;margin:2.5rem auto 5rem;padding:0 1.5rem}
table.shop_table{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
table.shop_table th{text-align:left;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);padding:1rem;border-bottom:1px solid var(--line)}
table.shop_table td{padding:1rem;border-bottom:1px solid var(--line);font-size:.85rem}
table.shop_table img{width:64px;border-radius:6px}
.cart_totals{max-width:400px;margin-left:auto;margin-top:2rem;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.6rem}
.cart_totals h2{font-family:var(--display);font-size:1.3rem;margin-bottom:1rem}
.wc-proceed-to-checkout .checkout-button{display:block;text-align:center;width:100%;padding:1rem;background:var(--wine);color:#fff !important;border-radius:999px;font-weight:600;font-size:.82rem}

/* Checkout */
.woocommerce-checkout .woocommerce{max-width:1100px;margin:2.5rem auto 5rem;padding:0 1.5rem}
.woocommerce-checkout form.checkout{display:grid;grid-template-columns:1fr;gap:2.5rem}
@media(min-width:900px){.woocommerce-checkout form.checkout{grid-template-columns:1.2fr 1fr}}
.woocommerce-checkout .form-row label{font-size:.72rem;font-weight:600;color:var(--ink-soft);margin-bottom:.3rem;display:block}
.woocommerce-checkout input[type=text],.woocommerce-checkout input[type=email],.woocommerce-checkout input[type=tel],.woocommerce-checkout textarea,.woocommerce-checkout select{width:100%;padding:.75rem .9rem;border:1px solid var(--line);border-radius:6px;font-family:var(--sans);background:var(--card)}
#order_review{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.6rem;height:fit-content}
#payment{background:var(--paper-2);border-radius:var(--radius);padding:1.4rem;margin-top:1rem}
#payment ul.payment_methods{list-style:none}
#payment .payment_box{background:var(--card);border-radius:8px;padding:1rem;margin-top:.8rem;font-size:.82rem;line-height:1.8}
#place_order{width:100%;padding:1.1rem;background:var(--wine);color:#fff;border:none;border-radius:999px;font-size:.85rem;font-weight:700;letter-spacing:.02em;margin-top:1rem}
#place_order:hover{background:var(--wine-2)}

/* My account */
.woocommerce-account .woocommerce{max-width:1000px;margin:2.5rem auto 5rem;padding:0 1.5rem;display:grid;grid-template-columns:1fr;gap:2rem}
@media(min-width:800px){.woocommerce-account .woocommerce{grid-template-columns:220px 1fr}}
.woocommerce-MyAccount-navigation ul{list-style:none;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--line)}
.woocommerce-MyAccount-navigation a{display:block;padding:.9rem 1.1rem;font-size:.8rem;font-weight:600;color:var(--ink-soft)}
.woocommerce-MyAccount-navigation li.is-active a{color:var(--wine)}
.woocommerce-MyAccount-content{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.8rem}
.woocommerce-form-login input,.woocommerce-form-register input{width:100%;padding:.75rem .9rem;border:1px solid var(--line);border-radius:6px;margin-bottom:1rem}
.woocommerce-form-login button,.woocommerce-form-register button,.woocommerce-Button{padding:.85rem 1.6rem;background:var(--wine);color:#fff;border:none;border-radius:999px;font-weight:600;font-size:.8rem}
.woocommerce-message,.woocommerce-info{background:var(--gold-faint);border-left:3px solid var(--gold);padding:1rem 1.2rem;border-radius:6px;list-style:none;margin-bottom:1.5rem;font-size:.85rem}
.woocommerce-error{background:rgba(123,36,54,.08);border-left:3px solid var(--wine);padding:1rem 1.2rem;border-radius:6px;list-style:none;margin-bottom:1.5rem;font-size:.85rem}
