:root {
  --lady-cream: #fff8ee;
  --lady-cream-2: #f8eadf;
  --lady-sand: #ead8c5;
  --lady-fuchsia: #eb1677;
  --lady-fuchsia-dark: #c50f60;
  --lady-cocoa: #4a2c20;
  --lady-espresso: #241711;
  --lady-text: #2d211c;
  --lady-muted: #71635c;
  --lady-border: rgba(74, 44, 32, .12);
  --lady-radius: 18px;
  --lady-shadow: 0 16px 42px rgba(67, 40, 26, .08);
  --lady-shell: 1240px;
  --lady-serif: "DM Serif Display", Georgia, "Times New Roman", serif;
  --lady-sans: "Manrope", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.lady-home { background: var(--lady-cream); color: var(--lady-text); font-family: var(--lady-sans); overflow: clip; }
.lady-home *, .lady-home *::before, .lady-home *::after { box-sizing: border-box; }
.lady-home img { display: block; width: 100%; height: auto; }
.lady-shell { width: min(calc(100% - 32px), var(--lady-shell)); margin-inline: auto; }
.lady-section { padding: 56px 0; }
.lady-home a { text-decoration: none; }
.lady-home a:focus-visible, .lady-home button:focus-visible, .lady-home input:focus-visible { outline: 3px solid var(--lady-cocoa); outline-offset: 3px; }
.lady-eyebrow, .lady-kicker { margin: 0 0 12px; font-size: .76rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.lady-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 12px 22px; border-radius: 999px; background: var(--lady-fuchsia); color: #fff; font-weight: 800; font-size: .82rem; letter-spacing: .02em; transition: transform .2s ease, background .2s ease; }
.lady-btn:hover { background: var(--lady-fuchsia-dark); transform: translateY(-1px); color: #fff; }
.lady-script-title { margin: 0 0 30px; text-align: center; color: var(--lady-fuchsia); font-family: var(--lady-serif); font-size: clamp(1.8rem, 4vw, 2.6rem); font-style: italic; font-weight: 400; }

/* Hero */
.lady-hero { position: relative; min-height: 680px; isolation: isolate; background: #f7e9dc; }
.lady-hero__media { position: absolute; inset: 0; z-index: -2; background-image: linear-gradient(90deg, rgba(255,248,238,.98) 0%, rgba(255,248,238,.84) 37%, rgba(255,248,238,.05) 68%), var(--lady-hero-1); background-size: cover; background-position: center; }
.lady-hero__media::after { content:""; position:absolute; inset:0; opacity:0; background-image: linear-gradient(90deg, rgba(255,248,238,.98) 0%, rgba(255,248,238,.84) 37%, rgba(255,248,238,.05) 68%), var(--lady-hero-2); background-size:cover; background-position:center; transition:opacity 1.4s ease; }
.lady-hero.is-alt .lady-hero__media::after { opacity:1; }
.lady-hero__inner { display:flex; align-items:center; min-height:680px; }
.lady-hero__content { width:min(560px, 100%); padding: 70px 0; }
.lady-hero__title { margin:0; font-family:var(--lady-serif); font-size:clamp(3rem, 6vw, 5.8rem); line-height:.98; font-weight:400; letter-spacing:-.035em; }
.lady-hero__title span, .lady-hero__title strong { display:block; }
.lady-hero__title strong { margin-top:8px; color:var(--lady-fuchsia); font-weight:400; }
.lady-hero__copy { max-width:520px; margin:24px 0 28px; color:#473b35; font-size:1.04rem; line-height:1.7; }

/* Placeholders */
.lady-photo-placeholder { min-height:220px; display:grid; place-items:center; padding:20px; background:linear-gradient(135deg,#f1dec9,#fff7ed); border:1px dashed rgba(74,44,32,.22); color:var(--lady-muted); text-align:center; font-size:.82rem; }
.lady-hero .lady-photo-placeholder { position:absolute; inset:0; min-height:100%; }

/* USP */
.lady-usps { background:rgba(255,255,255,.68); border-block:1px solid var(--lady-border); }
.lady-usps__grid { display:grid; grid-template-columns:repeat(2,1fr); }
.lady-usps article { text-align:center; padding:24px 12px; }
.lady-usps h2 { margin:6px 0 4px; font-size:.78rem; text-transform:uppercase; letter-spacing:.03em; }
.lady-usps p { margin:0; color:var(--lady-muted); font-size:.72rem; line-height:1.45; }
.lady-icon { color:var(--lady-fuchsia); font-size:1.5rem; }

/* Categories */
.lady-category-grid { display:grid; grid-template-columns:1fr; gap:18px; }
.lady-category-card { overflow:hidden; border:1px solid var(--lady-border); border-radius:var(--lady-radius); background:#fffaf5; color:var(--lady-text); box-shadow:0 10px 28px rgba(68,39,24,.04); transition:transform .22s ease, box-shadow .22s ease; }
.lady-category-card:hover { transform:translateY(-4px); box-shadow:var(--lady-shadow); color:var(--lady-text); }
.lady-card-media { aspect-ratio: 4 / 3; overflow:hidden; }
.lady-card-media img { height:100%; object-fit:cover; transition:transform .5s ease; }
.lady-category-card:hover img { transform:scale(1.025); }
.lady-category-card__body { padding:18px; }
.lady-category-card h3 { margin:0 0 8px; font-size:1rem; line-height:1.15; text-transform:uppercase; }
.lady-category-card span { color:var(--lady-fuchsia); font-weight:800; font-size:.82rem; }

/* Products */
.lady-products { padding-top:20px; }
.lady-product-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.lady-product-card { overflow:hidden; border:1px solid var(--lady-border); border-radius:14px; background:#fff; }
.lady-product-card__media, .lady-product-card > .lady-photo-placeholder { display:block; aspect-ratio:1/1; overflow:hidden; min-height:0; }
.lady-product-card__media img { width:100%; height:100%; object-fit:cover; }
.lady-product-card__body { padding:14px; }
.lady-product-card h3 { margin:0 0 8px; font-size:.82rem; line-height:1.25; text-transform:uppercase; }
.lady-product-card h3 a { color:var(--lady-text); }
.lady-product-card__body p { margin:0 0 10px; color:var(--lady-muted); font-size:.75rem; }
.lady-product-card__price { margin-top:12px; font-weight:900; color:var(--lady-espresso); }
.lady-mini-link { display:inline-block; margin-top:9px; color:var(--lady-fuchsia); font-size:.78rem; font-weight:800; }

/* Story */
.lady-story { background:#f8eadf; }
.lady-story__grid { display:grid; }
.lady-story__copy { padding:48px 0; }
.lady-story__copy h2, .lady-cake__copy h2 { margin:0 0 18px; font-family:var(--lady-serif); font-size:clamp(2.25rem,5vw,4rem); line-height:1.02; font-weight:400; }
.lady-story__copy h2 span { color:var(--lady-fuchsia); }
.lady-story__copy p { max-width:520px; line-height:1.7; color:var(--lady-muted); }
.lady-story__media { min-height:420px; }
.lady-story__media img, .lady-story__media .lady-photo-placeholder { height:100%; min-height:420px; object-fit:cover; }

/* Cake */
.lady-cake__card { overflow:hidden; display:grid; border:1px solid var(--lady-border); border-radius:var(--lady-radius); background:#fffaf6; box-shadow:var(--lady-shadow); }
.lady-cake__media { min-height:330px; }
.lady-cake__media img, .lady-cake__media .lady-photo-placeholder { height:100%; min-height:330px; object-fit:cover; }
.lady-cake__copy { align-self:center; padding:34px; }
.lady-cake__copy h2 { font-size:clamp(2rem,4vw,3.2rem); }
.lady-cake__copy p { color:var(--lady-muted); line-height:1.7; }

/* Benefits */
.lady-benefits { padding:24px 0; }
.lady-benefits__grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.lady-benefits span { padding:16px; text-align:center; border-top:1px solid var(--lady-border); font-size:.74rem; font-weight:700; }

/* Testimonials */
.lady-testimonial-grid { display:grid; grid-template-columns:1fr; gap:16px; }
.lady-testimonial-grid blockquote { margin:0; padding:28px; border:1px solid var(--lady-border); border-radius:14px; background:#fffaf7; text-align:center; }
.lady-testimonial-grid blockquote div { color:var(--lady-fuchsia); letter-spacing:.12em; }
.lady-testimonial-grid p { color:var(--lady-muted); line-height:1.6; }
.lady-testimonial-grid cite { font-style:normal; font-size:.75rem; font-weight:800; }

/* Instagram */
.lady-instagram { padding:12px 0 0; }
.lady-instagram h2 { margin:0 0 14px; text-align:center; font-size:.75rem; text-transform:uppercase; letter-spacing:.05em; }
.lady-instagram__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:5px; }
.lady-instagram__grid .lady-photo-placeholder { min-height:0; aspect-ratio:1/1; font-size:0; border:0; }

/* Newsletter */
.lady-newsletter { background:var(--lady-fuchsia); color:#fff; }
.lady-newsletter__inner { display:grid; gap:22px; padding-block:26px; }
.lady-newsletter__inner > div { display:flex; gap:14px; align-items:center; }
.lady-newsletter h2 { margin:0; max-width:420px; font-size:1rem; line-height:1.35; }
.lady-newsletter__paw { width:42px; height:42px; flex:0 0 42px; display:grid; place-items:center; border-radius:50%; background:#fff; color:var(--lady-fuchsia); }
.lady-newsletter__form { display:flex; gap:8px; width:100%; }
.lady-newsletter input { min-width:0; flex:1; min-height:46px; border:0; border-radius:999px; padding:0 18px; background:#fff; color:var(--lady-text); }
.lady-newsletter button { min-height:46px; border:0; border-radius:999px; padding:0 22px; background:var(--lady-cocoa); color:#fff; font-weight:800; cursor:pointer; }

/* Custom footer */
.lady-custom-footer { padding:48px 0 20px; background:var(--lady-cocoa); color:#f9eee5; }
.lady-custom-footer__grid { display:grid; gap:32px; }
.lady-custom-footer__brand img { width:90px; height:90px; border-radius:50%; object-fit:cover; }
.lady-custom-footer h2 { margin:0 0 12px; color:#fff; font-size:.78rem; text-transform:uppercase; letter-spacing:.06em; }
.lady-custom-footer a, .lady-custom-footer p { display:block; margin:0 0 8px; color:#e8d9cf; font-size:.78rem; }
.lady-custom-footer a:hover { color:#fff; }
.lady-custom-footer__legal { margin-top:28px; padding-top:16px; border-top:1px solid rgba(255,255,255,.12); color:#cfbcae; }

@media (min-width: 720px) {
  .lady-section { padding:76px 0; }
  .lady-usps__grid { grid-template-columns:repeat(4,1fr); }
  .lady-usps article + article { border-left:1px solid var(--lady-border); }
  .lady-category-grid { grid-template-columns:repeat(2,1fr); }
  .lady-product-grid { grid-template-columns:repeat(4,1fr); gap:18px; }
  .lady-story__grid { grid-template-columns:.9fr 1.1fr; align-items:stretch; }
  .lady-story__copy { padding:72px 48px 72px 0; align-self:center; }
  .lady-cake__card { grid-template-columns:1.1fr .9fr; }
  .lady-benefits__grid { grid-template-columns:repeat(4,1fr); }
  .lady-benefits span { border-top:0; border-left:1px solid var(--lady-border); }
  .lady-benefits span:first-child { border-left:0; }
  .lady-testimonial-grid { grid-template-columns:repeat(3,1fr); }
  .lady-instagram__grid { grid-template-columns:repeat(6,1fr); }
  .lady-newsletter__inner { grid-template-columns:1fr minmax(360px, .8fr); align-items:center; }
  .lady-custom-footer__grid { grid-template-columns:1.2fr repeat(3,1fr); }
}

@media (min-width: 1024px) {
  .lady-category-grid { grid-template-columns:repeat(4,1fr); }
  .lady-hero { min-height:720px; }
  .lady-hero__inner { min-height:720px; }
}

@media (max-width: 719px) {
  .lady-hero { min-height:auto; display:grid; grid-template-rows:380px auto; }
  .lady-hero__media { position:relative; grid-row:1; background-image:var(--lady-hero-1); background-position:center; }
  .lady-hero__media::after { background-image:var(--lady-hero-2); }
  .lady-hero__inner { min-height:0; grid-row:2; }
  .lady-hero__content { padding:38px 0 48px; }
  .lady-hero__title { font-size:clamp(2.65rem,13vw,4rem); }
  .lady-hero__copy { font-size:.96rem; }
  .lady-newsletter__form { flex-direction:column; }
  .lady-newsletter button { width:100%; }
}

@media (prefers-reduced-motion: reduce) {
  .lady-home *, .lady-home *::before, .lady-home *::after { scroll-behavior:auto !important; transition:none !important; animation:none !important; }
}

/* v1.9 — immagini Home incorporate */
.lady-instagram__grid img { display:block; width:100%; aspect-ratio:1/1; object-fit:cover; }

/* v2.4 — immagini fascia valori ripristinate */
.lady-usps .lady-usp-image{width:42px;height:42px;object-fit:cover;border-radius:50%;display:block;margin:0 auto 10px}
.lady-instagram h2 a{color:inherit;text-decoration:none}

/* v2.6 — categorie statiche + carosello solo I più amati */
.lady-category-all,.lady-products-all{text-align:center;margin-top:28px}
.lady-products-carousel{position:relative}
#lady-products-track{
    display:flex!important;
    flex-wrap:nowrap!important;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scroll-behavior:smooth;
    gap:18px;
    scrollbar-width:none;
    padding:4px 0 10px;
}
#lady-products-track::-webkit-scrollbar{display:none}
#lady-products-track > *{
    flex:0 0 calc((100% - 54px)/4)!important;
    min-width:0;
    box-sizing:border-box;
    scroll-snap-align:start;
}
.lady-product-arrow{
    position:absolute;top:44%;transform:translateY(-50%);
    z-index:10;width:48px;height:48px;border-radius:50%;
    border:1px solid rgba(70,45,35,.12);background:#fff;color:#f20b6b;
    font-size:34px;line-height:1;display:flex;align-items:center;justify-content:center;
    box-shadow:0 8px 24px rgba(70,45,35,.10);cursor:pointer;
}
.lady-product-arrow--prev{left:-64px}.lady-product-arrow--next{right:-64px}
.lady-product-arrow:disabled{opacity:.28;cursor:default}
.lady-product-dots{display:flex;justify-content:center;gap:8px;margin:18px 0 0}
.lady-product-dot{width:8px;height:8px;padding:0;border:1px solid #f20b6b;border-radius:50%;background:transparent}
.lady-product-dot.is-active{background:#f20b6b}
@media(max-width:1400px){
 .lady-product-arrow--prev{left:8px}.lady-product-arrow--next{right:8px}
}
@media(max-width:800px){#lady-products-track > *{flex-basis:calc((100% - 18px)/2)!important}}
@media(max-width:520px){
 #lady-products-track > *{flex-basis:84%!important}
 .lady-product-arrow{width:40px;height:40px;font-size:28px}
}

@media(prefers-reduced-motion:reduce){
 #lady-products-track{scroll-behavior:auto}
}
