/* MORELOVE — BRAND DESIGN TOKENS */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500&family=Manrope:wght@200;300;400;500;600;700&family=Caveat:wght@400;500&display=swap');

:root{
  /* Colori primari brand */
  --ml-red: #811013;
  --ml-red-deep: #5C0B0D;
  --ml-red-soft: #A1383B;
  --ml-red-50: #F4E5E5;
  --ml-red-100: #E8CACB;
  --ml-black: #0A0A0A;
  --ml-black-soft: #1A1A1A;
  --ml-white: #FFFFFF;
  /* Neutri estesi */
  --ml-bone: #FAFAF7;
  --ml-ivory: #F4EFE6;
  --ml-cipria: #E8D5D2;
  --ml-cipria-light: #F1E1DF;
  --ml-stone: #B8B2A5;
  --ml-graphite: #2C2C2A;
  --ml-ash: #5C5651;
  --ml-mist: #D3D1C7;
  /* Accent — linea sculture */
  --ml-mimosa: #F4D03F;
  --ml-mimosa-deep: #C9A327;
  --ml-gold: #B8860B;
  --ml-silver: #A8A8A8;
  /* Typography */
  --ml-font-display: 'Cormorant Garamond', 'Times New Roman', serif;
  --ml-font-body: 'Manrope', 'Helvetica Neue', Arial, sans-serif;
  --ml-font-script: 'Caveat', cursive;
  /* Scale tipografica */
  --ml-h1: clamp(48px, 7vw, 96px);
  --ml-h2: clamp(36px, 5vw, 64px);
  --ml-h3: clamp(28px, 3.5vw, 42px);
  --ml-h4: 24px;
  --ml-h5: 18px;
  --ml-body: 16px;
  --ml-small: 13px;
  --ml-eyebrow: 11px;
  /* Spaziature */
  --ml-space-1: 4px;
  --ml-space-2: 8px;
  --ml-space-3: 16px;
  --ml-space-4: 24px;
  --ml-space-5: 32px;
  --ml-space-6: 48px;
  --ml-space-7: 64px;
  --ml-space-8: 96px;
  --ml-space-9: 128px;
  /* Layout */
  --ml-max: 1440px;
  --ml-narrow: 720px;
  --ml-gutter: 32px;
}
*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:var(--ml-font-body);font-size:var(--ml-body);line-height:1.6;color:var(--ml-black);background:var(--ml-white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
img{max-width:100%;display:block;height:auto}
a{color:inherit;text-decoration:none;transition:opacity .25s ease}
a:hover{opacity:.65}
button{font-family:inherit;cursor:pointer}
h1,h2,h3,h4,h5{font-family:var(--ml-font-display);font-weight:400;line-height:1.1;margin:0;letter-spacing:.02em}
.h-display{font-size:var(--ml-h1);letter-spacing:.04em}
.eyebrow{font-family:var(--ml-font-body);font-size:var(--ml-eyebrow);letter-spacing:.24em;text-transform:uppercase;font-weight:500;color:var(--ml-ash)}
.serif-italic{font-family:var(--ml-font-display);font-style:italic;font-weight:400}
.script{font-family:var(--ml-font-script);font-weight:500;color:var(--ml-red)}
.divider{height:1px;background:var(--ml-black);opacity:.15;width:60px;margin:24px 0}
.divider-center{margin:24px auto}
.btn-primary{font-family:var(--ml-font-body);font-size:11px;letter-spacing:.18em;text-transform:uppercase;padding:14px 28px;background:var(--ml-red);color:var(--ml-white);border:none;display:inline-block;transition:background .25s ease}
.btn-primary:hover{background:var(--ml-red-deep);opacity:1}
.btn-outline{font-family:var(--ml-font-body);font-size:11px;letter-spacing:.18em;text-transform:uppercase;padding:14px 28px;background:transparent;color:var(--ml-black);border:1px solid var(--ml-black);display:inline-block;transition:background .25s ease,color .25s ease}
.btn-outline:hover{background:var(--ml-black);color:var(--ml-white);opacity:1}
.btn-ghost{font-family:var(--ml-font-body);font-size:11px;letter-spacing:.18em;text-transform:uppercase;padding:8px 0;color:var(--ml-black);border-bottom:1px solid var(--ml-black);display:inline-block}
.container{max-width:var(--ml-max);margin:0 auto;padding:0 var(--ml-gutter)}
.narrow{max-width:var(--ml-narrow);margin:0 auto}
.section{padding:var(--ml-space-8) 0}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--ml-space-6)}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--ml-space-5)}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--ml-space-4)}
@media (max-width: 900px){
  .grid-2,.grid-3,.grid-4{grid-template-columns:1fr;gap:var(--ml-space-4)}
  .section{padding:var(--ml-space-6) 0}
}
